All Superinterfaces:
Accessioned, Iterable<Location>
All Known Subinterfaces:
AccesionedLocation
All Known Implementing Classes:
AbstractLocation, InsdcLocations.BondLocation, InsdcLocations.GroupLocation, InsdcLocations.OneOfLocation, InsdcLocations.OrderLocation, SequenceLocation, SimpleLocation

public interface Location extends Iterable<Location>, Accessioned
Sets of integers used to represent the location of features on sequence. A location can be a single set of bounds or composed of multiple sub-locations. Each sub-location is a Location and therefore subject to the same rules.
Author:
ayates
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Interface
    Description
    static class 
    Helper methods for use with the Location classes.
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final Location
    Basic location which is set to the minimum and maximum bounds of Integer.
  • Method Summary

    Modifier and Type
    Method
    Description
    End of the location
    int
    Returns the length of the outer bounds of this location
    An extension to getSubLocations() which returns sub-locations of sub-locations; this will continue until it runs out of those locations.
    <C extends Compound>
    Sequence<C>
    Will return a SequenceReader object which offers a view of all resolved locations i.e.
    Start of the location
    Strand which the location is located on
    Gives access to the sub locations for this location.
    <C extends Compound>
    Sequence<C>
    getSubSequence(Sequence<C> sequence)
    Will return a SequenceReader object which represents the outer bounds of this Location
    boolean
    Returns true if the position is meant to represent a point between two points such as 78^79.
    boolean
    Indicates if this location is circular.
    boolean
    Returns true if the location is considered to be complex meaning the location is actually composed of sub-locations.

    Methods inherited from interface org.biojava.nbio.core.sequence.template.Accessioned

    getAccession

    Methods inherited from interface java.lang.Iterable

    forEach, iterator, spliterator
  • Field Details

  • Method Details

    • getStart

      Point getStart()
      Start of the location
    • getEnd

      Point getEnd()
      End of the location
    • getLength

      int getLength()
      Returns the length of the outer bounds of this location
    • getStrand

      Strand getStrand()
      Strand which the location is located on
    • getSubLocations

      List<Location> getSubLocations()
      Gives access to the sub locations for this location. However this does not return sub-locations of sub-locations. For that functionality use #getAllSubLocations().
      Returns:
      A list of a single level of sub-locations
    • getRelevantSubLocations

      List<Location> getRelevantSubLocations()
      An extension to getSubLocations() which returns sub-locations of sub-locations; this will continue until it runs out of those locations.
      Returns:
      List of all sub locations including sub-locations of sub locations
    • isComplex

      boolean isComplex()
      Returns true if the location is considered to be complex meaning the location is actually composed of sub-locations.
    • isCircular

      boolean isCircular()
      Indicates if this location is circular.
    • isBetweenCompounds

      boolean isBetweenCompounds()
      Returns true if the position is meant to represent a point between two points such as 78^79. Only valid if start and stop are next to each other.
    • getSubSequence

      <C extends Compound> Sequence<C> getSubSequence(Sequence<C> sequence)
      Will return a SequenceReader object which represents the outer bounds of this Location
      Parameters:
      sequence - The sequence object to work with
      Returns:
      The sequence
    • getRelevantSubSequence

      <C extends Compound> Sequence<C> getRelevantSubSequence(Sequence<C> sequence)
      Will return a SequenceReader object which offers a view of all resolved locations i.e. those locations which are not complex and define the true Sequence represented
      Parameters:
      sequence - The sequence object to work with
      Returns:
      The full assembled sequence