org.biojava.bio.seq.projection
Interface ProjectionContext

All Known Implementing Classes:
ProjectedFeatureHolder

public interface ProjectionContext

Context for projected features. The projection proxies make callbacks into this context object to do much of the actual work of projection. Different implementations can be provided to do more complex projection and data integration.

Since:
1.2
Author:
Thomas Down

Method Summary
 void addChangeListener(Feature f, ChangeListener cl, ChangeType ct)
          Delegate for addChangeListener
 Feature createFeature(Feature f, Feature.Template templ)
          Delegate for createFeature
 Annotation getAnnotation(Feature f)
          Get the annotation bundle of the projected feature.
 Location getLocation(Feature f)
          Get the location of the projected feature
 FeatureHolder getParent(Feature f)
          Get the parent FeatureHolder into which a feature should be projected
 FeatureFilter getSchema(Feature f)
          Delegate for getSchema
 Sequence getSequence(Feature f)
          Get the Sequence which defines the coordinate system for the projected feature.
 StrandedFeature.Strand getStrand(StrandedFeature f)
          Get the strand of the projected feature.
 FeatureHolder projectChildFeatures(Feature f, FeatureHolder parent)
          Get the child features of the projected feature.
 void removeChangeListener(Feature f, ChangeListener cl, ChangeType ct)
          Delegate for removeChangeListener
 void removeFeature(Feature f, Feature dyingChild)
          Delegate for removeFeature
 

Method Detail

getParent

public FeatureHolder getParent(Feature f)
Get the parent FeatureHolder into which a feature should be projected


getSequence

public Sequence getSequence(Feature f)
Get the Sequence which defines the coordinate system for the projected feature. This should be reachable by one or more getParent operations.


getLocation

public Location getLocation(Feature f)
Get the location of the projected feature


getStrand

public StrandedFeature.Strand getStrand(StrandedFeature f)
Get the strand of the projected feature.


getAnnotation

public Annotation getAnnotation(Feature f)
Get the annotation bundle of the projected feature. This will often (but not always) be identical to that of the underlying feature.


projectChildFeatures

public FeatureHolder projectChildFeatures(Feature f,
                                          FeatureHolder parent)
Get the child features of the projected feature.


createFeature

public Feature createFeature(Feature f,
                             Feature.Template templ)
                      throws BioException,
                             ChangeVetoException
Delegate for createFeature

Throws:
BioException
ChangeVetoException
Since:
1.3

removeFeature

public void removeFeature(Feature f,
                          Feature dyingChild)
                   throws ChangeVetoException
Delegate for removeFeature

Throws:
ChangeVetoException
Since:
1.3

addChangeListener

public void addChangeListener(Feature f,
                              ChangeListener cl,
                              ChangeType ct)
Delegate for addChangeListener

Since:
1.3

removeChangeListener

public void removeChangeListener(Feature f,
                                 ChangeListener cl,
                                 ChangeType ct)
Delegate for removeChangeListener

Since:
1.3

getSchema

public FeatureFilter getSchema(Feature f)
Delegate for getSchema

Since:
1.3