public class LocalReaderProxy extends Object implements IReaderProxy
IReaderProxy interface available to be
used by readers that want to access an IBuffer made available by a writer
that is collocated in the same JVM as they areIProxy.ProxyTypeProxyScheme, ProxyStoreScheme| Constructor and Description |
|---|
LocalReaderProxy()
Creates a new instance
|
| Modifier and Type | Method and Description |
|---|---|
void |
fromLocator(URI locator)
Populates an instance of the
IReaderProxy implementer with the information
provided through the specific locator URI |
IBuffer |
getBuffer()
|
static boolean |
isOfType(URI locator)
Checks if the provided URI is of a type that can be managed by an instance of this class.
|
void |
overrideBufferCapacity(int capacity)
After the proxy has been initialized, this method can be used to provide a hint to the
IReaderProxy to use a capacity different than that of the producer's buffer. |
public void fromLocator(URI locator) throws GRS2ProxyInvalidArgumentException, GRS2ProxyInvalidOperationException
IReaderProxy implementer with the information
provided through the specific locator URI
This method parses the provided URI to retrieve the needed information. An example of the URI
this proxy can manage is grs2-proxy://localhost?key=13bc140f-3013-4ce1-83b4-4d57d46863b0#Local
fromLocator in interface IReaderProxyGRS2ProxyInvalidOperationException - if the proxy has already been initializedGRS2ProxyInvalidArgumentException - if the provided locator is null or empty, or
the parsed information is not validIReaderProxy.fromLocator(java.net.URI)public void overrideBufferCapacity(int capacity)
IReaderProxy to use a capacity different than that of the producer's buffer.
Whether or not this hint is taken into account depends on the IReaderProxy implementation.
For example, it is highly unlikely that it will be honored in cases when both the producer and
the consumer run into the same address space.
Performs no action, as the LocalReaderProxy retrieves the IBuffer directly from the
local GRSRegistryoverrideBufferCapacity in interface IReaderProxyIReaderProxy.overrideBufferCapacity(int)public IBuffer getBuffer() throws GRS2ProxyInvalidOperationException
IBuffer that
can be used by the reader to access the writer side IBuffer can be retrieved
Retrieves the IBuffer directly from the local GRSRegistry. If no IBuffer
is found associated with the provided key, null is returned
getBuffer in interface IReaderProxyIBuffer that is serving the readerGRS2ProxyInvalidOperationException - if the provided locator that populated this
instance has not set the needed parametersIReaderProxy.getBuffer()public static boolean isOfType(URI locator)
grs2-proxy://localhost?key=13bc140f-3013-4ce1-83b4-4d57d46863b0#Locallocator - the locator URi that needs to be checkedCopyright © 2014. All Rights Reserved.