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 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(java.rmi.server.ObjID remoteCursoredStreamOid)Used for closing cursored streams across RMI.java.util.VectorcursoredStreamNextPage(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 sizeRemoteCursoredStreamcursorSelectObjects(CursoredStreamPolicy policy, DistributedSession session)INTERNAL: Returns remote cursor streamRemoteScrollableCursorcursorSelectObjects(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.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(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-
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- 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 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(java.rmi.server.ObjID remoteCursoredStreamOid)
Used for closing cursored streams across RMI.- Specified by:
cursoredStreamClosein classRemoteConnection
-
cursoredStreamNextPage
public java.util.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(java.rmi.server.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 java.util.Vector getDefaultReadOnlyClasses()
INTERNAL Return the read-only classes- Specified by:
getDefaultReadOnlyClassesin classRemoteConnection
-
getDescriptor
public ClassDescriptor getDescriptor(java.lang.Class domainClass)
INTERNAL: Return the table descriptor specified for the class.- Specified by:
getDescriptorin classRemoteConnection
-
getDescriptorForAlias
public ClassDescriptor getDescriptorForAlias(java.lang.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 java.lang.Object getSequenceNumberNamed(java.lang.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(java.lang.String name, java.lang.Class javaClass, java.util.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(java.rmi.server.ObjID remoteScrollableCursorOid, int rows)Moves the cursor to the given row number in the result set- Specified by:
scrollableCursorAbsolutein classRemoteConnection
-
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 classRemoteConnection
-
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 classRemoteConnection
-
scrollableCursorClose
public void scrollableCursorClose(java.rmi.server.ObjID remoteScrollableCursorOid)
Used for closing scrollable cursor across RMI.- Specified by:
scrollableCursorClosein classRemoteConnection
-
scrollableCursorCurrentIndex
public int scrollableCursorCurrentIndex(java.rmi.server.ObjID remoteScrollableCursorOid)
Retrieves the current row index number- Specified by:
scrollableCursorCurrentIndexin classRemoteConnection
-
scrollableCursorFirst
public boolean scrollableCursorFirst(java.rmi.server.ObjID remoteScrollableCursorOid)
Moves the cursor to the first row in the result set- Specified by:
scrollableCursorFirstin classRemoteConnection
-
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 classRemoteConnection
-
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 classRemoteConnection
-
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 classRemoteConnection
-
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 classRemoteConnection
-
scrollableCursorLast
public boolean scrollableCursorLast(java.rmi.server.ObjID remoteScrollableCursorOid)
Moves the cursor to the last row in the result set- Specified by:
scrollableCursorLastin classRemoteConnection
-
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 classRemoteConnection
-
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 classRemoteConnection
-
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 classRemoteConnection
-
scrollableCursorSize
public int scrollableCursorSize(java.rmi.server.ObjID cursorId)
Return the scrollable cursor size- Specified by:
scrollableCursorSizein classRemoteConnection
-
setRemoteSessionController
public void setRemoteSessionController(RMIRemoteSessionController remoteSessionController)
INTERNAL: Set remote session controller
-
-