Sha256: 4a8b57dd68950db2ecd6294790d91b3a181a7221412ae680d613e4656cbc7951

Contents?: true

Size: 772 Bytes

Versions: 1

Compression:

Stored size: 772 Bytes

Contents

module Pacer::Pipes
  class IdCollectionFilterPipe < RubyPipe
    def initialize(ids, comparison)
      super()
      @ids = Set[*ids]
      @comparison = comparison
    end

    def processNextStart
      if @comparison == Pacer::Pipes::EQUAL
        while true
          element = @starts.next
          if element and @ids.include? element.element_id
            return element
          end
        end
      else
        while true
          element = @starts.next
          if element and not @ids.include? element.element_id
            return element
          end
        end
      end
    rescue NativeException => e
      if e.cause.getClass == Pacer::NoSuchElementException.getClass
        raise e.cause
      else
        raise e
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
pacer-0.9.1.1-java lib/pacer/pipe/id_collection_filter_pipe.rb