public class RestrictionEnzyme extends Object implements Serializable
RestrictionEnzyme
represents a restriction enzyme
according to the REBASE standard. The cut positions are indicated
relative to the 5' end of the recognition site and occur downstream
of the given residue. Note that some enzymes cut in more than one
position and that cut positions may occur outside the recognition
site.Modifier and Type | Field and Description |
---|---|
static int |
BLUNT
BLUNT the end type created by enzymes which leave
a blunt end. |
static int |
CUT_COMPOUND
CUT_COMPOUND a cut type where the enzyme cuts in
two positions relative to the recognition site. |
static int |
CUT_SIMPLE
CUT_SIMPLE a cut type where the enzyme cuts in one
position relative to the recognition site. |
protected int |
cutType |
protected int[] |
dsCutPositions |
protected String |
forwardRegex |
protected String |
name |
static int |
OVERHANG_3PRIME
OVERHANG_3PRIME the sticky end type created by
enzymes which leave a 3' overhang (e.g. a stretch of single-stranded
DNA with a free 3' end). |
static int |
OVERHANG_5PRIME
OVERHANG_5PRIME the sticky end type created by
enzymes which leave a 5' overhang (e.g. a stretch of single-stranded
DNA with a free 5' end). |
protected String |
reverseRegex |
protected SymbolList |
site |
protected int[] |
usCutPositions |
Constructor and Description |
---|
RestrictionEnzyme(String name,
SymbolList site,
int dsForward,
int dsReverse)
Creates a new
RestrictionEnzyme which cuts within
or downstream of the recognition site. |
RestrictionEnzyme(String name,
SymbolList site,
int usForward,
int usReverse,
int dsForward,
int dsReverse)
Creates a new
RestrictionEnzyme of the unusual
type which cuts both upstream and downstream of its recognition
site. |
Modifier and Type | Method and Description |
---|---|
boolean |
equals(Object o) |
double |
getCuttingSize()
The cutting size of a restriction enzyme is defined has the number
of nucleotides that are directly involved in the recognition sequence.
|
int |
getCutType()
getCutType returns the type of cut produced by the
enzyme. |
int[] |
getDownstreamCut()
getDownstreamCut returns the cut site within or
downstream of the recognition site. |
int |
getDownstreamEndType()
getDownstreamEndType returns the double-stranded
end type produced by the primary (intra-site or downstream)
cut. |
String |
getForwardRegex()
getForwardRegex returns a regular expression which
matches the forward strand of the recognition site. |
String |
getName()
getName returns the enzyme name. |
RestrictionEnzyme |
getPrototype()
The prototype is a
RestrictionEnzyme that represents a set
of isoshizomers. |
SymbolList |
getRecognitionSite()
getRecognitionSite returns the forward strand of
the recognition site. |
String |
getReverseRegex()
getReverseRegex returns a regular expression which
matches the reverse strand of the recognition site. |
int[] |
getUpstreamCut()
getUpstreamCut returns the cut site upstream of
the recognition site. |
int |
getUpstreamEndType()
getUpstreamEndType returns the double-stranded end
type produced by the secondary (upstream) cut. |
int |
hashCode() |
boolean |
isPalindromic()
isPalindromic returns true if the recognition site
is palindromic. |
boolean |
isPrototype() |
void |
setProtype(RestrictionEnzyme proto)
Set the prototype of this
RestrictionEnzyme . |
String |
toString() |
public static final int CUT_SIMPLE
CUT_SIMPLE
a cut type where the enzyme cuts in one
position relative to the recognition site. This covers the vast
majority of cases.public static final int CUT_COMPOUND
CUT_COMPOUND
a cut type where the enzyme cuts in
two positions relative to the recognition site.public static final int OVERHANG_5PRIME
OVERHANG_5PRIME
the sticky end type created by
enzymes which leave a 5' overhang (e.g. a stretch of single-stranded
DNA with a free 5' end).public static final int OVERHANG_3PRIME
OVERHANG_3PRIME
the sticky end type created by
enzymes which leave a 3' overhang (e.g. a stretch of single-stranded
DNA with a free 3' end).public static final int BLUNT
BLUNT
the end type created by enzymes which leave
a blunt end.protected SymbolList site
protected int cutType
protected int[] dsCutPositions
protected int[] usCutPositions
protected String forwardRegex
protected String reverseRegex
public RestrictionEnzyme(String name, SymbolList site, int dsForward, int dsReverse) throws IllegalAlphabetException
RestrictionEnzyme
which cuts within
or downstream of the recognition site. The cut position indices
are always in the same coordinate space as the
recognition site. RestrictionEnzyme
s are
immutable.name
- a String
such as EcoRI.site
- a SymbolList
recognition site.dsForward
- an int
index in the forward
strand (the strand conventionally written
5'-3') of the recognition site at which the
cut occurs. The cut occurs between this base and the following
one.dsReverse
- an int
index in the reverse
strand (the strand conventionally written
3'-5') of the recognition site at which the
cut occurs. The cut occurs between this base and the following
one.IllegalAlphabetException
- if an error occurs.public RestrictionEnzyme(String name, SymbolList site, int usForward, int usReverse, int dsForward, int dsReverse) throws IllegalAlphabetException
RestrictionEnzyme
of the unusual
type which cuts both upstream and downstream of its recognition
site. The cut position indices are always in
the same coordinate space as the recognition site.name
- a String
such as Bsp24I.site
- a SymbolList
recognition site.usForward
- an int
index in the forward
strand (the strand conventionally written
5'-3' upstream of the recognition site at
which the cut occurs. The cut occurs between this base and the
following one.usReverse
- an int
index in the reverse
strand (the strand conventionally written
3'-5) upstream of the recognition site at
which the cut occurs. The cut occurs between this base and the
following one.dsForward
- an int
index in the forward
strand (the strand conventionally written
5'-3') downstream of the recognition site at
which the cut occurs. The cut occurs between this base and the
following one.dsReverse
- an int
index in the reverse
strand (the strand conventionally written
3'-5') downstream of the recognition site at
which the cut occurs. The cut occurs between this base and the
following one.IllegalAlphabetException
- if an error occurs.public SymbolList getRecognitionSite()
getRecognitionSite
returns the forward strand of
the recognition site.SymbolList
.public String getForwardRegex()
getForwardRegex
returns a regular expression which
matches the forward strand of the recognition site.String
.public String getReverseRegex()
getReverseRegex
returns a regular expression which
matches the reverse strand of the recognition site.String
.public boolean isPalindromic()
isPalindromic
returns true if the recognition site
is palindromic.boolean
.public int getCutType()
getCutType
returns the type of cut produced by the
enzyme. This will be one of either RestrictionEnzyme.CUT_SIMPLE
(where it cuts in one position relative to the recognition site
i.e. the vast majority of cases) or
RestrictionEnzyme.CUT_COMPOUND (where it cuts in two positions).int
.public int[] getDownstreamCut()
getDownstreamCut
returns the cut site within or
downstream of the recognition site.int []
array with the position in the
5'-strand at index 0 and the 3'-strand at index 1.public int[] getUpstreamCut() throws BioException
getUpstreamCut
returns the cut site upstream of
the recognition site.int []
array with the position in the
5'-strand at index 0 and the 3'-strand at index 1. For example,
Bsp24I will return -8 and -13:
5' ^NNNNNNNNGACNNNNNNTGGNNNNNNNNNNNN^ 3'
3' ^NNNNNNNNNNNNNCTGNNNNNNACCNNNNNNN^ 5'BioException
- if the enzyme does not cleave on both
sides of its recognition site.public int getDownstreamEndType()
getDownstreamEndType
returns the double-stranded
end type produced by the primary (intra-site or downstream)
cut.int
equal to one of the constant fields
OVERHANG_5PRIME, OVERHANG_3PRIME or BLUNT.public int getUpstreamEndType() throws BioException
getUpstreamEndType
returns the double-stranded end
type produced by the secondary (upstream) cut.int
equal to one of the constant fields
OVERHANG_5PRIME, OVERHANG_3PRIME or BLUNT.BioException
- if the enzyme does not cleave on both
sides of its recognition site.public void setProtype(RestrictionEnzyme proto)
RestrictionEnzyme
.proto
- an isoschizomer of this enzyme.public RestrictionEnzyme getPrototype()
RestrictionEnzyme
that represents a set
of isoshizomers. The choice of the representative/prototype is arbitrary;
there is one and only one prototype per set of
isoschizomers.public boolean isPrototype()
public double getCuttingSize()
Copyright © 2014 BioJava. All rights reserved.