|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.openstreetmap.osmosis.core.store.SegmentedObjectStore<T>
T
- The object type to be stored.public class SegmentedObjectStore<T extends Storeable>
Provides a store for writing objects to a file for later retrieval. The number of objects is limited only by disk space.
This class supports chunking where the stream is broken into segments. This is achieved by calling the closeChunk method between add calls.
This store is only suitable for single-threaded use because it does not provide per-thread readers.
Constructor Summary | |
---|---|
SegmentedObjectStore(ObjectSerializationFactory serializationFactory,
java.lang.String storageFilePrefix,
boolean useCompression)
Creates a new instance. |
Method Summary | |
---|---|
void |
add(T data)
Adds the specified object to the store. |
long |
closeChunk()
Closes the current object stream and creates a new one. |
void |
complete()
Ensures that all information is fully persisted. |
ReleasableIterator<T> |
iterate()
Returns an iterator for reading objects from the underlying data store. |
ReleasableIterator<T> |
iterate(long streamOffset,
long maxObjectCount)
Returns an iterator for reading objects from the underlying data store. |
void |
release()
Performs resource cleanup tasks such as closing files, or database connections. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public SegmentedObjectStore(ObjectSerializationFactory serializationFactory, java.lang.String storageFilePrefix, boolean useCompression)
serializationFactory
- The factory defining the object serialisation implementation.storageFilePrefix
- The prefix of the storage file.useCompression
- If true, the storage file will be compressed.Method Detail |
---|
public void add(T data)
data
- The object to be added.public long closeChunk()
public ReleasableIterator<T> iterate()
public ReleasableIterator<T> iterate(long streamOffset, long maxObjectCount)
streamOffset
- The location in the underlying stream to begin reading.maxObjectCount
- The maximum number of objects to be returned, -1 for
unlimited.
public void complete()
complete
in interface Completable
public void release()
release
in interface Releasable
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |