EclipseLink 2.0.0, build 'v20091127-r5931' API Reference

org.eclipse.persistence.sessions.remote.rmi
Class RMIConnection

java.lang.Object
  extended by org.eclipse.persistence.internal.sessions.remote.RemoteConnection
      extended by org.eclipse.persistence.sessions.remote.rmi.RMIConnection
All Implemented Interfaces:
java.io.Serializable

public class RMIConnection
extends org.eclipse.persistence.internal.sessions.remote.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
 
Constructor Summary
RMIConnection(RMIRemoteSessionController controller)
          PUBLIC: The connection must be create from the server-side session controllers stub.
 
Method Summary
 void beginTransaction()
          INTERNAL: Begin a transaction on the database.
 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.
 void commitTransaction()
          INTERNAL: Commit a transaction on the database.
 Session createRemoteSession()
          PUBLIC: Returns a remote session.
 void cursoredStreamClose(java.rmi.server.ObjID remoteCursoredStreamOid)
          Used for closing cursored streams across RMI.
 java.util.Vector cursoredStreamNextPage(org.eclipse.persistence.internal.sessions.remote.RemoteCursoredStream remoteCursoredStream, ReadQuery query, RemoteSession session, int pageSize)
          Retrieve next page size of objects from the remote cursored stream
 int cursoredStreamSize(java.rmi.server.ObjID remoteCursoredStreamID)
          Return the cursored stream size
 org.eclipse.persistence.internal.sessions.remote.RemoteCursoredStream cursorSelectObjects(CursoredStreamPolicy policy, DistributedSession session)
          INTERNAL: Returns remote cursor stream
 org.eclipse.persistence.internal.sessions.remote.RemoteScrollableCursor cursorSelectObjects(ScrollableCursorPolicy policy, DistributedSession session)
          INTERNAL: Returns remote cursor stream
 void fixObjectReferences(org.eclipse.persistence.internal.sessions.remote.Transporter remoteCursoredStream, ObjectLevelReadQuery query, RemoteSession session)
          INTERNAL: An object has been serialized from the server to the remote client.
 java.util.Vector getDefaultReadOnlyClasses()
          INTERNAL Return the read-only classes
 ClassDescriptor getDescriptor(java.lang.Class domainClass)
          INTERNAL: Return the table descriptor specified for the class.
 Login getLogin()
          INTERNAL: Return the table descriptor specified for the class.
 RMIRemoteSessionController getRemoteSessionController()
          INTERNAL: Return the remote session controller
 java.lang.Object getSequenceNumberNamed(java.lang.Object remoteFunctionCall)
          INTERNAL: Perform remote function call
 void initializeIdentityMapsOnServerSession()
          INTERNAL: Reset the cache on the server-side session.
 org.eclipse.persistence.internal.sessions.remote.Transporter instantiateRemoteValueHolderOnServer(org.eclipse.persistence.internal.sessions.remote.RemoteValueHolder remoteValueHolder)
          INTERNAL: Instantiate remote value holder on the server
 void processCommand(org.eclipse.persistence.internal.sessions.remote.RemoteCommand command)
          ADVANCED: This method will send the command to the remote session for processing
 org.eclipse.persistence.internal.sessions.remote.Transporter remoteExecute(DatabaseQuery query)
          INTERNAL: Execute the query on the server.
 org.eclipse.persistence.internal.sessions.remote.Transporter remoteExecuteNamedQuery(java.lang.String name, java.lang.Class javaClass, java.util.Vector arguments)
          INTERNAL: Execute query remotely.
 void rollbackTransaction()
          INTERNAL: Rollback a transaction on the database.
 boolean scrollableCursorAbsolute(java.rmi.server.ObjID remoteScrollableCursorOid, int rows)
          Moves the cursor to the given row number in the result set
 void scrollableCursorAfterLast(java.rmi.server.ObjID remoteScrollableCursorOid)
          Moves the cursor to the end of the result set, just after the last row.
 void scrollableCursorBeforeFirst(java.rmi.server.ObjID remoteScrollableCursorOid)
          Moves the cursor to the front of the result set, just before the first row
 void scrollableCursorClose(java.rmi.server.ObjID remoteScrollableCursorOid)
          Used for closing scrollable cursor across RMI.
 int scrollableCursorCurrentIndex(java.rmi.server.ObjID remoteScrollableCursorOid)
          Retrieves the current row index number
 boolean scrollableCursorFirst(java.rmi.server.ObjID remoteScrollableCursorOid)
          Moves the cursor to the first row in the result set
 boolean scrollableCursorIsAfterLast(java.rmi.server.ObjID remoteScrollableCursorOid)
          Indicates whether the cursor is after the last row in the result set.
 boolean scrollableCursorIsBeforeFirst(java.rmi.server.ObjID remoteScrollableCursorOid)
          Indicates whether the cursor is before the first row in the result set.
 boolean scrollableCursorIsFirst(java.rmi.server.ObjID remoteScrollableCursorOid)
          Indicates whether the cursor is on the first row of the result set.
 boolean scrollableCursorIsLast(java.rmi.server.ObjID remoteScrollableCursorOid)
          Indicates whether the cursor is on the last row of the result set.
 boolean scrollableCursorLast(java.rmi.server.ObjID remoteScrollableCursorOid)
          Moves the cursor to the last row in the result set
 java.lang.Object scrollableCursorNextObject(java.rmi.server.ObjID remoteScrollableCursorOid, ReadQuery query, RemoteSession session)
          Retrieve next object from the remote scrollable cursor
 java.lang.Object scrollableCursorPreviousObject(java.rmi.server.ObjID remoteScrollableCursorOid, ReadQuery query, RemoteSession session)
          Retrieve previous object from the remote scrollable cursor
 boolean scrollableCursorRelative(java.rmi.server.ObjID remoteScrollableCursorOid, int rows)
          Moves the cursor to the given row number in the result set
 int scrollableCursorSize(java.rmi.server.ObjID cursorId)
          Return the scrollable cursor size
 void setRemoteSessionController(RMIRemoteSessionController remoteSessionController)
          INTERNAL: Set remote session controller
 
Methods inherited from class org.eclipse.persistence.internal.sessions.remote.RemoteConnection
getServiceName, release, setServiceName
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

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:
processCommand in class org.eclipse.persistence.internal.sessions.remote.RemoteConnection
Parameters:
command - RemoteCOmmand Contains a command that will be executed on the remote session
See Also:
org.eclipse.persistence.internal.RemoteCommand

beginTransaction

public void beginTransaction()
INTERNAL: Begin a transaction on the database.

Specified by:
beginTransaction in class org.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:
commitRootUnitOfWork in class org.eclipse.persistence.internal.sessions.remote.RemoteConnection

commitTransaction

public void commitTransaction()
INTERNAL: Commit a transaction on the database.

Specified by:
commitTransaction in class org.eclipse.persistence.internal.sessions.remote.RemoteConnection

createRemoteSession

public Session createRemoteSession()
PUBLIC: Returns a remote session.

Specified by:
createRemoteSession in class org.eclipse.persistence.internal.sessions.remote.RemoteConnection

cursoredStreamClose

public void cursoredStreamClose(java.rmi.server.ObjID remoteCursoredStreamOid)
Used for closing cursored streams across RMI.

Specified by:
cursoredStreamClose in class org.eclipse.persistence.internal.sessions.remote.RemoteConnection

cursoredStreamNextPage

public java.util.Vector cursoredStreamNextPage(org.eclipse.persistence.internal.sessions.remote.RemoteCursoredStream remoteCursoredStream,
                                               ReadQuery query,
                                               RemoteSession session,
                                               int pageSize)
Retrieve next page size of objects from the remote cursored stream

Specified by:
cursoredStreamNextPage in class org.eclipse.persistence.internal.sessions.remote.RemoteConnection

cursoredStreamSize

public int cursoredStreamSize(java.rmi.server.ObjID remoteCursoredStreamID)
Return the cursored stream size

