Search in sources :

Example 91 with SyncopeClientException

use of org.apache.syncope.common.lib.SyncopeClientException 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 92 with SyncopeClientException

use of org.apache.syncope.common.lib.SyncopeClientException 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 93 with SyncopeClientException

use of org.apache.syncope.common.lib.SyncopeClientException 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 94 with SyncopeClientException

use of org.apache.syncope.common.lib.SyncopeClientException in project syncope by apache.

the class ReportLogic method execute.

@PreAuthorize("hasRole('" + StandardEntitlement.REPORT_EXECUTE + "')")
@Override
public ExecTO execute(final String key, final Date startAt, final boolean dryRun) {
    Report report = reportDAO.find(key);
    if (report == null) {
        throw new NotFoundException("Report " + key);
    }
    if (!report.isActive()) {
        SyncopeClientException sce = SyncopeClientException.build(ClientExceptionType.Scheduling);
        sce.getElements().add("Report " + key + " is not active");
        throw sce;
    }
    try {
        jobManager.register(report, startAt, confDAO.find("tasks.interruptMaxRetries", 1L));
        scheduler.getScheduler().triggerJob(JobNamer.getJobKey(report));
    } catch (Exception e) {
        LOG.error("While executing report {}", report, e);
        SyncopeClientException sce = SyncopeClientException.build(ClientExceptionType.Scheduling);
        sce.getElements().add(e.getMessage());
        throw sce;
    }
    ExecTO result = new ExecTO();
    result.setJobType(JobType.REPORT);
    result.setRefKey(report.getKey());
    result.setRefDesc(binder.buildRefDesc(report));
    result.setStart(new Date());
    result.setStatus(ReportExecStatus.STARTED.name());
    result.setMessage("Job fired; waiting for results...");
    return result;
}
Also used : ExecTO(org.apache.syncope.common.lib.to.ExecTO) Report(org.apache.syncope.core.persistence.api.entity.Report) SyncopeClientException(org.apache.syncope.common.lib.SyncopeClientException) NotFoundException(org.apache.syncope.core.persistence.api.dao.NotFoundException) SyncopeClientException(org.apache.syncope.common.lib.SyncopeClientException) NotFoundException(org.apache.syncope.core.persistence.api.dao.NotFoundException) SchedulerException(org.quartz.SchedulerException) Date(java.util.Date) PreAuthorize(org.springframework.security.access.prepost.PreAuthorize)

Example 95 with SyncopeClientException

use of org.apache.syncope.common.lib.SyncopeClientException in project syncope by apache.

the class ReportLogic method update.

@PreAuthorize("hasRole('" + StandardEntitlement.REPORT_UPDATE + "')")
public ReportTO update(final ReportTO reportTO) {
    Report report = reportDAO.find(reportTO.getKey());
    if (report == null) {
        throw new NotFoundException("Report " + reportTO.getKey());
    }
    binder.getReport(report, reportTO);
    report = reportDAO.save(report);
    try {
        jobManager.register(report, null, confDAO.find("tasks.interruptMaxRetries", 1L));
    } catch (Exception e) {
        LOG.error("While registering quartz job for report " + report.getKey(), e);
        SyncopeClientException sce = SyncopeClientException.build(ClientExceptionType.Scheduling);
        sce.getElements().add(e.getMessage());
        throw sce;
    }
    return binder.getReportTO(report);
}
Also used : Report(org.apache.syncope.core.persistence.api.entity.Report) SyncopeClientException(org.apache.syncope.common.lib.SyncopeClientException) NotFoundException(org.apache.syncope.core.persistence.api.dao.NotFoundException) SyncopeClientException(org.apache.syncope.common.lib.SyncopeClientException) NotFoundException(org.apache.syncope.core.persistence.api.dao.NotFoundException) SchedulerException(org.quartz.SchedulerException) PreAuthorize(org.springframework.security.access.prepost.PreAuthorize)

Aggregations

SyncopeClientException (org.apache.syncope.common.lib.SyncopeClientException)240 Test (org.junit.jupiter.api.Test)105 UserTO (org.apache.syncope.common.lib.to.UserTO)50 PreAuthorize (org.springframework.security.access.prepost.PreAuthorize)42 NotFoundException (org.apache.syncope.core.persistence.api.dao.NotFoundException)40 Response (javax.ws.rs.core.Response)34 ResourceTO (org.apache.syncope.common.lib.to.ResourceTO)20 PlainSchemaTO (org.apache.syncope.common.lib.to.PlainSchemaTO)19 MembershipTO (org.apache.syncope.common.lib.to.MembershipTO)18 Realm (org.apache.syncope.core.persistence.api.entity.Realm)18 GroupTO (org.apache.syncope.common.lib.to.GroupTO)17 ClientExceptionType (org.apache.syncope.common.lib.types.ClientExceptionType)16 AttrTO (org.apache.syncope.common.lib.to.AttrTO)15 Map (java.util.Map)14 SyncopeClientCompositeException (org.apache.syncope.common.lib.SyncopeClientCompositeException)14 ArrayList (java.util.ArrayList)12 List (java.util.List)12 ItemTO (org.apache.syncope.common.lib.to.ItemTO)12 AjaxRequestTarget (org.apache.wicket.ajax.AjaxRequestTarget)12 AnyObjectTO (org.apache.syncope.common.lib.to.AnyObjectTO)11