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

Reply via email to