Class ProcessApplicationStartService
- All Implemented Interfaces:
org.jboss.msc.Service
,org.jboss.msc.service.Service<ProcessApplicationStartService>
,org.jboss.msc.value.Value<ProcessApplicationStartService>
This service is responsible for starting the MscManagedProcessApplication
service.
We need this as an extra step since we need a declarative dependency on the
ProcessApplicationComponent in order to call the getName() method on the ProcessApplication.
The name of the process application is subsequently used for composing the name of the
MscManagedProcessApplication
service which means that it must be available when
registering the service.
This service depends on all ProcessApplicationDeploymentService
instances started for the
process application. Thus, when this service is started, it is guaranteed that all process application
deployments have completed successfully.
This service creates the ProcessApplicationInfo
object and passes it to the
MscManagedProcessApplication
service.
- Author:
- Daniel Meyer
-
Field Summary
Modifier and TypeFieldDescriptionprotected final Supplier<ProcessEngine>
Supplier for the default process engineprotected final Collection<org.jboss.msc.service.ServiceName>
the names of the deployment services we depend on; those must be added as declarative dependencies when the service is installed.protected final Supplier<ProcessApplicationInterface>
protected final Supplier<org.jboss.as.ee.component.ComponentView>
protected org.jboss.modules.Module
protected final Supplier<BpmPlatformPlugins>
protected org.jboss.jandex.AnnotationInstance
protected org.jboss.jandex.AnnotationInstance
protected ProcessApplicationInfoImpl
protected final Consumer<ProcessApplicationStartService>
protected HashSet<ProcessEngine>
Fields inherited from interface org.jboss.msc.service.Service
NULL
-
Constructor Summary
ConstructorDescriptionProcessApplicationStartService
(Collection<org.jboss.msc.service.ServiceName> deploymentServiceNames, org.jboss.jandex.AnnotationInstance postDeployDescription, org.jboss.jandex.AnnotationInstance preUndeployDescription, org.jboss.modules.Module paModule, Supplier<org.jboss.as.ee.component.ComponentView> paComponentViewSupplier, Supplier<ProcessApplicationInterface> noViewProcessApplication, Supplier<ProcessEngine> defaultProcessEngineSupplier, Supplier<BpmPlatformPlugins> platformPluginsSupplier, Consumer<ProcessApplicationStartService> provider) -
Method Summary
Modifier and TypeMethodDescriptionprotected Object[]
getInjections
(Method lifecycleMethod) protected Class<?>
getPaClass
(org.jboss.jandex.AnnotationInstance annotation) getValue()
protected void
invokePostDeploy
(ProcessApplicationInterface processApplication) protected void
invokePreUndeploy
(ProcessApplicationInterface processApplication) protected void
notifyBpmPlatformPlugins
(BpmPlatformPlugins value, ProcessApplicationInterface processApplication) void
start
(org.jboss.msc.service.StartContext context) void
stop
(org.jboss.msc.service.StopContext context)
-
Field Details
-
deploymentServiceNames
the names of the deployment services we depend on; those must be added as declarative dependencies when the service is installed. -
paComponentViewSupplier
-
noViewProcessApplicationSupplier
-
defaultProcessEngineSupplier
Supplier for the default process engine -
platformPluginsSupplier
-
provider
-
preUndeployDescription
protected org.jboss.jandex.AnnotationInstance preUndeployDescription -
postDeployDescription
protected org.jboss.jandex.AnnotationInstance postDeployDescription -
processApplicationInfo
-
referencedProcessEngines
-
paModule
protected org.jboss.modules.Module paModule
-
-
Constructor Details
-
ProcessApplicationStartService
public ProcessApplicationStartService(Collection<org.jboss.msc.service.ServiceName> deploymentServiceNames, org.jboss.jandex.AnnotationInstance postDeployDescription, org.jboss.jandex.AnnotationInstance preUndeployDescription, org.jboss.modules.Module paModule, Supplier<org.jboss.as.ee.component.ComponentView> paComponentViewSupplier, Supplier<ProcessApplicationInterface> noViewProcessApplication, Supplier<ProcessEngine> defaultProcessEngineSupplier, Supplier<BpmPlatformPlugins> platformPluginsSupplier, Consumer<ProcessApplicationStartService> provider)
-
-
Method Details
-
start
public void start(org.jboss.msc.service.StartContext context) throws org.jboss.msc.service.StartException - Specified by:
start
in interfaceorg.jboss.msc.Service
- Throws:
org.jboss.msc.service.StartException
-
notifyBpmPlatformPlugins
protected void notifyBpmPlatformPlugins(BpmPlatformPlugins value, ProcessApplicationInterface processApplication) -
stop
public void stop(org.jboss.msc.service.StopContext context) - Specified by:
stop
in interfaceorg.jboss.msc.Service
-
invokePostDeploy
protected void invokePostDeploy(ProcessApplicationInterface processApplication) throws ClassNotFoundException, org.jboss.msc.service.StartException - Throws:
ClassNotFoundException
org.jboss.msc.service.StartException
-
invokePreUndeploy
protected void invokePreUndeploy(ProcessApplicationInterface processApplication) throws ClassNotFoundException - Throws:
ClassNotFoundException
-
getInjections
-
getPaClass
protected Class<?> getPaClass(org.jboss.jandex.AnnotationInstance annotation) throws ClassNotFoundException - Throws:
ClassNotFoundException
-
getValue
public ProcessApplicationStartService getValue() throws IllegalStateException, IllegalArgumentException- Specified by:
getValue
in interfaceorg.jboss.msc.value.Value<ProcessApplicationStartService>
- Throws:
IllegalStateException
IllegalArgumentException
-