<html>
<head>
</head>
<body>
<table border='0' cellpadding='3'>
<tr><td>Author: </td><td><b>semancik</b></td></tr>
<tr><td>Date:</td><td>2012-07-27 20:33:14 +0200 (Fri, 27 Jul 2012)</td></tr>
<tr><td>New Revision: </td><td>3915</td></tr>
</table>
<hr/><b>Log:</b><div style='padding-left: 20px; color:black'>
Refactoring UserSynchronizer into "lens": a set of a Projector that recomputes the context and Clokwork that drives<br/>
it through state changes and executes the changes. Still not 100% complete but should not cause too much harm now ...<br/>
<br/>
</div><hr/>
<b>Added:</b><div style='padding-left: 20px; color:green'>
trunk/model/model-api/src/main/java/com/evolveum/midpoint/model/api/context/   <a href="http://fisheye.evolveum.com/browse/MidPoint/trunk/model/model-api/src/main/java/com/evolveum/midpoint/model/api/context/?r=3915"><see></a><br/>
trunk/model/model-api/src/main/java/com/evolveum/midpoint/model/api/context/ModelContext.java   <a href="http://fisheye.evolveum.com/browse/MidPoint/trunk/model/model-api/src/main/java/com/evolveum/midpoint/model/api/context/ModelContext.java?r=3915"><see></a><br/>
trunk/model/model-api/src/main/java/com/evolveum/midpoint/model/api/context/ModelElementContext.java   <a href="http://fisheye.evolveum.com/browse/MidPoint/trunk/model/model-api/src/main/java/com/evolveum/midpoint/model/api/context/ModelElementContext.java?r=3915"><see></a><br/>
trunk/model/model-api/src/main/java/com/evolveum/midpoint/model/api/context/ModelProjectionContext.java   <a href="http://fisheye.evolveum.com/browse/MidPoint/trunk/model/model-api/src/main/java/com/evolveum/midpoint/model/api/context/ModelProjectionContext.java?r=3915"><see></a><br/>
trunk/model/model-api/src/main/java/com/evolveum/midpoint/model/api/context/ModelState.java   <a href="http://fisheye.evolveum.com/browse/MidPoint/trunk/model/model-api/src/main/java/com/evolveum/midpoint/model/api/context/ModelState.java?r=3915"><see></a><br/>
trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/lens/   <a href="http://fisheye.evolveum.com/browse/MidPoint/trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/lens/?r=3915"><see></a><br/>
trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/lens/AccountConstruction.java   <a href="http://fisheye.evolveum.com/browse/MidPoint/trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/lens/AccountConstruction.java?r=3915"><see></a><br/>
trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/lens/AccountValuesProcessor.java   <a href="http://fisheye.evolveum.com/browse/MidPoint/trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/lens/AccountValuesProcessor.java?r=3915"><see></a><br/>
trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/lens/ActivationProcessor.java   <a href="http://fisheye.evolveum.com/browse/MidPoint/trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/lens/ActivationProcessor.java?r=3915"><see></a><br/>
trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/lens/Assignment.java   <a href="http://fisheye.evolveum.com/browse/MidPoint/trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/lens/Assignment.java?r=3915"><see></a><br/>
trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/lens/AssignmentEvaluator.java   <a href="http://fisheye.evolveum.com/browse/MidPoint/trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/lens/AssignmentEvaluator.java?r=3915"><see></a><br/>
trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/lens/AssignmentPath.java   <a href="http://fisheye.evolveum.com/browse/MidPoint/trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/lens/AssignmentPath.java?r=3915"><see></a><br/>
trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/lens/AssignmentPathSegment.java   <a href="http://fisheye.evolveum.com/browse/MidPoint/trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/lens/AssignmentPathSegment.java?r=3915"><see></a><br/>
trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/lens/AssignmentProcessor.java   <a href="http://fisheye.evolveum.com/browse/MidPoint/trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/lens/AssignmentProcessor.java?r=3915"><see></a><br/>
trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/lens/Clockwork.java   <a href="http://fisheye.evolveum.com/browse/MidPoint/trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/lens/Clockwork.java?r=3915"><see></a><br/>
trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/lens/ConsolidationProcessor.java   <a href="http://fisheye.evolveum.com/browse/MidPoint/trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/lens/ConsolidationProcessor.java?r=3915"><see></a><br/>
trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/lens/ContextLoader.java   <a href="http://fisheye.evolveum.com/browse/MidPoint/trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/lens/ContextLoader.java?r=3915"><see></a><br/>
trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/lens/CredentialsProcessor.java   <a href="http://fisheye.evolveum.com/browse/MidPoint/trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/lens/CredentialsProcessor.java?r=3915"><see></a><br/>
trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/lens/InboundProcessor.java   <a href="http://fisheye.evolveum.com/browse/MidPoint/trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/lens/InboundProcessor.java?r=3915"><see></a><br/>
trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/lens/LensContext.java   <a href="http://fisheye.evolveum.com/browse/MidPoint/trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/lens/LensContext.java?r=3915"><see></a><br/>
trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/lens/LensDebugListener.java   <a href="http://fisheye.evolveum.com/browse/MidPoint/trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/lens/LensDebugListener.java?r=3915"><see></a><br/>
trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/lens/LensElementContext.java   <a href="http://fisheye.evolveum.com/browse/MidPoint/trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/lens/LensElementContext.java?r=3915"><see></a><br/>
trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/lens/LensFocusContext.java   <a href="http://fisheye.evolveum.com/browse/MidPoint/trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/lens/LensFocusContext.java?r=3915"><see></a><br/>
trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/lens/LensProjectionContext.java   <a href="http://fisheye.evolveum.com/browse/MidPoint/trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/lens/LensProjectionContext.java?r=3915"><see></a><br/>
trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/lens/LensUtil.java   <a href="http://fisheye.evolveum.com/browse/MidPoint/trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/lens/LensUtil.java?r=3915"><see></a><br/>
trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/lens/ObjectDeltaWaves.java   <a href="http://fisheye.evolveum.com/browse/MidPoint/trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/lens/ObjectDeltaWaves.java?r=3915"><see></a><br/>
trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/lens/OutboundProcessor.java   <a href="http://fisheye.evolveum.com/browse/MidPoint/trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/lens/OutboundProcessor.java?r=3915"><see></a><br/>
trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/lens/Projector.java   <a href="http://fisheye.evolveum.com/browse/MidPoint/trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/lens/Projector.java?r=3915"><see></a><br/>
trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/lens/PropertyValueWithOrigin.java   <a href="http://fisheye.evolveum.com/browse/MidPoint/trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/lens/PropertyValueWithOrigin.java?r=3915"><see></a><br/>
trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/lens/ReconciliationProcessor.java   <a href="http://fisheye.evolveum.com/browse/MidPoint/trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/lens/ReconciliationProcessor.java?r=3915"><see></a><br/>
trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/lens/ShadowConstraintsChecker.java   <a href="http://fisheye.evolveum.com/browse/MidPoint/trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/lens/ShadowConstraintsChecker.java?r=3915"><see></a><br/>
trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/lens/UserPolicyProcessor.java   <a href="http://fisheye.evolveum.com/browse/MidPoint/trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/lens/UserPolicyProcessor.java?r=3915"><see></a><br/>
trunk/model/model-impl/src/test/java/com/evolveum/midpoint/model/test/util/mock/MockLensDebugListener.java   <a href="http://fisheye.evolveum.com/browse/MidPoint/trunk/model/model-impl/src/test/java/com/evolveum/midpoint/model/test/util/mock/MockLensDebugListener.java?r=3915"><see></a><br/>
</div>
<b>Removed:</b><div style='padding-left: 20px; color:red; text-decoration:line-through;'>
   trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/AccountSyncContext.java<br/>
   trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/SyncContext.java<br/>
   trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/synchronizer/AccountConstruction.java<br/>
   trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/synchronizer/AccountValuesProcessor.java<br/>
   trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/synchronizer/ActivationProcessor.java<br/>
   trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/synchronizer/Assignment.java<br/>
   trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/synchronizer/AssignmentEvaluator.java<br/>
   trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/synchronizer/AssignmentPath.java<br/>
   trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/synchronizer/AssignmentPathSegment.java<br/>
   trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/synchronizer/AssignmentProcessor.java<br/>
   trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/synchronizer/ConsolidationProcessor.java<br/>
   trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/synchronizer/CredentialsProcessor.java<br/>
   trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/synchronizer/InboundProcessor.java<br/>
   trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/synchronizer/ObjectDeltaWaves.java<br/>
   trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/synchronizer/OutboundProcessor.java<br/>
   trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/synchronizer/PropertyValueWithOrigin.java<br/>
   trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/synchronizer/ReconciliationProcessor.java<br/>
   trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/synchronizer/ShadowConstraintsChecker.java<br/>
   trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/synchronizer/SyncContextListener.java<br/>
   trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/synchronizer/SynchronizerUtil.java<br/>
   trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/synchronizer/UserPolicyProcessor.java<br/>
   trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/synchronizer/UserSynchronizer.java<br/>
   trunk/model/model-impl/src/test/java/com/evolveum/midpoint/model/test/util/mock/MockSyncContextListener.java<br/>
