Package com.healthmarketscience.rmiio

Provides classes for robust usage of RMI, primarily for streaming data.

See:
          Description

Interface Summary
CloseableIOIterator<DataType> Convenience interface which combines IOIterator and Closeable.
IOIterator<DataType> Interface which mimics the Iterator interface but allows IOExceptions to be thrown by the implementation.
RemoteClient Interface common to most remote client implementations.
RemoteInputStream Remote interface which allows exporting an InputStream-like interface over the network.
RemoteIterator<DataType> Interface for streaming a read-only collection of objects using rmi.
RemoteOutputStream Remote interface which allows exporting an OutputStream-like interface over the network.
RemoteStreamMonitor<StreamServerType> Interface for monitoring the progress of a remote stream, such as RemoteInputStream or RemoteOutputStream.
 

Class Summary
AbstractCloseableIOIterator<DataType> Convenience base class for CloseableIOIterator implementations, especially suited for use as the local iterator for a RemoteIteratorServer instance.
CloseableIOIterator.Adapter<DataType> Deprecated. use RmiioUtil.adapt(java.util.Iterator) instead
ConverterIOIterator<InType,OutType> Useful almost concrete CloseableIOIterator implementation for the common situation where you need to convert data from one iterator into data in another iterator.
DirectRemoteInputStream RemoteInputStream implementation which mimics the RemoteInputStream functionality while not actually causing any additional RMI invocations.
EncodingRemoteIteratorServer<DataType> Base class for implementing the server side of a RemoteIterator where the objects need to be encoded on the fly.
GZIPRemoteInputStream Concrete implementation of a RemoteInputStreamServer which sends compressed data in the GZIP format, which it will read from the underlying InputStream.
GZIPRemoteOutputStream Concrete implementation of a RemoteOutputStreamServer which expects to receive compressed data, which it will write directly to the underlying OutputStream.
IOIterator.Adapter<DataType> Deprecated. use RmiioUtil.adapt(java.util.Iterator) instead
IOIteratorPipe<DataType> A "pipe" implementation for IOIterators which is designed for use by two separate threads.
LineIterator CloseableIOIterator that reads lines from a BufferedReader, optionally trimming whitespace and/or skipping blank lines.
PacketInputStream Adds support for packet based access to data from an InputStream.
PacketOutputStream Adds support for packet based access to data from an OutputStream.
RemoteInputStreamClient Utility which provides a wrapper InputStream for the client of a RemoteInputStream.
RemoteInputStreamMonitor Implementation of RemoteStreamMonitor for RemoteInputStreamServers which does nothing.
RemoteInputStreamServer Server implementation base class for a RemoteInputStream.
RemoteInputStreamWrapper Wrapper for a RemoteInputStream stub which handles retry magic under the hood.
RemoteIteratorClient<DataType> Base class for implementing the client side of a RemoteIterator.
RemoteIteratorServer<DataType> Base class for implementing the server side of a RemoteIterator.
RemoteOutputStreamClient Utility which provides a wrapper OutputStream for the client of a RemoteOutputStream.
RemoteOutputStreamMonitor Implementation of RemoteStreamMonitor for RemoteOutputStreamServers which does nothing.
RemoteOutputStreamServer Server implementation base class for a RemoteOutputStream.
RemoteOutputStreamWrapper Wrapper for a RemoteOutputStream stub which handles retry magic under the hood.
RemoteRetry Utility class for automatically retrying remote method calls (which might fail for spurious reasons).
RemoteRetry.Always Simple implementation of RemoteRetry which always retries RemoteExceptions thrown from the remote method call.
RemoteRetry.Caller<RetType> Utility type implemented by those atttempting to make remote method calls using this retry mechanism.
RemoteRetry.Never Simple implementation of RemoteRetry which never retries.
RemoteRetry.Simple Simple implementation of RemoteRetry which retries RemoteExceptions some number of times and uses the backoff strategy from RemoteRetry.simpleBackOff(int, org.apache.commons.logging.Log).
RemoteRetry.SimpleAlways Simple implementation of Always retry strategy which uses the backoff strategy from RemoteRetry.simpleBackOff(int, org.apache.commons.logging.Log).
RemoteRetry.VoidCaller Simple subclass of Caller for use by remote method calls which do not need to return values.
RemoteStreamServer<StreamServerType,StreamType> Common base class for remote stream implementations which handles the basic status of the stream (whether or not it is exported, closed).
RemoteWrapper<RemoteType> Base class for implementing remote stub wrappers with builtin retry policies.
RmiioUtil Utility methods for working with rmiio classes.
SerializableInputStream An additional layer around a RemoteInputStream which makes it Serializable and an InputStream.
SerializableOutputStream An additional layer around a RemoteOutputStream which makes it Serializable and an OutputStream.
SerialRemoteIteratorClient<DataType> Implementation of RemoteIteratorClient which uses java serialization to receive objects from the RemoteIteratorServer.
SerialRemoteIteratorServer<DataType> Implementation of RemoteIteratorServer which uses java serialization to send objects to the RemoteIteratorClient.
SimpleRemoteInputStream Concrete implementation of a RemoteInputStreamServer which sends uncompressed data, which it will read directly from the underlying InputStream.
SimpleRemoteIterator<DataType> Trivial implementation of RemoteIterator for small collections.
SimpleRemoteOutputStream Concrete implementation of a RemoteOutputStreamServer which expects to receive uncompressed data, which it will write directly to the underlying OutputStream.
 

Package com.healthmarketscience.rmiio Description

Provides classes for robust usage of RMI, primarily for streaming data. One common usage is streaming files to/from a remote EJB or some other RMI server.



Copyright © 2006–2016 Health Market Science. All rights reserved.