On 22/09/16 10:40, Ellison Anne Williams wrote:
> Why are we using the service-plugin model when we are dropping the platform
> designations?

I'm not sure what "dropping the platform designations" means.  Clearly
we need different responders for different backends, and I'm guessing we
need to tell the responder which backend we want to use.

> Thought that we were going to drop all central platform
> awareness from Pirk in favor of the ResponderLauncher. The service-plugin
> model retains it in a roundabout way as we have to statically maintain the
> list of known responders in
> org.apache.pirk.responder.wideskies.spi.ResponderPlugin.

No, the ResponderPlugin is an interface that identifies what backend it
supports (getPlatformName) and then it's invocation (run).  There is no
list of known responders.

If I choose to implement a new backend responder then I implement this
interface, create a JAR with a META-INF/services showing I provide it,
and add it to the classpath.  There is no need to inform the core, it
will find the service using the ResponderService.

In this proposed PR, the full list is is our single JAR, but of course
as we move to submodules they will migrate into the appropriate
submodule JAR.

Regards,
Tim

> On Thu, Sep 22, 2016 at 5:36 AM, ellisonanne <g...@git.apache.org> wrote:
> 
>> Github user ellisonanne commented on a diff in the pull request:
>>
>>     https://github.com/apache/incubator-pirk/pull/93#discussion_r80005357
>>
>>     --- Diff: src/main/resources/META-INF/services/org.apache.pirk.
>> responder.wideskies.spi.ResponderPlugin ---
>>     @@ -0,0 +1,5 @@
>>     +org.apache.pirk.responder.wideskies.mapreduce.MapReduceResponder
>>     --- End diff --
>>
>>     Why are we using the service-plugin model when we are dropping the
>> platform designations?
>>
>>
>> ---
>> If your project is set up for it, you can reply to this email and have your
>> reply appear on GitHub as well. If your project does not have this feature
>> enabled and wishes so, or if the feature is enabled but not working, please
>> contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
>> with INFRA.
>> ---
>>
> 

Reply via email to