Top Description Fields Constructors Methods
org.eclipse.persistence.descriptors.partitioning

public Class ReplicationPartitioningPolicy

extends PartitioningPolicy
Class Inheritance
Known Direct Subclasses
org.eclipse.persistence.descriptors.partitioning.RoundRobinPartitioningPolicy, org.eclipse.persistence.descriptors.partitioning.UnionPartitioningPolicy
Imports
java.util.ArrayList, .Arrays, .List, org.eclipse.persistence.internal.databaseaccess.Accessor, org.eclipse.persistence.internal.sessions.AbstractRecord, .AbstractSession, org.eclipse.persistence.queries.DatabaseQuery, org.eclipse.persistence.sessions.server.ServerSession

PUBLIC: ReplicationPartitioningPolicy sends requests to a set of connection pools. It is for replicating data across a cluster of database machines. Only modification queries are replicated.
Author
James Sutherland
Since
EclipseLink 2.2

Field Summary

Modifier and TypeField and Description
protected List<String>
Inherited from org.eclipse.persistence.descriptors.partitioning.PartitioningPolicy:
name

Constructor Summary

AccessConstructor and Description
public
public
public

Method Summary

Modifier and TypeMethod and Description
public void
addConnectionPool(String connectionPool)

PUBLIC: Add the connection pool name to the list of pools to rotate queries through.

public List<String>
getConnectionPools()

PUBLIC: Return the list of connection pool names to replicate queries to.

public List<Accessor>
public void
initialize(AbstractSession session)

Overrides org.eclipse.persistence.descriptors.partitioning.PartitioningPolicy.initialize.

INTERNAL: Default the connection pools to all pools if unset.
public void
setConnectionPools(List<String> connectionPools)

PUBLIC: Set the list of connection pool names to replicate queries to.

Inherited from org.eclipse.persistence.descriptors.partitioning.PartitioningPolicy:
acquireAccessorconvertClassNamesToClassesgetAccessorgetNamepartitionPersistsetName

Field Detail

connectionPoolsback to summary
protected List<String> connectionPools

Constructor Detail

ReplicationPartitioningPolicyback to summary
public ReplicationPartitioningPolicy()
ReplicationPartitioningPolicyback to summary
public ReplicationPartitioningPolicy(String... pools)
ReplicationPartitioningPolicyback to summary
public ReplicationPartitioningPolicy(List<String> pools)

Method Detail

addConnectionPoolback to summary
public void addConnectionPool(String connectionPool)

PUBLIC: Add the connection pool name to the list of pools to rotate queries through.

getConnectionPoolsback to summary
public List<String> getConnectionPools()

PUBLIC: Return the list of connection pool names to replicate queries to.

getConnectionsForQueryback to summary
public List<Accessor> getConnectionsForQuery(AbstractSession session, DatabaseQuery query, AbstractRecord arguments)

Implements abstract org.eclipse.persistence.descriptors.partitioning.PartitioningPolicy.getConnectionsForQuery.

INTERNAL: Get a connection from each pool.

Annotations
@Override
initializeback to summary
public void initialize(AbstractSession session)

Overrides org.eclipse.persistence.descriptors.partitioning.PartitioningPolicy.initialize.

INTERNAL: Default the connection pools to all pools if unset.

Annotations
@Override
setConnectionPoolsback to summary
public void setConnectionPools(List<String> connectionPools)

PUBLIC: Set the list of connection pool names to replicate queries to. A connection pool with the same name must be defined on the ServerSession.