Class EndpointFactory
- java.lang.Object
-
- org.eclipse.rdf4j.federated.endpoint.EndpointFactory
-
public class EndpointFactory extends Object
Utility class providing various methods to create Endpoints to be used as federation members.- Author:
- Andreas Schwarte
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description protected static classEndpointFactory.DefaultRDFHandler
-
Constructor Summary
Constructors Constructor Description EndpointFactory()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static StringgetId(String endpointID, String type)Construct a unique id for the provided SPARQL Endpoint, e.g http://dbpedia.org/ => %type%_dbpedia.orgstatic EndpointloadEndpoint(String id, Repository repository)Load anEndpointfor a given (configured) Repository.static List<Endpoint>loadFederationMembers(File dataConfig, File fedXBaseDir)Utility function to load federation members from a data configuration file.static List<Endpoint>loadFederationMembers(Model members, File baseDir)Utility function to load federation members from a model.static EndpointloadNativeEndpoint(File location)Construct aNativeStoreendpoint using the provided information and the file location as name.static EndpointloadNativeEndpoint(String name, File location)Construct a NativeStore endpoint using the provided information.static EndpointloadRemoteRepository(String repositoryServer, String repositoryName)static EndpointloadRemoteRepository(String repositoryServer, String repositoryName, boolean writable)static EndpointloadResolvableRepository(String repositoryId)Load aResolvableEndpointstatic EndpointloadResolvableRepository(String repositoryId, boolean writable)Load aResolvableEndpointstatic EndpointloadSPARQLEndpoint(String endpoint)Construct a SPARQL endpoint using the the provided information and the host of the url as name.static EndpointloadSPARQLEndpoint(String name, String endpoint)Construct a SPARQL endpoint using the the provided information.
-
-
-
Method Detail
-
loadSPARQLEndpoint
public static Endpoint loadSPARQLEndpoint(String name, String endpoint) throws FedXException
Construct a SPARQL endpoint using the the provided information.- Parameters:
name- a descriptive name, e.g. http://dbpediaendpoint- the URL of the SPARQL endpoint, e.g. http://dbpedia.org/sparql- Returns:
- an initialized
EndpointBasecontaining the repository - Throws:
FedXException
-
loadSPARQLEndpoint
public static Endpoint loadSPARQLEndpoint(String endpoint) throws FedXException
Construct a SPARQL endpoint using the the provided information and the host of the url as name.- Parameters:
endpoint- the URL of the SPARQL endpoint, e.g. http://dbpedia.org/sparql- Returns:
- an initialized
EndpointBasecontaining the repository - Throws:
FedXException
-
loadRemoteRepository
public static Endpoint loadRemoteRepository(String repositoryServer, String repositoryName) throws FedXException
- Throws:
FedXException
-
loadRemoteRepository
public static Endpoint loadRemoteRepository(String repositoryServer, String repositoryName, boolean writable) throws FedXException
- Throws:
FedXException
-
loadResolvableRepository
public static Endpoint loadResolvableRepository(String repositoryId)
Load aResolvableEndpointThe federation must be initialized with a
RepositoryResolver( seeFedXFactory.withRepositoryResolver(RepositoryResolver)) and this resolver must offer a Repository with the id provided byEndpoint.getId()Note that the name is set to "http://" + repositoryId
- Parameters:
repositoryId- the repository identifier- Returns:
- the configured
Endpoint - See Also:
ResolvableRepositoryProvider,ResolvableRepositoryInformation
-
loadResolvableRepository
public static Endpoint loadResolvableRepository(String repositoryId, boolean writable)
Load aResolvableEndpointThe federation must be initialized with a
RepositoryResolver( seeFedXFactory.withRepositoryResolver(RepositoryResolver)) and this resolver must offer a Repository with the id provided byEndpoint.getId()Note that the name is set to "http://" + repositoryId
- Parameters:
repositoryId- the repository identifierwritable- whether to configure the endpoint as writable.- Returns:
- the configured
Endpoint - See Also:
ResolvableRepositoryProvider,ResolvableRepositoryInformation
-
loadEndpoint
public static Endpoint loadEndpoint(String id, Repository repository) throws FedXException
Load anEndpointfor a given (configured) Repository.Note that
EndpointTypeis set toEndpointType.OtherIf the repository is already initialized, it is assumed that the lifecycle is managed externally. Otherwise, FedX will make sure to take care for the lifecycle of the repository, i.e. initialize and shutdown.
- Parameters:
id- the identifier, e.g. "myRepository"repository- the constructed repository- Returns:
- the initialized endpoint
- Throws:
FedXException
-
loadNativeEndpoint
public static Endpoint loadNativeEndpoint(String name, File location) throws FedXException
Construct a NativeStore endpoint using the provided information.If the repository location denotes an absolute path, the native store directory must already exist. If a relative path is used, the repository is created on the fly (if necessary).
- Parameters:
name- a descriptive name, e.g. http://dbpedialocation- the location of the data store, either absolute or relative in a "repositories" subfolderSailRepository.getDataDir()- Returns:
- an initialized endpoint containing the repository
- Throws:
FedXException
-
loadNativeEndpoint
public static Endpoint loadNativeEndpoint(File location) throws FedXException
Construct aNativeStoreendpoint using the provided information and the file location as name.If the repository location denotes an absolute path, the native store directory must already exist. If a relative path is used, the repository is created on the fly (if necessary).
- Parameters:
location- the location of the data store- Returns:
- an initialized endpoint containing the repository
- Throws:
FedXException
-
loadFederationMembers
public static List<Endpoint> loadFederationMembers(File dataConfig, File fedXBaseDir) throws FedXException
Utility function to load federation members from a data configuration file.A data configuration file provides information about federation members in form of turtle. Currently the types NativeStore, ResolvableEndpoint and SPARQLEndpoint are supported. For details please refer to the documentation in
NativeRepositoryInformation,ResolvableRepositoryInformationandSPARQLRepositoryInformation.- Parameters:
dataConfig-- Returns:
- a list of initialized endpoints, i.e. the federation members
- Throws:
FedXException
-
loadFederationMembers
public static List<Endpoint> loadFederationMembers(Model members, File baseDir) throws FedXException
Utility function to load federation members from a model.Currently the types NativeStore, ResolvableEndpoint and SPARQLEndpoint are supported. For details please refer to the documentation in
NativeRepositoryInformation,ResolvableRepositoryInformationandSPARQLRepositoryInformation.- Parameters:
members-baseDir-- Returns:
- list of endpoints
- Throws:
FedXException
-
-