Package org.eclipse.rdf4j.federated
Class FederationManager
java.lang.Object
org.eclipse.rdf4j.federated.FederationManager
The FederationManager manages all modules necessary for the runtime behavior. This includes for instance the
federation layer instance, cache and statistics. It is Singleton and there can only be on federation instance at a
time.
The factory FedXFactory
provides various functions for initialization of FedX and should be used as the entry
point for any application using FedX.
Config.initialize(fedxConfig); Listinvalid input: '<Endpoint'invalid input: '>' members = ... // e.g. use EndpointFactory methods FedXRepository repo = FedXFactory.initializeFederation(endpoints); ReositoryConnection conn = repo.getConnection(); // Do something with the connection, e.g. query evaluation repo.shutDown();
- Author:
- Andreas Schwarte
-
Nested Class Summary
Modifier and TypeClassDescriptionstatic enum
The Federation type definition: Local, Remote, Hybrid -
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
Add the specified endpoints to the federation and take care for updating all structures.void
addEndpoint
(Endpoint e, boolean... updateStrategy) Add the specified endpoint to the federation.createWorkerUnion
(QueryInfo queryInfo) Create an appropriate worker union for this federation, i.e.Returns the managedExecutor
which takes for properly handling any configuredFedXConfig.getTaskWrapper()
void
init
(FedX federation, FederationContext federationContext) void
Remove all endpoints from the federation, e.g.void
removeEndpoint
(Endpoint e, boolean... updateStrategy) Remove the specified endpoint from the federation.void
reset()
Reset theScheduler
instances, i.e.void
shutDown()
Shutdown the federation including the following operations:
-
Constructor Details
-
FederationManager
public FederationManager()
-
-
Method Details
-
init
-
reset
public void reset()Reset theScheduler
instances, i.e. abort all running threads and create a new scheduler instance. -
getExecutor
Returns the managedExecutor
which takes for properly handling any configuredFedXConfig.getTaskWrapper()
-
getFederation
-
getJoinScheduler
-
getLeftJoinScheduler
-
getUnionScheduler
-
getFederationType
-
addEndpoint
Add the specified endpoint to the federation. The federation must not contain a member with the same endpoint location.- Parameters:
e
- the endpointupdateStrategy
- optional parameter, to determine if strategy is to be updated, default=true- Throws:
FedXRuntimeException
- if the federation has already a member with the same location
-
addAll
Add the specified endpoints to the federation and take care for updating all structures.- Parameters:
endpoints
- a list of endpoints to add
-
removeEndpoint
Remove the specified endpoint from the federation.- Parameters:
e
- the endpointupdateStrategy
- optional parameter, to determine if strategy is to be updated, default=true- Throws:
RepositoryException
-
removeAll
Remove all endpoints from the federation, e.g. to load a new preset. Repositories of the endpoints are shutDown, and the EndpointManager is added accordingly.- Throws:
RepositoryException
-
shutDown
Shutdown the federation including the following operations:- shut down repositories of all federation members
- persist the cached information
- clear the endpoint manager
- Throws:
FedXException
- if an error occurs while shutting down the federation
-
createWorkerUnion
Create an appropriate worker union for this federation, i.e. a synchronous worker union for local federations and a multithreaded worker union for remote invalid input: '&' hybrid federations.- Returns:
- the
WorkerUnionBase
- See Also:
-