There could very well be better approach now, but I didn't find one 8 years ago when I wrote mine.

It's been a bit busy, but I will try to find this at least over the holiday weekend. At that point I can find out more about how and where it might be contributed, and how to determine if it's worth it to anyone. I do remember a couple of other aspects. The interface to implement on your object was Java only, nothing special needed in the model. When you add a new object to the workflow, a proxy object is created that knows how to access your object, and that's what really "moves" through the workflow.

All in all, one of the more fun and satisfying chunks of code I've done. :-)

Regards,
Mark

On Nov 24, 2008, at 2:00 PM, Geoff Hopson wrote:

Why not plop a WO wrapper around something like Apache Agila or some
other standards-based framework?

Just thinking out loud - no idea how hard this would be....

geoff

2008/11/23 Mark Morris <[EMAIL PROTECTED]>:
I'll have to look in my archived stuff, I don't have it on my laptop
anymore.

It was done in WO 4.5 (Java), so it will definitely need some updating.

The general approach is you define a workflow as queues and actions, and for
each valid combination of queue and action while in that queue, a
destination queue.  (Stored in the db, of course.)

Any object you wanted to participate in the workflow had to implement a simple protocol. The framework provides your app a list of objects in any given queue and a list of valid actions for a queue. It implements the actions, and keeps a log of where an object as been. You could register for notifications of objects entering or leaving queues, to perform other tasks. You could register delegates to run a method to determine if an action was
allowed on a given object, for finer control.  There was a concept of
locking objects, used to let other users know someone was processing an
object, and objects could automatically or manually be unlocked.

It didn't provide any UI as I recall, but gave your app the information and
methods it needed.

The project this was used on had 14 total queues. Once it was implemented,
approvals that had been taking a week or more averaged about a day.

Now to find the hard drive and/or DVDs it's stored on....  ;-)

Regards,
Mark

_______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list      ([email protected])
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com

This email sent to [EMAIL PROTECTED]

Reply via email to