Class RMIConnection
- java.lang.Object
-
- org.eclipse.persistence.internal.sessions.remote.RemoteConnection
-
- org.eclipse.persistence.sessions.remote.rmi.iiop.RMIConnection
-
- All Implemented Interfaces:
java.io.Serializable
public class RMIConnection extends org.eclipse.persistence.internal.sessions.remote.RemoteConnectionThis class exists on on the client side which talks to remote session controller through RMI connection.- See Also:
- Serialized Form
-
-
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.org.eclipse.persistence.internal.sessions.remote.RemoteUnitOfWorkcommitRootUnitOfWork(org.eclipse.persistence.internal.sessions.remote.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(java.rmi.server.ObjID remoteCursoredStreamOid)Used for closing cursored streams across RMI.java.util.VectorcursoredStreamNextPage(org.eclipse.persistence.internal.sessions.remote.RemoteCursoredStream remoteCursoredStream, ReadQuery query, DistributedSession session, int pageSize)Retrieve next page size of objects from the remote cursored streamintcursoredStreamSize(java.rmi.server.ObjID remoteCursoredStreamID)Return the cursored stream sizeorg.eclipse.persistence.internal.sessions.remote.RemoteCursoredStreamcursorSelectObjects(CursoredStreamPolicy policy, DistributedSession session)INTERNAL: Returns remote cursor streamorg.eclipse.persistence.internal.sessions.remote.RemoteScrollableCursorcursorSelectObjects(ScrollableCursorPolicy policy, DistributedSession session)INTERNAL: Returns remote cursor streamjava.util.VectorgetDefaultReadOnlyClasses()INTERNAL Return the read-only classesClassDescriptorgetDescriptor(java.lang.Class domainClass)INTERNAL: Return the table descriptor specified for the class.ClassDescriptorgetDescriptorForAlias(java.lang.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 controllerjava.lang.ObjectgetSequenceNumberNamed(java.lang.Object remoteFunctionCall)INTERNAL: Perform remote function callvoidinitializeIdentityMapsOnServerSession()INTERNAL: Reset the cache on the server-side session.org.eclipse.persistence.internal.sessions.remote.TransporterinstantiateRemoteValueHolderOnServer(org.eclipse.persistence.internal.sessions.remote.RemoteValueHolder remoteValueHolder)INTERNAL: Instantiate remote value holder on the servervoidprocessCommand(org.eclipse.persistence.internal.sessions.remote.RemoteCommand command)ADVANCED: This method will send the command to the remote session for processingorg.eclipse.persistence.internal.sessions.remote.TransporterremoteExecute(DatabaseQuery query)INTERNAL: Execute the query on the server.org.eclipse.persistence.internal.sessions.remote.TransporterremoteExecuteNamedQuery(java.lang.String name, java.lang.Class javaClass, java.util.Vector arguments)INTERNAL: Execute query remotely.voidrollbackTransaction()INTERNAL: Rollback a transaction on the database.booleanscrollableCursorAbsolute(java.rmi.server.ObjID remoteScrollableCursorOid, int rows)Moves the cursor to the given row number in the result setvoidscrollableCursorAfterLast(java.rmi.server.ObjID remoteScrollableCursorOid)Moves the cursor to the end of the result set, just after the last row.voidscrollableCursorBeforeFirst(java.rmi.server.ObjID remoteScrollableCursorOid)Moves the cursor to the front of the result set, just before the first rowvoidscrollableCursorClose(java.rmi.server.ObjID remoteScrollableCursorOid)Used for closing scrollable cursor across RMI.intscrollableCursorCurrentIndex(java.rmi.server.ObjID remoteScrollableCursorOid)Retrieves the current row index numberbooleanscrollableCursorFirst(java.rmi.server.ObjID remoteScrollableCursorOid)Moves the cursor to the first row in the result setbooleanscrollableCursorIsAfterLast(java.rmi.server.ObjID remoteScrollableCursorOid)Indicates whether the cursor is after the last row in the result set.booleanscrollableCursorIsBeforeFirst(java.rmi.server.ObjID remoteScrollableCursorOid)Indicates whether the cursor is before the first row in the result set.booleanscrollableCursorIsFirst(java.rmi.server.ObjID remoteScrollableCursorOid)Indicates whether the cursor is on the first row of the result set.booleanscrollableCursorIsLast(java.rmi.server.ObjID remoteScrollableCursorOid)Indicates whether the cursor is on the last row of the result set.booleanscrollableCursorLast(java.rmi.server.ObjID remoteScrollableCursorOid)Moves the cursor to the last row in the result setjava.lang.ObjectscrollableCursorNextObject(java.rmi.server.ObjID remoteScrollableCursorOid, ReadQuery query, DistributedSession session)Retrieve next object from the remote scrollable cursorjava.lang.ObjectscrollableCursorPreviousObject(java.rmi.server.ObjID remoteScrollableCursorOid, ReadQuery query, DistributedSession session)Retrieve previous object from the remote scrollable cursorbooleanscrollableCursorRelative(java.rmi.server.ObjID remoteScrollableCursorOid, int rows)Moves the cursor to the given row number in the result setintscrollableCursorSize(java.rmi.server.ObjID cursorId)Return the scrollable cursor sizevoidsetRemoteSessionController(RMIRemoteSessionController remoteSessionController)INTERNAL: Set remote session controller
-
-
-
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(org.eclipse.persistence.internal.sessions.remote.RemoteCommand command)
ADVANCED: This method will send the command to the remote session for processing- Specified by:
processCommandin classorg.eclipse.persistence.internal.sessions.remote.RemoteConnection- Parameters:
command- RemoteCOmmand 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 classorg.eclipse.persistence.internal.sessions.remote.RemoteConnection
-
beginEarlyTransaction
public void beginEarlyTransaction()
INTERNAL: Begin an early unit of work transaction.- Specified by:
beginEarlyTransactionin classorg.eclipse.persistence.internal.sessions.remote.RemoteConnection
-
commitRootUnitOfWork
public org.eclipse.persistence.internal.sessions.remote.RemoteUnitOfWork commitRootUnitOfWork(org.eclipse.persistence.internal.sessions.remote.RemoteUnitOfWork theRemoteUnitOfWork)
INTERNAL: Commit root unit of work from the client side to the server side.- Specified by:
commitRootUnitOfWorkin classorg.eclipse.persistence.internal.sessions.remote.RemoteConnection
-
commitTransaction
public void commitTransaction()
INTERNAL: Commit a transaction on the database.- Specified by:
commitTransactionin classorg.eclipse.persistence.internal.sessions.remote.RemoteConnection
-
createRemoteSession
public Session createRemoteSession()
PUBLIC: Returns a remote session.- Specified by:
createRemoteSessionin classorg.eclipse.persistence.internal.sessions.remote.RemoteConnection
-
cursoredStreamClose
public void cursoredStreamClose(java.rmi.server.ObjID remoteCursoredStreamOid)
Used for closing cursored streams across RMI.- Specified by:
cursoredStreamClosein classorg.eclipse.persistence.internal.sessions.remote.RemoteConnection
-
cursoredStreamNextPage
public java.util.Vector cursoredStreamNextPage(org.eclipse.persistence.internal.sessions.remote.RemoteCursoredStream remoteCursoredStream, ReadQuery query, DistributedSession session, int pageSize)Retrieve next page size of objects from the remote cursored stream- Specified by:
cursoredStreamNextPagein classorg.eclipse.persistence.internal.sessions.remote.RemoteConnection
-
cursoredStreamSize
public int cursoredStreamSize(java.rmi.server.ObjID remoteCursoredStreamID)
Return the cursored stream size- Specified by:
cursoredStreamSizein classorg.eclipse.persistence.internal.sessions.remote.RemoteConnection
-
cursorSelectObjects
public org.eclipse.persistence.internal.sessions.remote.RemoteCursoredStream cursorSelectObjects(CursoredStreamPolicy policy, DistributedSession session)
INTERNAL: Returns remote cursor stream- Specified by:
cursorSelectObjectsin classorg.eclipse.persistence.internal.sessions.remote.RemoteConnection
-
cursorSelectObjects
public org.eclipse.persistence.internal.sessions.remote.RemoteScrollableCursor cursorSelectObjects(ScrollableCursorPolicy policy, DistributedSession session)
INTERNAL: Returns remote cursor stream- Specified by:
cursorSelectObjectsin classorg.eclipse.persistence.internal.sessions.remote.RemoteConnection
-
getDefaultReadOnlyClasses
public java.util.Vector getDefaultReadOnlyClasses()
INTERNAL Return the read-only classes- Specified by:
getDefaultReadOnlyClassesin classorg.eclipse.persistence.internal.sessions.remote.RemoteConnection
-
getDescriptor
public ClassDescriptor getDescriptor(java.lang.Class domainClass)
INTERNAL: Return the table descriptor specified for the class.- Specified by:
getDescriptorin classorg.eclipse.persistence.internal.sessions.remote.RemoteConnection
-
getDescriptorForAlias
public ClassDescriptor getDescriptorForAlias(java.lang.String alias)
INTERNAL: Return the table descriptor specified for the alias.- Specified by:
getDescriptorForAliasin classorg.eclipse.persistence.internal.sessions.remote.RemoteConnection
-
getLogin
public Login getLogin()
INTERNAL: Return the table descriptor specified for the class.- Specified by:
getLoginin classorg.eclipse.persistence.internal.sessions.remote.RemoteConnection
-
getRemoteSessionController
public RMIRemoteSessionController getRemoteSessionController()
INTERNAL: Return the remote session controller
-
getSequenceNumberNamed
public java.lang.Object getSequenceNumberNamed(java.lang.Object remoteFunctionCall)
INTERNAL: Perform remote function call- Specified by:
getSequenceNumberNamedin classorg.eclipse.persistence.internal.sessions.remote.RemoteConnection
-
initializeIdentityMapsOnServerSession
public void initializeIdentityMapsOnServerSession()
INTERNAL: Reset the cache on the server-side session.- Specified by:
initializeIdentityMapsOnServerSessionin classorg.eclipse.persistence.internal.sessions.remote.RemoteConnection
-
instantiateRemoteValueHolderOnServer
public org.eclipse.persistence.internal.sessions.remote.Transporter instantiateRemoteValueHolderOnServer(org.eclipse.persistence.internal.sessions.remote.RemoteValueHolder remoteValueHolder)
INTERNAL: Instantiate remote value holder on the server- Specified by:
instantiateRemoteValueHolderOnServerin classorg.eclipse.persistence.internal.sessions.remote.RemoteConnection
-
remoteExecute
public org.eclipse.persistence.internal.sessions.remote.Transporter remoteExecute(DatabaseQuery query)
INTERNAL: Execute the query on the server.- Specified by:
remoteExecutein classorg.eclipse.persistence.internal.sessions.remote.RemoteConnection
-
remoteExecuteNamedQuery
public org.eclipse.persistence.internal.sessions.remote.Transporter remoteExecuteNamedQuery(java.lang.String name, java.lang.Class javaClass, java.util.Vector arguments)INTERNAL: Execute query remotely.- Specified by:
remoteExecuteNamedQueryin classorg.eclipse.persistence.internal.sessions.remote.RemoteConnection
-
rollbackTransaction
public void rollbackTransaction()
INTERNAL: Rollback a transaction on the database.- Specified by:
rollbackTransactionin classorg.eclipse.persistence.internal.sessions.remote.RemoteConnection
-
scrollableCursorAbsolute
public boolean scrollableCursorAbsolute(java.rmi.server.ObjID remoteScrollableCursorOid, int rows)Moves the cursor to the given row number in the result set- Specified by:
scrollableCursorAbsolutein classorg.eclipse.persistence.internal.sessions.remote.RemoteConnection
-
scrollableCursorAfterLast
public void scrollableCursorAfterLast(java.rmi.server.ObjID remoteScrollableCursorOid)
Moves the cursor to the end of the result set, just after the last row.- Specified by:
scrollableCursorAfterLastin classorg.eclipse.persistence.internal.sessions.remote.RemoteConnection
-
scrollableCursorBeforeFirst
public void scrollableCursorBeforeFirst(java.rmi.server.ObjID remoteScrollableCursorOid)
Moves the cursor to the front of the result set, just before the first row- Specified by:
scrollableCursorBeforeFirstin classorg.eclipse.persistence.internal.sessions.remote.RemoteConnection
-
scrollableCursorClose
public void scrollableCursorClose(java.rmi.server.ObjID remoteScrollableCursorOid)
Used for closing scrollable cursor across RMI.- Specified by:
scrollableCursorClosein classorg.eclipse.persistence.internal.sessions.remote.RemoteConnection
-
scrollableCursorCurrentIndex
public int scrollableCursorCurrentIndex(java.rmi.server.ObjID remoteScrollableCursorOid)
Retrieves the current row index number- Specified by:
scrollableCursorCurrentIndexin classorg.eclipse.persistence.internal.sessions.remote.RemoteConnection
-
scrollableCursorFirst
public boolean scrollableCursorFirst(java.rmi.server.ObjID remoteScrollableCursorOid)
Moves the cursor to the first row in the result set- Specified by:
scrollableCursorFirstin classorg.eclipse.persistence.internal.sessions.remote.RemoteConnection
-
scrollableCursorIsAfterLast
public boolean scrollableCursorIsAfterLast(java.rmi.server.ObjID remoteScrollableCursorOid)
Indicates whether the cursor is after the last row in the result set.- Specified by:
scrollableCursorIsAfterLastin classorg.eclipse.persistence.internal.sessions.remote.RemoteConnection
-
scrollableCursorIsBeforeFirst
public boolean scrollableCursorIsBeforeFirst(java.rmi.server.ObjID remoteScrollableCursorOid)
Indicates whether the cursor is before the first row in the result set.- Specified by:
scrollableCursorIsBeforeFirstin classorg.eclipse.persistence.internal.sessions.remote.RemoteConnection
-
scrollableCursorIsFirst
public boolean scrollableCursorIsFirst(java.rmi.server.ObjID remoteScrollableCursorOid)
Indicates whether the cursor is on the first row of the result set.- Specified by:
scrollableCursorIsFirstin classorg.eclipse.persistence.internal.sessions.remote.RemoteConnection
-
scrollableCursorIsLast
public boolean scrollableCursorIsLast(java.rmi.server.ObjID remoteScrollableCursorOid)
Indicates whether the cursor is on the last row of the result set.- Specified by:
scrollableCursorIsLastin classorg.eclipse.persistence.internal.sessions.remote.RemoteConnection
-
scrollableCursorLast
public boolean scrollableCursorLast(java.rmi.server.ObjID remoteScrollableCursorOid)
Moves the cursor to the last row in the result set- Specified by:
scrollableCursorLastin classorg.eclipse.persistence.internal.sessions.remote.RemoteConnection
-
scrollableCursorNextObject
public java.lang.Object scrollableCursorNextObject(java.rmi.server.ObjID remoteScrollableCursorOid, ReadQuery query, DistributedSession session)Retrieve next object from the remote scrollable cursor- Specified by:
scrollableCursorNextObjectin classorg.eclipse.persistence.internal.sessions.remote.RemoteConnection
-
scrollableCursorPreviousObject
public java.lang.Object scrollableCursorPreviousObject(java.rmi.server.ObjID remoteScrollableCursorOid, ReadQuery query, DistributedSession session)Retrieve previous object from the remote scrollable cursor- Specified by:
scrollableCursorPreviousObjectin classorg.eclipse.persistence.internal.sessions.remote.RemoteConnection
-
scrollableCursorRelative
public boolean scrollableCursorRelative(java.rmi.server.ObjID remoteScrollableCursorOid, int rows)Moves the cursor to the given row number in the result set- Specified by:
scrollableCursorRelativein classorg.eclipse.persistence.internal.sessions.remote.RemoteConnection
-
scrollableCursorSize
public int scrollableCursorSize(java.rmi.server.ObjID cursorId)
Return the scrollable cursor size- Specified by:
scrollableCursorSizein classorg.eclipse.persistence.internal.sessions.remote.RemoteConnection
-
setRemoteSessionController
public void setRemoteSessionController(RMIRemoteSessionController remoteSessionController)
INTERNAL: Set remote session controller
-
-