Package net.solarnetwork.domain.datum
Class BasicObjectDatumStreamDataSet<T extends StreamDatum>
java.lang.Object
net.solarnetwork.domain.datum.BasicObjectDatumStreamDataSet<T>
- Type Parameters:
T- the stream datum type
- All Implemented Interfaces:
Iterable<T>,ObjectDatumStreamDataSet<T>,ObjectDatumStreamMetadataProvider
public class BasicObjectDatumStreamDataSet<T extends StreamDatum>
extends Object
implements ObjectDatumStreamDataSet<T>
Basic implementation of
ObjectDatumStreamDataSet.- Since:
- 2.4
- Version:
- 1.0
- Author:
- matt
-
Constructor Summary
ConstructorsConstructorDescriptionBasicObjectDatumStreamDataSet(ObjectDatumStreamMetadataProvider provider, Iterable<T> data) Constructor.BasicObjectDatumStreamDataSet(ObjectDatumStreamMetadataProvider provider, Iterable<T> data, Long totalResultCount, Integer startingOffset, Integer returnedResultCount) Constructor. -
Method Summary
Modifier and TypeMethodDescriptionstatic final <T extends StreamDatum>
BasicObjectDatumStreamDataSet<T>dataSet(Iterable<ObjectDatumStreamMetadata> metadatas, Iterable<T> data) Create a new data set instance out of a set of metadata.static final <T extends StreamDatum>
BasicObjectDatumStreamDataSet<T>dataSet(Iterable<ObjectDatumStreamMetadata> metadatas, Iterable<T> data, Long totalResultCount, Integer startingOffset, Integer returnedResultCount) Create a new data set instance out of a set of metadata.Get the actual results.Get the number of results that matched the query.Get the starting offset of the returned results.Get a total number of available results, if known.iterator()metadataForObjectSource(Long objectId, String sourceId) Get stream metadata for a given object and source ID combination.metadataForStreamId(UUID streamId) Get stream metadata for a given stream ID.Get a collection of all the available stream IDs this result instance has metadata available for.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface java.lang.Iterable
forEach, spliterator
-
Constructor Details
-
BasicObjectDatumStreamDataSet
Constructor.- Parameters:
provider- the provider to delegate todata- the data- Throws:
IllegalArgumentException- if any argument is null
-
BasicObjectDatumStreamDataSet
public BasicObjectDatumStreamDataSet(ObjectDatumStreamMetadataProvider provider, Iterable<T> data, Long totalResultCount, Integer startingOffset, Integer returnedResultCount) Constructor.- Parameters:
provider- the provider to delegate todata- the datatotalResultCount- the total result count, or null if not knownstartingOffset- the starting offset within the total result set, or null if not knownreturnedResultCount- the number of results available indataor null if not known- Throws:
IllegalArgumentException- if eitherproviderordatais null
-
-
Method Details
-
dataSet
public static final <T extends StreamDatum> BasicObjectDatumStreamDataSet<T> dataSet(Iterable<ObjectDatumStreamMetadata> metadatas, Iterable<T> data) Create a new data set instance out of a set of metadata.- Type Parameters:
T- the stream datum type- Parameters:
metadatas- the metadatadata- the data- Returns:
- the new instance
-
dataSet
public static final <T extends StreamDatum> BasicObjectDatumStreamDataSet<T> dataSet(Iterable<ObjectDatumStreamMetadata> metadatas, Iterable<T> data, Long totalResultCount, Integer startingOffset, Integer returnedResultCount) Create a new data set instance out of a set of metadata.- Type Parameters:
T- the stream datum type- Parameters:
metadatas- the metadatadata- the datatotalResultCount- the total result count, or null if not knownstartingOffset- the starting offset within the total result set, or null if not knownreturnedResultCount- the number of results available indataor null if not known- Returns:
- the new instance
-
metadataStreamIds
Description copied from interface:ObjectDatumStreamMetadataProviderGet a collection of all the available stream IDs this result instance has metadata available for.- Specified by:
metadataStreamIdsin interfaceObjectDatumStreamMetadataProvider- Returns:
- the set of stream IDs that
ObjectDatumStreamMetadataProvider.metadataForStreamId(UUID)will return a value for, or null it not known
-
metadataForStreamId
Description copied from interface:ObjectDatumStreamMetadataProviderGet stream metadata for a given stream ID.- Specified by:
metadataForStreamIdin interfaceObjectDatumStreamMetadataProvider- Parameters:
streamId- the stream ID- Returns:
- the stream metadata, or null if not available
-
metadataForObjectSource
Description copied from interface:ObjectDatumStreamMetadataProviderGet stream metadata for a given object and source ID combination.- Specified by:
metadataForObjectSourcein interfaceObjectDatumStreamMetadataProvider- Parameters:
objectId- the object ID, e.g. node or location IDsourceId- the source ID- Returns:
- the stream metadata, or null if not available
-
iterator
- Specified by:
iteratorin interfaceIterable<T extends StreamDatum>
-
getResults
Description copied from interface:ObjectDatumStreamDataSetGet the actual results.These are the same results returned by
Iterable.iterator().- Specified by:
getResultsin interfaceObjectDatumStreamDataSet<T extends StreamDatum>- Returns:
- the results, never null
-
getTotalResultCount
Description copied from interface:ObjectDatumStreamDataSetGet a total number of available results, if known.If this result represents partial results and the total count of available results is known, this value represents that total count of available results.
- Specified by:
getTotalResultCountin interfaceObjectDatumStreamDataSet<T extends StreamDatum>- Returns:
- total available results, or null if not known
-
getStartingOffset
Description copied from interface:ObjectDatumStreamDataSetGet the starting offset of the returned results.- Specified by:
getStartingOffsetin interfaceObjectDatumStreamDataSet<T extends StreamDatum>- Returns:
- the starting offset, or null if not known
-
getReturnedResultCount
Description copied from interface:ObjectDatumStreamDataSetGet the number of results that matched the query.- Specified by:
getReturnedResultCountin interfaceObjectDatumStreamDataSet<T extends StreamDatum>- Returns:
- the number of returned results, or null if not known
-