Package org.jbpm.runtime.manager.impl

## Class RuntimeManagerFactoryImpl

- java.lang.Object
- - org.jbpm.runtime.manager.impl.RuntimeManagerFactoryImpl

- All Implemented Interfaces:
    `org.kie.api.runtime.manager.RuntimeManagerFactory`
  Direct Known Subclasses:
    `RuntimeManagerFactoryCDIImpl`

      public class RuntimeManagerFactoryImpl
      extends Object
      implements org.kie.api.runtime.manager.RuntimeManagerFactory

  This is the main entry point class for the RuntimeManager module responsible for delivering `RuntimeManager` instances based on given `RuntimeEnvironment`.
  It can be used in both CDI and non CDI environments although it does not produce RuntimeManager instance for CDI automatically but would be more used as an injected bean for other beans that might be interested in creating `RuntimeManager` instances on demand.
  This factory will try to discover several services before building RuntimeManager:
  - SessionFactory - depending if persistence is enabled will select appropriate instance
  - TaskServiceFactory - depending if TaskServiceFactory gets injected will select appropriate instance

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from interface org.kie.api.runtime.manager.RuntimeManagerFactory

      `org.kie.api.runtime.manager.RuntimeManagerFactory.Factory`

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `RuntimeManagerFactoryImpl()` |

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `protected org.kie.internal.runtime.manager.SessionFactory` | `getSessionFactory​(org.kie.api.runtime.manager.RuntimeEnvironment environment, String owner)` |
    `protected org.kie.internal.runtime.manager.TaskServiceFactory` | `getTaskServiceFactory​(org.kie.api.runtime.manager.RuntimeEnvironment environment)` |
    `org.kie.api.runtime.manager.RuntimeManager` | `newPerCaseRuntimeManager​(org.kie.api.runtime.manager.RuntimeEnvironment environment)` |
    `org.kie.api.runtime.manager.RuntimeManager` | `newPerCaseRuntimeManager​(org.kie.api.runtime.manager.RuntimeEnvironment environment, String identifier)` |
    `org.kie.api.runtime.manager.RuntimeManager` | `newPerProcessInstanceRuntimeManager​(org.kie.api.runtime.manager.RuntimeEnvironment environment)` |
    `org.kie.api.runtime.manager.RuntimeManager` | `newPerProcessInstanceRuntimeManager​(org.kie.api.runtime.manager.RuntimeEnvironment environment, String identifier)` |
    `org.kie.api.runtime.manager.RuntimeManager` | `newPerRequestRuntimeManager​(org.kie.api.runtime.manager.RuntimeEnvironment environment)` |
    `org.kie.api.runtime.manager.RuntimeManager` | `newPerRequestRuntimeManager​(org.kie.api.runtime.manager.RuntimeEnvironment environment, String identifier)` |
    `org.kie.api.runtime.manager.RuntimeManager` | `newSingletonRuntimeManager​(org.kie.api.runtime.manager.RuntimeEnvironment environment)` |
    `org.kie.api.runtime.manager.RuntimeManager` | `newSingletonRuntimeManager​(org.kie.api.runtime.manager.RuntimeEnvironment environment, String identifier)` |

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### RuntimeManagerFactoryImpl

          public RuntimeManagerFactoryImpl()

  - ### Method Detail

    - #### newSingletonRuntimeManager

          public org.kie.api.runtime.manager.RuntimeManager newSingletonRuntimeManager​(org.kie.api.runtime.manager.RuntimeEnvironment environment)

      Specified by:
        `newSingletonRuntimeManager` in interface `org.kie.api.runtime.manager.RuntimeManagerFactory`

    - #### newSingletonRuntimeManager

          public org.kie.api.runtime.manager.RuntimeManager newSingletonRuntimeManager​(org.kie.api.runtime.manager.RuntimeEnvironment environment,
                                                                                       String identifier)

      Specified by:
        `newSingletonRuntimeManager` in interface `org.kie.api.runtime.manager.RuntimeManagerFactory`

    - #### newPerRequestRuntimeManager

          public org.kie.api.runtime.manager.RuntimeManager newPerRequestRuntimeManager​(org.kie.api.runtime.manager.RuntimeEnvironment environment)

      Specified by:
        `newPerRequestRuntimeManager` in interface `org.kie.api.runtime.manager.RuntimeManagerFactory`

    - #### newPerRequestRuntimeManager

          public org.kie.api.runtime.manager.RuntimeManager newPerRequestRuntimeManager​(org.kie.api.runtime.manager.RuntimeEnvironment environment,
                                                                                        String identifier)

      Specified by:
        `newPerRequestRuntimeManager` in interface `org.kie.api.runtime.manager.RuntimeManagerFactory`

    - #### newPerProcessInstanceRuntimeManager

          public org.kie.api.runtime.manager.RuntimeManager newPerProcessInstanceRuntimeManager​(org.kie.api.runtime.manager.RuntimeEnvironment environment)

      Specified by:
        `newPerProcessInstanceRuntimeManager` in interface `org.kie.api.runtime.manager.RuntimeManagerFactory`

    - #### newPerProcessInstanceRuntimeManager

          public org.kie.api.runtime.manager.RuntimeManager newPerProcessInstanceRuntimeManager​(org.kie.api.runtime.manager.RuntimeEnvironment environment,
                                                                                                String identifier)

      Specified by:
        `newPerProcessInstanceRuntimeManager` in interface `org.kie.api.runtime.manager.RuntimeManagerFactory`

    - #### newPerCaseRuntimeManager

          public org.kie.api.runtime.manager.RuntimeManager newPerCaseRuntimeManager​(org.kie.api.runtime.manager.RuntimeEnvironment environment)

      Specified by:
        `newPerCaseRuntimeManager` in interface `org.kie.api.runtime.manager.RuntimeManagerFactory`

    - #### newPerCaseRuntimeManager

          public org.kie.api.runtime.manager.RuntimeManager newPerCaseRuntimeManager​(org.kie.api.runtime.manager.RuntimeEnvironment environment,
                                                                                     String identifier)

      Specified by:
        `newPerCaseRuntimeManager` in interface `org.kie.api.runtime.manager.RuntimeManagerFactory`

    - #### getSessionFactory

          protected org.kie.internal.runtime.manager.SessionFactory getSessionFactory​(org.kie.api.runtime.manager.RuntimeEnvironment environment,
                                                                                      String owner)

    - #### getTaskServiceFactory

          protected org.kie.internal.runtime.manager.TaskServiceFactory getTaskServiceFactory​(org.kie.api.runtime.manager.RuntimeEnvironment environment)