[ 
https://issues.apache.org/jira/browse/SYNCOPE-219?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13474928#comment-13474928
 ] 

Francesco Chicchiriccò commented on SYNCOPE-219:
------------------------------------------------

The purpose of 'enabled' is to inject a workflow variable into the running 
workflow instance so that it is up to workflow what to do with it: the default 
worklfow definition is just a sample.

SyncopeUser.setSuspendend() is only called by the AbstractUserWorkflowAdapter 
as part of implementation of UserWorkflowAdapter.suspend() and 
UserWorkflowAdapter.reactivate(): its purpose is instead to check whether user 
has been suspended or not.

In short: enabled is used to check whether the user is created as disabled or 
not, while suspended is used to mark an user that was already active but now is 
not any more.
This difference comes into relevance when you consider that disabled users (not 
suspended) are not considered for propagation to external resources, while 
suspended users were considered, at the time they were active.
                
> Changing attributes of inactive users
> -------------------------------------
>
>                 Key: SYNCOPE-219
>                 URL: https://issues.apache.org/jira/browse/SYNCOPE-219
>             Project: Syncope
>          Issue Type: Improvement
>          Components: core
>    Affects Versions: 1.0.1-incubating
>            Reporter: Jan Bernhardt
>            Priority: Minor
>         Attachments: syncopeWorkflow.xml, Workflow-new.png
>
>
> I attached a visual representation of a modified workflow allows changing of 
> attributes of suspended users (relied to [1]). I also attached a modified 
> BPMN workflow for this purpose.
> After applying this workflow to my syncope instance I’ve got the effect, that 
> users will be set active after any user updates. The attention was to be able 
> of changing inactive (suspended) user attributes while these users remain 
> inactive. I believe that the root cause for this behavior is that an 
> attribute “enabled” is checked (Line 80) which is not set at this point. Why 
> is this attribute (enabled) used instead of ${syncopeUser. getSuspended()} ? 
> If the second case would be true, this should solve the current issue and 
> then there would be no need for the AutoActivate serviceTask…
> In my opinion it should be possible to change attributes of suspended users 
> by default. So my proposal would be to deliver my modified version with the 
> standard installation of syncope.
> I also changed the naming in the workflow whenever possible without effecting 
> the implementation to distinct between user workflows and other (e.g. roles, 
> see SYNCOPE-173). My suggestion would be to move (refactor) all user workflow 
> serviceTasks from “org.apache.syncope.core.workflow.activiti” to 
> “org.apache.syncope.core.workflow.activiti.user”. By doing so it will be 
> easier for SYNCOPE-173 to add role serviceTasks.
> [1] 
> http://syncope-user.1051894.n5.nabble.com/Issue-with-importing-suspended-user-td5706694.html

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to