## Uses of Interface
org.eclipse.rdf4j.sail.Sail

- Packages that use Sail
  Package | Description
  --- | ---
  org.eclipse.rdf4j.federated |
  org.eclipse.rdf4j.repository.sail | Repository implementation for local RDF databases that implement the SAIL SPI.
  org.eclipse.rdf4j.sail | RDF Storage And Inference Layer (RDF Sail): a set of interfaces defining an SPI for RDF databases.
  org.eclipse.rdf4j.sail.config |
  org.eclipse.rdf4j.sail.elasticsearch.config |
  org.eclipse.rdf4j.sail.elasticsearchstore | Elasticsearch store for string triples
  org.eclipse.rdf4j.sail.elasticsearchstore.config |
  org.eclipse.rdf4j.sail.extensiblestore | Elasticsearch store for string triples
  org.eclipse.rdf4j.sail.helpers | Abstract base implementation and internal helper classes for Sail implementations.
  org.eclipse.rdf4j.sail.inferencer.fc | Forward-chaining inferencers, implemented as `StackableSail`s.
  org.eclipse.rdf4j.sail.inferencer.fc.config |
  org.eclipse.rdf4j.sail.lmdb | The LMDB based Store.
  org.eclipse.rdf4j.sail.lmdb.config |
  org.eclipse.rdf4j.sail.lucene | A Sail implementation that supports full-text indexing via the Lucene API.
  org.eclipse.rdf4j.sail.lucene.impl.config |
  org.eclipse.rdf4j.sail.memory | An implementation of the RDF SAIL API that uses main memory for storage.
  org.eclipse.rdf4j.sail.memory.config |
  org.eclipse.rdf4j.sail.nativerdf | The Native Store.
  org.eclipse.rdf4j.sail.nativerdf.config |
  org.eclipse.rdf4j.sail.shacl | A Sail implementation for SHACL constraint checking.
  org.eclipse.rdf4j.sail.shacl.config |
  org.eclipse.rdf4j.sail.shacl.wrapper.data |
  org.eclipse.rdf4j.sail.solr.config |
  org.eclipse.rdf4j.testsuite.sail |
  org.eclipse.rdf4j.testsuite.shacl.manifest |

