Class SimpleGappedSequence

All Implemented Interfaces:
Serializable, Annotatable, FeatureHolder, GappedSequence, Sequence, GappedSymbolList, SymbolList, Changeable

Simple implementation of GappedSequence. Please note that this is a view onto another Sequence. Gaps created and removed are only in the view not the underlying original. This means that any gaps present in the original cannot be manipulated in this view. To manipulate the original you would need to use Edit objects.
Since:
1.3
Author:
Thomas Down, Matthew Pocock
See Also:
  • Constructor Details

  • Method Details

    • getCreateOnUnderlyingSequence

    • setCreateOnUnderlyingSequence

      public void setCreateOnUnderlyingSequence(boolean underlying)
    • getAnnotation

      Description copied from interface: Annotatable
      Should return the associated annotation object.
      Specified by:
      getAnnotation in interface Annotatable
      Returns:
      an Annotation object, never null
    • getName

      public String getName()
      Description copied from interface: Sequence
      The name of this sequence.

      The name may contain spaces or odd characters.

      Specified by:
      getName in interface Sequence
      Returns:
      the name as a String
    • getURN

      public String getURN()
      Description copied from interface: Sequence
      A Uniform Resource Identifier (URI) which identifies the sequence represented by this object. For sequences in well-known database, this may be a URN, e.g.
       urn:sequence/embl:AL121903
       
      It may also be a URL identifying a specific resource, either locally or over the network
       file:///home/thomas/myseq.fa|seq22
       http://www.mysequences.net/chr22.seq
       
      Specified by:
      getURN in interface Sequence
      Returns:
      the URI as a String
    • features

      Description copied from interface: FeatureHolder
      Iterate over the features in no well defined order.
      Specified by:
      features in interface FeatureHolder
      Returns:
      an Iterator
    • filter

      Description copied from interface: FeatureHolder
      Query this set of features using a supplied FeatureFilter.
      Specified by:
      filter in interface FeatureHolder
      Parameters:
      ff - the FeatureFilter to apply.
      Returns:
      all features in this container which match filter.
    • filter

      public FeatureHolder filter(FeatureFilter ff, boolean recurse)
      Description copied from interface: FeatureHolder
      Return a new FeatureHolder that contains all of the children of this one that passed the filter fc. This method is scheduled for deprecation. Use the 1-arg filter instead.
      Specified by:
      filter in interface FeatureHolder
      Parameters:
      ff - the FeatureFilter to apply
      recurse - true if all features-of-features should be scanned, and a single flat collection of features returned, or false if just immediate children should be filtered.
    • countFeatures

      public int countFeatures()
      Description copied from interface: FeatureHolder
      Count how many features are contained.
      Specified by:
      countFeatures in interface FeatureHolder
      Returns:
      a positive integer or zero, equal to the number of features contained
    • containsFeature

      public boolean containsFeature(Feature f)
      Description copied from interface: FeatureHolder
      Check if the feature is present in this holder.
      Specified by:
      containsFeature in interface FeatureHolder
      Parameters:
      f - the Feature to check
      Returns:
      true if f is in this set
    • getSchema

      Description copied from interface: FeatureHolder
      Return a schema-filter for this FeatureHolder. This is a filter which all Features immediately contained by this FeatureHolder will match. It need not directly match their child features, but it can (and should!) provide information about them using FeatureFilter.OnlyChildren filters. In cases where there is no feature hierarchy, this can be indicated by including FeatureFilter.leaf in the schema filter.

      For the truly non-informative case, it is possible to return FeatureFilter.all. However, it is almost always possible to provide slightly more information that this. For example, Sequence objects should, at a minimum, return FeatureFilter.top_level. Feature objects should, as a minimum, return FeatureFilter.ByParent(new FeatureFilter.ByFeature(this)).

      Specified by:
      getSchema in interface FeatureHolder
      Returns:
      the schema filter
    • removeFeature

      Description copied from interface: FeatureHolder
      Remove a feature from this FeatureHolder.
      Specified by:
      removeFeature in interface FeatureHolder
      Throws:
      ChangeVetoException - if this FeatureHolder does not support feature removal or if the change was vetoed
      BioException - if there was an error removing the feature
    • createFeature

      Description copied from interface: FeatureHolder
      Create a new Feature, and add it to this FeatureHolder. This method will generally only work on Sequences, and on some Features which have been attached to Sequences.
      Specified by:
      createFeature in interface FeatureHolder
      Throws:
      ChangeVetoException - if this FeatureHolder does not support creation of new features, or if the change was vetoed
      BioException - if something went wrong during creating the feature