Package org.biojava.nbio.structure
Class PdbId
java.lang.Object
org.biojava.nbio.structure.PdbId
- All Implemented Interfaces:
Serializable,Comparable<PdbId>
A wrapper class for the PDB identifier.
It handles conversion between current (short)
Instances of this class are immutable.
Creation of PdBId instance follows strict PDB ID convention. There is only one exception to this rule which is XXXX. XXXX objects are not considered equal (unless they are the one and the same object).
[1-9][0-9A-Z]{3} and
upcoming (extended) PDB_\d{4}[1-9][09-A-Z] PDB ID format.Instances of this class are immutable.
Creation of PdBId instance follows strict PDB ID convention. There is only one exception to this rule which is XXXX. XXXX objects are not considered equal (unless they are the one and the same object).
- Since:
- 6.0.0
- Author:
- Amr ALHOSSARY
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final PatternA regular expression that matches a PDB ID in the extended format.static final PatternA regular expression that matches a PDB ID in the short format.static final Pattern/ * A regular expression that matches an extended PDB ID that is compatible with the short format. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected Objectclone()intbooleangetId()Get aStringrepresentation of this PdbId instance.
By default this function will try to get the PdbId in the short (4 letters) format.getId(boolean prefereShort) Get aStringrepresentation of this PdbId instance, using the passed in behavior.Get the PDB Id in the short format.inthashCode()static booleanisShortCompatible(String extendedId) Checks whether an Extended PDB ID is shortable, assuming it is a valid extended PDB ID.static booleanCheck whetheridrepresents a valid PDB ID in the extended format.static booleanCheck whetheridrepresents a valid PDB ID in the short format.static StringtoExtendedId(String shortId) ConvertsshortIdto the PDB ID extended format.static StringConvertsextendedIdto the PDB ID short format.toString()
-
Field Details
-
PATTERN_SHORT_PDBID
A regular expression that matches a PDB ID in the short format. -
PATTERN_EXTENDED_PDBID
A regular expression that matches a PDB ID in the extended format. -
PATTERN_SHORTABLE_EXTENDED_PDBID
/ * A regular expression that matches an extended PDB ID that is compatible with the short format.
-
-
Constructor Details
-
PdbId
- Parameters:
id- A valid PDB ID in either short (case insensitive) or extended format.- Throws:
IllegalArgumentException- Ifidis not a valid identifier.NullPointerException- Ifidisnull.
-
-
Method Details
-
isValidShortPdbId
Check whetheridrepresents a valid PDB ID in the short format.- Parameters:
id- Prospect ID- Returns:
trueifidis a valid short PDB ID,falseotherwise.- Throws:
NullPointerException- ifidisnull.- See Also:
-
isValidExtendedPdbId
Check whetheridrepresents a valid PDB ID in the extended format.- Parameters:
id- Prospect ID- Returns:
trueifidis a valid extended PDB ID,falseotherwise.- Throws:
NullPointerException- ifidisnull.- See Also:
-
isShortCompatible
Checks whether an Extended PDB ID is shortable, assuming it is a valid extended PDB ID.- Parameters:
extendedId- the supposedly valid extended PDB ID.- Returns:
trueifextendedIdcan be shortened (ie. it matches the regular expression "(pdb|PDB)_0000[1-9][a-zA-Z0-9]{3}"),falseotherwise.- See Also:
-
hashCode
-
equals
-
clone
- Overrides:
clonein classObject- Throws:
CloneNotSupportedException
-
toString
-
getId
Get aStringrepresentation of this PdbId instance.
By default this function will try to get the PdbId in the short (4 letters) format. If not possible, it will return the long format. N.B. This default behavior may change later;- Returns:
- the PdbId code, preferably in short format.
-
getId
Get aStringrepresentation of this PdbId instance, using the passed in behavior.- Parameters:
prefereShort- when it istrue, the class will try to produce the short ID whenever possible.- Returns:
- The PdbId in short format if possible and
prefereShortistrue, the extended PDB ID form otherwise.
-
getShortId
Get the PDB Id in the short format. Throws an exception if the conversion is not possible.
Use this method only if you know that this PDB ID is shortable.- Returns:
- the PDB ID in the short format.
- Throws:
StructureException- if the conversion was not possible.
-
toExtendedId
ConvertsshortIdto the PDB ID extended format. IfshortIdis a valid short PDB ID, it would be converted to an extended ID, ifshortIdis a valid extended PDB ID, it would be returned in UPPER CASE, aStructureExceptionis thrown otherwise.- Parameters:
shortId- the PDB ID to convert to extended format- Returns:
- the ID in the extended UPPER CASE format.
- Throws:
StructureException- if the conversion was not possible.
-
toShortId
ConvertsextendedIdto the PDB ID short format. IfextendedIdis a valid extended PDB ID, it would be converted to a short ID, ifextendedIdis a valid short PDB ID, it would be returned in UPPER CASE, aStructureExceptionis thrown otherwise.- Parameters:
extendedId- the PDB ID to convert to short format- Returns:
- the ID in the short UPPER CASE format.
- Throws:
StructureException- if the conversion was not possible.
-
compareTo
- Specified by:
compareToin interfaceComparable<PdbId>
-