hi, does any know if it's really required to re-index the nodes on ezcWorkflowVisitorNodeCollector->doVisit( ezcWorkflowVisitable $visitable ) ?
$id = ++$this->nextId; $visitable->setId( $id ); // change node id <---- i've been reading the code and havent found anything that states otherwise. best No dia 27 de Janeiro de 2010 18:13, José Moreira <matrixowns...@gmail.com> escreveu: > I found more details on the situation. > > After a workflow is loaded from an xml storage, the workflow is verified: > > $workflow->verify(); > > in which is applied the visitor pattern with the > "ezcWorkflowVisitorNodeCollector" class, that re-orders the ID's, > there by loosing the Id defined in the XML. > > It would be nice to attach a "oid" property to the node, a static > identifier. i'm working around this. > > 2010/1/26 José Moreira <matrixowns...@gmail.com>: >> I found the reason. I'm using the database executer and when the >> workflow is saved in the database (from the XML) the ID of the node >> becomes the generated ID from the database and it will change >> everytime you do it, for example installing new versions of the >> workflow and also the plugin doesn't help because the node ID on the >> XML is lost. >> >> It makes sense of course, but it would be helpful to attach a fixed >> identifier to a node. >> >> I'm, thinking about rewriting the save() method of >> ezcWorkflowDatabaseDefinitionStorage class to add additional >> information to a database node record but that would mean it could >> also be required to extend the Node class to access that information >> later, which adds up to the problem. >> >> >> >> 2010/1/26 erminia de angelis <erminia.deange...@gmail.com>: >>> Hi >>> >>> José Moreira ha scritto: >>>> >>>> ... and/or the node id set on the XML, <node id="333" type="Input">, >>>> doesn't match up with the ID on the objects which seems to be >>>> generated from the position of the DOM Node on the document. >>>> >>>> My objective is to associate extra info to the node on a database >>>> table and during the workflow execution to be able to load that >>>> information for the executed Input node. >>>> >>>> >>> >>> Well I had to face this problem some time ago >>> and I rembember only the ids of the Start and End nodes being regenerated >>> ... if it is so you can get the original node_id for this 2 nodes from >>> table node just by giving the workflow_id >>> >>> Hope it will help >>> >>> Erminia >>> >>> >>> >>>> 2010/1/26 José Moreira <matrixowns...@gmail.com>: >>>> >>>>> >>>>> I'm looking in the API and i haven't been able to find a way to get >>>>> the ID of the last executed node ( the Input Node) when the execution >>>>> is suspended waiting for input, except by using a Plugin that >>>>> registers the executes nodes somewhere, an execution variable for >>>>> example. >>>>> >>>>> any thoughts? >>>>> >>>> >>>> >>> >>> I used the plugin >>>> >>>> >>> >>> >> >> >> >> -- >> José Moreira >> * http://pt.linkedin.com/in/josemoreira >> > > > > -- > José Moreira > * http://pt.linkedin.com/in/josemoreira > -- José Moreira * http://pt.linkedin.com/in/josemoreira -- Components mailing list Components@lists.ez.no http://lists.ez.no/mailman/listinfo/components