Re: Participant vs Assignment

Vladimir Puskas <[email protected]>
Newsgroups gmane.comp.java.enhydra.shark
Message-ID <[email protected]>
Hello Greg

you wrote:
> As far as #2 goes, I finally stumbled on 
> sharkExecutionAdministration.getResource(newUser);
> 
> I'd still like to find answers to #1 and #3 though.
>> 
>> #1) We have a pretty simple workflow that only requires one person
>> for each activity.  If that person is busy, we want the activity to
>> show up in someone else's worklist however. Does this mean we're
>> changing the assignment or changing the participant?

XPDL spec at [1] says: "Workflow Participant Declaration provides 
descriptions of resources that can act as the performer of the various 
activities in the process definition... The workflow participant 
declaration does not necessarily refer to a human or a single person, 
but may also identify a set of people of appropriate skill or 
responsibility, or machine ..."

[2] "OMG definition: WfAssignment links WfActivity objects to WfResource 
objects... Assignments are created as part of the resource selection 
process before an activity becomes ready for execution..."

>> #3) What does the WfResource.release(assignment, activity_id);
>> method do?  I thought it would break the connection between a
>> WfResource and a WfAssignment.  But, even after I called the
>> release() method, the activity still shows in the WfResrouce's
>> get_sequence_work_item() response.

You thought almost right - it does break connection between WfResource 
and *WfActivity*. The reason you *again* see "the same" WfAssignment is 
it has been recreated. See event audits attached or history of the 
process (admin application->process monitor tab->show history button)

Shark kernel, on WfAssignment rejection or when creating WfActivity, 
looks if its XPDL definition has performer, evaluates it, looks through 
participant-user mappings, than asks assignment manager with all 
information gathered to respond with a List of WfResources who will be 
assigned to WfActivity.

AFAICS your best option would be to implement AssignementManager[3] that 
would search for next available/idle person who will receive assignment.

[1] http://wfmc.org/standards/docs/TC-1025_10_xpdl_102502.pdf
[2] 
http://shark.objectweb.org/doc/1.1/api/SharkAPI/org/enhydra/shark/api/client/wfmodel/WfAssignment.html
[3] 
http://shark.objectweb.org/doc/1.1/api/SharkAPI/org/enhydra/shark/api/internal/assignment/AssignmentManager.html

hope this helps
-- 
Vlada
eventLogRejectingAssignment (text/plain, 1.4 KB)
2005-07-07 08:02:10:531	Process instantiated
2005-07-07 08:02:10:576	Process changed state to open.not_running.not_started
2005-07-07 08:02:10:622	Process context changed 
2005-07-07 08:02:10:894	Process changed state from open.not_running.not_started to open.running
2005-07-07 08:02:10:986	Activity [actDefId=specification, actId=101_101_test_bs_specrelease_specification] changed state to open.not_running.not_started
2005-07-07 08:02:10:990	Activity [actDefId=specification, actId=101_101_test_bs_specrelease_specification] context changed 
2005-07-07 08:02:11:146	Activity [actDefId=specification, actId=101_101_test_bs_specrelease_specification] is assigned to qq
2005-07-07 08:02:31:943	Activity [actDefId=specification, actId=101_101_test_bs_specrelease_specification] is accepted by qq
2005-07-07 08:02:31:946	Activity [actDefId=specification, actId=101_101_test_bs_specrelease_specification] changed state from open.not_running.not_started to open.running
2005-07-07 08:02:46:482	Activity [actDefId=specification, actId=101_101_test_bs_specrelease_specification] is rejected by qq
2005-07-07 08:02:46:483	Activity [actDefId=specification, actId=101_101_test_bs_specrelease_specification] changed state from open.running to open.not_running.not_started
2005-07-07 08:02:46:496	Activity [actDefId=specification, actId=101_101_test_bs_specrelease_specification] is assigned to qq
message.footer (text/plain, 271 B)
--
You receive this message as a subscriber of the [email protected] mailing list.
To unsubscribe: mailto:[email protected]
For general help: mailto:[email protected]?subject=help
ObjectWeb mailing lists service home page: http://www.objectweb.org/wws
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.