apex-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Pramod Immaneni (JIRA)" <j...@apache.org>
Subject [jira] [Comment Edited] (APEXCORE-577) Visitor API for DAG
Date Thu, 02 Mar 2017 14:00:48 GMT

    [ https://issues.apache.org/jira/browse/APEXCORE-577?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15892255#comment-15892255
] 

Pramod Immaneni edited comment on APEXCORE-577 at 3/2/17 2:00 PM:
------------------------------------------------------------------

This lifecycle seems very localized and constrained. I suggest the following lifecycle.

visitor->prePopulateDAG
populateDAG
visitor->postPopulateDAG
visitor->preSetProperties
setProperties and attributes from property file
visitor->postSetProperties
visitor->preValidateDAG - No need for validation of DAG structure or ordering
validate
visitor->postValidateDAG - Let the visitor developer do what they want to do with walking
with operators or streams. You can provide convenience methods in the interface to get access
to operators and streams in a topographical order.


was (Author: pramodssimmaneni):
This lifecycle seems very localized and constrained. I suggest the following lifecycle.

visitor->prePopulateDAG
populateDAG
visitor->postPopulateDAG
visitor->preSetProperties
setProperties and attributes from property file
visitor->postSetProperties
visitor->preValidateDAG - No need for validation of DAG structure or ordering
validate
visitor->postValidateDAG - Let the visitor developer do what they want to do with walking
with operators or streams. You can provide convenience methods in the interface to get access
to operators and streams in a topographical order)

> Visitor API for DAG
> -------------------
>
>                 Key: APEXCORE-577
>                 URL: https://issues.apache.org/jira/browse/APEXCORE-577
>             Project: Apache Apex Core
>          Issue Type: Sub-task
>            Reporter: Tushar Gosavi
>            Assignee: Tushar Gosavi
>
> Support an Visitor like api for DAG, which could be used to write plugins for Apex.
> change DAG interface to add a visitor
> {code}
> registerVisitor(DagVisitor visitor)
> {code}
> The DagVisitor interface
> {code}
> interface DagVisitor {
>   boolean startDAG(DAG* dag);
>   boolean visitOperator(OperatorMeta *ometa)
>   boolean visitStream(StreamMeta *smeta);
>   boolean endDAG()
> }
> {code}
> dev thread discussions
> https://lists.apache.org/thread.html/1c37e0954cee029c9de537cc35ecb35beebdf49aba17de89bd2ce9ed@%3Cdev.apex.apache.org%3E



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Mime
View raw message