Search in sources :

Example 1 with PolicyUtils

use of org.apache.syncope.core.persistence.api.entity.policy.PolicyUtils in project syncope by apache.

the class PolicyLogic method delete.

@PreAuthorize("hasRole('" + StandardEntitlement.POLICY_DELETE + "')")
public <T extends PolicyTO> T delete(final PolicyType type, final String key) {
    Policy policy = policyDAO.find(key);
    if (policy == null) {
        throw new NotFoundException("Policy " + key + " not found");
    }
    PolicyUtils policyUtils = policyUtilsFactory.getInstance(policy);
    if (type != null && policyUtils.getType() != type) {
        SyncopeClientException sce = SyncopeClientException.build(ClientExceptionType.InvalidRequest);
        sce.getElements().add("Found " + type + ", expected " + policyUtils.getType());
        throw sce;
    }
    T deleted = binder.getPolicyTO(policy);
    policyDAO.delete(policy);
    return deleted;
}
Also used : Policy(org.apache.syncope.core.persistence.api.entity.policy.Policy) SyncopeClientException(org.apache.syncope.common.lib.SyncopeClientException) NotFoundException(org.apache.syncope.core.persistence.api.dao.NotFoundException) PolicyUtils(org.apache.syncope.core.persistence.api.entity.policy.PolicyUtils) PreAuthorize(org.springframework.security.access.prepost.PreAuthorize)

Example 2 with PolicyUtils

use of org.apache.syncope.core.persistence.api.entity.policy.PolicyUtils in project syncope by apache.

the class PolicyLogic method create.

@PreAuthorize("hasRole('" + StandardEntitlement.POLICY_CREATE + "')")
public <T extends PolicyTO> T create(final PolicyType type, final T policyTO) {
    PolicyUtils policyUtils = policyUtilsFactory.getInstance(policyTO);
    if (policyUtils.getType() != type) {
        SyncopeClientException sce = SyncopeClientException.build(ClientExceptionType.InvalidRequest);
        sce.getElements().add("Found " + type + ", expected " + policyUtils.getType());
        throw sce;
    }
    return binder.getPolicyTO(policyDAO.save(binder.create(policyTO)));
}
Also used : SyncopeClientException(org.apache.syncope.common.lib.SyncopeClientException) PolicyUtils(org.apache.syncope.core.persistence.api.entity.policy.PolicyUtils) PreAuthorize(org.springframework.security.access.prepost.PreAuthorize)

Example 3 with PolicyUtils

use of org.apache.syncope.core.persistence.api.entity.policy.PolicyUtils in project syncope by apache.

the class PolicyLogic method read.

@PreAuthorize("hasRole('" + StandardEntitlement.POLICY_READ + "')")
@Transactional(readOnly = true)
public <T extends PolicyTO> T read(final PolicyType type, final String key) {
    Policy policy = policyDAO.find(key);
    if (policy == null) {
        throw new NotFoundException("Policy " + key + " not found");
    }
    PolicyUtils policyUtils = policyUtilsFactory.getInstance(policy);
    if (type != null && policyUtils.getType() != type) {
        SyncopeClientException sce = SyncopeClientException.build(ClientExceptionType.InvalidRequest);
        sce.getElements().add("Found " + type + ", expected " + policyUtils.getType());
        throw sce;
    }
    return binder.getPolicyTO(policy);
}
Also used : Policy(org.apache.syncope.core.persistence.api.entity.policy.Policy) SyncopeClientException(org.apache.syncope.common.lib.SyncopeClientException) NotFoundException(org.apache.syncope.core.persistence.api.dao.NotFoundException) PolicyUtils(org.apache.syncope.core.persistence.api.entity.policy.PolicyUtils) PreAuthorize(org.springframework.security.access.prepost.PreAuthorize) Transactional(org.springframework.transaction.annotation.Transactional)

Example 4 with PolicyUtils

use of org.apache.syncope.core.persistence.api.entity.policy.PolicyUtils in project syncope by apache.

the class PolicyLogic method update.

@PreAuthorize("hasRole('" + StandardEntitlement.POLICY_UPDATE + "')")
public PolicyTO update(final PolicyType type, final PolicyTO policyTO) {
    Policy policy = policyDAO.find(policyTO.getKey());
    PolicyUtils policyUtils = policyUtilsFactory.getInstance(policy);
    if (policyUtils.getType() != type) {
        SyncopeClientException sce = SyncopeClientException.build(ClientExceptionType.InvalidRequest);
        sce.getElements().add("Found " + type + ", expected " + policyUtils.getType());
        throw sce;
    }
    return binder.getPolicyTO(policyDAO.save(binder.update(policy, policyTO)));
}
Also used : Policy(org.apache.syncope.core.persistence.api.entity.policy.Policy) SyncopeClientException(org.apache.syncope.common.lib.SyncopeClientException) PolicyUtils(org.apache.syncope.core.persistence.api.entity.policy.PolicyUtils) PreAuthorize(org.springframework.security.access.prepost.PreAuthorize)

Aggregations

SyncopeClientException (org.apache.syncope.common.lib.SyncopeClientException)4 PolicyUtils (org.apache.syncope.core.persistence.api.entity.policy.PolicyUtils)4 PreAuthorize (org.springframework.security.access.prepost.PreAuthorize)4 Policy (org.apache.syncope.core.persistence.api.entity.policy.Policy)3 NotFoundException (org.apache.syncope.core.persistence.api.dao.NotFoundException)2 Transactional (org.springframework.transaction.annotation.Transactional)1