org.biojava.bridge.Biocorba.Seqcore
Class FeatureAdapter

java.lang.Object
  |
  +--org.biojava.bridge.Biocorba.Seqcore.FeatureAdapter

public class FeatureAdapter
extends java.lang.Object
implements Feature


Inner classes inherited from class org.biojava.bio.seq.Feature
Feature.Template
 
Inner classes inherited from class org.biojava.bio.seq.FeatureHolder
FeatureHolder.EmptyFeatureHolder
 
Fields inherited from interface org.biojava.bio.seq.FeatureHolder
EMPTY_FEATURE_HOLDER
 
Constructor Summary
FeatureAdapter(SequenceAdapter parent, SeqFeature seqFeature)
           
 
Method Summary
 int countFeatures()
          Count how many features are contained.
 Feature createFeature(Feature.Template template)
          Create a new Feature, and add it to this FeatureHolder.
 java.util.Iterator features()
          Iterate over the features in no well defined order.
 FeatureHolder filter(FeatureFilter fc, boolean recurse)
          Return a new FeatureHolder that contains all of the children of this one that passed the filter fc.
 Annotation getAnnotation()
          Should return the associated annotation object.
 Location getLocation()
          The location of this feature.
 FeatureHolder getParent()
          Return the FeatureHolder to which this feature has been attached.
 Sequence getSequence()
          Return the Sequence object to which this feature is (ultimately) attached.
 java.lang.String getSource()
          The source of the feature.
 SymbolList getSymbols()
          Return a list of symbols that are contained in this feature.
 java.lang.String getType()
          The type of the feature.
 void removeFeature(Feature f)
          Remove a feature from this FeatureHolder.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

FeatureAdapter

public FeatureAdapter(SequenceAdapter parent,
                      SeqFeature seqFeature)
Method Detail

getLocation

public Location getLocation()
Description copied from interface: Feature
The location of this feature.

The location may be complicated, or simply a range. The annotation is assumed to apply to all the region contained within the location.

Specified by:
getLocation in interface Feature

getSymbols

public SymbolList getSymbols()
Description copied from interface: Feature
Return a list of symbols that are contained in this feature.

The symbols may not be contiguous in the original sequence, but they will be concatinated together in the resulting SymbolList.

The order of the Symbols within the resulting symbol list will be according to the concept of ordering within the location object.

Specified by:
getSymbols in interface Feature
Tags copied from interface: Feature
Returns:
a SymbolList containing each symbol of the parent sequence contained within this feature in the order they appear in the parent

getSource

public java.lang.String getSource()
Description copied from interface: Feature
The source of the feature. This may be a program or process.
Specified by:
getSource in interface Feature
Tags copied from interface: Feature
Returns:
the source, or generator

getType

public java.lang.String getType()
Description copied from interface: Feature
The type of the feature.
Specified by:
getType in interface Feature
Tags copied from interface: Feature
Returns:
the type of this sequence

getParent

public FeatureHolder getParent()
Description copied from interface: Feature
Return the FeatureHolder to which this feature has been attached. This will be a Sequence object for top level features, and a Feature object for features further down the tree.
Specified by:
getParent in interface Feature

getSequence

public Sequence getSequence()
Description copied from interface: Feature
Return the Sequence object to which this feature is (ultimately) attached. For top level features, this will be equal to the FeatureHolder returned by getParent.
Specified by:
getSequence in interface Feature

countFeatures

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

features

public java.util.Iterator features()
Description copied from interface: FeatureHolder
Iterate over the features in no well defined order.
Tags copied from interface: FeatureHolder
Returns:
an Iterator

filter

public FeatureHolder filter(FeatureFilter fc,
                            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.
Tags copied from interface: FeatureHolder
Parameters:
fc - 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.

getAnnotation

public Annotation getAnnotation()
Description copied from interface: Annotatable
Should return the associated annotation object.
Tags copied from interface: Annotatable
Returns:
an Annotation object, never null

createFeature

public Feature createFeature(Feature.Template template)
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.
Tags copied from interface: FeatureHolder
Throws:
java.lang.UnsupportedOperationException - if this FeatureHolder does not support addition of new features.

removeFeature

public void removeFeature(Feature f)
Description copied from interface: FeatureHolder
Remove a feature from this FeatureHolder.
Tags copied from interface: FeatureHolder
Throws:
java.lang.UnsupportedOperationException - if this FeatureHolder does not support feature removal.