+1
Sounds good to me!

Let us create a UserWorkflowService, but let's not create a RoleWorkflowService 
(for now) thus leaving RoleService unchanged.

Best regards.
Jan


> -----Original Message-----
> From: Francesco Chicchiriccò [mailto:ilgro...@apache.org]
> Sent: Freitag, 8. Februar 2013 09:13
> To: dev@syncope.apache.org
> Subject: Re: [DISCUSS] User Service
> 
> On 08/02/2013 09:05, Jan Bernhardt wrote:
> > Hi syncoper,
> >
> > I do not even see methods in RoleService that should be moved into a
> different ServiceInterface! Workflow controller is used in RoleController but
> just for CRUD operations, no direct access, so this is mostly transparent to
> user.
> >
> > But I completely agree with Christian, that direct workflow operations
> identified by TaskID should be moved out of UserService. They are used in
> context of users (currently) but can be used also in other contexts. This is
> why I would move the following method to WorkflowService:
> >
> >      @POST
> >      @Path("workflow/tasks/{taskId}/claim")
> >      WorkflowFormTO claimForm(@PathParam("taskId") String taskId);
> >
> > @POST
> >      @Path("workflow/tasks/{taskId}/execute")
> >      UserTO executeWorkflow(@PathParam("taskId") String taskId, UserTO
> > userTO);
> >
> >      @GET
> >      @Path("workflow/form")
> >      List<WorkflowFormTO> getForms();
> >
> >      @POST
> >      @Path("workflow/form")
> >      UserTO submitForm(WorkflowFormTO form);
> >
> > Since this next method contains a userId but is related to workflow 
> > activity,
> I'm not sure what to do with it. I guess is should remain in UserService, to 
> not
> have an dependency from WorkflowService to UserService.
> >
> >      @GET
> >      @Path("{userId}/workflow/form")
> >      WorkflowFormTO getFormForUser(@PathParam("userId") Long userId);
> 
> Hi Jan,
> I think I've finally got your point - it took me some time, though..
> 
> getFormForUser() is not the only workflow-related method explicitly
> referencing users (userId in that case); there is also executeWorkflow() with
> UserTO for example, but if you take a look at method implementation there
> is even more.
> 
> Hence my proposal: let's call it UserWorkflowService and let's move all the
> methods above (including getFormForUser()) to this new service.
> 
> WDYT?
> 
> Regards.
> 
> --
> Francesco Chicchiriccò
> 
> ASF Member, Apache Syncope PMC chair, Apache Cocoon PMC Member
> http://people.apache.org/~ilgrosso/

Reply via email to