## org.biojava.bio.seq.impl
Class SimpleRemoteFeature

    java.lang.Object
      org.biojava.utils.AbstractChangeable
          org.biojava.bio.seq.impl.SimpleFeature
              org.biojava.bio.seq.impl.SimpleStrandedFeature
                  org.biojava.bio.seq.impl.SimpleRemoteFeature

All Implemented Interfaces:
  Serializable, Annotatable, Feature, FeatureHolder, RealizingFeatureHolder, RemoteFeature, StrandedFeature, Changeable

    public class SimpleRemoteFeature

extends SimpleStrandedFeature
implements RemoteFeature, Serializable

A no-frills implementation of a remote feature.

Since:
  1.2
Author:
  Matthew Pocock, Greg Cox
See Also:
  Serialized Form

Nested Class Summary
`static class` `SimpleRemoteFeature.DBResolver`

Nested classes/interfaces inherited from interface org.biojava.bio.seq.RemoteFeature
`RemoteFeature.Region, RemoteFeature.Resolver, RemoteFeature.Template`

Nested classes/interfaces inherited from interface org.biojava.bio.seq.StrandedFeature
`StrandedFeature.Strand`

Nested classes/interfaces inherited from interface org.biojava.bio.seq.Feature
`Feature.ByLocationComparator`

Nested classes/interfaces inherited from interface org.biojava.bio.seq.FeatureHolder
`FeatureHolder.EmptyFeatureHolder`

Nested classes/interfaces inherited from interface org.biojava.bio.Annotatable
`Annotatable.AnnotationForwarder`

Field Summary

Fields inherited from interface org.biojava.bio.seq.StrandedFeature
`NEGATIVE, POSITIVE, STRAND, UNKNOWN`

Fields inherited from interface org.biojava.bio.seq.Feature
`byLocationOrder, LOCATION, PROPERTY_DATA_KEY, SOURCE, SOURCETERM, TYPE, TYPETERM`

Fields inherited from interface org.biojava.bio.seq.FeatureHolder
`EMPTY_FEATURE_HOLDER, FEATURES, SCHEMA`

Fields inherited from interface org.biojava.bio.Annotatable
`ANNOTATION`

Constructor Summary
`SimpleRemoteFeature(Sequence sourceSeq, FeatureHolder parent, RemoteFeature.Template template)`

Method Summary
`protected void` `fillTemplate(RemoteFeature.Template rt)`
`List` `getRegions()` Retrieve the list of Regions that locate this feature both localy and remotely.
`Feature` `getRemoteFeature()` Retrieve the Feature on some assembly Sequence that can represent this RemoteFeature properly.
`RemoteFeature.Resolver` `getResolver()`
`Feature.Template` `makeTemplate()` Create a new Template that could be used to generate a feature identical to this one.

Methods inherited from class org.biojava.bio.seq.impl.SimpleStrandedFeature
`fillTemplate, getStrand, getSymbols, setStrand, toString`

Methods inherited from class org.biojava.bio.seq.impl.SimpleFeature
`containsFeature, countFeatures, createFeature, equals, featureHolderAllocated, features, fillTemplate, filter, filter, getAnnotation, getChangeSupport, getFeatureHolder, getLocation, getParent, getSchema, getSequence, getSource, getSourceTerm, getType, getTypeTerm, hashCode, realizeFeature, removeFeature, setLocation, setSource, setSourceTerm, setType, setTypeTerm`

Methods inherited from class org.biojava.utils.AbstractChangeable
`addChangeListener, addChangeListener, generateChangeSupport, hasListeners, hasListeners, isUnchanging, removeChangeListener, removeChangeListener`

Methods inherited from class java.lang.Object
`clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

Methods inherited from interface org.biojava.bio.seq.StrandedFeature
`getStrand, getSymbols, setStrand`

Methods inherited from interface org.biojava.bio.seq.Feature
`features, getLocation, getParent, getSequence, getSource, getSourceTerm, getType, getTypeTerm, setLocation, setSource, setSourceTerm, setType, setTypeTerm`

Methods inherited from interface org.biojava.bio.seq.FeatureHolder
`containsFeature, countFeatures, createFeature, filter, filter, getSchema, removeFeature`

Methods inherited from interface org.biojava.utils.Changeable
`addChangeListener, addChangeListener, isUnchanging, removeChangeListener, removeChangeListener`

Methods inherited from interface org.biojava.bio.Annotatable
`getAnnotation`

Methods inherited from interface org.biojava.utils.Changeable
`addChangeListener, addChangeListener, isUnchanging, removeChangeListener, removeChangeListener`

Constructor Detail

### SimpleRemoteFeature

    public SimpleRemoteFeature(Sequence sourceSeq,
                               FeatureHolder parent,
                               RemoteFeature.Template template)

Method Detail

### getRegions

    public List getRegions()

  Description copied from interface: `RemoteFeature`
  Retrieve the list of Regions that locate this feature both localy and remotely. Local Regions have a null sequence ID.

  Specified by:
    `getRegions` in interface `RemoteFeature`
  Returns:
    an immutable List of Regions

### getResolver

    public RemoteFeature.Resolver getResolver()

  Specified by:
    `getResolver` in interface `RemoteFeature`

### getRemoteFeature

    public Feature getRemoteFeature()
                             throws BioException

  Description copied from interface: `RemoteFeature`
  Retrieve the Feature on some assembly Sequence that can represent this RemoteFeature properly.

  This method should be equivalent to calling `getResolver().resolve(this)`.

  Specified by:
    `getRemoteFeature` in interface `RemoteFeature`
  Returns:
    the Feature on another Sequence that this is projected onto
  Throws:
    `BioException` - if for any reason the remote Feature could not be constructed

### makeTemplate

    public Feature.Template makeTemplate()

  Description copied from interface: `Feature`
  Create a new Template that could be used to generate a feature identical to this one. The fields of the template can be edited without changing the feature.

  Specified by:
    `makeTemplate` in interface `Feature`
  Overrides:
    `makeTemplate` in class `SimpleStrandedFeature`
  Returns:
    a new Template that would make a feature like this one

### fillTemplate

    protected void fillTemplate(RemoteFeature.Template rt)