Package org.eclipse.rdf4j.sail.base

## Class SnapshotSailStore

- java.lang.Object
- - org.eclipse.rdf4j.sail.base.SnapshotSailStore

- All Implemented Interfaces:
    `AutoCloseable`, `SailClosable`, `SailStore`

      public class SnapshotSailStore
      extends Object
      implements SailStore

  A `SailStore` wrapper that branches the backing `SailSource`s to provide concurrent `IsolationLevels.SNAPSHOT_READ` isolation and higher.
  Author:
    James Leigh

- - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `SnapshotSailStore​(SailStore backingStore, ModelFactory modelFactory)` | Wraps an `SailStore`, tracking changes in `ModelFactory` instances.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | `close()` | Closes this resource, relinquishing any underlying resources.
    `EvaluationStatistics` | `getEvaluationStatistics()` | Used by `SailSourceConnection` to determine query join order.
    `SailSource` | `getExplicitSailSource()` |
    `SailSource` | `getInferredSailSource()` |
    `ValueFactory` | `getValueFactory()` | The `ValueFactory` that should be used in association with this.

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

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

- - ### Constructor Detail

    - #### SnapshotSailStore

          public SnapshotSailStore​(SailStore backingStore,
                                   ModelFactory modelFactory)

      Wraps an `SailStore`, tracking changes in `ModelFactory` instances.
      Parameters:
        `backingStore` -
        `modelFactory` -

  - ### Method Detail

    - #### close

          public void close()
                     throws SailException

      Description copied from interface: `SailClosable`
      Closes this resource, relinquishing any underlying resources.
      Specified by:
        `close` in interface `AutoCloseable`
      Specified by:
        `close` in interface `SailClosable`
      Throws:
        `SailException` - if this resource cannot be closed

    - #### getValueFactory

          public ValueFactory getValueFactory()

      Description copied from interface: `SailStore`
      The `ValueFactory` that should be used in association with this.
      Specified by:
        `getValueFactory` in interface `SailStore`
      Returns:
        this object's `ValueFactory`

    - #### getEvaluationStatistics

          public EvaluationStatistics getEvaluationStatistics()

      Description copied from interface: `SailStore`
      Used by `SailSourceConnection` to determine query join order.
      Specified by:
        `getEvaluationStatistics` in interface `SailStore`
      Returns:
        a `EvaluationStatistics` that is aware of the data distribution of this `SailStore` .

    - #### getExplicitSailSource

          public SailSource getExplicitSailSource()

      Specified by:
        `getExplicitSailSource` in interface `SailStore`
      Returns:
        `SailSource` of only explicit statements

    - #### getInferredSailSource

          public SailSource getInferredSailSource()

      Specified by:
        `getInferredSailSource` in interface `SailStore`
      Returns:
        `SailSource` of only inferred statements