Module eclipselink
Class PartitioningPolicy
- java.lang.Object
-
- org.eclipse.persistence.descriptors.partitioning.PartitioningPolicy
-
- All Implemented Interfaces:
Serializable
- Direct Known Subclasses:
CustomPartitioningPolicy
,FieldPartitioningPolicy
,PinnedPartitioningPolicy
,ReplicationPartitioningPolicy
public abstract class PartitioningPolicy extends Object implements Serializable
PUBLIC: A PartitioningPolicy is used to partition the data for a class across multiple difference databases or across a database cluster such as Oracle RAC. Partitioning can provide improved scalability by allowing multiple database machines to service requests.If multiple partitions are used to process a single transaction, JTA should be used for proper XA transaction support.
- See Also:
- Serialized Form
- Author:
- James Sutherland
- Since:
- EclipseLink 2.2
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
PartitioningPolicy()
Default constructor.
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description org.eclipse.persistence.internal.databaseaccess.Accessor
acquireAccessor(String poolName, ServerSession session, DatabaseQuery query, boolean returnNullIfDead)
INTERNAL: Return an accessor from the pool.void
convertClassNamesToClasses(ClassLoader classLoader)
INTERNAL: Convert all the class-name-based settings to actual class-based settings.org.eclipse.persistence.internal.databaseaccess.Accessor
getAccessor(String poolName, org.eclipse.persistence.internal.sessions.AbstractSession session, DatabaseQuery query, boolean returnNullIfDead)
INTERNAL: Return an accessor from the pool for the session.abstract List<org.eclipse.persistence.internal.databaseaccess.Accessor>
getConnectionsForQuery(org.eclipse.persistence.internal.sessions.AbstractSession session, DatabaseQuery query, org.eclipse.persistence.internal.sessions.AbstractRecord arguments)
String
getName()
PUBLIC: Return the name of the policy.void
initialize(org.eclipse.persistence.internal.sessions.AbstractSession session)
INTERNAL: Initialize the policy.void
partitionPersist(org.eclipse.persistence.internal.sessions.AbstractSession session, Object object, ClassDescriptor descriptor)
INTERNAL: Allow for the persist call to assign the partition.void
setName(String name)
PUBLIC: Set the name of the policy.
-
-
-
Field Detail
-
name
protected String name
The persistent unit unique name for the policy.
-
-
Method Detail
-
getConnectionsForQuery
public abstract List<org.eclipse.persistence.internal.databaseaccess.Accessor> getConnectionsForQuery(org.eclipse.persistence.internal.sessions.AbstractSession session, DatabaseQuery query, org.eclipse.persistence.internal.sessions.AbstractRecord arguments)
-
partitionPersist
public void partitionPersist(org.eclipse.persistence.internal.sessions.AbstractSession session, Object object, ClassDescriptor descriptor)
INTERNAL: Allow for the persist call to assign the partition.
-
initialize
public void initialize(org.eclipse.persistence.internal.sessions.AbstractSession session)
INTERNAL: Initialize the policy.
-
convertClassNamesToClasses
public void convertClassNamesToClasses(ClassLoader classLoader)
INTERNAL: Convert all the class-name-based settings to actual class-based settings. This method is used when converting a project that has been built with class names to a project with classes.
-
acquireAccessor
public org.eclipse.persistence.internal.databaseaccess.Accessor acquireAccessor(String poolName, ServerSession session, DatabaseQuery query, boolean returnNullIfDead)
INTERNAL: Return an accessor from the pool.
-
getAccessor
public org.eclipse.persistence.internal.databaseaccess.Accessor getAccessor(String poolName, org.eclipse.persistence.internal.sessions.AbstractSession session, DatabaseQuery query, boolean returnNullIfDead)
INTERNAL: Return an accessor from the pool for the session. For a client session the accessor is stored for the duration of the transaction.
-
getName
public String getName()
PUBLIC: Return the name of the policy. The name must be unique for the persistence unit. The name allows the policy to be shared among multiple descriptors, queries.
-
setName
public void setName(String name)
PUBLIC: Set the name of the policy. The name must be unique for the persistence unit. The name allows the policy to be shared among multiple descriptors, queries.
-
-