You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@syncope.apache.org by il...@apache.org on 2012/10/23 09:49:25 UTC
svn commit: r1401182 [1/2] - in /incubator/syncope/trunk:
client/src/main/java/org/apache/syncope/client/to/
client/src/main/java/org/apache/syncope/types/
console/src/main/java/org/apache/syncope/console/pages/
console/src/main/java/org/apache/syncope...
Author: ilgrosso
Date: Tue Oct 23 07:49:23 2012
New Revision: 1401182
URL: http://svn.apache.org/viewvc?rev=1401182&view=rev
Log:
[SYNCOPE-186] SyncopeSyncResultHanlder extracted from SyncJob + renaming
Added:
incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/notification/NotificationJob.java
- copied, changed from r1400893, incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/scheduling/NotificationJob.java
incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/quartz/
incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/quartz/AbstractTaskJob.java
- copied, changed from r1400893, incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/scheduling/AbstractTaskJob.java
incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/quartz/SampleJob.java
- copied, changed from r1400893, incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/scheduling/SampleJob.java
incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/quartz/SpringBeanJobFactory.java
- copied, changed from r1400893, incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/scheduling/SpringBeanJobFactory.java
incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/quartz/package-info.java
- copied, changed from r1400893, incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/scheduling/package-info.java
incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/report/ReportJob.java
- copied, changed from r1400893, incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/scheduling/ReportJob.java
incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/report/ReportXMLConst.java
- copied, changed from r1400893, incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/scheduling/ReportXMLConst.java
incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/sync/
incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/sync/DefaultSyncActions.java
- copied, changed from r1400893, incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/scheduling/DefaultSyncJobActions.java
incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/sync/SyncActions.java
- copied, changed from r1400893, incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/scheduling/SyncJobActions.java
incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/sync/SyncJob.java
- copied, changed from r1400893, incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/scheduling/SyncJob.java
incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/sync/SyncResult.java
- copied, changed from r1400893, incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/scheduling/SyncResult.java
incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/sync/SyncopeSyncResultHanlder.java (with props)
incubator/syncope/trunk/core/src/test/java/org/apache/syncope/core/quartz/
incubator/syncope/trunk/core/src/test/java/org/apache/syncope/core/quartz/TestSyncActions.java
- copied, changed from r1400893, incubator/syncope/trunk/core/src/test/java/org/apache/syncope/core/scheduling/TestSyncJobActions.java
Removed:
incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/scheduling/
incubator/syncope/trunk/core/src/test/java/org/apache/syncope/core/scheduling/
Modified:
incubator/syncope/trunk/client/src/main/java/org/apache/syncope/client/to/SyncTaskTO.java
incubator/syncope/trunk/client/src/main/java/org/apache/syncope/types/AuditElements.java
incubator/syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/SyncTaskModalPage.java
incubator/syncope/trunk/console/src/main/java/org/apache/syncope/console/rest/TaskRestClient.java
incubator/syncope/trunk/console/src/main/resources/org/apache/syncope/console/pages/SyncTaskModalPage.html
incubator/syncope/trunk/core/pom.xml
incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/init/ImplementationClassNamesLoader.java
incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/init/JobInstanceLoader.java
incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/notification/NotificationManager.java
incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/SyncTask.java
incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/dao/impl/ReportExecDAOImpl.java
incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/dao/impl/ResourceDAOImpl.java
incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/dao/impl/TaskExecDAOImpl.java
incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/validation/entity/SchedTaskValidator.java
incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/validation/entity/SyncTaskValidator.java
incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/report/AbstractReportlet.java
incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/report/UserReportlet.java
incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/rest/controller/TaskController.java
incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/rest/data/TaskDataBinder.java
incubator/syncope/trunk/core/src/main/resources/logback.xml
incubator/syncope/trunk/core/src/main/resources/schedulingContext.xml
incubator/syncope/trunk/core/src/test/java/org/apache/syncope/core/notification/NotificationTest.java
incubator/syncope/trunk/core/src/test/java/org/apache/syncope/core/persistence/dao/TaskTest.java
incubator/syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/TaskTestITCase.java
incubator/syncope/trunk/core/src/test/resources/content.xml
Modified: incubator/syncope/trunk/client/src/main/java/org/apache/syncope/client/to/SyncTaskTO.java
URL: http://svn.apache.org/viewvc/incubator/syncope/trunk/client/src/main/java/org/apache/syncope/client/to/SyncTaskTO.java?rev=1401182&r1=1401181&r2=1401182&view=diff
==============================================================================
--- incubator/syncope/trunk/client/src/main/java/org/apache/syncope/client/to/SyncTaskTO.java (original)
+++ incubator/syncope/trunk/client/src/main/java/org/apache/syncope/client/to/SyncTaskTO.java Tue Oct 23 07:49:23 2012
@@ -36,7 +36,7 @@ public class SyncTaskTO extends SchedTas
private boolean fullReconciliation;
- private String jobActionsClassName;
+ private String actionsClassName;
public UserTO getUserTemplate() {
return userTemplate;
@@ -94,11 +94,11 @@ public class SyncTaskTO extends SchedTas
this.fullReconciliation = fullReconciliation;
}
- public String getJobActionsClassName() {
- return jobActionsClassName;
+ public String getActionsClassName() {
+ return actionsClassName;
}
- public void setJobActionsClassName(String jobActionsClassName) {
- this.jobActionsClassName = jobActionsClassName;
+ public void setActionsClassName(String actionsClassName) {
+ this.actionsClassName = actionsClassName;
}
}
Modified: incubator/syncope/trunk/client/src/main/java/org/apache/syncope/types/AuditElements.java
URL: http://svn.apache.org/viewvc/incubator/syncope/trunk/client/src/main/java/org/apache/syncope/types/AuditElements.java?rev=1401182&r1=1401181&r2=1401182&view=diff
==============================================================================
--- incubator/syncope/trunk/client/src/main/java/org/apache/syncope/types/AuditElements.java (original)
+++ incubator/syncope/trunk/client/src/main/java/org/apache/syncope/types/AuditElements.java Tue Oct 23 07:49:23 2012
@@ -198,7 +198,7 @@ public final class AuditElements {
delete,
listExecutions,
getJobClasses,
- getJobActionClasses,
+ getSyncActionsClasses,
readExecution,
execute,
report,
Modified: incubator/syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/SyncTaskModalPage.java
URL: http://svn.apache.org/viewvc/incubator/syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/SyncTaskModalPage.java?rev=1401182&r1=1401181&r2=1401182&view=diff
==============================================================================
--- incubator/syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/SyncTaskModalPage.java (original)
+++ incubator/syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/SyncTaskModalPage.java Tue Oct 23 07:49:23 2012
@@ -20,18 +20,18 @@ package org.apache.syncope.console.pages
import java.util.ArrayList;
import java.util.List;
-import org.apache.wicket.PageReference;
-import org.apache.wicket.extensions.ajax.markup.html.modal.ModalWindow;
-import org.apache.wicket.model.IModel;
-import org.apache.wicket.model.LoadableDetachableModel;
-import org.apache.wicket.model.PropertyModel;
-import org.apache.wicket.spring.injection.annot.SpringBean;
import org.apache.syncope.client.to.ResourceTO;
import org.apache.syncope.client.to.SyncTaskTO;
import org.apache.syncope.console.commons.SelectChoiceRenderer;
import org.apache.syncope.console.rest.ResourceRestClient;
import org.apache.syncope.console.wicket.markup.html.form.AjaxCheckBoxPanel;
import org.apache.syncope.console.wicket.markup.html.form.AjaxDropDownChoicePanel;
+import org.apache.wicket.PageReference;
+import org.apache.wicket.extensions.ajax.markup.html.modal.ModalWindow;
+import org.apache.wicket.model.IModel;
+import org.apache.wicket.model.LoadableDetachableModel;
+import org.apache.wicket.model.PropertyModel;
+import org.apache.wicket.spring.injection.annot.SpringBean;
/**
* Modal window with Task form (to stop and start execution).
@@ -79,12 +79,12 @@ public class SyncTaskModalPage extends A
@Override
protected List<String> load() {
- return taskRestClient.getJobActionsClasses();
+ return taskRestClient.getSyncActionsClasses();
}
};
final AjaxDropDownChoicePanel<String> actionsClassName = new AjaxDropDownChoicePanel<String>(
- "jobActionsClassName", getString("actionsClass"), new PropertyModel(taskTO, "jobActionsClassName"));
+ "actionsClassName", getString("actionsClass"), new PropertyModel(taskTO, "actionsClassName"));
actionsClassName.setChoices(classNames.getObject());
actionsClassName.setStyleShet("ui-widget-content ui-corner-all long_dynamicsize");
profile.add(actionsClassName);
Modified: incubator/syncope/trunk/console/src/main/java/org/apache/syncope/console/rest/TaskRestClient.java
URL: http://svn.apache.org/viewvc/incubator/syncope/trunk/console/src/main/java/org/apache/syncope/console/rest/TaskRestClient.java?rev=1401182&r1=1401181&r2=1401182&view=diff
==============================================================================
--- incubator/syncope/trunk/console/src/main/java/org/apache/syncope/console/rest/TaskRestClient.java (original)
+++ incubator/syncope/trunk/console/src/main/java/org/apache/syncope/console/rest/TaskRestClient.java Tue Oct 23 07:49:23 2012
@@ -54,14 +54,14 @@ public class TaskRestClient extends Abst
return jobClasses;
}
- public List<String> getJobActionsClasses() {
+ public List<String> getSyncActionsClasses() {
List<String> actions = null;
try {
actions = Arrays.asList(SyncopeSession.get().getRestTemplate().getForObject(
- baseURL + "task/jobActionsClasses.json", String[].class));
+ baseURL + "task/syncActionsClasses.json", String[].class));
} catch (SyncopeClientCompositeErrorException e) {
- LOG.error("While getting all job actions classes", e);
+ LOG.error("While getting all sync actions classes", e);
}
return actions;
}
Modified: incubator/syncope/trunk/console/src/main/resources/org/apache/syncope/console/pages/SyncTaskModalPage.html
URL: http://svn.apache.org/viewvc/incubator/syncope/trunk/console/src/main/resources/org/apache/syncope/console/pages/SyncTaskModalPage.html?rev=1401182&r1=1401181&r2=1401182&view=diff
==============================================================================
--- incubator/syncope/trunk/console/src/main/resources/org/apache/syncope/console/pages/SyncTaskModalPage.html (original)
+++ incubator/syncope/trunk/console/src/main/resources/org/apache/syncope/console/pages/SyncTaskModalPage.html Tue Oct 23 07:49:23 2012
@@ -104,10 +104,10 @@
<div class="tablerow">
<div class="tablecolumn_label short_dynamicsize">
- <label for="jobActionsClassName"><wicket:message key="actionsClass"/></label>
+ <label for="actionsClassName"><wicket:message key="actionsClass"/></label>
</div>
<div class="tablecolumn_field medium_dynamicsize">
- <span wicket:id="jobActionsClassName">[jobActionsClassName]</span>
+ <span wicket:id="actionsClassName">[actionsClassName]</span>
</div>
</div>
Modified: incubator/syncope/trunk/core/pom.xml
URL: http://svn.apache.org/viewvc/incubator/syncope/trunk/core/pom.xml?rev=1401182&r1=1401181&r2=1401182&view=diff
==============================================================================
--- incubator/syncope/trunk/core/pom.xml (original)
+++ incubator/syncope/trunk/core/pom.xml Tue Oct 23 07:49:23 2012
@@ -484,7 +484,8 @@ under the License.
<exclude name="**/workflow.properties" />
</patternset>
</unzip>
- <copy file="${project.build.directory}/test-classes/org/apache/syncope/core/scheduling/TestSyncJobActions.class" todir="${cargo.run.dir}/WEB-INF/classes/org/apache/syncope/core/scheduling" />
+ <copy file="${project.build.directory}/test-classes/org/apache/syncope/core/quartz/TestSyncActions.class"
+ todir="${cargo.run.dir}/WEB-INF/classes/org/apache/syncope/core/quartz" />
<copy file="${project.build.directory}/test-classes/db.jsp" todir="${cargo.run.dir}" />
<copy todir="${cargo.run.dir}/WEB-INF/classes" includeEmptyDirs="false">
<fileset dir="${project.build.directory}/test-classes">
Modified: incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/init/ImplementationClassNamesLoader.java
URL: http://svn.apache.org/viewvc/incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/init/ImplementationClassNamesLoader.java?rev=1401182&r1=1401181&r2=1401182&view=diff
==============================================================================
--- incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/init/ImplementationClassNamesLoader.java (original)
+++ incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/init/ImplementationClassNamesLoader.java Tue Oct 23 07:49:23 2012
@@ -26,10 +26,10 @@ import java.util.Map;
import java.util.Set;
import org.apache.syncope.core.persistence.validation.attrvalue.Validator;
import org.apache.syncope.core.report.Reportlet;
-import org.apache.syncope.core.scheduling.NotificationJob;
-import org.apache.syncope.core.scheduling.ReportJob;
-import org.apache.syncope.core.scheduling.SyncJob;
-import org.apache.syncope.core.scheduling.SyncJobActions;
+import org.apache.syncope.core.notification.NotificationJob;
+import org.apache.syncope.core.report.ReportJob;
+import org.apache.syncope.core.sync.SyncJob;
+import org.apache.syncope.core.sync.SyncActions;
import org.quartz.Job;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -51,7 +51,7 @@ public class ImplementationClassNamesLoa
REPORTLET,
JOB,
- JOB_ACTIONS,
+ SYNC_ACTIONS,
VALIDATOR
}
@@ -94,8 +94,8 @@ public class ImplementationClassNamesLoa
classNames.get(Type.JOB).add(metadata.getClassName());
}
- if (interfaces.contains(SyncJobActions.class) && !metadata.isAbstract()) {
- classNames.get(Type.JOB_ACTIONS).add(metadata.getClassName());
+ if (interfaces.contains(SyncActions.class) && !metadata.isAbstract()) {
+ classNames.get(Type.SYNC_ACTIONS).add(metadata.getClassName());
}
if (interfaces.contains(Validator.class) && !metadata.isAbstract()) {
Modified: incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/init/JobInstanceLoader.java
URL: http://svn.apache.org/viewvc/incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/init/JobInstanceLoader.java?rev=1401182&r1=1401181&r2=1401182&view=diff
==============================================================================
--- incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/init/JobInstanceLoader.java (original)
+++ incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/init/JobInstanceLoader.java Tue Oct 23 07:49:23 2012
@@ -32,12 +32,12 @@ import org.apache.syncope.core.persisten
import org.apache.syncope.core.persistence.dao.ConfDAO;
import org.apache.syncope.core.persistence.dao.ReportDAO;
import org.apache.syncope.core.persistence.dao.TaskDAO;
-import org.apache.syncope.core.scheduling.AbstractTaskJob;
-import org.apache.syncope.core.scheduling.DefaultSyncJobActions;
-import org.apache.syncope.core.scheduling.NotificationJob;
-import org.apache.syncope.core.scheduling.ReportJob;
-import org.apache.syncope.core.scheduling.SyncJob;
-import org.apache.syncope.core.scheduling.SyncJobActions;
+import org.apache.syncope.core.quartz.AbstractTaskJob;
+import org.apache.syncope.core.sync.DefaultSyncActions;
+import org.apache.syncope.core.notification.NotificationJob;
+import org.apache.syncope.core.report.ReportJob;
+import org.apache.syncope.core.sync.SyncJob;
+import org.apache.syncope.core.sync.SyncActions;
import org.apache.syncope.core.util.ApplicationContextProvider;
import org.quartz.Job;
import org.quartz.JobExecutionContext;
@@ -172,20 +172,20 @@ public class JobInstanceLoader {
((AbstractTaskJob) jobInstance).setTaskId(task.getId());
}
if (jobInstance instanceof SyncJob && task instanceof SyncTask) {
- String jobActionsClassName = ((SyncTask) task).getJobActionsClassName();
- Class syncJobActionsClass = DefaultSyncJobActions.class;
+ String jobActionsClassName = ((SyncTask) task).getActionsClassName();
+ Class syncActionsClass = DefaultSyncActions.class;
if (StringUtils.isNotBlank(jobActionsClassName)) {
try {
- syncJobActionsClass = Class.forName(jobActionsClassName);
+ syncActionsClass = Class.forName(jobActionsClassName);
} catch (Exception e) {
LOG.error("Class {} not found, reverting to {}", new Object[]{jobActionsClassName,
- syncJobActionsClass.getName(), e});
+ syncActionsClass.getName(), e});
}
}
- SyncJobActions syncJobActions = (SyncJobActions) getBeanFactory().createBean(syncJobActionsClass,
+ SyncActions syncActions = (SyncActions) getBeanFactory().createBean(syncActionsClass,
AbstractBeanDefinition.AUTOWIRE_BY_TYPE, true);
- ((SyncJob) jobInstance).setActions(syncJobActions);
+ ((SyncJob) jobInstance).setActions(syncActions);
}
registerJob(getJobName(task), jobInstance, cronExpression);
Copied: incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/notification/NotificationJob.java (from r1400893, incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/scheduling/NotificationJob.java)
URL: http://svn.apache.org/viewvc/incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/notification/NotificationJob.java?p2=incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/notification/NotificationJob.java&p1=incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/scheduling/NotificationJob.java&r1=1400893&r2=1401182&rev=1401182&view=diff
==============================================================================
--- incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/scheduling/NotificationJob.java (original)
+++ incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/notification/NotificationJob.java Tue Oct 23 07:49:23 2012
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.syncope.core.scheduling;
+package org.apache.syncope.core.notification;
import java.io.PrintWriter;
import java.io.StringWriter;
Modified: incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/notification/NotificationManager.java
URL: http://svn.apache.org/viewvc/incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/notification/NotificationManager.java?rev=1401182&r1=1401181&r2=1401182&view=diff
==============================================================================
--- incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/notification/NotificationManager.java (original)
+++ incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/notification/NotificationManager.java Tue Oct 23 07:49:23 2012
@@ -39,7 +39,6 @@ import org.apache.syncope.core.persisten
import org.apache.syncope.core.persistence.dao.UserDAO;
import org.apache.syncope.core.persistence.dao.UserSearchDAO;
import org.apache.syncope.core.rest.data.UserDataBinder;
-import org.apache.syncope.core.scheduling.NotificationJob;
import org.apache.syncope.core.util.ConnObjectUtil;
import org.apache.syncope.core.util.EntitlementUtil;
import org.apache.syncope.core.util.NotFoundException;
Modified: incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/SyncTask.java
URL: http://svn.apache.org/viewvc/incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/SyncTask.java?rev=1401182&r1=1401181&r2=1401182&view=diff
==============================================================================
--- incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/SyncTask.java (original)
+++ incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/SyncTask.java Tue Oct 23 07:49:23 2012
@@ -27,7 +27,7 @@ import javax.validation.constraints.Min;
import org.apache.syncope.client.to.UserTO;
import org.apache.syncope.client.util.XMLSerializer;
import org.apache.syncope.core.persistence.validation.entity.SyncTaskCheck;
-import org.apache.syncope.core.scheduling.SyncJob;
+import org.apache.syncope.core.sync.SyncJob;
@Entity
@SyncTaskCheck
@@ -69,7 +69,7 @@ public class SyncTask extends SchedTask
@Max(1)
private Integer fullReconciliation;
- private String jobActionsClassName;
+ private String actionsClassName;
/**
* Default constructor.
@@ -95,7 +95,7 @@ public class SyncTask extends SchedTask
public UserTO getUserTemplate() {
return userTemplate == null
? new UserTO()
- : XMLSerializer.<UserTO> deserialize(userTemplate);
+ : XMLSerializer.<UserTO>deserialize(userTemplate);
}
public void setUserTemplate(final UserTO userTemplate) {
@@ -142,11 +142,11 @@ public class SyncTask extends SchedTask
this.fullReconciliation = getBooleanAsInteger(fullReconciliation);
}
- public String getJobActionsClassName() {
- return jobActionsClassName;
+ public String getActionsClassName() {
+ return actionsClassName;
}
- public void setJobActionsClassName(String jobActionsClassName) {
- this.jobActionsClassName = jobActionsClassName;
+ public void setActionsClassName(String actionsClassName) {
+ this.actionsClassName = actionsClassName;
}
}
Modified: incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/dao/impl/ReportExecDAOImpl.java
URL: http://svn.apache.org/viewvc/incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/dao/impl/ReportExecDAOImpl.java?rev=1401182&r1=1401181&r2=1401182&view=diff
==============================================================================
--- incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/dao/impl/ReportExecDAOImpl.java (original)
+++ incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/dao/impl/ReportExecDAOImpl.java Tue Oct 23 07:49:23 2012
@@ -67,7 +67,7 @@ public class ReportExecDAOImpl extends A
/**
* This method is annotated as transactional because called from ReportJob.
*
- * @see org.apache.syncope.core.scheduling.ReportJob
+ * @see org.apache.syncope.core.report.ReportJob
* @param execution to be merged
* @return merged execution
* @throws InvalidEntityException if any validation error occurs
@@ -75,7 +75,6 @@ public class ReportExecDAOImpl extends A
@Override
@Transactional(rollbackFor = Throwable.class)
public ReportExec save(final ReportExec execution) throws InvalidEntityException {
-
return entityManager.merge(execution);
}
Modified: incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/dao/impl/ResourceDAOImpl.java
URL: http://svn.apache.org/viewvc/incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/dao/impl/ResourceDAOImpl.java?rev=1401182&r1=1401181&r2=1401182&view=diff
==============================================================================
--- incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/dao/impl/ResourceDAOImpl.java (original)
+++ incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/dao/impl/ResourceDAOImpl.java Tue Oct 23 07:49:23 2012
@@ -83,16 +83,15 @@ public class ResourceDAOImpl extends Abs
}
/**
- * This method has an explicit @Transactional annotation because it is
- * called by SyncJob.
+ * This method has an explicit Transactional annotation because it is called by SyncJob.
*
- * @see org.apache.syncope.core.scheduling.SyncJob
+ * @see org.apache.syncope.core.sync.SyncJob
*
* @param resource entity to be merged
* @return the same entity, updated
*/
@Override
- @Transactional(rollbackFor = { Throwable.class })
+ @Transactional(rollbackFor = {Throwable.class})
public ExternalResource save(final ExternalResource resource) {
ExternalResource merged = entityManager.merge(resource);
try {
Modified: incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/dao/impl/TaskExecDAOImpl.java
URL: http://svn.apache.org/viewvc/incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/dao/impl/TaskExecDAOImpl.java?rev=1401182&r1=1401181&r2=1401182&view=diff
==============================================================================
--- incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/dao/impl/TaskExecDAOImpl.java (original)
+++ incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/dao/impl/TaskExecDAOImpl.java Tue Oct 23 07:49:23 2012
@@ -85,16 +85,17 @@ public class TaskExecDAOImpl extends Abs
}
/**
- * This method has an explicit @Transactional annotation because it is called by AbstractJob.
+ * This method has an explicit Transactional annotation because it is called by AbstractJob.
*
- * @see org.apache.syncope.core.scheduling.AbstractJob
+ * @see AbstractJob
*
- * @param execution entity to be merged
- * @return the same entity, updated
+ * @param taskId task id
+ * @param execution task execution
+ * @throws InvalidEntityException if any bean validation fails
*/
@Override
@Transactional(rollbackFor = {Throwable.class})
- public void saveAndAdd(Long taskId, TaskExec execution) throws InvalidEntityException {
+ public void saveAndAdd(final Long taskId, final TaskExec execution) throws InvalidEntityException {
Task task = taskDAO.find(taskId);
task.addExec(execution);
taskDAO.save(task);
Modified: incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/validation/entity/SchedTaskValidator.java
URL: http://svn.apache.org/viewvc/incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/validation/entity/SchedTaskValidator.java?rev=1401182&r1=1401181&r2=1401182&view=diff
==============================================================================
--- incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/validation/entity/SchedTaskValidator.java (original)
+++ incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/validation/entity/SchedTaskValidator.java Tue Oct 23 07:49:23 2012
@@ -22,7 +22,7 @@ import java.text.ParseException;
import javax.validation.ConstraintValidator;
import javax.validation.ConstraintValidatorContext;
import org.apache.syncope.core.persistence.beans.SchedTask;
-import org.apache.syncope.core.scheduling.AbstractTaskJob;
+import org.apache.syncope.core.quartz.AbstractTaskJob;
import org.apache.syncope.types.EntityViolationType;
import org.quartz.CronExpression;
Modified: incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/validation/entity/SyncTaskValidator.java
URL: http://svn.apache.org/viewvc/incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/validation/entity/SyncTaskValidator.java?rev=1401182&r1=1401181&r2=1401182&view=diff
==============================================================================
--- incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/validation/entity/SyncTaskValidator.java (original)
+++ incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/validation/entity/SyncTaskValidator.java Tue Oct 23 07:49:23 2012
@@ -22,7 +22,7 @@ import javax.validation.ConstraintValida
import javax.validation.ConstraintValidatorContext;
import org.apache.commons.lang.StringUtils;
import org.apache.syncope.core.persistence.beans.SyncTask;
-import org.apache.syncope.core.scheduling.SyncJobActions;
+import org.apache.syncope.core.sync.SyncActions;
import org.apache.syncope.types.EntityViolationType;
public class SyncTaskValidator extends AbstractValidator implements ConstraintValidator<SyncTaskCheck, SyncTask> {
@@ -59,23 +59,23 @@ public class SyncTaskValidator extends A
.addNode(object + ".resource is NULL").addConstraintViolation();
}
- if (StringUtils.isNotBlank(object.getJobActionsClassName())) {
- Class<?> syncJobActionsClass = null;
+ if (StringUtils.isNotBlank(object.getActionsClassName())) {
+ Class<?> syncActionsClass = null;
boolean isAssignable = false;
try {
- syncJobActionsClass = Class.forName(object.getJobActionsClassName());
- isAssignable = SyncJobActions.class.isAssignableFrom(syncJobActionsClass);
+ syncActionsClass = Class.forName(object.getActionsClassName());
+ isAssignable = SyncActions.class.isAssignableFrom(syncActionsClass);
} catch (Exception e) {
- LOG.error("Invalid SyncJobActions specified", e);
+ LOG.error("Invalid SyncActions specified", e);
isValid = false;
}
- if (syncJobActionsClass == null || !isAssignable) {
+ if (syncActionsClass == null || !isAssignable) {
isValid = false;
context.disableDefaultConstraintViolation();
context.buildConstraintViolationWithTemplate(EntityViolationType.InvalidSyncTask.toString())
- .addNode(object + ".syncJobActionsClassName is not valid").addConstraintViolation();
+ .addNode(object + ".actionsClassName is not valid").addConstraintViolation();
}
}
}
Copied: incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/quartz/AbstractTaskJob.java (from r1400893, incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/scheduling/AbstractTaskJob.java)
URL: http://svn.apache.org/viewvc/incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/quartz/AbstractTaskJob.java?p2=incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/quartz/AbstractTaskJob.java&p1=incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/scheduling/AbstractTaskJob.java&r1=1400893&r2=1401182&rev=1401182&view=diff
==============================================================================
--- incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/scheduling/AbstractTaskJob.java (original)
+++ incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/quartz/AbstractTaskJob.java Tue Oct 23 07:49:23 2012
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.syncope.core.scheduling;
+package org.apache.syncope.core.quartz;
import java.io.PrintWriter;
import java.io.StringWriter;
Copied: incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/quartz/SampleJob.java (from r1400893, incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/scheduling/SampleJob.java)
URL: http://svn.apache.org/viewvc/incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/quartz/SampleJob.java?p2=incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/quartz/SampleJob.java&p1=incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/scheduling/SampleJob.java&r1=1400893&r2=1401182&rev=1401182&view=diff
==============================================================================
--- incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/scheduling/SampleJob.java (original)
+++ incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/quartz/SampleJob.java Tue Oct 23 07:49:23 2012
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.syncope.core.scheduling;
+package org.apache.syncope.core.quartz;
import org.quartz.JobExecutionException;
import org.apache.syncope.core.persistence.beans.SchedTask;
Copied: incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/quartz/SpringBeanJobFactory.java (from r1400893, incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/scheduling/SpringBeanJobFactory.java)
URL: http://svn.apache.org/viewvc/incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/quartz/SpringBeanJobFactory.java?p2=incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/quartz/SpringBeanJobFactory.java&p1=incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/scheduling/SpringBeanJobFactory.java&r1=1400893&r2=1401182&rev=1401182&view=diff
==============================================================================
--- incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/scheduling/SpringBeanJobFactory.java (original)
+++ incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/quartz/SpringBeanJobFactory.java Tue Oct 23 07:49:23 2012
@@ -16,8 +16,13 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.syncope.core.scheduling;
+package org.apache.syncope.core.quartz;
+import org.apache.syncope.core.init.JobInstanceLoader;
+import org.apache.syncope.core.persistence.beans.Report;
+import org.apache.syncope.core.persistence.beans.SchedTask;
+import org.apache.syncope.core.persistence.dao.ReportDAO;
+import org.apache.syncope.core.persistence.dao.TaskDAO;
import org.quartz.SchedulerContext;
import org.quartz.spi.TriggerFiredBundle;
import org.springframework.beans.BeanWrapper;
@@ -25,11 +30,6 @@ import org.springframework.beans.Mutable
import org.springframework.beans.PropertyAccessorFactory;
import org.springframework.context.ApplicationContext;
import org.springframework.context.ConfigurableApplicationContext;
-import org.apache.syncope.core.init.JobInstanceLoader;
-import org.apache.syncope.core.persistence.beans.Report;
-import org.apache.syncope.core.persistence.beans.SchedTask;
-import org.apache.syncope.core.persistence.dao.ReportDAO;
-import org.apache.syncope.core.persistence.dao.TaskDAO;
public class SpringBeanJobFactory extends org.springframework.scheduling.quartz.SpringBeanJobFactory {
Copied: incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/quartz/package-info.java (from r1400893, incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/scheduling/package-info.java)
URL: http://svn.apache.org/viewvc/incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/quartz/package-info.java?p2=incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/quartz/package-info.java&p1=incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/scheduling/package-info.java&r1=1400893&r2=1401182&rev=1401182&view=diff
==============================================================================
--- incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/scheduling/package-info.java (original)
+++ incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/quartz/package-info.java Tue Oct 23 07:49:23 2012
@@ -16,5 +16,5 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.syncope.core.scheduling;
+package org.apache.syncope.core.quartz;
Modified: incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/report/AbstractReportlet.java
URL: http://svn.apache.org/viewvc/incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/report/AbstractReportlet.java?rev=1401182&r1=1401181&r2=1401182&view=diff
==============================================================================
--- incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/report/AbstractReportlet.java (original)
+++ incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/report/AbstractReportlet.java Tue Oct 23 07:49:23 2012
@@ -24,7 +24,7 @@ import org.slf4j.LoggerFactory;
import org.springframework.transaction.annotation.Transactional;
import org.apache.syncope.client.SyncopeConstants;
import org.apache.syncope.client.report.AbstractReportletConf;
-import static org.apache.syncope.core.scheduling.ReportXMLConst.*;
+import static org.apache.syncope.core.report.ReportXMLConst.*;
import org.xml.sax.ContentHandler;
import org.xml.sax.SAXException;
import org.xml.sax.helpers.AttributesImpl;
Copied: incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/report/ReportJob.java (from r1400893, incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/scheduling/ReportJob.java)
URL: http://svn.apache.org/viewvc/incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/report/ReportJob.java?p2=incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/report/ReportJob.java&p1=incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/scheduling/ReportJob.java&r1=1400893&r2=1401182&rev=1401182&view=diff
==============================================================================
--- incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/scheduling/ReportJob.java (original)
+++ incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/report/ReportJob.java Tue Oct 23 07:49:23 2012
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.syncope.core.scheduling;
+package org.apache.syncope.core.report;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
@@ -39,9 +39,9 @@ import org.apache.syncope.core.persisten
import org.apache.syncope.core.report.ReportException;
import org.apache.syncope.core.report.Reportlet;
import org.apache.syncope.core.rest.data.ReportDataBinder;
-import static org.apache.syncope.core.scheduling.ReportXMLConst.ATTR_NAME;
-import static org.apache.syncope.core.scheduling.ReportXMLConst.ELEMENT_REPORT;
-import static org.apache.syncope.core.scheduling.ReportXMLConst.XSD_STRING;
+import static org.apache.syncope.core.report.ReportXMLConst.ATTR_NAME;
+import static org.apache.syncope.core.report.ReportXMLConst.ELEMENT_REPORT;
+import static org.apache.syncope.core.report.ReportXMLConst.XSD_STRING;
import org.apache.syncope.core.util.ApplicationContextProvider;
import org.apache.syncope.types.ReportExecStatus;
import org.quartz.DisallowConcurrentExecution;
Copied: incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/report/ReportXMLConst.java (from r1400893, incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/scheduling/ReportXMLConst.java)
URL: http://svn.apache.org/viewvc/incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/report/ReportXMLConst.java?p2=incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/report/ReportXMLConst.java&p1=incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/scheduling/ReportXMLConst.java&r1=1400893&r2=1401182&rev=1401182&view=diff
==============================================================================
--- incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/scheduling/ReportXMLConst.java (original)
+++ incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/report/ReportXMLConst.java Tue Oct 23 07:49:23 2012
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.syncope.core.scheduling;
+package org.apache.syncope.core.report;
public class ReportXMLConst {
Modified: incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/report/UserReportlet.java
URL: http://svn.apache.org/viewvc/incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/report/UserReportlet.java?rev=1401182&r1=1401181&r2=1401182&view=diff
==============================================================================
--- incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/report/UserReportlet.java (original)
+++ incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/report/UserReportlet.java Tue Oct 23 07:49:23 2012
@@ -36,7 +36,7 @@ import org.apache.syncope.core.persisten
import org.apache.syncope.core.persistence.dao.UserSearchDAO;
import org.apache.syncope.core.rest.data.RoleDataBinder;
import org.apache.syncope.core.rest.data.UserDataBinder;
-import static org.apache.syncope.core.scheduling.ReportXMLConst.*;
+import static org.apache.syncope.core.report.ReportXMLConst.*;
import org.apache.syncope.core.util.EntitlementUtil;
import org.xml.sax.ContentHandler;
import org.xml.sax.SAXException;
Modified: incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/rest/controller/TaskController.java
URL: http://svn.apache.org/viewvc/incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/rest/controller/TaskController.java?rev=1401182&r1=1401181&r2=1401182&view=diff
==============================================================================
--- incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/rest/controller/TaskController.java (original)
+++ incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/rest/controller/TaskController.java Tue Oct 23 07:49:23 2012
@@ -41,8 +41,8 @@ import org.apache.syncope.core.persisten
import org.apache.syncope.core.persistence.dao.TaskExecDAO;
import org.apache.syncope.core.propagation.PropagationTaskExecutor;
import org.apache.syncope.core.rest.data.TaskDataBinder;
-import org.apache.syncope.core.scheduling.AbstractTaskJob;
-import org.apache.syncope.core.scheduling.NotificationJob;
+import org.apache.syncope.core.quartz.AbstractTaskJob;
+import org.apache.syncope.core.notification.NotificationJob;
import org.apache.syncope.core.util.NotFoundException;
import org.apache.syncope.core.util.TaskUtil;
import org.apache.syncope.types.AuditElements.Category;
@@ -250,14 +250,14 @@ public class TaskController extends Abst
}
@PreAuthorize("hasRole('TASK_LIST')")
- @RequestMapping(method = RequestMethod.GET, value = "/jobActionsClasses")
- public ModelAndView getJobActionClasses() {
- Set<String> jobActionsClasses = classNamesLoader.getClassNames(ImplementationClassNamesLoader.Type.JOB_ACTIONS);
+ @RequestMapping(method = RequestMethod.GET, value = "/syncActionsClasses")
+ public ModelAndView getSyncActionsClasses() {
+ Set<String> actionsClasses = classNamesLoader.getClassNames(ImplementationClassNamesLoader.Type.SYNC_ACTIONS);
- auditManager.audit(Category.task, TaskSubCategory.getJobActionClasses, Result.success,
- "Successfully listed all SyncJobActions classes: " + jobActionsClasses.size());
+ auditManager.audit(Category.task, TaskSubCategory.getSyncActionsClasses, Result.success,
+ "Successfully listed all SyncActions classes: " + actionsClasses.size());
- return new ModelAndView().addObject(jobActionsClasses);
+ return new ModelAndView().addObject(actionsClasses);
}
@PreAuthorize("hasRole('TASK_READ')")
Modified: incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/rest/data/TaskDataBinder.java
URL: http://svn.apache.org/viewvc/incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/rest/data/TaskDataBinder.java?rev=1401182&r1=1401181&r2=1401182&view=diff
==============================================================================
--- incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/rest/data/TaskDataBinder.java (original)
+++ incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/rest/data/TaskDataBinder.java Tue Oct 23 07:49:23 2012
@@ -135,7 +135,7 @@ public class TaskDataBinder {
task.setSyncStatus(taskTO.isSyncStatus());
task.setFullReconciliation(taskTO.isFullReconciliation());
- task.setJobActionsClassName(taskTO.getJobActionsClassName());
+ task.setActionsClassName(taskTO.getActionsClassName());
}
public SchedTask createSchedTask(final SchedTaskTO taskTO, final TaskUtil taskUtil)
Copied: incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/sync/DefaultSyncActions.java (from r1400893, incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/scheduling/DefaultSyncJobActions.java)
URL: http://svn.apache.org/viewvc/incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/sync/DefaultSyncActions.java?p2=incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/sync/DefaultSyncActions.java&p1=incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/scheduling/DefaultSyncJobActions.java&r1=1400893&r2=1401182&rev=1401182&view=diff
==============================================================================
--- incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/scheduling/DefaultSyncJobActions.java (original)
+++ incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/sync/DefaultSyncActions.java Tue Oct 23 07:49:23 2012
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.syncope.core.scheduling;
+package org.apache.syncope.core.sync;
import java.util.List;
import org.apache.syncope.client.mod.UserMod;
@@ -26,11 +26,11 @@ import org.identityconnectors.framework.
import org.quartz.JobExecutionException;
/**
- * Default (empty) implementation of SyncJobActions.
+ * Default (empty) implementation of SyncActions.
*
- * @see SyncJobActions
+ * @see SyncActions
*/
-public class DefaultSyncJobActions implements SyncJobActions {
+public class DefaultSyncActions implements SyncActions {
@Override
public void beforeAll(final SyncTask task) throws JobExecutionException {
Copied: incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/sync/SyncActions.java (from r1400893, incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/scheduling/SyncJobActions.java)
URL: http://svn.apache.org/viewvc/incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/sync/SyncActions.java?p2=incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/sync/SyncActions.java&p1=incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/scheduling/SyncJobActions.java&r1=1400893&r2=1401182&rev=1401182&view=diff
==============================================================================
--- incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/scheduling/SyncJobActions.java (original)
+++ incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/sync/SyncActions.java Tue Oct 23 07:49:23 2012
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.syncope.core.scheduling;
+package org.apache.syncope.core.sync;
import java.util.List;
import org.apache.syncope.client.mod.UserMod;
@@ -28,7 +28,7 @@ import org.quartz.JobExecutionException;
/**
* Interface for actions to be performed during SyncJob execution.
*/
-public interface SyncJobActions {
+public interface SyncActions {
/**
* Action to be executed before to start the synchronization task execution.
Copied: incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/sync/SyncJob.java (from r1400893, incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/scheduling/SyncJob.java)
URL: http://svn.apache.org/viewvc/incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/sync/SyncJob.java?p2=incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/sync/SyncJob.java&p1=incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/scheduling/SyncJob.java&r1=1400893&r2=1401182&rev=1401182&view=diff
==============================================================================
--- incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/scheduling/SyncJob.java (original)
+++ incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/sync/SyncJob.java Tue Oct 23 07:49:23 2012
@@ -16,59 +16,32 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.syncope.core.scheduling;
+package org.apache.syncope.core.sync;
import java.util.ArrayList;
-import java.util.Collection;
-import java.util.Collections;
-import java.util.HashMap;
import java.util.List;
-import java.util.Map;
-import org.apache.syncope.client.mod.UserMod;
-import org.apache.syncope.client.search.AttributeCond;
-import org.apache.syncope.client.search.NodeCond;
-import org.apache.syncope.client.search.SyncopeUserCond;
-import org.apache.syncope.client.to.UserTO;
import org.apache.syncope.core.init.ConnInstanceLoader;
-import org.apache.syncope.core.notification.NotificationManager;
import org.apache.syncope.core.persistence.beans.Entitlement;
import org.apache.syncope.core.persistence.beans.ExternalResource;
-import org.apache.syncope.core.persistence.beans.PropagationTask;
import org.apache.syncope.core.persistence.beans.SchemaMapping;
import org.apache.syncope.core.persistence.beans.SyncPolicy;
import org.apache.syncope.core.persistence.beans.SyncTask;
import org.apache.syncope.core.persistence.beans.TaskExec;
-import org.apache.syncope.core.persistence.beans.user.SyncopeUser;
-import org.apache.syncope.core.persistence.beans.user.UAttrValue;
import org.apache.syncope.core.persistence.dao.EntitlementDAO;
import org.apache.syncope.core.persistence.dao.ResourceDAO;
-import org.apache.syncope.core.persistence.dao.UserDAO;
-import org.apache.syncope.core.persistence.dao.UserSearchDAO;
import org.apache.syncope.core.propagation.ConnectorFacadeProxy;
-import org.apache.syncope.core.propagation.PropagationException;
-import org.apache.syncope.core.propagation.PropagationManager;
-import org.apache.syncope.core.propagation.PropagationTaskExecutor;
-import org.apache.syncope.core.rest.controller.InvalidSearchConditionException;
-import org.apache.syncope.core.rest.controller.UnauthorizedRoleException;
-import org.apache.syncope.core.rest.data.UserDataBinder;
-import org.apache.syncope.core.scheduling.SyncResult.Operation;
-import org.apache.syncope.core.util.ConnObjectUtil;
+import org.apache.syncope.core.quartz.AbstractTaskJob;
+import org.apache.syncope.core.util.ApplicationContextProvider;
import org.apache.syncope.core.util.EntitlementUtil;
-import org.apache.syncope.core.util.NotFoundException;
import org.apache.syncope.core.util.SchemaMappingUtil;
-import org.apache.syncope.core.workflow.UserWorkflowAdapter;
-import org.apache.syncope.core.workflow.WorkflowResult;
import org.apache.syncope.types.ConflictResolutionAction;
import org.apache.syncope.types.SyncPolicySpec;
import org.apache.syncope.types.TraceLevel;
-import org.identityconnectors.framework.common.objects.Attribute;
-import org.identityconnectors.framework.common.objects.AttributeUtil;
import org.identityconnectors.framework.common.objects.ObjectClass;
-import org.identityconnectors.framework.common.objects.OperationalAttributes;
-import org.identityconnectors.framework.common.objects.SyncDelta;
-import org.identityconnectors.framework.common.objects.SyncResultsHandler;
import org.quartz.JobExecutionException;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.support.AbstractBeanDefinition;
+import org.springframework.beans.factory.support.DefaultListableBeanFactory;
import org.springframework.security.authentication.UsernamePasswordAuthenticationToken;
import org.springframework.security.core.GrantedAuthority;
import org.springframework.security.core.authority.SimpleGrantedAuthority;
@@ -79,7 +52,7 @@ import org.springframework.security.core
/**
* Job for executing synchronization tasks.
*
- * @see org.apache.syncope.core.scheduling.Job
+ * @see AbstractTaskJob
* @see SyncTask
*/
public class SyncJob extends AbstractTaskJob {
@@ -97,377 +70,21 @@ public class SyncJob extends AbstractTas
private ResourceDAO resourceDAO;
/**
- * User DAO.
- */
- @Autowired
- private UserDAO userDAO;
-
- /**
- * User DAO.
- */
- @Autowired
- private UserSearchDAO userSearchDAO;
-
- /**
* Entitlement DAO.
*/
@Autowired
private EntitlementDAO entitlementDAO;
/**
- * User workflow adapter.
- */
- @Autowired
- private UserWorkflowAdapter wfAdapter;
-
- /**
- * Propagation Manager.
- */
- @Autowired
- private PropagationManager propagationManager;
-
- /**
- * PropagationTask executor.
- */
- @Autowired
- private PropagationTaskExecutor taskExecutor;
-
- /**
- * User data binder.
- */
- @Autowired
- private UserDataBinder userDataBinder;
-
- /**
* SyncJob actions.
*/
- private SyncJobActions actions;
-
- /**
- * ConnectorObject util.
- */
- @Autowired
- private ConnObjectUtil connObjectUtil;
+ private SyncActions actions;
- /**
- * Notification Manager.
- */
- @Autowired
- private NotificationManager notificationManager;
-
- public void setActions(final SyncJobActions actions) {
+ public void setActions(final SyncActions actions) {
this.actions = actions;
}
/**
- * Find users based on mapped uid value (or previous uid value, if updated).
- *
- * @param delta sync delta
- * @return list of matching users
- */
- private List<Long> findExistingUsers(final SyncDelta delta) {
- final SyncTask syncTask = (SyncTask) this.task;
-
- final String uid = delta.getPreviousUid() == null
- ? delta.getUid().getUidValue()
- : delta.getPreviousUid().getUidValue();
-
- // ---------------------------------
- // Get sync policy specification
- // ---------------------------------
- SyncPolicySpec policySpec = null;
- if (syncTask.getResource().getSyncPolicy() != null) {
- policySpec = (SyncPolicySpec) syncTask.getResource().getSyncPolicy().getSpecification();
- }
- // ---------------------------------
-
- final List<Long> result = new ArrayList<Long>();
-
- if (policySpec == null || policySpec.getAlternativeSearchAttrs().isEmpty()) {
- SyncopeUser found;
- List<SyncopeUser> users;
-
- final SchemaMapping accountIdMap =
- SchemaMappingUtil.getAccountIdMapping(syncTask.getResource().getMappings());
- switch (accountIdMap.getIntMappingType()) {
- case Username:
- found = userDAO.find(uid);
- if (found != null) {
- result.add(found.getId());
- }
- break;
-
- case SyncopeUserId:
- found = userDAO.find(Long.parseLong(uid));
- if (found != null) {
- result.add(found.getId());
- }
- break;
-
- case UserSchema:
- final UAttrValue value = new UAttrValue();
- value.setStringValue(uid);
- users = userDAO.findByAttrValue(accountIdMap.getIntAttrName(), value);
- for (SyncopeUser user : users) {
- result.add(user.getId());
- }
- break;
-
- case UserDerivedSchema:
- try {
- users = userDAO.findByDerAttrValue(accountIdMap.getIntAttrName(), uid);
- for (SyncopeUser user : users) {
- result.add(user.getId());
- }
- } catch (InvalidSearchConditionException e) {
- LOG.error("Could not search for matching users", e);
- }
- break;
-
- default:
- LOG.error("Invalid accountId type '{}'", accountIdMap.getIntMappingType());
- }
- } else {
- // search for external attribute's name/value of each specified name
-
- final Map<String, Attribute> extValues = new HashMap<String, Attribute>();
-
- for (SchemaMapping mapping : syncTask.getResource().getMappings()) {
- extValues.put(SchemaMappingUtil.getIntAttrName(mapping),
- delta.getObject().getAttributeByName(SchemaMappingUtil.getExtAttrName(mapping)));
- }
-
- // search for user by attribute(s) specified in the policy
- NodeCond searchCond = null;
-
- for (String schema : policySpec.getAlternativeSearchAttrs()) {
- Attribute value = extValues.get(schema);
-
- AttributeCond.Type type;
- String expression = null;
-
- if (value == null || value.getValue() == null || value.getValue().isEmpty()) {
- type = AttributeCond.Type.ISNULL;
- } else {
- type = AttributeCond.Type.EQ;
- expression = value.getValue().size() > 1
- ? value.getValue().toString()
- : value.getValue().get(0).toString();
- }
-
- NodeCond nodeCond;
- // just Username or SyncopeUserId can be selected to be used
- if ("id".equalsIgnoreCase(schema) || "username".equalsIgnoreCase(schema)) {
- SyncopeUserCond cond = new SyncopeUserCond();
- cond.setSchema(schema);
- cond.setType(type);
- cond.setExpression(expression);
-
- nodeCond = NodeCond.getLeafCond(cond);
- } else {
- AttributeCond cond = new AttributeCond();
- cond.setSchema(schema);
- cond.setType(type);
- cond.setExpression(expression);
-
- nodeCond = NodeCond.getLeafCond(cond);
- }
-
- searchCond = searchCond == null
- ? nodeCond
- : NodeCond.getAndCond(searchCond, nodeCond);
- }
-
- final List<SyncopeUser> users =
- userSearchDAO.search(EntitlementUtil.getRoleIds(entitlementDAO.findAll()), searchCond);
- for (SyncopeUser user : users) {
- result.add(user.getId());
- }
- }
-
- return result;
- }
-
- private List<SyncResult> createUser(SyncDelta delta, final boolean dryRun) throws JobExecutionException {
- if (!((SyncTask) task).isPerformCreate()) {
- LOG.debug("SyncTask not configured for create");
- return Collections.EMPTY_LIST;
- }
-
- final SyncResult result = new SyncResult();
- result.setOperation(Operation.CREATE);
-
- UserTO userTO = connObjectUtil.getUserTO(delta.getObject(), (SyncTask) task);
-
- delta = actions.beforeCreate(delta, userTO);
-
- if (dryRun) {
- result.setUserId(0L);
- result.setUsername(userTO.getUsername());
- result.setStatus(Status.SUCCESS);
- } else {
- try {
- Boolean enabled = null;
-
- // --------------------------
- // Check for status synchronization ...
- // --------------------------
- if (((SyncTask) this.task).isSyncStatus()) {
- Attribute status = AttributeUtil.find(OperationalAttributes.ENABLE_NAME, delta.getObject()
- .getAttributes());
-
- if (status != null) {
- enabled = status.getValue() != null && !status.getValue().isEmpty()
- ? (Boolean) status.getValue().get(0)
- : null;
- }
- }
- // --------------------------
-
- WorkflowResult<Map.Entry<Long, Boolean>> created = wfAdapter.create(userTO, true, enabled);
-
- List<PropagationTask> tasks = propagationManager.getCreateTaskIds(created, userTO.getPassword(), userTO
- .getVirtualAttributes(), Collections.singleton(((SyncTask) this.task).getResource().getName()));
-
- taskExecutor.execute(tasks);
-
- notificationManager.createTasks(created.getResult().getKey(), created.getPerformedTasks());
-
- userTO = userDataBinder.getUserTO(created.getResult().getKey());
-
- result.setUserId(created.getResult().getKey());
- result.setUsername(userTO.getUsername());
- result.setStatus(Status.SUCCESS);
- } catch (PropagationException e) {
- LOG.error("Could not propagate user " + delta.getUid().getUidValue(), e);
- } catch (Exception e) {
- result.setStatus(Status.FAILURE);
- result.setMessage(e.getMessage());
- LOG.error("Could not create user " + delta.getUid().getUidValue(), e);
- }
- }
-
- actions.after(delta, userTO, result);
- return Collections.singletonList(result);
- }
-
- private List<SyncResult> updateUsers(SyncDelta delta, final List<Long> users, final boolean dryRun)
- throws JobExecutionException {
-
- if (!((SyncTask) task).isPerformUpdate()) {
- LOG.debug("SyncTask not configured for update");
- return Collections.EMPTY_LIST;
- }
-
- LOG.debug("About to update {}", users);
-
- List<SyncResult> results = new ArrayList<SyncResult>();
-
- for (Long userId : users) {
- final SyncResult result = new SyncResult();
- result.setOperation(Operation.UPDATE);
-
- try {
- UserTO userTO = userDataBinder.getUserTO(userId);
- try {
-
- final UserMod userMod = connObjectUtil.getUserMod(userId, delta.getObject(), (SyncTask) task);
- delta = actions.beforeUpdate(delta, userTO, userMod);
-
- result.setStatus(Status.SUCCESS);
- result.setUserId(userMod.getId());
- result.setUsername(userMod.getUsername());
-
- if (!dryRun) {
- WorkflowResult<Map.Entry<Long, Boolean>> updated = wfAdapter.update(userMod);
-
- List<PropagationTask> tasks = propagationManager.getUpdateTaskIds(updated, userMod
- .getPassword(), userMod.getVirtualAttributesToBeRemoved(), userMod
- .getVirtualAttributesToBeUpdated(), Collections.singleton(((SyncTask) this.task)
- .getResource().getName()));
-
- taskExecutor.execute(tasks);
-
- notificationManager.createTasks(updated.getResult().getKey(), updated.getPerformedTasks());
-
- userTO = userDataBinder.getUserTO(updated.getResult().getKey());
- }
- } catch (PropagationException e) {
- LOG.error("Could not propagate user " + delta.getUid().getUidValue(), e);
- } catch (Exception e) {
- result.setStatus(Status.FAILURE);
- result.setMessage(e.getMessage());
- LOG.error("Could not update user " + delta.getUid().getUidValue(), e);
- }
-
- actions.after(delta, userTO, result);
- results.add(result);
- } catch (NotFoundException e) {
- LOG.error("Could not find user {}", userId, e);
- } catch (UnauthorizedRoleException e) {
- LOG.error("Not allowed to read user {}", userId, e);
- }
- }
-
- return results;
- }
-
- private List<SyncResult> deleteUsers(SyncDelta delta, final List<Long> users, final boolean dryRun)
- throws JobExecutionException {
-
- if (!((SyncTask) task).isPerformDelete()) {
- LOG.debug("SyncTask not configured for delete");
- return Collections.EMPTY_LIST;
- }
-
- LOG.debug("About to delete {}", users);
-
- List<SyncResult> results = new ArrayList<SyncResult>();
-
- for (Long userId : users) {
- try {
- UserTO userTO = userDataBinder.getUserTO(userId);
- delta = actions.beforeDelete(delta, userTO);
-
- final SyncResult result = new SyncResult();
- result.setUserId(userId);
- result.setUsername(userTO.getUsername());
- result.setOperation(Operation.DELETE);
- result.setStatus(Status.SUCCESS);
-
- if (!dryRun) {
- try {
- List<PropagationTask> tasks = propagationManager.getDeleteTaskIds(userId,
- ((SyncTask) this.task).getResource().getName());
- taskExecutor.execute(tasks);
-
- notificationManager.createTasks(userId, Collections.singleton("delete"));
- } catch (Exception e) {
- LOG.error("Could not propagate user " + userId, e);
- }
-
- try {
- wfAdapter.delete(userId);
- } catch (Exception e) {
- result.setStatus(Status.FAILURE);
- result.setMessage(e.getMessage());
- LOG.error("Could not delete user " + userId, e);
- }
- }
-
- actions.after(delta, userTO, result);
- results.add(result);
- } catch (NotFoundException e) {
- LOG.error("Could not find user {}", userId, e);
- } catch (UnauthorizedRoleException e) {
- LOG.error("Not allowed to read user {}", userId, e);
- }
- }
-
- return results;
- }
-
- /**
* Create a textual report of the synchronization, based on the trace level.
*
* @param syncResults Sync results
@@ -591,7 +208,6 @@ public class SyncJob extends AbstractTas
@Override
protected String doExecute(final boolean dryRun) throws JobExecutionException {
-
// get all entitlements to perform updates
if (EntitlementUtil.getOwnedEntitlementNames().isEmpty()) {
setupSecurity();
@@ -619,22 +235,29 @@ public class SyncJob extends AbstractTas
throw new JobExecutionException("Invalid account id mapping for resource " + syncTask.getResource());
}
- LOG.debug("Execute synchronization with token {}", syncTask.getResource().getSyncToken() != null
- ? syncTask.getResource().getSyncToken().getValue()
- : null);
+ LOG.debug("Execute synchronization with token {}", syncTask.getResource().getSyncToken());
final List<SyncResult> results = new ArrayList<SyncResult>();
actions.beforeAll(syncTask);
- try {
- final SyncPolicy syncPolicy = syncTask.getResource().getSyncPolicy();
-
- final ConflictResolutionAction resAct = syncPolicy == null || syncPolicy.getSpecification() == null
- ? ConflictResolutionAction.IGNORE
- : ((SyncPolicySpec) syncPolicy.getSpecification()).getConflictResolutionAction();
+ final SyncPolicy syncPolicy = syncTask.getResource().getSyncPolicy();
+ final ConflictResolutionAction resAct = syncPolicy == null || syncPolicy.getSpecification() == null
+ ? ConflictResolutionAction.IGNORE
+ : ((SyncPolicySpec) syncPolicy.getSpecification()).getConflictResolutionAction();
+
+ // Prepare hanlder for SyncDelta objects
+ final SyncopeSyncResultHanlder handler =
+ (SyncopeSyncResultHanlder) ((DefaultListableBeanFactory) ApplicationContextProvider.
+ getApplicationContext().getBeanFactory()).createBean(
+ SyncopeSyncResultHanlder.class, AbstractBeanDefinition.AUTOWIRE_BY_TYPE, false);
+ handler.setActions(actions);
+ handler.setDryRun(dryRun);
+ handler.setResAct(resAct);
+ handler.setResults(results);
+ handler.setSyncTask(syncTask);
- final SyncJobResultsHandler handler = new SyncJobResultsHandler(results, syncTask, resAct, dryRun);
+ try {
if (syncTask.isFullReconciliation()) {
connector.getAllObjects(ObjectClass.ACCOUNT, handler,
connector.getOperationOptions(syncTask.getResource()));
@@ -665,89 +288,6 @@ public class SyncJob extends AbstractTas
return result.toString();
}
- /**
- * Handle deltas.
- *
- * @param syncTask sync task.
- * @param delta delta.
- * @param resAct conflict resolution action.
- * @param dryRun dry run.
- * @return list of synchronization results.
- * @throws JobExecutionException in case of synchronization failure.
- */
- protected final List<SyncResult> handleDelta(final SyncTask syncTask, final SyncDelta delta,
- final ConflictResolutionAction resAct, final boolean dryRun) throws JobExecutionException {
-
- final List<SyncResult> results = new ArrayList<SyncResult>();
-
- LOG.debug("Process '{}' for '{}'", delta.getDeltaType(), delta.getUid().getUidValue());
-
- final List<Long> users = findExistingUsers(delta);
-
- switch (delta.getDeltaType()) {
- case CREATE_OR_UPDATE:
- if (users.isEmpty()) {
- results.addAll(createUser(delta, dryRun));
- } else if (users.size() == 1) {
- results.addAll(updateUsers(delta, users.subList(0, 1), dryRun));
- } else {
- switch (resAct) {
- case IGNORE:
- LOG.error("More than one match {}", users);
- break;
-
- case FIRSTMATCH:
- results.addAll(updateUsers(delta, users.subList(0, 1), dryRun));
- break;
-
- case LASTMATCH:
- results.addAll(updateUsers(delta, users.subList(users.size() - 1, users.size()), dryRun));
- break;
-
- case ALL:
- results.addAll(updateUsers(delta, users, dryRun));
- break;
-
- default:
- }
- }
- break;
-
- case DELETE:
- if (users.isEmpty()) {
- LOG.debug("No match found for deletion");
- } else if (users.size() == 1) {
- results.addAll(deleteUsers(delta, users, dryRun));
- } else {
- switch (resAct) {
- case IGNORE:
- LOG.error("More than one match {}", users);
- break;
-
- case FIRSTMATCH:
- results.addAll(deleteUsers(delta, users.subList(0, 1), dryRun));
- break;
-
- case LASTMATCH:
- results.addAll(deleteUsers(delta, users.subList(users.size() - 1, users.size()), dryRun));
- break;
-
- case ALL:
- results.addAll(deleteUsers(delta, users, dryRun));
- break;
-
- default:
- }
- }
-
- break;
-
- default:
- }
-
- return results;
- }
-
@Override
protected boolean hasToBeRegistered(final TaskExec execution) {
SyncTask syncTask = (SyncTask) task;
@@ -757,35 +297,4 @@ public class SyncJob extends AbstractTas
&& syncTask.getResource().getSyncTraceLevel().ordinal() >= TraceLevel.FAILURES.ordinal())
|| syncTask.getResource().getSyncTraceLevel() == TraceLevel.ALL;
}
-
- private class SyncJobResultsHandler implements SyncResultsHandler {
-
- private final Collection<SyncResult> results;
-
- private final SyncTask syncTask;
-
- private final ConflictResolutionAction resAct;
-
- private final boolean dryRun;
-
- public SyncJobResultsHandler(final Collection<SyncResult> results, final SyncTask syncTask,
- final ConflictResolutionAction resAct, final boolean dryRun) {
-
- this.results = results;
- this.syncTask = syncTask;
- this.resAct = resAct;
- this.dryRun = dryRun;
- }
-
- @Override
- public boolean handle(final SyncDelta delta) {
- try {
- results.addAll(handleDelta(syncTask, delta, resAct, dryRun));
- return true;
- } catch (JobExecutionException e) {
- LOG.error("Synchronization failed", e);
- return false;
- }
- }
- }
}
Copied: incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/sync/SyncResult.java (from r1400893, incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/scheduling/SyncResult.java)
URL: http://svn.apache.org/viewvc/incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/sync/SyncResult.java?p2=incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/sync/SyncResult.java&p1=incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/scheduling/SyncResult.java&r1=1400893&r2=1401182&rev=1401182&view=diff
==============================================================================
--- incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/scheduling/SyncResult.java (original)
+++ incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/sync/SyncResult.java Tue Oct 23 07:49:23 2012
@@ -16,14 +16,14 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.syncope.core.scheduling;
+package org.apache.syncope.core.sync;
import java.util.Collection;
import org.apache.commons.lang.StringUtils;
import org.apache.commons.lang.builder.ReflectionToStringBuilder;
import org.apache.commons.lang.builder.ToStringStyle;
-import org.apache.syncope.core.scheduling.AbstractTaskJob.Status;
+import org.apache.syncope.core.quartz.AbstractTaskJob.Status;
import org.apache.syncope.types.TraceLevel;
public class SyncResult {