The way this PR is now is so similar to how bad IBM SystemML which is a
hackwork of hurriedly put together and something I have often pointed out
to others as a clear example of "how not to design crappy software".  See
this gist of an example code snippet from IBM SystemML -
https://gist.github.com/smarthi/eb848e46621b7444924f

First things for the project:

1. Move away from using the java properties (this is so 2002 way of doing
things) to using TypeSafe style configurations which allow for structured
properties.

2. From a Responder design, there would be a Responder-impl-class property
which would be read from TypeSafe config and the appropriate driver class
invoked.

As an example for the above ^^^ two, please look at at the Oryx 2.0 project
for reference

https://github.com/oryxproject/oryx









On Mon, Sep 19, 2016 at 2:28 PM, Tim Ellison <t.p.elli...@gmail.com> wrote:

> How about an approach like this?
>    https://github.com/tellison/incubator-pirk/tree/pirk-63
>
> The "on-ramp" is the driver [1], which calls upon the service to find a
> plug-in [2] that claims to implement the required platform responder,
> e.g. [3].
>
> The list of plug-ins is given in the provider's JAR file, so the ones we
> provide in Pirk are listed together [4], but if you split these into
> modules, or somebody brings their own JAR alongside, these would be
> listed in each JAR's services/ directory.
>
> [1]
> https://github.com/tellison/incubator-pirk/blob/pirk-63/
> src/main/java/org/apache/pirk/responder/wideskies/ResponderDriver.java
> [2]
> https://github.com/tellison/incubator-pirk/blob/pirk-63/
> src/main/java/org/apache/pirk/responder/spi/ResponderPlugin.java
> [3]
> https://github.com/tellison/incubator-pirk/blob/pirk-63/
> src/main/java/org/apache/pirk/responder/wideskies/storm/
> StormResponder.java
> [4]
> https://github.com/tellison/incubator-pirk/blob/pirk-63/
> src/main/services/org.apache.responder.spi.Responder
>
> I'm not even going to dignify this with a WIP PR, it is far from ready,
> so proceed with caution.  There is hopefully enough there to show the
> approach, and if it is worth continuing I'm happy to do so.
>
> Regards,
> Tim
>
>

Reply via email to