Class ScopInstallation

    • Constructor Detail

      • ScopInstallation

        public ScopInstallation​(java.lang.String cacheLocation)
        Create a new SCOP installation.
        Parameters:
        cacheLocation - where the SCOP files are stored. If they can't be found at that location they will get automatically downloaded and installed there.
      • ScopInstallation

        public ScopInstallation()
        Create a new SCOP installation, downloading the file to "the right place". This will first check for system properties or environmental variables called UserConfiguration.PDB_CACHE_DIR, or else will use a temporary directory
    • Method Detail

      • nullifyComments

        public void nullifyComments()
        Removes all of the comments (dir.com file) in order to free memory. The file will need to be reloaded if getComments(int) is called subsequently.
      • ensureClaInstalled

        public void ensureClaInstalled()
                                throws java.io.IOException
        Throws:
        java.io.IOException
      • ensureDesInstalled

        public void ensureDesInstalled()
                                throws java.io.IOException
        Throws:
        java.io.IOException
      • ensureComInstalled

        public void ensureComInstalled()
                                throws java.io.IOException
        Throws:
        java.io.IOException
      • ensureHieInstalled

        public void ensureHieInstalled()
                                throws java.io.IOException
        Throws:
        java.io.IOException
      • getByCategory

        public java.util.List<ScopDescription> getByCategory​(ScopCategory category)
        Description copied from interface: ScopDatabase
        Get all records of a particular classification.
        Specified by:
        getByCategory in interface ScopDatabase
        Parameters:
        category - e.g. "superfamily"
        Returns:
        all records of this type
      • filterByClassificationId

        public java.util.List<ScopDescription> filterByClassificationId​(java.lang.String query)
        Description copied from interface: ScopDatabase
        Get all scop descriptions that start with a classification ID, e.g. b.1.18
        Specified by:
        filterByClassificationId in interface ScopDatabase
        Returns:
        list of scop descriptions
      • getTree

        public java.util.List<ScopNode> getTree​(ScopDomain domain)
        Description copied from interface: ScopDatabase
        get the SCOP sub-tree for a particular domain.
        Specified by:
        getTree in interface ScopDatabase
        Returns:
        list of ScopNodes providing the path to this domain
      • filterByDomainName

        public java.util.List<ScopDomain> filterByDomainName​(java.lang.String query)
        Description copied from interface: ScopDatabase
        search through SCOP and filter based on domain name
        Specified by:
        filterByDomainName in interface ScopDatabase
        Parameters:
        query - a (part) of a name
        Returns:
        list of matchin ScopDomains
      • getDomainsForPDB

        public java.util.List<ScopDomain> getDomainsForPDB​(java.lang.String pdbId)
        Description copied from interface: ScopDatabase
        Get a list of ScopDomains that have been assigned to a PDB ID
        Specified by:
        getDomainsForPDB in interface ScopDatabase
        Parameters:
        pdbId - the PDB entry
        Returns:
        a list of ScopDomains
      • getDomainByScopID

        public ScopDomain getDomainByScopID​(java.lang.String scopId)
        Description copied from interface: ScopDatabase
        get a ScopDomain by its SCOP ID (warning, they are not stable between releases!)
        Specified by:
        getDomainByScopID in interface ScopDatabase
        Parameters:
        scopId - e.g. d2bq6a1
        Returns:
        a ScopDomain or null if no domain with the particular ID could be found
      • getScopNode

        public ScopNode getScopNode​(int sunid)
        Description copied from interface: ScopDatabase
        Access a particular ScopNode. The scopNode then allows to traverse through the scop hierarchy...
        Specified by:
        getScopNode in interface ScopDatabase
        Parameters:
        sunid - the scop unique id
        Returns:
        a ScopNode that matches this sunid
      • downloadClaFile

        protected void downloadClaFile()
                                throws java.io.FileNotFoundException,
                                       java.io.IOException
        Throws:
        java.io.FileNotFoundException
        java.io.IOException
      • downloadDesFile

        protected void downloadDesFile()
                                throws java.io.FileNotFoundException,
                                       java.io.IOException
        Throws:
        java.io.FileNotFoundException
        java.io.IOException
      • downloadHieFile

        protected void downloadHieFile()
                                throws java.io.IOException
        Throws:
        java.io.IOException
      • downloadComFile

        protected void downloadComFile()
                                throws java.io.FileNotFoundException,
                                       java.io.IOException
        Throws:
        java.io.FileNotFoundException
        java.io.IOException
      • downloadFileFromRemote

        protected void downloadFileFromRemote​(java.net.URL remoteURL,
                                              java.io.File localFile)
                                       throws java.io.IOException
        Throws:
        java.io.IOException
      • getClaFilename

        protected java.lang.String getClaFilename()
      • getDesFilename

        protected java.lang.String getDesFilename()
      • getHieFilename

        protected java.lang.String getHieFilename()
      • getComFilename

        protected java.lang.String getComFilename()
      • getCacheLocation

        public java.lang.String getCacheLocation()
      • setCacheLocation

        public void setCacheLocation​(java.lang.String cacheLocation)
      • getScopVersion

        public java.lang.String getScopVersion()
        Description copied from interface: ScopDatabase
        Returns the SCOP version
        Specified by:
        getScopVersion in interface ScopDatabase
        Returns:
        version of SCOP
      • setScopVersion

        public void setScopVersion​(java.lang.String scopVersion)
        Description copied from interface: ScopDatabase
        Sets the scop version used.
        Specified by:
        setScopVersion in interface ScopDatabase
      • addMirror

        public void addMirror​(java.lang.String scopDownloadURL)
      • getMirrors

        public java.util.List<ScopMirror> getMirrors()
      • getScopDomainsBySunid

        public java.util.List<ScopDomain> getScopDomainsBySunid​(java.lang.Integer sunid)
        Description copied from interface: ScopDatabase
        Get a SCOP domain by its sunid
        Specified by:
        getScopDomainsBySunid in interface ScopDatabase
        Parameters:
        sunid - the scop unique id
        Returns:
        a list of scop domains that match this sunid
      • getComments

        public java.util.List<java.lang.String> getComments​(int sunid)
        Description copied from interface: ScopDatabase
        Get comments about a SCOP domain by its sunid
        Specified by:
        getComments in interface ScopDatabase
        Returns: