Class SimpleAnnotationDB

java.lang.Object
org.biojava.bio.annodb.SimpleAnnotationDB
All Implemented Interfaces:
AnnotationDB

public class SimpleAnnotationDB extends Object implements AnnotationDB

A no-frills implementation of AnnotationDB.

Since:
1.3
Author:
Matthew Pocock
  • Constructor Details

    • SimpleAnnotationDB

      public SimpleAnnotationDB(String name, Set anns, AnnotationType schema)
      Create a no-frills AnnotationDB instancec.
      Parameters:
      name - the name of this Annotation DB
      anns - a Set of Annotation instances it contains
      schema - an AnnotationType schema that applies to them
  • Method Details

    • getName

      public String getName()
      Description copied from interface: AnnotationDB

      The name of this AnnotationDB.

      Specified by:
      getName in interface AnnotationDB
      Returns:
      the name of this AnnotationDB
    • size

      public int size()
      Description copied from interface: AnnotationDB
      The number of Annotation instances in the DB.
      Specified by:
      size in interface AnnotationDB
      Returns:
      the size of this DB
    • getSchema

      Description copied from interface: AnnotationDB

      Get an AnnotationType that accepts all Annotation instances in this DB.

      The schema should accept all Annotations in the DB. However, it may hit other Annotations. So, AnnotationType.ALL is always a valid schema. Obviously, the more retrictive it is, the more usefull it becomes for introspection.

      Specified by:
      getSchema in interface AnnotationDB
      Returns:
      the schema AnnotationType
    • iterator

      public Iterator iterator()
      Description copied from interface: AnnotationDB
      Loop over each Annotation in this db.
      Specified by:
      iterator in interface AnnotationDB
      Returns:
      an Iterator over each item in the DB
    • filter

      Description copied from interface: AnnotationDB
      Find all Annotation instances in this DB that are of a particular type.
      Specified by:
      filter in interface AnnotationDB
      Parameters:
      at - the AnnotationType to match
      Returns:
      an AnnotationDB with all matching Annotation instances
    • search

      Description copied from interface: AnnotationDB
      Find all Annotation instances in this DB and any Annotations that are child properties of these that match an AnnotationType.
      Specified by:
      search in interface AnnotationDB
      Parameters:
      at - the AnnotationType to search with
      Returns:
      an AnnotationDB with all matching Annotation instances, irregardless of how deep in the hieracy they are