Rahul, Thanks for the quick response. More questions/comments inline.
On Fri, Nov 7, 2008 at 11:54 AM, Rahul Akolkar <[EMAIL PROTECTED]>wrote: > On Thu, Nov 6, 2008 at 10:38 PM, Roger Hoover <[EMAIL PROTECTED]> > wrote: > > Hi, > > > > I'm new to Commons SCXML but I ran into what looks like a bug to me. > When > > an event generated in one context gets sent to a sibling context with a > > delay, the _eventdata object is null. Oddly enough, when delay unset or > set > > to 0ms, it works fine. I created a test file based on eventdata-03.xml > to > > expose it. Set delay="0ms" and the counter state machine makes it to > the > > thirty state. Set delay="1ms" and it doesn't. > > > <snip/> > > A slight digression, but might be relevant background -- the > EventDispatcher [1] (which handles <send> and <cancel>) is anticipated > to be user-authored for any usages of the library of reasonable > complexity. We do provide simple examples (see implementing classes in > Javadoc) as a way to get folks started, but these do not handle any > targettypes beyond 'scxml' (which is also the default). > Does Commons SCXML support the 'basichttp' targettype? If not, is there an open source EventDispatcher for basichttp already out there that you know of? > > The behavior you mention above does seem like a bug. Obviously, events > with or without delay are handled differently (the former are > scheduled for execution). I suspect the SimpleScheduler implementation > may be overlooking event payloads, or not processing them correctly. > Please file a bug report in JIRA [2] and attach your test case, and > I'll take a look at this. Thanks. I filed a JIRA here. https://issues.apache.org/jira/browse/SCXML-87 > > > -Rahul > > [1] > http://commons.apache.org/scxml/0.8/apidocs/org/apache/commons/scxml/EventDispatcher.html > [2] http://commons.apache.org/scxml/issue-tracking.html > > > > Any help is appreciated. Thanks, > > > > Roger > > > > > > <?xml version="1.0" encoding="UTF-8"?> > > <!-- > > * Licensed to the Apache Software Foundation (ASF) under one or more > > * contributor license agreements. See the NOTICE file distributed with > > * this work for additional information regarding copyright ownership. > > * The ASF licenses this file to You under the Apache License, Version > 2.0 > > * (the "License"); you may not use this file except in compliance with > > * the License. You may obtain a copy of the License at > > * > > * http://www.apache.org/licenses/LICENSE-2.0 > > * > > * Unless required by applicable law or agreed to in writing, software > > * distributed under the License is distributed on an "AS IS" BASIS, > > * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or > implied. > > * See the License for the specific language governing permissions and > > * limitations under the License. > > --> > > <scxml xmlns="http://www.w3.org/2005/07/scxml" > > version="1.0" > > initialstate="start"> > > > > <parallel id="start"> > > > > <state id="simulatedUser"> > > <datamodel> > > <data name="one" expr="1" /> > > <data name="two" expr="2" /> > > </datamodel> > > > > <onentry> > > <send event="event.bar" namelist="one two" delay="1ms"/> > > </onentry> > > <transition event="event.bar"> > > <log label="'simulatedUser'" > > expr="_eventdatamap['event.bar'].one + ', ' + > > _eventdatamap['event.bar'].two"/> > > </transition> > > </state> > > > > <state id="counter"> > > <initial> > > <transition target="twenty"/> > > </initial> > > > > <state id="twenty"> > > <transition event="event.bar" > > cond="_eventdatamap['event.bar'].one + > > _eventdatamap['event.bar'].two eq 3" > > target="thirty"/> > > <transition event="event.bar"> > > <log label="'event.bar in twenty state'" > > expr="_eventdatamap['event.bar'].one + ', ' + > > _eventdatamap['event.bar'].two"/> > > </transition> > > </state> > > > > <state id="thirty" final="true"/> > > </state> > > > > </parallel> > > > > </scxml> > > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > >
