Class GlobalProcessorContextImpl

    • Constructor Detail

    • Method Detail

      • getStateStore

        public StateStore getStateStore​(String name)
        Description copied from interface: ProcessorContext
        Get the state store given the store name.
        Parameters:
        name - The store name
        Returns:
        The state store instance
      • forward

        public <K,​V> void forward​(K key,
                                        V value)
        Description copied from interface: ProcessorContext
        Forwards a key/value pair to all downstream processors. Used the input record's timestamp as timestamp for the output record.
        Parameters:
        key - key
        value - value
      • forward

        public <K,​V> void forward​(K key,
                                        V value,
                                        To to)
        No-op. This should only be called on GlobalStateStore#flush and there should be no child nodes
        Parameters:
        key - key
        value - value
        to - the options to use when forwarding
      • forward

        @Deprecated
        public <K,​V> void forward​(K key,
                                        V value,
                                        int childIndex)
        Deprecated.
        Description copied from interface: ProcessorContext
        Forwards a key/value pair to one of the downstream processors designated by childIndex.
        Parameters:
        key - key
        value - value
        childIndex - index in list of children of this node
        Throws:
        UnsupportedOperationException - on every invocation
      • forward

        @Deprecated
        public <K,​V> void forward​(K key,
                                        V value,
                                        String childName)
        Deprecated.
        Description copied from interface: ProcessorContext
        Forwards a key/value pair to one of the downstream processors designated by the downstream processor name.
        Parameters:
        key - key
        value - value
        childName - name of downstream processor
        Throws:
        UnsupportedOperationException - on every invocation
      • commit

        public void commit()
        Description copied from interface: ProcessorContext
        Requests a commit.
      • schedule

        @Deprecated
        public Cancellable schedule​(long interval,
                                    PunctuationType type,
                                    Punctuator callback)
        Deprecated.
        Description copied from interface: ProcessorContext
        Schedules a periodic operation for processors. A processor may call this method during initialization or processing to schedule a periodic callback — called a punctuation — to Punctuator.punctuate(long). The type parameter controls what notion of time is used for punctuation:
        • PunctuationType.STREAM_TIME — uses "stream time", which is advanced by the processing of messages in accordance with the timestamp as extracted by the TimestampExtractor in use. The first punctuation will be triggered by the first record that is processed. NOTE: Only advanced if messages arrive
        • PunctuationType.WALL_CLOCK_TIME — uses system time (the wall-clock time), which is advanced independent of whether new messages arrive. The first punctuation will be triggered after interval has elapsed. NOTE: This is best effort only as its granularity is limited by how long an iteration of the processing loop takes to complete
        Skipping punctuations: Punctuations will not be triggered more than once at any given timestamp. This means that "missed" punctuation will be skipped. It's possible to "miss" a punctuation if:
        Parameters:
        interval - the time interval between punctuations in milliseconds
        type - one of: PunctuationType.STREAM_TIME, PunctuationType.WALL_CLOCK_TIME
        callback - a function consuming timestamps representing the current stream or system time
        Returns:
        a handle allowing cancellation of the punctuation schedule established by this method
        Throws:
        UnsupportedOperationException - on every invocation
      • schedule

        public Cancellable schedule​(Duration interval,
                                    PunctuationType type,
                                    Punctuator callback)
        Description copied from interface: ProcessorContext
        Schedules a periodic operation for processors. A processor may call this method during initialization or processing to schedule a periodic callback — called a punctuation — to Punctuator.punctuate(long). The type parameter controls what notion of time is used for punctuation:
        • PunctuationType.STREAM_TIME — uses "stream time", which is advanced by the processing of messages in accordance with the timestamp as extracted by the TimestampExtractor in use. The first punctuation will be triggered by the first record that is processed. NOTE: Only advanced if messages arrive
        • PunctuationType.WALL_CLOCK_TIME — uses system time (the wall-clock time), which is advanced independent of whether new messages arrive. The first punctuation will be triggered after interval has elapsed. NOTE: This is best effort only as its granularity is limited by how long an iteration of the processing loop takes to complete
        Skipping punctuations: Punctuations will not be triggered more than once at any given timestamp. This means that "missed" punctuation will be skipped. It's possible to "miss" a punctuation if:
        Parameters:
        interval - the time interval between punctuations (supported minimum is 1 millisecond)
        type - one of: PunctuationType.STREAM_TIME, PunctuationType.WALL_CLOCK_TIME
        callback - a function consuming timestamps representing the current stream or system time
        Returns:
        a handle allowing cancellation of the punctuation schedule established by this method
        Throws:
        UnsupportedOperationException - on every invocation
      • logChange

        public void logChange​(String storeName,
                              org.apache.kafka.common.utils.Bytes key,
                              byte[] value,
                              long timestamp)
      • transitionToStandby

        public void transitionToStandby​(ThreadCache newCache)
        Description copied from interface: InternalProcessorContext
        Transition to standby task and register a dummy cache to this processor context