// runtime container delegate implementation /////////////////////////////////////////////// public virtual void registerProcessEngine(ProcessEngine processEngine) { ensureNotNull("Cannot register process engine in Jmx Runtime Container", "process engine", processEngine); string processEngineName = processEngine.Name; // build and start the service. JmxManagedProcessEngine managedProcessEngine = new JmxManagedProcessEngine(processEngine); serviceContainer.startService(ServiceTypes.PROCESS_ENGINE, processEngineName, managedProcessEngine); }
public override void performOperationStep(DeploymentOperation operationContext) { //JAVA TO C# CONVERTER WARNING: The original Java variable was marked 'final': //ORIGINAL LINE: final org.camunda.bpm.container.impl.spi.PlatformServiceContainer serviceContainer = operationContext.getServiceContainer(); PlatformServiceContainer serviceContainer = operationContext.ServiceContainer; //JAVA TO C# CONVERTER WARNING: The original Java variable was marked 'final': //ORIGINAL LINE: final org.camunda.bpm.application.AbstractProcessApplication processApplication = operationContext.getAttachment(PROCESS_APPLICATION); AbstractProcessApplication processApplication = operationContext.getAttachment(PROCESS_APPLICATION); ClassLoader classLoader = null; if (processApplication != null) { classLoader = processApplication.ProcessApplicationClassloader; } string configurationClassName = processEngineXml.ConfigurationClass; if (string.ReferenceEquals(configurationClassName, null) || configurationClassName.Length == 0) { //JAVA TO C# CONVERTER WARNING: The .NET Type.FullName property will not always yield results identical to the Java Class.getName method: configurationClassName = typeof(StandaloneProcessEngineConfiguration).FullName; } // create & instantiate configuration class Type configurationClass = loadClass(configurationClassName, classLoader, typeof(ProcessEngineConfigurationImpl)); ProcessEngineConfigurationImpl configuration = createInstance(configurationClass); // set UUid generator // TODO: move this to configuration and use as default? ProcessEngineConfigurationImpl configurationImpl = configuration; configurationImpl.IdGenerator = new StrongUuidGenerator(); // set configuration values string name = processEngineXml.Name; configuration.ProcessEngineName = name; string datasourceJndiName = processEngineXml.Datasource; configuration.DataSourceJndiName = datasourceJndiName; // apply properties IDictionary <string, string> properties = processEngineXml.Properties; setJobExecutorActivate(configuration, properties); PropertyHelper.applyProperties(configuration, properties); // instantiate plugins: configurePlugins(configuration, processEngineXml, classLoader); if (!string.ReferenceEquals(processEngineXml.JobAcquisitionName, null) && processEngineXml.JobAcquisitionName.Length > 0) { JobExecutor jobExecutor = getJobExecutorService(serviceContainer); ensureNotNull("Cannot find referenced job executor with name '" + processEngineXml.JobAcquisitionName + "'", "jobExecutor", jobExecutor); // set JobExecutor on process engine configurationImpl.JobExecutor = jobExecutor; } // start the process engine inside the container. JmxManagedProcessEngine managedProcessEngineService = createProcessEngineControllerInstance(configuration); serviceContainer.startService(ServiceTypes.PROCESS_ENGINE, configuration.ProcessEngineName, managedProcessEngineService); }