public class AtomCache
extends java.lang.Object
Modifier and Type | Field and Description |
---|---|
static java.lang.String |
BIOL_ASSEMBLY_IDENTIFIER |
static java.lang.String |
CHAIN_NR_SYMBOL |
static java.lang.String |
CHAIN_SPLIT_SYMBOL |
protected FileParsingParameters |
params |
static java.lang.String |
PDP_DOMAIN_IDENTIFIER |
protected PDPProvider |
pdpprovider |
static java.util.regex.Pattern |
scopIDregex |
static java.lang.String |
UNDERSCORE |
Constructor and Description |
---|
AtomCache()
Default AtomCache constructor.
|
AtomCache(java.lang.String pdbFilePath)
Creates an instance of an AtomCache that is pointed to the a particular path in the file system.
|
AtomCache(java.lang.String pdbFilePath,
boolean isSplit)
Deprecated.
isSplit parameter is ignored (4.0.0)
|
AtomCache(java.lang.String pdbFilePath,
java.lang.String cachePath)
Creates an instance of an AtomCache that is pointed to the a particular path in the file system.
|
AtomCache(java.lang.String pdbFilePath,
java.lang.String cachePath,
boolean isSplit)
Deprecated.
isSplit parameter is ignored (4.0.0)
|
AtomCache(UserConfiguration config)
Creates a new AtomCache object based on the provided UserConfiguration.
|
Modifier and Type | Method and Description |
---|---|
protected void |
flagLoading(java.lang.String name) |
protected void |
flagLoadingFinished(java.lang.String name) |
Atom[] |
getAtoms(java.lang.String name)
Returns the CA atoms for the provided name.
|
Structure |
getBiologicalAssembly(java.lang.String pdbId,
int bioAssemblyId,
boolean bioAssemblyFallback)
Loads the biological assembly for a given PDB ID and bioAssemblyId.
|
Structure |
getBiologicalUnit(java.lang.String pdbId)
Loads the default biological unit (*.pdb1.gz) file.
|
java.lang.String |
getCachePath()
Returns the path that contains the caching file for utility data, such as domain definitions.
|
LocalPDBDirectory.FetchBehavior |
getFetchBehavior()
Get the behavior for fetching files from the server
|
FileParsingParameters |
getFileParsingParams() |
LocalPDBDirectory.ObsoleteBehavior |
getObsoleteBehavior()
Returns how this instance deals with obsolete entries.
|
java.lang.String |
getPath()
Get the path that is used to cache PDB files.
|
PDPProvider |
getPdpprovider() |
Atom[] |
getRepresentativeAtoms(java.lang.String name)
Returns the representative atoms for the provided name.
|
Structure |
getStructure(java.lang.String name)
Request a Structure based on a name.
|
Structure |
getStructureForCathDomain(StructureName structureName)
Returns a
Structure corresponding to the CATH identifier supplied in structureName , using the the CathDatabase
at CathFactory.getCathDatabase() . |
Structure |
getStructureForCathDomain(StructureName structureName,
CathDatabase cathInstall)
Returns a
Structure corresponding to the CATH identifier supplied in structureName , using the specified CathDatabase . |
Structure |
getStructureForDomain(ScopDomain domain)
Returns the representation of a
ScopDomain as a BioJava Structure object. |
Structure |
getStructureForDomain(ScopDomain domain,
ScopDatabase scopDatabase)
Returns the representation of a
ScopDomain as a BioJava Structure object. |
Structure |
getStructureForDomain(ScopDomain domain,
ScopDatabase scopDatabase,
boolean strictLigandHandling)
Returns the representation of a
ScopDomain as a BioJava Structure object. |
Structure |
getStructureForDomain(java.lang.String scopId)
Returns the representation of a
ScopDomain as a BioJava Structure object. |
Structure |
getStructureForDomain(java.lang.String scopId,
ScopDatabase scopDatabase)
Returns the representation of a
ScopDomain as a BioJava Structure object. |
boolean |
isAutoFetch()
Deprecated.
|
boolean |
isFetchCurrent()
Deprecated.
Use
FileParsingParameters#getObsoleteBehavior() instead (4.0.0) |
boolean |
isFetchFileEvenIfObsolete()
Deprecated.
Use
FileParsingParameters#getObsoleteBehavior() instead (4.0.0) |
boolean |
isStrictSCOP()
Reports whether strict scop naming will be enforced, or whether this AtomCache should try to guess some simple
variants on scop domains.
|
boolean |
isUseMmCif() |
protected Structure |
loadStructureFromCifByPdbId(java.lang.String pdbId) |
protected Structure |
loadStructureFromPdbByPdbId(java.lang.String pdbId) |
void |
notifyShutdown()
Send a signal to the cache that the system is shutting down.
|
void |
setAutoFetch(boolean autoFetch)
Deprecated.
|
void |
setCachePath(java.lang.String cachePath)
set the location at which utility data should be cached.
|
void |
setFetchBehavior(LocalPDBDirectory.FetchBehavior fetchBehavior)
Set the behavior for fetching files from the server
|
void |
setFetchCurrent(boolean fetchNewestCurrent)
Deprecated.
Use
FileParsingParameters#setObsoleteBehavior() instead (4.0.0) |
void |
setFetchFileEvenIfObsolete(boolean fetchFileEvenIfObsolete)
Deprecated.
Use
FileParsingParameters#setObsoleteBehavior() instead (4.0.0) |
void |
setFileParsingParams(FileParsingParameters params) |
void |
setObsoleteBehavior(LocalPDBDirectory.ObsoleteBehavior behavior)
[Optional] This method changes the behavior when obsolete entries
are requested.
|
void |
setPath(java.lang.String path)
Set the path that is used to cache PDB files.
|
void |
setPdpprovider(PDPProvider pdpprovider) |
void |
setStrictSCOP(boolean strictSCOP)
When strictSCOP is enabled, SCOP domain identifiers (eg 'd1gbga_') are matched literally to the SCOP database.
|
void |
setUseMmCif(boolean useMmCif) |
public static final java.lang.String BIOL_ASSEMBLY_IDENTIFIER
public static final java.lang.String CHAIN_NR_SYMBOL
public static final java.lang.String CHAIN_SPLIT_SYMBOL
public static final java.lang.String PDP_DOMAIN_IDENTIFIER
public static final java.util.regex.Pattern scopIDregex
public static final java.lang.String UNDERSCORE
protected FileParsingParameters params
protected PDPProvider pdpprovider
public AtomCache()
public AtomCache(java.lang.String pdbFilePath)
pdbFilePath
- a directory in the file system to use as a location to cache files.public AtomCache(java.lang.String pdbFilePath, java.lang.String cachePath)
pdbFilePath
- a directory in the file system to use as a location to cache files.cachePath
- @Deprecated public AtomCache(java.lang.String pdbFilePath, boolean isSplit)
isSplit
- Ignored@Deprecated public AtomCache(java.lang.String pdbFilePath, java.lang.String cachePath, boolean isSplit)
isSplit
- Ignoredpublic AtomCache(UserConfiguration config)
config
- the UserConfiguration to use for this cache.public Atom[] getAtoms(java.lang.String name) throws java.io.IOException, StructureException
getStructure(String)
for supported naming conventions.
This method only works with protein chains. Use getRepresentativeAtoms(String)
for a more general solution.
name
- java.io.IOException
StructureException
public Atom[] getRepresentativeAtoms(java.lang.String name) throws java.io.IOException, StructureException
getStructure(String)
for supported naming conventions.name
- java.io.IOException
StructureException
public Structure getBiologicalAssembly(java.lang.String pdbId, int bioAssemblyId, boolean bioAssemblyFallback) throws StructureException, java.io.IOException
pdbId
- the PDB IDbioAssemblyId
- the ID of the biological assemblybioAssemblyFallback
- if true, try reading original PDB file in case the biological assembly file is not availablejava.io.IOException
StructureException
public Structure getBiologicalUnit(java.lang.String pdbId) throws StructureException, java.io.IOException
pdbId
- the PDB IDjava.io.IOException
StructureException
public java.lang.String getCachePath()
public FileParsingParameters getFileParsingParams()
public java.lang.String getPath()
public PDPProvider getPdpprovider()
public Structure getStructure(java.lang.String name) throws java.io.IOException, StructureException
Formal specification for how to specify the name: name := pdbID | pdbID '.' chainID | pdbID '.' range | scopID range := '('? range (',' range)? ')'? | chainID | chainID '_' resNum '-' resNum pdbID := [0-9][a-zA-Z0-9]{3} chainID := [a-zA-Z0-9] scopID := 'd' pdbID [a-z_][0-9_] resNum := [-+]?[0-9]+[A-Za-z]? Example structures: 1TIM #whole structure 4HHB.C #single chain 4GCR.A_1-83 #one domain, by residue number 3AA0.A,B #two chains treated as one structure d2bq6a1 #scop domainWith the additional set of rules:
setStrictSCOP(boolean)
name
- java.io.IOException
- The PDB file cannot be cached due to IO errorsStructureException
- The name appeared valid but did not correspond to a structure. Also thrown by some submethods upon
errors, eg for poorly formatted subranges.public Structure getStructureForDomain(ScopDomain domain) throws java.io.IOException, StructureException
ScopDomain
as a BioJava Structure
object.domain
- a SCOP domainjava.io.IOException
StructureException
public Structure getStructureForDomain(ScopDomain domain, ScopDatabase scopDatabase) throws java.io.IOException, StructureException
ScopDomain
as a BioJava Structure
object.domain
- a SCOP domainscopDatabase
- A ScopDatabase
to usejava.io.IOException
StructureException
public Structure getStructureForDomain(ScopDomain domain, ScopDatabase scopDatabase, boolean strictLigandHandling) throws java.io.IOException, StructureException
ScopDomain
as a BioJava Structure
object.domain
- a SCOP domainscopDatabase
- A ScopDatabase
to usestrictLigandHandling
- If set to false, hetero-atoms are included if and only if they belong to a chain to which the SCOP
domain belongs; if set to true, hetero-atoms are included if and only if they are strictly within the
definition (residue numbers) of the SCOP domainjava.io.IOException
StructureException
public Structure getStructureForDomain(java.lang.String scopId) throws java.io.IOException, StructureException
ScopDomain
as a BioJava Structure
object.scopId
- a SCOP Idjava.io.IOException
StructureException
public Structure getStructureForDomain(java.lang.String scopId, ScopDatabase scopDatabase) throws java.io.IOException, StructureException
ScopDomain
as a BioJava Structure
object.scopId
- a SCOP IdscopDatabase
- A ScopDatabase
to usejava.io.IOException
StructureException
@Deprecated public boolean isAutoFetch()
getFetchBehavior()
@Deprecated public boolean isFetchCurrent()
FileParsingParameters#getObsoleteBehavior()
instead (4.0.0)true
.@Deprecated public boolean isFetchFileEvenIfObsolete()
FileParsingParameters#getObsoleteBehavior()
instead (4.0.0)setFetchCurrent(boolean)
.true
.#fetchCurrent
public boolean isStrictSCOP()
public void notifyShutdown()
@Deprecated public void setAutoFetch(boolean autoFetch)
getFetchBehavior()
autoFetch
- flagpublic void setCachePath(java.lang.String cachePath)
cachePath
- @Deprecated public void setFetchCurrent(boolean fetchNewestCurrent)
FileParsingParameters#setObsoleteBehavior()
instead (4.0.0)setFetchFileEvenIfObsolete(boolean)
function has a higher priority than this function.true
.fetchCurrent
- the fetchCurrent to setsetFetchFileEvenIfObsolete(boolean)
@Deprecated public void setFetchFileEvenIfObsolete(boolean fetchFileEvenIfObsolete)
FileParsingParameters#setObsoleteBehavior()
instead (4.0.0)true
.fetchFileEvenIfObsolete
- the fetchFileEvenIfObsolete to setpublic void setFileParsingParams(FileParsingParameters params)
public void setObsoleteBehavior(LocalPDBDirectory.ObsoleteBehavior behavior)
THROW_EXCEPTION
Throw a StructureException
(the default)
FETCH_OBSOLETE
Load the requested ID from the PDB's obsolete repository
FETCH_CURRENT
Load the most recent version of the requested structure
This setting may be silently ignored by implementations which do not have
access to the server to determine whether an entry is obsolete, such as
if isAutoFetch()
is false. Note that an obsolete entry may still be
returned even this is FETCH_CURRENT if the entry is found locally.
fetchFileEvenIfObsolete
- Whether to fetch obsolete recordssetFetchCurrent(boolean)
public LocalPDBDirectory.ObsoleteBehavior getObsoleteBehavior()
isAutoFetch()
is false.
For most implementations, the default value is
THROW_EXCEPTION
.
public LocalPDBDirectory.FetchBehavior getFetchBehavior()
public void setFetchBehavior(LocalPDBDirectory.FetchBehavior fetchBehavior)
fetchBehavior
- public void setPath(java.lang.String path)
path
- to a directorypublic void setPdpprovider(PDPProvider pdpprovider)
public void setStrictSCOP(boolean strictSCOP)
strictSCOP
- Indicates whether strict scop names should be used.public boolean isUseMmCif()
public void setUseMmCif(boolean useMmCif)
useMmCif
- the useMmCif to setpublic Structure getStructureForCathDomain(StructureName structureName) throws java.io.IOException, StructureException
Structure
corresponding to the CATH identifier supplied in structureName
, using the the CathDatabase
at CathFactory.getCathDatabase()
.java.io.IOException
StructureException
public Structure getStructureForCathDomain(StructureName structureName, CathDatabase cathInstall) throws java.io.IOException, StructureException
Structure
corresponding to the CATH identifier supplied in structureName
, using the specified CathDatabase
.java.io.IOException
StructureException
protected void flagLoading(java.lang.String name)
protected void flagLoadingFinished(java.lang.String name)
protected Structure loadStructureFromCifByPdbId(java.lang.String pdbId) throws java.io.IOException, StructureException
java.io.IOException
StructureException
protected Structure loadStructureFromPdbByPdbId(java.lang.String pdbId) throws java.io.IOException, StructureException
java.io.IOException
StructureException