org.multiverse.api

## Class GlobalStmInstance

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

    public final class GlobalStmInstance
    extends java.lang.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.

### Method Summary

Methods
`static Stm` `getGlobalStmInstance()` Gets the global `Stm` instance.

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

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

### Method Detail

#### getGlobalStmInstance

    public static Stm getGlobalStmInstance()

Gets the global `Stm` instance. The returned value will never be null.

Returns:
  the global Stm instance.