- - ### Uses of Sail in org.eclipse.rdf4j.federated

    Classes in org.eclipse.rdf4j.federated that implement Sail
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `FedX` | FedX serves as implementation of the federation layer.
    `protected static class` | `FedXConnection.SailBaseDefaultImpl` | A default implementation for `AbstractSail`.

  - ### Uses of Sail in org.eclipse.rdf4j.repository.sail

    Methods in org.eclipse.rdf4j.repository.sail that return Sail
    Modifier and Type | Method | Description
    --- | --- | ---
    `Sail` | SailRepository.`getSail()` | Gets the Sail object that is on top of the Sail stack that this repository operates on.

    Constructors in org.eclipse.rdf4j.repository.sail with parameters of type Sail
    Constructor | Description
    --- | ---
    `SailRepository​(Sail sail)` | Creates a new repository object that operates on the supplied Sail.

  - ### Uses of Sail in org.eclipse.rdf4j.sail

    Subinterfaces of Sail in org.eclipse.rdf4j.sail
    Modifier and Type | Interface | Description
    --- | --- | ---
    `interface` | `NotifyingSail` | An interface for `Sail`s that notify registered `SailChangedListener`s of changes in the data in the Sail.
    `interface` | `StackableSail` | An interface for Sails that can be stacked on top of other Sails.

    Methods in org.eclipse.rdf4j.sail that return Sail
    Modifier and Type | Method | Description
    --- | --- | ---
    `Sail` | StackableSail.`getBaseSail()` | Gets the base Sail that this Sail works on top of.
    `Sail` | SailChangedEvent.`getSail()` | The Sail object that sent this event.

    Methods in org.eclipse.rdf4j.sail with parameters of type Sail
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | StackableSail.`setBaseSail​(Sail baseSail)` | Sets the base Sail that this Sail will work on top of.

  - ### Uses of Sail in org.eclipse.rdf4j.sail.config

    Methods in org.eclipse.rdf4j.sail.config that return Sail
    Modifier and Type | Method | Description
    --- | --- | ---
    `Sail` | SailFactory.`getSail​(SailImplConfig config)` | Returns a Sail instance that has been initialized using the supplied configuration data.

  - ### Uses of Sail in org.eclipse.rdf4j.sail.elasticsearch.config

    Methods in org.eclipse.rdf4j.sail.elasticsearch.config that return Sail
    Modifier and Type | Method | Description
    --- | --- | ---
    `Sail` | ElasticsearchSailFactory.`getSail​(SailImplConfig config)` |

  - ### Uses of Sail in org.eclipse.rdf4j.sail.elasticsearchstore

    Classes in org.eclipse.rdf4j.sail.elasticsearchstore that implement Sail
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `ElasticsearchStore` | An RDF4J SailStore persisted to Elasticsearch.

  - ### Uses of Sail in org.eclipse.rdf4j.sail.elasticsearchstore.config

    Methods in org.eclipse.rdf4j.sail.elasticsearchstore.config that return Sail
    Modifier and Type | Method | Description
    --- | --- | ---
    `Sail` | ElasticsearchStoreFactory.`getSail​(SailImplConfig sailImplConfig)` |

  - ### Uses of Sail in org.eclipse.rdf4j.sail.extensiblestore

    Classes in org.eclipse.rdf4j.sail.extensiblestore that implement Sail
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `ExtensibleStore<T extends DataStructureInterface,​N extends NamespaceStoreInterface>` | A store where the backing storage can be implemented by the user.

  - ### Uses of Sail in org.eclipse.rdf4j.sail.helpers

    Classes in org.eclipse.rdf4j.sail.helpers that implement Sail
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `AbstractNotifyingSail` | A base `NotifyingSail` implementation that takes care of common sail tasks, including proper closing of active connections and a grace period for active connections during shutdown of the store.
    `class` | `AbstractSail` | An abstract Sail implementation that takes care of common sail tasks, including proper closing of active connections and a grace period for active connections during shutdown of the store.
    `class` | `NotifyingSailWrapper` | An implementation of the StackableSail interface that wraps another Sail object and forwards any relevant calls to the wrapped Sail.
    `class` | `SailWrapper` | An implementation of the StackableSail interface that wraps another Sail object and forwards any relevant calls to the wrapped Sail.

    Methods in org.eclipse.rdf4j.sail.helpers with type parameters of type Sail
    Modifier and Type | Method | Description
    --- | --- | ---
    `static <C extends Sail> C` | SailUtil.`findSailInStack​(Sail topSail, Class<C> sailClass)` | Searches a stack of Sails from top to bottom for a Sail that is an instance of the suppied class or interface.

    Methods in org.eclipse.rdf4j.sail.helpers that return Sail
    Modifier and Type | Method | Description
    --- | --- | ---
    `Sail` | SailWrapper.`getBaseSail()` |
    `Sail` | DefaultSailChangedEvent.`getSail()` |

    Methods in org.eclipse.rdf4j.sail.helpers with parameters of type Sail
    Modifier and Type | Method | Description
    --- | --- | ---
    `static <C extends Sail> C` | SailUtil.`findSailInStack​(Sail topSail, Class<C> sailClass)` | Searches a stack of Sails from top to bottom for a Sail that is an instance of the suppied class or interface.
    `void` | NotifyingSailWrapper.`setBaseSail​(Sail baseSail)` |
    `void` | SailWrapper.`setBaseSail​(Sail baseSail)` |

    Constructors in org.eclipse.rdf4j.sail.helpers with parameters of type Sail
    Constructor | Description
    --- | ---
    `DefaultSailChangedEvent​(Sail sail)` | Creates a new DefaultSailChangedEvent in which all possible changes are set to false.
    `SailWrapper​(Sail baseSail)` | Creates a new SailWrapper that wraps the supplied Sail.

  - ### Uses of Sail in org.eclipse.rdf4j.sail.inferencer.fc

    Classes in org.eclipse.rdf4j.sail.inferencer.fc that implement Sail
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `AbstractForwardChainingInferencer` |
    `class` | `CustomGraphQueryInferencer` | A forward-chaining inferencer that infers new statements using a SPARQL graph query.
    `class` | `DedupingInferencer` | An inferencer may infer the same statement from two different statements.
    `class` | `DirectTypeHierarchyInferencer` | A forward-chaining inferencer that infers the direct-type hierarchy relations `sesame:directSubClassOf`, `sesame:directSubPropertyOf` and `sesame:directType`.
    `class` | `ForwardChainingRDFSInferencer` | Deprecated. since 2.5.
    `class` | `SchemaCachingRDFSInferencer` | The SchemaCachingRDFSInferencer is an RDFS reasoner that caches all schema (TBox) statements and calculates an inference map to quickly determine inferred statements.

    Constructors in org.eclipse.rdf4j.sail.inferencer.fc with parameters of type Sail
    Constructor | Description
    --- | ---
    `AbstractForwardChainingInferencerConnection​(Sail sail, InferencerConnection con)` |

  - ### Uses of Sail in org.eclipse.rdf4j.sail.inferencer.fc.config

    Methods in org.eclipse.rdf4j.sail.inferencer.fc.config that return Sail
    Modifier and Type | Method | Description
    --- | --- | ---
    `Sail` | CustomGraphQueryInferencerFactory.`getSail​(SailImplConfig config)` |
    `Sail` | DedupingInferencerFactory.`getSail​(SailImplConfig config)` |
    `Sail` | DirectTypeHierarchyInferencerFactory.`getSail​(SailImplConfig config)` |
    `Sail` | ForwardChainingRDFSInferencerFactory.`getSail​(SailImplConfig config)` | Deprecated.
    `Sail` | SchemaCachingRDFSInferencerFactory.`getSail​(SailImplConfig config)` |

  - ### Uses of Sail in org.eclipse.rdf4j.sail.lmdb

    Classes in org.eclipse.rdf4j.sail.lmdb that implement Sail
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `LmdbStore` | A SAIL implementation using LMDB for storing and querying its data.

  - ### Uses of Sail in org.eclipse.rdf4j.sail.lmdb.config

    Methods in org.eclipse.rdf4j.sail.lmdb.config that return Sail
    Modifier and Type | Method | Description
    --- | --- | ---
    `Sail` | LmdbStoreFactory.`getSail​(SailImplConfig config)` |

  - ### Uses of Sail in org.eclipse.rdf4j.sail.lucene

    Classes in org.eclipse.rdf4j.sail.lucene that implement Sail
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `LuceneSail` | A LuceneSail wraps an arbitrary existing Sail and extends it with support for full-text search on all Literals.

  - ### Uses of Sail in org.eclipse.rdf4j.sail.lucene.impl.config

    Methods in org.eclipse.rdf4j.sail.lucene.impl.config that return Sail
    Modifier and Type | Method | Description
    --- | --- | ---
    `Sail` | LuceneSailFactory.`getSail​(SailImplConfig config)` |

  - ### Uses of Sail in org.eclipse.rdf4j.sail.memory

    Classes in org.eclipse.rdf4j.sail.memory that implement Sail
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `MemoryStore` | An implementation of the Sail interface that stores its data in main memory and that can use a file for persistent storage.

  - ### Uses of Sail in org.eclipse.rdf4j.sail.memory.config

    Methods in org.eclipse.rdf4j.sail.memory.config that return Sail
    Modifier and Type | Method | Description
    --- | --- | ---
    `Sail` | MemoryStoreFactory.`getSail​(SailImplConfig config)` |

  - ### Uses of Sail in org.eclipse.rdf4j.sail.nativerdf

    Classes in org.eclipse.rdf4j.sail.nativerdf that implement Sail
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `LimitedSizeNativeStore` |
    `class` | `NativeStore` | A SAIL implementation using B-Tree indexing on disk for storing and querying its data.

  - ### Uses of Sail in org.eclipse.rdf4j.sail.nativerdf.config

    Methods in org.eclipse.rdf4j.sail.nativerdf.config that return Sail
    Modifier and Type | Method | Description
    --- | --- | ---
    `Sail` | NativeStoreFactory.`getSail​(SailImplConfig config)` |

  - ### Uses of Sail in org.eclipse.rdf4j.sail.shacl

    Classes in org.eclipse.rdf4j.sail.shacl that implement Sail
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `ShaclSail` | A `Sail` implementation that adds support for the Shapes Constraint Language (SHACL).

    Methods in org.eclipse.rdf4j.sail.shacl with parameters of type Sail
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | ShaclSail.`setBaseSail​(Sail baseSail)` |

  - ### Uses of Sail in org.eclipse.rdf4j.sail.shacl.config

    Methods in org.eclipse.rdf4j.sail.shacl.config that return Sail
    Modifier and Type | Method | Description
    --- | --- | ---
    `Sail` | ShaclSailFactory.`getSail​(SailImplConfig config)` |

  - ### Uses of Sail in org.eclipse.rdf4j.sail.shacl.wrapper.data

    Constructors in org.eclipse.rdf4j.sail.shacl.wrapper.data with parameters of type Sail
    Constructor | Description
    --- | ---
    `ConnectionsGroup​(SailConnection baseConnection, SailConnection previousStateConnection, Sail addedStatements, Sail removedStatements, Stats stats, ConnectionsGroup.RdfsSubClassOfReasonerProvider rdfsSubClassOfReasonerProvider, ShaclSailConnection.Settings transactionSettings, boolean sparqlValidation)` |

  - ### Uses of Sail in org.eclipse.rdf4j.sail.solr.config

    Methods in org.eclipse.rdf4j.sail.solr.config that return Sail
    Modifier and Type | Method | Description
    --- | --- | ---
    `Sail` | SolrSailFactory.`getSail​(SailImplConfig config)` |

  - ### Uses of Sail in org.eclipse.rdf4j.testsuite.sail

    Fields in org.eclipse.rdf4j.testsuite.sail declared as Sail
    Modifier and Type | Field | Description
    --- | --- | ---
    `protected Sail` | RDFStoreTest.`sail` |
    `protected Sail` | SailIsolationLevelTest.`store` |

    Methods in org.eclipse.rdf4j.testsuite.sail that return Sail
    Modifier and Type | Method | Description
    --- | --- | ---
    `protected abstract Sail` | InferencingTest.`createSail()` | Gets an instance of the Sail that should be tested.
    `protected abstract Sail` | RDFStoreTest.`createSail()` | Gets an instance of the Sail that should be tested.
    `protected abstract Sail` | SailConcurrencyTest.`createSail()` |
    `protected abstract Sail` | SailInterruptTest.`createSail()` |
    `protected abstract Sail` | SailIsolationLevelTest.`createSail()` |

  - ### Uses of Sail in org.eclipse.rdf4j.testsuite.shacl.manifest

    Methods in org.eclipse.rdf4j.testsuite.shacl.manifest that return Sail
    Modifier and Type | Method | Description
    --- | --- | ---
    `protected abstract Sail` | AbstractSHACLTest.`newSail()` | Deprecated. Creates a new un-initialized Sail stack