</div>
<b>Modified:</b><div style='padding-left: 20px; color:blue'>
trunk/infra/prism/src/main/java/com/evolveum/midpoint/prism/delta/ItemDelta.java   <a href="http://fisheye.evolveum.com/browse/MidPoint/trunk/infra/prism/src/main/java/com/evolveum/midpoint/prism/delta/ItemDelta.java?r2=3915&r1=3914"><see></a><br/>
trunk/infra/prism/src/main/java/com/evolveum/midpoint/prism/delta/ObjectDelta.java   <a href="http://fisheye.evolveum.com/browse/MidPoint/trunk/infra/prism/src/main/java/com/evolveum/midpoint/prism/delta/ObjectDelta.java?r2=3915&r1=3914"><see></a><br/>
trunk/infra/prism/src/main/java/com/evolveum/midpoint/prism/delta/PropertyDelta.java   <a href="http://fisheye.evolveum.com/browse/MidPoint/trunk/infra/prism/src/main/java/com/evolveum/midpoint/prism/delta/PropertyDelta.java?r2=3915&r1=3914"><see></a><br/>
trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/ChangeExecutor.java   <a href="http://fisheye.evolveum.com/browse/MidPoint/trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/ChangeExecutor.java?r2=3915&r1=3914"><see></a><br/>
trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/controller/ModelController.java   <a href="http://fisheye.evolveum.com/browse/MidPoint/trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/controller/ModelController.java?r2=3915&r1=3914"><see></a><br/>
trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/sync/ActionManagerImpl.java   <a href="http://fisheye.evolveum.com/browse/MidPoint/trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/sync/ActionManagerImpl.java?r2=3915&r1=3914"><see></a><br/>
trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/sync/RecomputeTaskHandler.java   <a href="http://fisheye.evolveum.com/browse/MidPoint/trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/sync/RecomputeTaskHandler.java?r2=3915&r1=3914"><see></a><br/>
trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/sync/ReconciliationTaskHandler.java   <a href="http://fisheye.evolveum.com/browse/MidPoint/trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/sync/ReconciliationTaskHandler.java?r2=3915&r1=3914"><see></a><br/>
trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/sync/action/AddUserAction.java   <a href="http://fisheye.evolveum.com/browse/MidPoint/trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/sync/action/AddUserAction.java?r2=3915&r1=3914"><see></a><br/>
trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/sync/action/BaseAction.java   <a href="http://fisheye.evolveum.com/browse/MidPoint/trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/sync/action/BaseAction.java?r2=3915&r1=3914"><see></a><br/>
trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/sync/action/DeleteUserAction.java   <a href="http://fisheye.evolveum.com/browse/MidPoint/trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/sync/action/DeleteUserAction.java?r2=3915&r1=3914"><see></a><br/>
trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/sync/action/ModifyUserAction.java   <a href="http://fisheye.evolveum.com/browse/MidPoint/trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/sync/action/ModifyUserAction.java?r2=3915&r1=3914"><see></a><br/>
trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/sync/action/SynchronizeAction.java   <a href="http://fisheye.evolveum.com/browse/MidPoint/trunk/model/model-impl/src/main/java/com/evolveum/midpoint/model/sync/action/SynchronizeAction.java?r2=3915&r1=3914"><see></a><br/>
trunk/model/model-impl/src/main/resources/application-context-model.xml   <a href="http://fisheye.evolveum.com/browse/MidPoint/trunk/model/model-impl/src/main/resources/application-context-model.xml?r2=3915&r1=3914"><see></a><br/>
trunk/model/model-impl/src/test/java/com/evolveum/midpoint/model/AbstractModelIntegrationTest.java   <a href="http://fisheye.evolveum.com/browse/MidPoint/trunk/model/model-impl/src/test/java/com/evolveum/midpoint/model/AbstractModelIntegrationTest.java?r2=3915&r1=3914"><see></a><br/>
trunk/model/model-impl/src/test/java/com/evolveum/midpoint/model/TestModelServiceContract.java   <a href="http://fisheye.evolveum.com/browse/MidPoint/trunk/model/model-impl/src/test/java/com/evolveum/midpoint/model/TestModelServiceContract.java?r2=3915&r1=3914"><see></a><br/>
trunk/model/model-impl/src/test/java/com/evolveum/midpoint/model/TestMultiResource.java   <a href="http://fisheye.evolveum.com/browse/MidPoint/trunk/model/model-impl/src/test/java/com/evolveum/midpoint/model/TestMultiResource.java?r2=3915&r1=3914"><see></a><br/>
trunk/model/model-impl/src/test/java/com/evolveum/midpoint/model/TestRbac.java   <a href="http://fisheye.evolveum.com/browse/MidPoint/trunk/model/model-impl/src/test/java/com/evolveum/midpoint/model/TestRbac.java?r2=3915&r1=3914"><see></a><br/>
trunk/model/model-impl/src/test/java/com/evolveum/midpoint/model/TestSegregationOfDuties.java   <a href="http://fisheye.evolveum.com/browse/MidPoint/trunk/model/model-impl/src/test/java/com/evolveum/midpoint/model/TestSegregationOfDuties.java?r2=3915&r1=3914"><see></a><br/>
trunk/model/model-impl/src/test/java/com/evolveum/midpoint/model/sync/TestSynchronizationService.java   <a href="http://fisheye.evolveum.com/browse/MidPoint/trunk/model/model-impl/src/test/java/com/evolveum/midpoint/model/sync/TestSynchronizationService.java?r2=3915&r1=3914"><see></a><br/>
trunk/model/model-impl/src/test/java/com/evolveum/midpoint/model/synchronizer/TestAssignmentEvaluator.java   <a href="http://fisheye.evolveum.com/browse/MidPoint/trunk/model/model-impl/src/test/java/com/evolveum/midpoint/model/synchronizer/TestAssignmentEvaluator.java?r2=3915&r1=3914"><see></a><br/>
trunk/model/model-impl/src/test/java/com/evolveum/midpoint/model/synchronizer/TestAssignmentProcessor.java   <a href="http://fisheye.evolveum.com/browse/MidPoint/trunk/model/model-impl/src/test/java/com/evolveum/midpoint/model/synchronizer/TestAssignmentProcessor.java?r2=3915&r1=3914"><see></a><br/>
trunk/model/model-impl/src/test/java/com/evolveum/midpoint/model/synchronizer/TestSynchronizerAddUser.java   <a href="http://fisheye.evolveum.com/browse/MidPoint/trunk/model/model-impl/src/test/java/com/evolveum/midpoint/model/synchronizer/TestSynchronizerAddUser.java?r2=3915&r1=3914"><see></a><br/>
trunk/model/model-impl/src/test/java/com/evolveum/midpoint/model/synchronizer/TestUserSynchronizer.java   <a href="http://fisheye.evolveum.com/browse/MidPoint/trunk/model/model-impl/src/test/java/com/evolveum/midpoint/model/synchronizer/TestUserSynchronizer.java?r2=3915&r1=3914"><see></a><br/>
</div>
</body></html>