Class RestrictionMapper
- java.lang.Object
-
- org.biojava.bio.molbio.RestrictionMapper
-
- All Implemented Interfaces:
SequenceAnnotator
public class RestrictionMapper extends Object implements SequenceAnnotator
RestrictionMapperis a class for annotatingSequences withFeatures which represent restriction sites. Callingannotate(Sequence sequence)will annotate theSequencewith the sites of anyRestrictionEnzymes which have been added to theRestrictionMapper. The returnedSequenceis aViewSequencewrapping the original.The
Features created areRestrictionSites which have a flyweightAnnotationcontaining a singleStringproperty "dbxref" whose value is "REBASE:" plus name of the enzyme (e.g. EcoRI).The mapper will by default map only those sites which have both their recognition sites and their cut sites within the
Sequence. This behaviour may be changed to map all sites which have their recognition sites within theSequenceusing thesetMapAll(boolean on)method.The current implementation requires that
RestrictionEnzymes to be searched must first be registered with theRestrictionEnzymeManager.- Since:
- 1.3
- Author:
- Keith James
-
-
Field Summary
Fields Modifier and Type Field Description static StringSITE_FEATURE_SOURCESITE_FEATURE_SOURCEthe sourceStringused byRestrictionMapperwhen creating restriction siteFeatures.static StringSITE_FEATURE_TYPESITE_FEATURE_TYPEthe typeStringused byRestrictionMapperwhen creating restriction siteFeatures.
-
Constructor Summary
Constructors Constructor Description RestrictionMapper(ExecutorService xser)Creates a newRestrictionMapperwhich will use the specifiedExecutorService.RestrictionMapper(ThreadPool threadPool)Creates a newRestrictionMapperwhich will use the specifiedThreadPool.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddEnzyme(RestrictionEnzyme enzyme)addEnzymeadds an enzyme to be searched for in theSequence.Sequenceannotate(Sequence sequence)annotateaddsFeatures which represent restriction sites.voidclearEnzymes()clearEnzymesremoves all enzymes from those to be searched for in theSequence.booleangetMapAll()getMapAllreturns whether all sites should be marked, including those which have recognition sites within the sequence, but cut outside it.voidremoveEnzyme(RestrictionEnzyme enzyme)removeEnzymeremoves an enzyme from those to be searched for in theSequence.voidsetMapAll(boolean on)setMapAllsets whether all sites should be marked, including those which have recognition sites within the sequence, but cut outside it.
-
-
-
Field Detail
-
SITE_FEATURE_SOURCE
public static final String SITE_FEATURE_SOURCE
SITE_FEATURE_SOURCEthe sourceStringused byRestrictionMapperwhen creating restriction siteFeatures. This is theStringwhich is returned when aFeature'sgetSource()method is called.- See Also:
- Constant Field Values
-
SITE_FEATURE_TYPE
public static final String SITE_FEATURE_TYPE
SITE_FEATURE_TYPEthe typeStringused byRestrictionMapperwhen creating restriction siteFeatures. This is theStringwhich is returned when aFeature'sgetType()method is called.- See Also:
- Constant Field Values
-
-
Constructor Detail
-
RestrictionMapper
public RestrictionMapper(ThreadPool threadPool)
Creates a new
RestrictionMapperwhich will use the specifiedThreadPool. Do not share one pool between a number ofRestrictionMappers becauseannotate(Sequence sequence)waits for all threads in the pool to finish work before returning and this will lead to a race condition between mappers. One mapper could end up waiting for another mapper's threads before returning.- Parameters:
threadPool- aThreadPool.
-
RestrictionMapper
public RestrictionMapper(ExecutorService xser)
Creates a new
RestrictionMapperwhich will use the specifiedExecutorService.- Parameters:
xser- aExecutorService, e.g. ExecutorService.newCachedThreadPool()- Since:
- 1.8.1
-
-
Method Detail
-
annotate
public Sequence annotate(Sequence sequence)
annotateaddsFeatures which represent restriction sites.- Specified by:
annotatein interfaceSequenceAnnotator- Parameters:
sequence- aSequence.- Returns:
- a
Sequenceview with restriction sites marked.
-
getMapAll
public boolean getMapAll()
getMapAllreturns whether all sites should be marked, including those which have recognition sites within the sequence, but cut outside it. The default is false, indicating only sites which can actually be cut are mapped.- Returns:
- a
boolean.
-
setMapAll
public void setMapAll(boolean on)
setMapAllsets whether all sites should be marked, including those which have recognition sites within the sequence, but cut outside it. The default is false, indicating only sites which can actually be cut are mapped.- Parameters:
on- aboolean.
-
addEnzyme
public void addEnzyme(RestrictionEnzyme enzyme)
addEnzymeadds an enzyme to be searched for in theSequence.- Parameters:
enzyme- aRestrictionEnzyme.
-
removeEnzyme
public void removeEnzyme(RestrictionEnzyme enzyme)
removeEnzymeremoves an enzyme from those to be searched for in theSequence.- Parameters:
enzyme- aRestrictionEnzyme.
-
clearEnzymes
public void clearEnzymes()
clearEnzymesremoves all enzymes from those to be searched for in theSequence.
-
-