Class FlowReader
- java.lang.Object
-
- org.apache.beam.sdk.io.Source.Reader<OutputT>
-
- org.apache.beam.sdk.io.UnboundedSource.UnboundedReader<org.opennms.netmgt.flows.persistence.model.FlowDocument>
-
- org.opennms.nephron.testing.flowgen.FlowReader
-
- All Implemented Interfaces:
AutoCloseable
public class FlowReader extends org.apache.beam.sdk.io.UnboundedSource.UnboundedReader<org.opennms.netmgt.flows.persistence.model.FlowDocument>Allows to repeatedly advance to the next flow and gives access to the current watermark. Created by aSyntheticFlowSourcefor reading flows.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classFlowReader.CheckpointMark
-
Field Summary
Fields Modifier and Type Field Description protected longindex
-
Constructor Summary
Constructors Constructor Description FlowReader(org.apache.beam.sdk.io.UnboundedSource<org.opennms.netmgt.flows.persistence.model.FlowDocument,FlowReader.CheckpointMark> source, BiFunction<Random,Long,org.opennms.netmgt.flows.persistence.model.FlowDocument> nextFlowDocument, SyntheticFlowTimestampPolicy timestampPolicy, int idxIncr, long maxIdx, long index, Random random, Limiter limiter)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanadvance()voidclose()org.apache.beam.sdk.io.UnboundedSource.CheckpointMarkgetCheckpointMark()org.opennms.netmgt.flows.persistence.model.FlowDocumentgetCurrent()org.apache.beam.sdk.io.UnboundedSource<org.opennms.netmgt.flows.persistence.model.FlowDocument,?>getCurrentSource()org.joda.time.InstantgetCurrentTimestamp()org.joda.time.InstantgetWatermark()booleanstart()
-
-
-
Constructor Detail
-
FlowReader
public FlowReader(org.apache.beam.sdk.io.UnboundedSource<org.opennms.netmgt.flows.persistence.model.FlowDocument,FlowReader.CheckpointMark> source, BiFunction<Random,Long,org.opennms.netmgt.flows.persistence.model.FlowDocument> nextFlowDocument, SyntheticFlowTimestampPolicy timestampPolicy, int idxIncr, long maxIdx, long index, Random random, Limiter limiter)
-
-
Method Detail
-
start
public boolean start() throws IOException- Specified by:
startin classorg.apache.beam.sdk.io.UnboundedSource.UnboundedReader<org.opennms.netmgt.flows.persistence.model.FlowDocument>- Throws:
IOException
-
advance
public boolean advance() throws IOException- Specified by:
advancein classorg.apache.beam.sdk.io.UnboundedSource.UnboundedReader<org.opennms.netmgt.flows.persistence.model.FlowDocument>- Throws:
IOException
-
getWatermark
public org.joda.time.Instant getWatermark()
- Specified by:
getWatermarkin classorg.apache.beam.sdk.io.UnboundedSource.UnboundedReader<org.opennms.netmgt.flows.persistence.model.FlowDocument>
-
getCheckpointMark
public org.apache.beam.sdk.io.UnboundedSource.CheckpointMark getCheckpointMark()
- Specified by:
getCheckpointMarkin classorg.apache.beam.sdk.io.UnboundedSource.UnboundedReader<org.opennms.netmgt.flows.persistence.model.FlowDocument>
-
getCurrentSource
public org.apache.beam.sdk.io.UnboundedSource<org.opennms.netmgt.flows.persistence.model.FlowDocument,?> getCurrentSource()
- Specified by:
getCurrentSourcein classorg.apache.beam.sdk.io.UnboundedSource.UnboundedReader<org.opennms.netmgt.flows.persistence.model.FlowDocument>
-
getCurrent
public org.opennms.netmgt.flows.persistence.model.FlowDocument getCurrent() throws NoSuchElementException- Specified by:
getCurrentin classorg.apache.beam.sdk.io.Source.Reader<org.opennms.netmgt.flows.persistence.model.FlowDocument>- Throws:
NoSuchElementException
-
getCurrentTimestamp
public org.joda.time.Instant getCurrentTimestamp() throws NoSuchElementException- Specified by:
getCurrentTimestampin classorg.apache.beam.sdk.io.Source.Reader<org.opennms.netmgt.flows.persistence.model.FlowDocument>- Throws:
NoSuchElementException
-
close
public void close() throws IOException- Specified by:
closein interfaceAutoCloseable- Specified by:
closein classorg.apache.beam.sdk.io.Source.Reader<org.opennms.netmgt.flows.persistence.model.FlowDocument>- Throws:
IOException
-
-