commons-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From bugzi...@apache.org
Subject DO NOT REPLY [Bug 38311] - [scxml] explore strategies for decoupling execution context from representation
Date Fri, 03 Feb 2006 18:46:16 GMT
DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG·
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
<http://issues.apache.org/bugzilla/show_bug.cgi?id=38311>.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND·
INSERTED IN THE BUG DATABASE.

http://issues.apache.org/bugzilla/show_bug.cgi?id=38311





------- Additional Comments From rahul@apache.org  2006-02-03 19:46 -------
(In reply to comment #2)
> You've removed the Context from State and now SCXMLSemanticImpl grabs the
> context from the notification registry.  The only quesion issue I've got is 
that
> Registry is awfully close to NotificationRegistry and might the two become
> confused.
<snip/>

Possibly, just as it got confused above, or maybe it was a typo. The Contexts 
are obtained from the Registry (not the NotificationRegistry). The Registry 
keeps the books for a particular state machine execution instance, and 
maintaining notification listeners is but one aspect of that function.

In totality, the current "registry" keeps record of:

1) The contexts created, and the states they were assigned to
2) The last known configurations for the histories
3) The root context and the expression evaluator
4) The SCXMLListeners attached to the interesting nodes in the SCXML object 
model (via the NotificationRegistry)

The NotificationRegistry is a convenience class for (4) at this time, rather 
than inlining all its methods in the Registry class -- but the separation of 
concerns is useful and also improves source readability, IMO. Also, as the 
specification matures, it is quite possible that there will be more things 
to "track".

And maybe your comment above had a typo, which makes this explanation 
unnecessary.


>  Is there a better name for the Registry class, maybe something like
> "Execution" or "ExecutionEnvironment", or "ExecuteContext"
> ....or "SuperFancyStateMachineExecutionUtil"
> And, I know this is nit picky, so feel free to object strenuously.

Since Execution is somewhat vague and Context is already an SCXML interface, 
probably the only suggestion worth considering from the list above is 
ExecutionEnvironment. But even so, I tend to favor Registry because IMO it is 
closest to summarizing what the class is actually doing (I think of the 
execution environment as the system the state machine is controlling). I'll be 
merging the STATELESS_MODEL branch to trunk over the weekend, but we can 
always change the name even after the merge, if it remains a concern.



-- 
Configure bugmail: http://issues.apache.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.

---------------------------------------------------------------------
To unsubscribe, e-mail: commons-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: commons-dev-help@jakarta.apache.org


Mime
View raw message