Asking users to create plugins for something they want to do in their
application logic is to do things in an indirect and cumbersome way with an
added level of complexity. I don't think users will elect to do that. There
is a reason populateDAG and the operators give users the flexibility they
do today to have any custom logic they want. populateDAG isn't only for
returning a constant DAG for an application, the configuration that is
passed today to populateDAG, apart from hadoop environmental properties
that could be considered constant also includes a variable component, which
is the user customizable configuration properties. There are already
examples of applications that have used these properties to do something
different. Apart from the properties, some attributes are also injected
into the DAG in a deliberate fashion by the platform to provide user with
these so they can create the dag accordingly. One example is a websocket
gateway address. If this is present applications create a websocket output
operator else they end up create a console or some other output operator.

On Thu, Dec 21, 2017 at 8:27 AM, Vlad Rozov <[EMAIL PROTECTED]> wrote: