|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
public interface IMirror
This interface defines the base operations that must be available for the management of the mirroring
implementation instances. The purpose of the IMirror
implementations is to provide a means of
synchronization between the IBuffer
that is authored by a writer and the respective IBuffer
available to the reader. The way the synchronization is performed and the technologies employed is
entirely up to the implementation to be specified and the respective IProxy
, IReaderProxy
and IWriterProxy
.
Nested Class Summary | |
---|---|
static class |
IMirror.MirroringState
The status of the mirroring procedure |
Method Summary | |
---|---|
void |
dispose()
Dispose the resources employed by the mirroring implementations |
IBuffer |
getBuffer()
Retrieves the IBuffer that is managed by the IMirror implementation. |
boolean |
pollPartial(long recordIndex,
int fieldIndex)
|
long |
requestPartial(long recordIndex,
int fieldIndex,
IBuffer.TransportOverride override,
java.lang.Object notify)
This method is used by the reader side mirror to request payload that belongs to an IBuffer
item that has been transfered only partially and more data is requested by the reader client |
Method Detail |
---|
void dispose()
IBuffer getBuffer()
IBuffer
that is managed by the IMirror
implementation. Depending
on the mirror side, this instance is either the one the writer is authoring, or the one the reader
is accessing.
IBuffer
that is managed by the IMirror
implementationlong requestPartial(long recordIndex, int fieldIndex, IBuffer.TransportOverride override, java.lang.Object notify) throws GRS2ProxyMirrorException
IBuffer
item that has been transfered only partially and more data is requested by the reader client
recordIndex
- The index of the record whose payload is requested. As described in Record
, this index coincides with the record id.fieldIndex
- The index of the field belonging to the defined record for which additional data is requestedoverride
- whether or not the field's IBuffer.TransportDirective
should be overridden as explained in IBuffer
notify
- A synchronization object that can be used for the requester to block on until the required data is provided
pollPartial(long, int)
should be used
GRS2ProxyMirrorException
- The status of the IMirror
does not allow this operation to be completedboolean pollPartial(long recordIndex, int fieldIndex) throws GRS2ProxyMirrorException
recordIndex
- The record index / id, for which the requester has requested data to be deliveredfieldIndex
- The field index of the specific record for which data are requested
GRS2ProxyMirrorException
- The status of the IMirror
does not allow this operation to be completed
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |