Class CompositeReadOnlyWindowStore<K,​V>

    • Method Detail

      • fetch

        public V fetch​(K key,
                       long time)
        Description copied from interface: ReadOnlyWindowStore
        Get the value of key from a window.
        Specified by:
        fetch in interface ReadOnlyWindowStore<K,​V>
        Parameters:
        key - the key to fetch
        time - start timestamp (inclusive) of the window
        Returns:
        The value or null if no value is found in the window
      • fetch

        @Deprecated
        public WindowStoreIterator<V> fetch​(K key,
                                            long timeFrom,
                                            long timeTo)
        Deprecated.
        Description copied from interface: ReadOnlyWindowStore
        Get all the key-value pairs with the given key and the time range from all the existing windows.

        This iterator must be closed after use.

        The time range is inclusive and applies to the starting timestamp of the window. For example, if we have the following windows:

         +-------------------------------+
         |  key  | start time | end time |
         +-------+------------+----------+
         |   A   |     10     |    20    |
         +-------+------------+----------+
         |   A   |     15     |    25    |
         +-------+------------+----------+
         |   A   |     20     |    30    |
         +-------+------------+----------+
         |   A   |     25     |    35    |
         +--------------------------------
         
        And we call store.fetch("A", 10, 20) then the results will contain the first three windows from the table above, i.e., all those where 10 <= start time <= 20.

        For each key, the iterator guarantees ordering of windows, starting from the oldest/earliest available window to the newest/latest window.

        Specified by:
        fetch in interface ReadOnlyWindowStore<K,​V>
        Parameters:
        key - the key to fetch
        timeFrom - time range start (inclusive)
        timeTo - time range end (inclusive)
        Returns:
        an iterator over key-value pairs <timestamp, value>
      • fetch

        public WindowStoreIterator<V> fetch​(K key,
                                            Instant from,
                                            Instant to)
                                     throws IllegalArgumentException
        Description copied from interface: ReadOnlyWindowStore
        Get all the key-value pairs with the given key and the time range from all the existing windows.

        This iterator must be closed after use.

        The time range is inclusive and applies to the starting timestamp of the window. For example, if we have the following windows:

         +-------------------------------+
         |  key  | start time | end time |
         +-------+------------+----------+
         |   A   |     10     |    20    |
         +-------+------------+----------+
         |   A   |     15     |    25    |
         +-------+------------+----------+
         |   A   |     20     |    30    |
         +-------+------------+----------+
         |   A   |     25     |    35    |
         +--------------------------------
         
        And we call store.fetch("A", Instant.ofEpochMilli(10), Instant.ofEpochMilli(20)) then the results will contain the first three windows from the table above, i.e., all those where 10 <= start time <= 20.

        For each key, the iterator guarantees ordering of windows, starting from the oldest/earliest available window to the newest/latest window.

        Specified by:
        fetch in interface ReadOnlyWindowStore<K,​V>
        Parameters:
        key - the key to fetch
        from - time range start (inclusive)
        to - time range end (inclusive)
        Returns:
        an iterator over key-value pairs <timestamp, value>
        Throws:
        IllegalArgumentException - if duration is negative or can't be represented as long milliseconds
      • fetch

        public KeyValueIterator<Windowed<K>,​V> fetch​(K from,
                                                           K to,
                                                           long timeFrom,
                                                           long timeTo)
        Description copied from interface: ReadOnlyWindowStore
        Get all the key-value pairs in the given key range and time range from all the existing windows.

        This iterator must be closed after use.

        Specified by:
        fetch in interface ReadOnlyWindowStore<K,​V>
        Parameters:
        from - the first key in the range
        to - the last key in the range
        timeFrom - time range start (inclusive)
        timeTo - time range end (inclusive)
        Returns:
        an iterator over windowed key-value pairs <Windowed<K>, value>
      • fetch

        public KeyValueIterator<Windowed<K>,​V> fetch​(K from,
                                                           K to,
                                                           Instant fromTime,
                                                           Instant toTime)
                                                    throws IllegalArgumentException
        Description copied from interface: ReadOnlyWindowStore
        Get all the key-value pairs in the given key range and time range from all the existing windows.

        This iterator must be closed after use.

        Specified by:
        fetch in interface ReadOnlyWindowStore<K,​V>
        Parameters:
        from - the first key in the range
        to - the last key in the range
        fromTime - time range start (inclusive)
        toTime - time range end (inclusive)
        Returns:
        an iterator over windowed key-value pairs <Windowed<K>, value>
        Throws:
        IllegalArgumentException - if duration is negative or can't be represented as long milliseconds
      • fetchAll

        @Deprecated
        public KeyValueIterator<Windowed<K>,​V> fetchAll​(long timeFrom,
                                                              long timeTo)
        Deprecated.
        Description copied from interface: ReadOnlyWindowStore
        Gets all the key-value pairs that belong to the windows within in the given time range.
        Specified by:
        fetchAll in interface ReadOnlyWindowStore<K,​V>
        Parameters:
        timeFrom - the beginning of the time slot from which to search (inclusive)
        timeTo - the end of the time slot from which to search (inclusive)
        Returns:
        an iterator over windowed key-value pairs <Windowed<K>, value>