Class StructureImpl

  • All Implemented Interfaces:
    java.lang.Cloneable, Structure

    public class StructureImpl
    extends java.lang.Object
    implements Structure
    Implementation of a PDB Structure. This class provides the data contained in a PDB file. to get structure objects from different sources see io package.
    Since:
    1.4
    Version:
    %I% %G%
    Author:
    Andreas Prlic, Jules Jacobsen
    • Constructor Summary

      Constructors 
      Constructor Description
      StructureImpl()
      Constructs a StructureImpl object.
      StructureImpl​(Chain c)
      construct a Structure object that contains a particular chain
      StructureImpl​(Group g)
      construct a Structure object that only contains a single group
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void addChain​(Chain chain)
      add a new chain.
      void addChain​(Chain chain, int modelnr)
      add a new chain, if several models are available.
      void addModel​(java.util.List<Chain> model)
      add a new model.
      void addSSBond​(SSBond ssbond)
      add a single SSBond to this structure
      Structure clone()
      returns an identical copy of this structure .
      Chain findChain​(java.lang.String chainId)
      request a particular chain from a structure.
      Chain findChain​(java.lang.String chainId, int modelnr)
      request a particular chain from a particular model
      Group findGroup​(java.lang.String chainName, java.lang.String pdbResnum)
      request a particular group from a structure.
      Group findGroup​(java.lang.String chainId, java.lang.String pdbResnum, int modelnr)
      request a particular group from a structure.
      Chain getChain​(int number)
      retrieve a chain by it's position within the Structure.
      Chain getChain​(int modelnr, int number)
      retrieve a chain by it's position within the Structure and model number.
      Chain getChainByPDB​(java.lang.String chainId)
      request a chain by it's PDB code by default takes only the first model
      Chain getChainByPDB​(java.lang.String chainId, int modelnr)
      request a chain by it's PDB code by default takes only the first model
      java.util.List<Chain> getChains()
      retrieve all chains - if it is a NMR structure will return the chains of the first model.
      java.util.List<Chain> getChains​(int modelnr)
      retrieve all chains of a model.
      Compound getCompoundById​(java.lang.String molId)
      request a particular compound by its id
      java.util.List<Compound> getCompounds()
      get all the Compounds that are defined in the PDB Header
      java.util.List<java.util.Map<java.lang.String,​java.lang.Integer>> getConnections()
      Returns the connections value.
      java.util.List<DBRef> getDBRefs()
      get the list of database references
      java.util.Map<java.lang.String,​java.lang.Object> getHeader()
      get Header data.
      java.lang.Long getId()
      get the ID used by Hibernate
      JournalArticle getJournalArticle()
      get the associated publication as defined by the JRNL records in a PDB file.
      java.util.List<Chain> getModel​(int modelnr)
      retrieve all Chains belonging to a model .
      java.lang.String getName()
      get biological name of Structure.
      java.lang.String getPDBCode()
      get PDB code of structure .
      PDBHeader getPDBHeader()
      return the header information for this PDB file
      java.util.List<SSBond> getSSBonds()
      get the list of SSBonds as they have been defined in the PDB files
      boolean hasChain​(java.lang.String chainId)
      check if a chain with the id chainId is contained in this structure.
      boolean hasJournalArticle()
      Return whether or not the entry has an associated journal article or publication.
      boolean isNmr()
      is this structure an nmr structure ?
      int nrModels()
      return number of models.
      void setChains​(int modelnr, java.util.List<Chain> chains)
      set the chains for a model
      void setChains​(java.util.List<Chain> chains)
      set the chains of a structure, if this is a NMR structure, this will only set model 0.
      void setCompounds​(java.util.List<Compound> molList)
      set the compounts
      void setConnections​(java.util.List<java.util.Map<java.lang.String,​java.lang.Integer>> conns)
      sets/gets an List of Maps which corresponds to the CONECT lines in the PDB file:
      void setDBRefs​(java.util.List<DBRef> dbrefs)
      set the list of database references for this structure
      void setHeader​(java.util.Map<java.lang.String,​java.lang.Object> h)
      set the Header data.
      void setId​(java.lang.Long id)
      set the ID used by Hibernate
      void setJournalArticle​(JournalArticle journalArticle)
      set the associated publication as defined by the JRNL records in a PDB file.
      void setModel​(int position, java.util.List<Chain> model)
      a convenience function if one wants to edit and replace the models in a structure.
      void setName​(java.lang.String nam)
      set biological name of Structure.
      void setNmr​(boolean nmr)
      set NMR flag.
      void setPDBCode​(java.lang.String pdb_id_)
      set PDB code of structure .
      void setPDBHeader​(PDBHeader pdbHeader)
      the the header information for this PDB file
      void setSSBonds​(java.util.List<SSBond> ssbonds)
      set the list of SSBonds for this structure
      int size()
      return number of chains , if NMR return number of chains of first model .
      int size​(int modelnr)
      return number of chains of model.
      java.lang.String toPDB()
      create a String that contains the contents of a PDB file.
      java.lang.String toString()
      string representation.
      • Methods inherited from class java.lang.Object

        equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    • Constructor Detail

      • StructureImpl

        public StructureImpl()
        Constructs a StructureImpl object.
      • StructureImpl

        public StructureImpl​(Group g)
        construct a Structure object that only contains a single group
        Parameters:
        g -
      • StructureImpl

        public StructureImpl​(Chain c)
        construct a Structure object that contains a particular chain
        Parameters:
        c -
    • Method Detail

      • getId

        public java.lang.Long getId()
        get the ID used by Hibernate
        Specified by:
        getId in interface Structure
        Returns:
        the ID used by Hibernate
      • setId

        public void setId​(java.lang.Long id)
        set the ID used by Hibernate
        Specified by:
        setId in interface Structure
        Parameters:
        id -
      • clone

        public Structure clone()
        returns an identical copy of this structure .
        Specified by:
        clone in interface Structure
        Overrides:
        clone in class java.lang.Object
        Returns:
        an identical Structure object
      • findGroup

        public Group findGroup​(java.lang.String chainId,
                               java.lang.String pdbResnum,
                               int modelnr)
                        throws StructureException
        Description copied from interface: Structure
        request a particular group from a structure. considers only model nr X. count starts with 0.
        Specified by:
        findGroup in interface Structure
        Parameters:
        chainId - the ID of the chain to use
        pdbResnum - the PDB residue number of the requested group
        modelnr - the number of the model to use
        Returns:
        Group the requested Group
        Throws:
        StructureException
      • findGroup

        public Group findGroup​(java.lang.String chainName,
                               java.lang.String pdbResnum)
                        throws StructureException
        Description copied from interface: Structure
        request a particular group from a structure. by default considers only the first model in the structure.
        Specified by:
        findGroup in interface Structure
        Parameters:
        chainName - the ID of the chain to use
        pdbResnum - the PDB residue number of the requested group
        Returns:
        Group the requested Group
        Throws:
        StructureException
      • findChain

        public Chain findChain​(java.lang.String chainId,
                               int modelnr)
                        throws StructureException
        Description copied from interface: Structure
        request a particular chain from a particular model
        Specified by:
        findChain in interface Structure
        Parameters:
        chainId - the ID of a chain that should be returned
        modelnr - the number of the model to use
        Returns:
        Chain the requested chain
        Throws:
        StructureException
      • findChain

        public Chain findChain​(java.lang.String chainId)
                        throws StructureException
        Description copied from interface: Structure
        request a particular chain from a structure. by default considers only the first model.
        Specified by:
        findChain in interface Structure
        Parameters:
        chainId - the ID of a chain that should be returned
        Returns:
        Chain the requested chain
        Throws:
        StructureException
      • setPDBCode

        public void setPDBCode​(java.lang.String pdb_id_)
        set PDB code of structure .
        Specified by:
        setPDBCode in interface Structure
        Parameters:
        pdb_id_ - a String specifying the PDBCode
        See Also:
        getPDBCode()
      • setName

        public void setName​(java.lang.String nam)
        set biological name of Structure.
        Specified by:
        setName in interface Structure
        Parameters:
        nam - a String specifying the biological name of the Structure
        See Also:
        getName()
      • setHeader

        public void setHeader​(java.util.Map<java.lang.String,​java.lang.Object> h)
        set the Header data.
        Specified by:
        setHeader in interface Structure
        Parameters:
        h - a Map object specifying the header
        See Also:
        getHeader()
      • setConnections

        public void setConnections​(java.util.List<java.util.Map<java.lang.String,​java.lang.Integer>> conns)
        Description copied from interface: Structure
        sets/gets an List of Maps which corresponds to the CONECT lines in the PDB file:
               COLUMNS         DATA TYPE        FIELD           DEFINITION
               ---------------------------------------------------------------------------------
                1 -  6         Record name      "CONECT"
                7 - 11         Integer          serial          Atom serial number
               12 - 16         Integer          serial          Serial number of bonded atom
               17 - 21         Integer          serial          Serial number of bonded atom
               22 - 26         Integer          serial          Serial number of bonded atom
               27 - 31         Integer          serial          Serial number of bonded atom
               32 - 36         Integer          serial          Serial number of hydrogen bonded
               atom
               37 - 41         Integer          serial          Serial number of hydrogen bonded
               atom
               42 - 46         Integer          serial          Serial number of salt bridged
               atom
               47 - 51         Integer          serial          Serial number of hydrogen bonded
               atom
               52 - 56         Integer          serial          Serial number of hydrogen bonded
               atom
               57 - 61         Integer          serial          Serial number of salt bridged
               atom
               
        the HashMap for a single CONECT line contains the following fields:
      • atomserial (mandatory) : Atom serial number
      • bond1 .. bond4 (optional): Serial number of bonded atom
      • hydrogen1 .. hydrogen4 (optional):Serial number of hydrogen bonded atom
      • salt1 .. salt2 (optional): Serial number of salt bridged atom
Specified by:
setConnections in interface Structure
Parameters:
conns - a List object specifying the connections
See Also:
interface.