Class GlobalStmInstance

java.lang.Object
org.multiverse.api.GlobalStmInstance

public final class GlobalStmInstance extends Object
A singleton that can be used for easy access to the Stm that is used globally. Once it has been set, it should not be changed while running the system.

Using the GlobalStmInstance imposes some limitations (like 1 global Stm instance that is used by everything) but makes the system a lot easier to use. But if the GlobalStmInstance should not be used, but a 'private' Stm, you need to carry around the Stm reference yourself and just ignore this GlobalStmInstance.

Initialization

The default implementation is the GammaStm for now. It can be configured through setting the System property: 'org.multiverse.api.GlobalStmInstance.factoryMethod'. This method should be a no arg static method that returns a Stm instance.

  • Field Details

    • KEY

      private static final String KEY
    • DEFAULT_FACTORY_METHOD

      private static final String DEFAULT_FACTORY_METHOD
      See Also:
    • logger

      private static final Logger logger
    • instance

      private static final Stm instance
  • Constructor Details

    • GlobalStmInstance

      private GlobalStmInstance()
  • Method Details

    • getMethod

      private static Method getMethod(String factoryMethod)
    • getGlobalStmInstance

      public static Stm getGlobalStmInstance()
      Gets the global Stm instance. The returned value will never be null.
      Returns:
      the global Stm instance.