Module org.eclipse.persistence.core
Class RMIConnection
- java.lang.Object
-
- org.eclipse.persistence.internal.sessions.remote.RemoteConnection
-
- org.eclipse.persistence.sessions.remote.rmi.RMIConnection
-
- All Implemented Interfaces:
Serializable
public class RMIConnection extends RemoteConnection
This class exists on on the client side which talks to remote session controller through RMI connection.- See Also:
- Serialized Form
-
-
Field Summary
-
Fields inherited from class org.eclipse.persistence.internal.sessions.remote.RemoteConnection
serviceName, session
-
-
Constructor Summary
Constructors Constructor Description RMIConnection(RMIRemoteSessionController controller)PUBLIC: The connection must be create from the server-side session controllers stub.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidbeginEarlyTransaction()INTERNAL: Begin an early unit of work transaction.voidbeginTransaction()INTERNAL: Begin a transaction on the database.RemoteUnitOfWorkcommitRootUnitOfWork(RemoteUnitOfWork theRemoteUnitOfWork)INTERNAL: Commit root unit of work from the client side to the server side.voidcommitTransaction()INTERNAL: Commit a transaction on the database.SessioncreateRemoteSession()PUBLIC: Returns a remote session.voidcursoredStreamClose(ObjID remoteCursoredStreamOid)Used for closing cursored streams across RMI.VectorcursoredStreamNextPage(RemoteCursoredStream remoteCursoredStream, ReadQuery query, DistributedSession session, int pageSize)Retrieve next page size of objects from the remote cursored streamintcursoredStreamSize(ObjID remoteCursoredStreamID)Return the cursored stream sizeRemoteCursoredStreamcursorSelectObjects(CursoredStreamPolicy policy, DistributedSession session)INTERNAL: Returns remote cursor streamRemoteScrollableCursorcursorSelectObjects(ScrollableCursorPolicy policy, DistributedSession session)INTERNAL: Returns remote cursor streamVectorgetDefaultReadOnlyClasses()INTERNAL Return the read-only classesClassDescriptorgetDescriptor(Class<?> domainClass)INTERNAL: Return the table descriptor specified for the class.ClassDescriptorgetDescriptorForAlias(String alias)INTERNAL: Return the table descriptor specified for the alias.LogingetLogin()INTERNAL: Return the table descriptor specified for the class.RMIRemoteSessionControllergetRemoteSessionController()INTERNAL: Return the remote session controllerObjectgetSequenceNumberNamed(Object remoteFunctionCall)INTERNAL: Perform remote function callvoidinitializeIdentityMapsOnServerSession()INTERNAL: Reset the cache on the server-side session.TransporterinstantiateRemoteValueHolderOnServer(RemoteValueHolder remoteValueHolder)INTERNAL: Instantiate remote value holder on the servervoidprocessCommand(RemoteCommand command)ADVANCED: This method will send the command to the remote session for processingTransporterremoteExecute(DatabaseQuery query)INTERNAL: Execute the query on the server.TransporterremoteExecuteNamedQuery(String name, Class<?> javaClass, Vector arguments)INTERNAL: Execute query remotely.voidrollbackTransaction()INTERNAL: Rollback a transaction on the database.booleanscrollableCursorAbsolute(ObjID remoteScrollableCursorOid, int rows)Moves the cursor to the given row number in the result setvoidscrollableCursorAfterLast(ObjID remoteScrollableCursorOid)Moves the cursor to the end of the result set, just after the last row.voidscrollableCursorBeforeFirst(ObjID remoteScrollableCursorOid)Moves the cursor to the front of the result set, just before the first rowvoidscrollableCursorClose(ObjID remoteScrollableCursorOid)Used for closing scrollable cursor across RMI.intscrollableCursorCurrentIndex(ObjID remoteScrollableCursorOid)Retrieves the current row index numberbooleanscrollableCursorFirst(ObjID remoteScrollableCursorOid)Moves the cursor to the first row in the result setbooleanscrollableCursorIsAfterLast(ObjID remoteScrollableCursorOid)Indicates whether the cursor is after the last row in the result set.booleanscrollableCursorIsBeforeFirst(ObjID remoteScrollableCursorOid)Indicates whether the cursor is before the first row in the result set.booleanscrollableCursorIsFirst(ObjID remoteScrollableCursorOid)Indicates whether the cursor is on the first row of the result set.booleanscrollableCursorIsLast(ObjID remoteScrollableCursorOid)Indicates whether the cursor is on the last row of the result set.booleanscrollableCursorLast(ObjID remoteScrollableCursorOid)Moves the cursor to the last row in the result setObjectscrollableCursorNextObject(ObjID remoteScrollableCursorOid, ReadQuery query, DistributedSession session)Retrieve next object from the remote scrollable cursorObjectscrollableCursorPreviousObject(ObjID remoteScrollableCursorOid, ReadQuery query, DistributedSession session)Retrieve previous object from the remote scrollable cursorbooleanscrollableCursorRelative(ObjID remoteScrollableCursorOid, int rows)Moves the cursor to the given row number in the result setintscrollableCursorSize(ObjID cursorId)Return the scrollable cursor sizevoidsetRemoteSessionController(RMIRemoteSessionController remoteSessionController)INTERNAL: Set remote session controller-
Methods inherited from class org.eclipse.persistence.internal.sessions.remote.RemoteConnection
fixObjectReferences, getServiceName, getSession, initialize, isConnected, release, setServiceName, setSession
-
-
-
-
Constructor Detail
-
RMIConnection
public RMIConnection(RMIRemoteSessionController controller)
PUBLIC: The connection must be create from the server-side session controllers stub. The session in then created from the connection through createRemoteSession().- See Also:
createRemoteSession()
-
-
Method Detail
-
processCommand
public void processCommand(RemoteCommand command)
ADVANCED: This method will send the command to the remote session for processing- Specified by:
processCommandin classRemoteConnection- Parameters:
command- Contains a command that will be executed on the remote session- See Also:
RemoteCommand
-
beginTransaction
public void beginTransaction()
INTERNAL: Begin a transaction on the database.- Specified by:
beginTransactionin classRemoteConnection
-
beginEarlyTransaction
public void beginEarlyTransaction()
INTERNAL: Begin an early unit of work transaction.- Specified by:
beginEarlyTransactionin classRemoteConnection
-
commitRootUnitOfWork
public RemoteUnitOfWork commitRootUnitOfWork(RemoteUnitOfWork theRemoteUnitOfWork)
INTERNAL: Commit root unit of work from the client side to the server side.- Specified by:
commitRootUnitOfWorkin classRemoteConnection
-
commitTransaction
public void commitTransaction()
INTERNAL: Commit a transaction on the database.- Specified by:
commitTransactionin classRemoteConnection
-
createRemoteSession
public Session createRemoteSession()
PUBLIC: Returns a remote session.- Specified by:
createRemoteSessionin classRemoteConnection
-
cursoredStreamClose
public void cursoredStreamClose(ObjID remoteCursoredStreamOid)
Used for closing cursored streams across RMI.- Specified by:
cursoredStreamClosein classRemoteConnection
-
cursoredStreamNextPage
public Vector cursoredStreamNextPage(RemoteCursoredStream remoteCursoredStream, ReadQuery query, DistributedSession session, int pageSize)
Retrieve next page size of objects from the remote cursored stream- Specified by:
cursoredStreamNextPagein classRemoteConnection
-
cursoredStreamSize
public int cursoredStreamSize(ObjID remoteCursoredStreamID)
Return the cursored stream size- Specified by:
cursoredStreamSizein classRemoteConnection
-
cursorSelectObjects
public RemoteCursoredStream cursorSelectObjects(CursoredStreamPolicy policy, DistributedSession session)
INTERNAL: Returns remote cursor stream- Specified by:
cursorSelectObjectsin classRemoteConnection
-
cursorSelectObjects
public RemoteScrollableCursor cursorSelectObjects(ScrollableCursorPolicy policy, DistributedSession session)
INTERNAL: Returns remote cursor stream- Specified by:
cursorSelectObjectsin classRemoteConnection
-
getDefaultReadOnlyClasses
public Vector getDefaultReadOnlyClasses()
INTERNAL Return the read-only classes- Specified by:
getDefaultReadOnlyClassesin classRemoteConnection
-
getDescriptor
public ClassDescriptor getDescriptor(Class<?> domainClass)
INTERNAL: Return the table descriptor specified for the class.- Specified by:
getDescriptorin classRemoteConnection
-
getDescriptorForAlias
public ClassDescriptor getDescriptorForAlias(String alias)
INTERNAL: Return the table descriptor specified for the alias.- Specified by:
getDescriptorForAliasin classRemoteConnection
-
getLogin
public Login getLogin()
INTERNAL: Return the table descriptor specified for the class.- Specified by:
getLoginin classRemoteConnection
-
getRemoteSessionController
public RMIRemoteSessionController getRemoteSessionController()
INTERNAL: Return the remote session controller
-
getSequenceNumberNamed
public Object getSequenceNumberNamed(Object remoteFunctionCall)
INTERNAL: Perform remote function call- Specified by:
getSequenceNumberNamedin classRemoteConnection
-
initializeIdentityMapsOnServerSession
public void initializeIdentityMapsOnServerSession()
INTERNAL: Reset the cache on the server-side session.- Specified by:
initializeIdentityMapsOnServerSessionin classRemoteConnection
-
instantiateRemoteValueHolderOnServer
public Transporter instantiateRemoteValueHolderOnServer(RemoteValueHolder remoteValueHolder)
INTERNAL: Instantiate remote value holder on the server- Specified by:
instantiateRemoteValueHolderOnServerin classRemoteConnection
-
remoteExecute
public Transporter remoteExecute(DatabaseQuery query)
INTERNAL: Execute the query on the server.- Specified by:
remoteExecutein classRemoteConnection
-
remoteExecuteNamedQuery
public Transporter remoteExecuteNamedQuery(String name, Class<?> javaClass, Vector arguments)
INTERNAL: Execute query remotely.- Specified by:
remoteExecuteNamedQueryin classRemoteConnection
-
rollbackTransaction
public void rollbackTransaction()
INTERNAL: Rollback a transaction on the database.- Specified by:
rollbackTransactionin classRemoteConnection
-
scrollableCursorAbsolute
public boolean scrollableCursorAbsolute(ObjID remoteScrollableCursorOid, int rows)
Moves the cursor to the given row number in the result set- Specified by:
scrollableCursorAbsolutein classRemoteConnection
-
scrollableCursorAfterLast
public void scrollableCursorAfterLast(ObjID remoteScrollableCursorOid)
Moves the cursor to the end of the result set, just after the last row.- Specified by:
scrollableCursorAfterLastin classRemoteConnection
-
scrollableCursorBeforeFirst
public void scrollableCursorBeforeFirst(ObjID remoteScrollableCursorOid)
Moves the cursor to the front of the result set, just before the first row- Specified by:
scrollableCursorBeforeFirstin classRemoteConnection
-
scrollableCursorClose
public void scrollableCursorClose(ObjID remoteScrollableCursorOid)
Used for closing scrollable cursor across RMI.- Specified by:
scrollableCursorClosein classRemoteConnection
-
scrollableCursorCurrentIndex
public int scrollableCursorCurrentIndex(ObjID remoteScrollableCursorOid)
Retrieves the current row index number- Specified by:
scrollableCursorCurrentIndexin classRemoteConnection
-
scrollableCursorFirst
public boolean scrollableCursorFirst(ObjID remoteScrollableCursorOid)
Moves the cursor to the first row in the result set- Specified by:
scrollableCursorFirstin classRemoteConnection
-
scrollableCursorIsAfterLast
public boolean scrollableCursorIsAfterLast(ObjID remoteScrollableCursorOid)
Indicates whether the cursor is after the last row in the result set.- Specified by:
scrollableCursorIsAfterLastin classRemoteConnection
-
scrollableCursorIsBeforeFirst
public boolean scrollableCursorIsBeforeFirst(ObjID remoteScrollableCursorOid)
Indicates whether the cursor is before the first row in the result set.- Specified by:
scrollableCursorIsBeforeFirstin classRemoteConnection
-
scrollableCursorIsFirst
public boolean scrollableCursorIsFirst(ObjID remoteScrollableCursorOid)
Indicates whether the cursor is on the first row of the result set.- Specified by:
scrollableCursorIsFirstin classRemoteConnection
-
scrollableCursorIsLast
public boolean scrollableCursorIsLast(ObjID remoteScrollableCursorOid)
Indicates whether the cursor is on the last row of the result set.- Specified by:
scrollableCursorIsLastin classRemoteConnection
-
scrollableCursorLast
public boolean scrollableCursorLast(ObjID remoteScrollableCursorOid)
Moves the cursor to the last row in the result set- Specified by:
scrollableCursorLastin classRemoteConnection
-
scrollableCursorNextObject
public Object scrollableCursorNextObject(ObjID remoteScrollableCursorOid, ReadQuery query, DistributedSession session)
Retrieve next object from the remote scrollable cursor- Specified by:
scrollableCursorNextObjectin classRemoteConnection
-
scrollableCursorPreviousObject
public Object scrollableCursorPreviousObject(ObjID remoteScrollableCursorOid, ReadQuery query, DistributedSession session)
Retrieve previous object from the remote scrollable cursor- Specified by:
scrollableCursorPreviousObjectin classRemoteConnection
-
scrollableCursorRelative
public boolean scrollableCursorRelative(ObjID remoteScrollableCursorOid, int rows)
Moves the cursor to the given row number in the result set- Specified by:
scrollableCursorRelativein classRemoteConnection
-
scrollableCursorSize
public int scrollableCursorSize(ObjID cursorId)
Return the scrollable cursor size- Specified by:
scrollableCursorSizein classRemoteConnection
-
setRemoteSessionController
public void setRemoteSessionController(RMIRemoteSessionController remoteSessionController)
INTERNAL: Set remote session controller
-
-