org.eclipse.rdf4j.sail.config

## Interface SailFactory

- All Known Implementing Classes:
    CustomGraphQueryInferencerFactory, DedupingInferencerFactory, DirectTypeHierarchyInferencerFactory, ElasticsearchSailFactory, FederationFactory, ForwardChainingRDFSInferencerFactory, LuceneSailFactory, LuceneSpinSailFactory, MemoryStoreFactory, NativeStoreFactory, SchemaCachingRDFSInferencerFactory, ShaclSailFactory, SolrSailFactory, SpinSailFactory

      public interface SailFactory

  A SailFactory takes care of creating and initializing a specific type of `Sail` based on RDF configuration data. SailFactory's are used to create specific Sails and to initialize them based on the configuration data that is supplied to it, for example in a server environment.
  Author:
    Arjohn Kampman

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `SailImplConfig` | `getConfig()`
    `Sail` | `getSail(SailImplConfig config)` Returns a Sail instance that has been initialized using the supplied configuration data.
    `String` | `getSailType()` Returns the type of the Sails that this factory creates.

- - ### Method Detail

    - #### getSailType

          String getSailType()

      Returns the type of the Sails that this factory creates. Sail types are used for identification and should uniquely identify specific implementations of the Sail API. This type can be equal to the fully qualified class name of the Sail, but this is not required.

    - #### getConfig

          SailImplConfig getConfig()

    - #### getSail

          Sail getSail(SailImplConfig config)
                throws SailConfigException

      Returns a Sail instance that has been initialized using the supplied configuration data.
      Parameters:
        `config` - TODO
      Returns:
        The created (but un-initialized) Sail.
      Throws:
        `SailConfigException` - If no Sail could be created due to invalid or incomplete configuration data.

Copyright © 2015-2020 Eclipse Foundation. All Rights Reserved.