[jboss-dev-forums] [JBoss AS7 Development] - Re: can I avoid a service to block as7 startup ?

Dan Sirbu do-not-reply at jboss.com
Thu Oct 13 13:11:00 EDT 2011


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

"Re: can I avoid a service to block as7 startup ?"

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

--------------------------------------------------------------
Yes - I am trying to build a 'very' basic module loader. Instead of having multiple application from my collegues writing their own ME, I could have one ME handling different module startups - obviously with very basic or restricted type of service functionality (like no ejb support within, etc ...)

So, I think I have done that ok but it looks like I have some issues.

The problem must be around here :

SubsystemState:




#



 **public** **static** ServiceController<SubsystemState> addService(ServiceTarget serviceTarget, Activation activation) {  // activation is forced to eager
     SubsystemState state = **new** SubsystemState(); // will this be the object that will be injected into the FrameworkBootstrapService ?!?
     state.setActivation(activation);


#


     ServiceBuilder<SubsystemState> builder = serviceTarget.addService(++SERVICE_NAME++, state);  };
**protected** *void performBoottime(OperationContext context, ModelNode operation, ModelNode model, ServiceVerificationHandler verificationHandler, List<ServiceController<?>> newControllers) {      context.addStep(**new** AbstractDeploymentChainStep() {

* 
     builder.setInitialMode(Mode.++ACTIVE++);
     **return** builder.install()

SubsystemAdd: 


 

**     protected** **void**  execute(DeploymentProcessorTarget processorTarget) {
           // Add deployment dependency on the WAR/RAR/SAR applications

           processorTarget.addDeploymentProcessor(Phase.
++           DEPENDENCIES++, Phase.++DEPENDENCIES_MODULE++, **new** DependencyProcessor()); 
     }
}, OperationContext.Stage.

++RUNTIME++ ); 

ServiceTarget serviceTarget = context.getServiceTarget();

// Add the Subsystem State service - it will hold subsystem config. Activation is EAGER for both.

newControllers.add(SubsystemState.+addService+(serviceTarget, getActivationMode(operation)));


// Add the service - all modules will be handled via the service

newControllers.add(FrameworkBootstrapService.+addService+(serviceTarget, verificationHandler));



So, to me, it looks like I am doing the right stuff. BUT ......



##


}

FrameworkBootstrapService: - +dependency towards the SubsystemState added+.
*private
**


**public** **static** ServiceController<FrameworkBootstrapService> addService(**final** ServiceTarget target, **final** ServiceListener<Object>... listeners) {FrameworkBootstrapService service = 
**new** FrameworkBootstrapService();ServiceBuilder<FrameworkBootstrapService> builder = target.addService(
++SERVICE_NAME++, service);builder.addDependency(SubsystemState.
++SERVICE_NAME++,SubsystemState.**class**, service.injectedSubsystemState);builder.addListener(listeners);


**return** builder.install();}

 **final** InjectedValue<SubsystemState> injectedSubsystemState = **new** InjectedValue<SubsystemState>();*
--------------------------------------------------------------

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

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/20111013/cc2005c7/attachment.html 


More information about the jboss-dev-forums mailing list