Class StreamAdapter<T,​K,​V>

  • Direct Known Subclasses:
    SocketStreamer

    public abstract class StreamAdapter<T,​K,​V>
    extends Object
    Convenience adapter for streamers. Adapters are optional components for streaming from different data sources. The purpose of adapters is to convert different message formats into Ignite stream key-value tuples and feed the tuples into the provided IgniteDataStreamer.

    Two types of tuple extractors are supported:

    1. A single tuple extractor, which extracts either no or 1 tuple out of a message. See see setTupleExtractor(StreamTupleExtractor).
    2. A multiple tuple extractor, which is capable of extracting multiple tuples out of a single message, in the form of a Map. See setMultipleTupleExtractor(StreamMultipleTupleExtractor).
    • Field Detail

      • ignite

        protected Ignite ignite
        Ignite.
    • Method Detail

      • setStreamer

        public void setStreamer​(IgniteDataStreamer<K,​V> stmr)
        Parameters:
        stmr - Ignite data streamer.
      • setSingleTupleExtractor

        public void setSingleTupleExtractor​(StreamSingleTupleExtractor<T,​K,​V> singleTupleExtractor)
        Parameters:
        singleTupleExtractor - Extractor for key-value tuples from messages.
      • getMultipleTupleExtractor

        public StreamMultipleTupleExtractor<T,​K,​V> getMultipleTupleExtractor()
        Returns:
        Provided tuple extractor (for 1:n cardinality).
      • setMultipleTupleExtractor

        public void setMultipleTupleExtractor​(StreamMultipleTupleExtractor<T,​K,​V> multipleTupleExtractor)
        Parameters:
        multipleTupleExtractor - Extractor for 1:n tuple extraction.
      • getIgnite

        public Ignite getIgnite()
        Returns:
        Provided Ignite instance.
      • setIgnite

        public void setIgnite​(Ignite ignite)
        Parameters:
        ignite - Ignite instance.
      • addMessage

        protected void addMessage​(T msg)
        Converts given message to 1 or many tuples (depending on the type of extractor) and adds it/them to the underlying streamer.
        Parameters:
        msg - Message to convert.