Specified by:
cursoredStreamSize in class org.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:
cursorSelectObjects in class org.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:
cursorSelectObjects in class org.eclipse.persistence.internal.sessions.remote.RemoteConnection

fixObjectReferences

public void fixObjectReferences(org.eclipse.persistence.internal.sessions.remote.Transporter remoteCursoredStream,
                                ObjectLevelReadQuery query,
                                RemoteSession session)
INTERNAL: An object has been serialized from the server to the remote client. Replace the transient attributes of the remote value holders with client-side objects. Being used for the cursored stream only


getDefaultReadOnlyClasses

public java.util.Vector getDefaultReadOnlyClasses()
INTERNAL Return the read-only classes

Specified by:
getDefaultReadOnlyClasses in class org.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:
getDescriptor in class org.eclipse.persistence.internal.sessions.remote.RemoteConnection

getLogin

public Login getLogin()
INTERNAL: Return the table descriptor specified for the class.

Specified by:
getLogin in class org.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:
getSequenceNumberNamed in class org.eclipse.persistence.internal.sessions.remote.RemoteConnection

initializeIdentityMapsOnServerSession

public void initializeIdentityMapsOnServerSession()
INTERNAL: Reset the cache on the server-side session.

Specified by:
initializeIdentityMapsOnServerSession in class org.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:
instantiateRemoteValueHolderOnServer in class org.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:
remoteExecute in class org.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:
remoteExecuteNamedQuery in class org.eclipse.persistence.internal.sessions.remote.RemoteConnection

rollbackTransaction

public void rollbackTransaction()
INTERNAL: Rollback a transaction on the database.

Specified by:
rollbackTransaction in class org.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:
scrollableCursorAbsolute in class org.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:
scrollableCursorAfterLast in class org.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:
scrollableCursorBeforeFirst in class org.eclipse.persistence.internal.sessions.remote.RemoteConnection

scrollableCursorClose

public void scrollableCursorClose(java.rmi.server.ObjID remoteScrollableCursorOid)
Used for closing scrollable cursor across RMI.

Specified by:
scrollableCursorClose in class org.eclipse.persistence.internal.sessions.remote.RemoteConnection

scrollableCursorCurrentIndex

public int scrollableCursorCurrentIndex(java.rmi.server.ObjID remoteScrollableCursorOid)
Retrieves the current row index number

Specified by:
scrollableCursorCurrentIndex in class org.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:
scrollableCursorFirst in class org.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:
scrollableCursorIsAfterLast in class org.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:
scrollableCursorIsBeforeFirst in class org.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:
scrollableCursorIsFirst in class org.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:
scrollableCursorIsLast in class org.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:
scrollableCursorLast in class org.eclipse.persistence.internal.sessions.remote.RemoteConnection

scrollableCursorNextObject

public java.lang.Object scrollableCursorNextObject(java.rmi.server.ObjID remoteScrollableCursorOid,
                                                   ReadQuery query,
                                                   RemoteSession session)
Retrieve next object from the remote scrollable cursor

Specified by:
scrollableCursorNextObject in class org.eclipse.persistence.internal.sessions.remote.RemoteConnection

scrollableCursorPreviousObject

public java.lang.Object scrollableCursorPreviousObject(java.rmi.server.ObjID remoteScrollableCursorOid,
                                                       ReadQuery query,
                                                       RemoteSession session)
Retrieve previous object from the remote scrollable cursor

Specified by:
scrollableCursorPreviousObject in class org.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:
scrollableCursorRelative in class org.eclipse.persistence.internal.sessions.remote.RemoteConnection

scrollableCursorSize

public int scrollableCursorSize(java.rmi.server.ObjID cursorId)
Return the scrollable cursor size

Specified by:
scrollableCursorSize in class org.eclipse.persistence.internal.sessions.remote.RemoteConnection

setRemoteSessionController

public void setRemoteSessionController(RMIRemoteSessionController remoteSessionController)
INTERNAL: Set remote session controller


EclipseLink 2.0.0, build 'v20091127-r5931' API Reference