Interface SearchListener

  • All Known Implementing Classes:
    HitMerger, SearchListener.Echo, SearchListener.FilterByLength, SearchListener.Tee, SearchListener.Wrapper

    public interface SearchListener
    The interface used to inform interested parties that some sequence has been searched and something found.

    The callbacks will always be called in the order startSearch, hit, endSearch, during which time there may be multiple hit calls. The seqID of startSearch and endSearch will match. After this, a new startSearch may begin. These events will usually originate from the search method of DataStore.

    Author:
    Matthew Pocock
    • Nested Class Summary

      Nested Classes 
      Modifier and Type Interface Description
      static class  SearchListener.Echo
      A SearchListener that prints events out to a PrintStream.
      static class  SearchListener.FilterByLength
      A simple listener that filters out all hits that are too short.
      static class  SearchListener.Tee
      A SearchListener that passes events on to two delegate listeners.
      static class  SearchListener.Wrapper
      A simple wrapper implementation.
    • Method Summary

      All Methods Instance Methods Abstract Methods 
      Modifier and Type Method Description
      void endSearch​(String seqID)
      Indicates that a sequence has been searched against a DataStore.
      void hit​(int hitID, int queryOffset, int hitOffset, int hitLength)
      There has been a hit between the query sequence and a database sequence.
      void startSearch​(String seqID)
      Indicates that a sequence is about to be searched against a DataStore.
    • Method Detail

      • startSearch

        void startSearch​(String seqID)
        Indicates that a sequence is about to be searched against a DataStore.
        Parameters:
        seqID - the id of the sequence to be searched
      • endSearch

        void endSearch​(String seqID)
        Indicates that a sequence has been searched against a DataStore.
        Parameters:
        seqID - the id of the sequence to be searched
      • hit

        void hit​(int hitID,
                 int queryOffset,
                 int hitOffset,
                 int hitLength)
        There has been a hit between the query sequence and a database sequence.
        Parameters:
        hitID - the number of the sequence hit; resolvable by String id = DataStore.seqNameForID(hitID)
        queryOffset - the offset into the query sequence
        hitOffset - the offset into the sequence hit in the database
        hitLength - the number of symbols hit