Package org.biojava.bio.annodb
Class IndexedAnnotationDB
java.lang.Object
org.biojava.bio.annodb.IndexedAnnotationDB
- All Implemented Interfaces:
AnnotationDB
A database of Annotation instances backed by an indexed file set.
- Since:
- 1.3
- Author:
- Matthew Pocock
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic interface
A factory for retrieving parsers and listeners.static class
An implementation of ParserListenerFactory that uses a static method. -
Field Summary
Fields inherited from interface org.biojava.bio.annodb.AnnotationDB
EMPTY
-
Constructor Summary
ConstructorsConstructorDescriptionIndexedAnnotationDB
(String dbName, File storeLoc, Index2Model model, List toIndex, int maxKeyLen, AnnotationType schema, IndexedAnnotationDB.ParserListenerFactory plFactory) Create a new IndexedAnnotationDB.IndexedAnnotationDB
(BioStore store) Initialise the db from a store. -
Method Summary
Modifier and TypeMethodDescriptionfilter
(AnnotationType at) Find all Annotation instances in this DB that are of a particular type.getName()
The name of this AnnotationDB.Get the ParserListenerFactory used by this IndexedAnnotationDB.Get an AnnotationType that accepts all Annotation instances in this DB.iterator()
Loop over each Annotation in this db.search
(AnnotationType at) Find all Annotation instances in this DB and any Annotations that are child properties of these that match an AnnotationType.int
size()
The number of Annotation instances in the DB.
-
Constructor Details
-
IndexedAnnotationDB
public IndexedAnnotationDB(String dbName, File storeLoc, Index2Model model, List toIndex, int maxKeyLen, AnnotationType schema, IndexedAnnotationDB.ParserListenerFactory plFactory) throws BioException, CommitFailure, IOException, ParserException Create a new IndexedAnnotationDB.- Parameters:
dbName
-storeLoc
-model
-toIndex
-maxKeyLen
-schema
-plFactory
-- Throws:
BioException
CommitFailure
IOException
ParserException
-
IndexedAnnotationDB
Initialise the db from a store.- Parameters:
store
- the BioStore to initalise from- Throws:
IOException
- if there was an IO fault accessing the storeSAXException
- if the XML configuration file is corrupted
-
-
Method Details
-
getName
Description copied from interface:AnnotationDB
The name of this AnnotationDB.
- Specified by:
getName
in interfaceAnnotationDB
- Returns:
- the name of this AnnotationDB
-
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 interfaceAnnotationDB
- Returns:
- the schema AnnotationType
-
iterator
Description copied from interface:AnnotationDB
Loop over each Annotation in this db.- Specified by:
iterator
in interfaceAnnotationDB
- Returns:
- an Iterator over each item in the DB
-
size
Description copied from interface:AnnotationDB
The number of Annotation instances in the DB.- Specified by:
size
in interfaceAnnotationDB
- Returns:
- the size of this DB
-
filter
Description copied from interface:AnnotationDB
Find all Annotation instances in this DB that are of a particular type.- Specified by:
filter
in interfaceAnnotationDB
- 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 interfaceAnnotationDB
- Parameters:
at
- the AnnotationType to search with- Returns:
- an AnnotationDB with all matching Annotation instances, irregardless of how deep in the hieracy they are
-
getParserListenerFactory
Get the ParserListenerFactory used by this IndexedAnnotationDB.- Returns:
- the ParserListenerFactory
-