Class SimpleFeatureRealizer

java.lang.Object
org.biojava.bio.seq.SimpleFeatureRealizer
All Implemented Interfaces:
Serializable, FeatureRealizer

public class SimpleFeatureRealizer extends Object implements FeatureRealizer, Serializable
FeatureRealizer which uses a lookup table to map template classes to implementations. Optionally, this implementation can fall back on another FeatureRealizer if it fails.

When searching for a Feature implementation to match a specific Feature.Template class, the following search order is used:

  1. Mappings added to this SimpleFeatureRealizer, in reverse order of addition.
  2. Any mappings known to the fallback realizer, if one is installed.
  3. If no mapping can be found, a BioException is thrown.

Author:
Thomas Down
See Also:
  • Constructor Details

  • Method Details

    • addImplementation

      public void addImplementation(Class template, Class impl) throws BioException
      Install a new mapping from a class of Feature.Template to a class of Feature implementations. The implementation class MUST have a public constructor of the form (Sequence, FeatureHolder, Feature.Template).

      A newly added implementation takes precendence over any existing implementations if a template can be realized by more than one implementation.

      Parameters:
      template - The class of templates to implement.
      impl - A class of Feature which can be used to implement these templates.
      Throws:
      BioException
    • realizeFeature

      Description copied from interface: FeatureRealizer
      Install a feature on the specified sequence.
      Specified by:
      realizeFeature in interface FeatureRealizer
      Parameters:
      seq - The sequence to which the feature will be added.
      parent - The FeatureHolder which is to be the Feature's immediate parent.
      temp - A description of the desired feature.
      Returns:
      A newly constructed feature, to be added to the sequence.
      Throws:
      BioException - If the feature could not be constructed.