[jboss-dev-forums] [JBoss AS7 Development] - Re: META-INF/services for module extensions - question/issue

Dan Sirbu do-not-reply at jboss.com
Thu Sep 8 14:16:40 EDT 2011


Dan Sirbu [http://community.jboss.org/people/lmcdasi] created the discussion

"Re: META-INF/services for module extensions - question/issue"

To view the discussion, visit: http://community.jboss.org/message/625592#625592

--------------------------------------------------------------
Hi,

   The good news is that we are converging in ideas  (+) .  No frustration - yet  ;) 

   The bad news is that somehow I do not get what I think I should get  :0  . And what from design point of view sounds correct to me.

   My example is a lot more complicated than I what I explained here. I do have a ModuleExtension that depends on a Module#1, then Module#1 dependes on Module#2 and few others for example, and Module#1, Module#2 do have exposed services. 
   If I have to 'customize' ModuleExtension to kistart Module#1 - then again I do not have an issue since it is jboss module specific. BUT and from here on we diverge in opinions .... looks like  ;) 

  Module#1 does also a ServiceLoader.load(ServiceAPIFromModule#2.class) - no extra argument here when the ModuleExtension executes the ServiceAPIFromModule#1. And that does not work neither - for same above issues.

   Now - if you ask me to add a second argument to ServiceLoader in Module#1 - then there is a no go - because Module#1 may be a 3rd party product that I cannot change, as example. Thus the ServiceLoader.load with one argument is the only option that can be available.

   At the same time, Module#1 code should not be impacted by the jboss-module/as7 architecture - one same simple reason: portability.

   Any existing jar file can be always be viewed as a Module - but not as an extension - which is ok !
   Thus as a Module, if it's using ServiceLoader with one argument it should work with no code changes ! Otherwise you impleciltely are telling me that the exiting jar file is no longer portable when using it from ModuleExtension ! And this makes jboss-modules not to be flexible and imposes extra constrains that, to me, do not look to be required.
   Think about that jar file can be used as a Module from a WAr, RAR and why not from a ModuleExtension ?!?

   Again, once I am in the Module#1 code I should be able to do a ServiceLoader.load - with only one argument as any war file does when it is deployed - if the module.xml has set a dependecy on a module and if services="import" has been set in the ModuleExtension as in the war. 

  So far, I am not getting that ! And again, even if it looks stuborn, I think from design point of view I should !


BR,
Dan S.
--------------------------------------------------------------

Reply to this message by going to Community
[http://community.jboss.org/message/625592#625592]

Start a new discussion in JBoss AS7 Development at Community
[http://community.jboss.org/choose-container!input.jspa?contentType=1&containerType=14&container=2225]

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/jboss-dev-forums/attachments/20110908/aa3e40ed/attachment.html 


More information about the jboss-dev-forums mailing list