Class BusinessKey


  • public class BusinessKey
    extends Object
    Methods to test business-key-related issues on objects. The 'checkValidKey' methods can be used to check whether an object has the required business key values filled in. An exception is thrown if they don't. This class contains some important code that determines our rules for how entities are detected as being the same as another (in queries from the database; this is on top of basic 'equals', but should be compatible).
    Author:
    pavlidis
    • Constructor Detail

      • BusinessKey

        public BusinessKey()
    • Method Detail

      • addRestrictions

        public static void addRestrictions​(Criteria queryObject,
                                           ArrayDesign arrayDesign)
      • addRestrictions

        public static void addRestrictions​(Criteria queryObject,
                                           BioAssay bioAssay)
      • addRestrictions

        public static void addRestrictions​(Criteria queryObject,
                                           BioMaterial bioMaterial)
      • addRestrictions

        public static void addRestrictions​(Criteria queryObject,
                                           BioSequence bioSequence)
        Note: The finder has to do the additional checking for equality of sequence and/or database entry - we don't know until we get the sequences. Due to the following issues:
        • Sometimes the sequence in the database lacks the DatabaseEntry
        • Sometimes the old entry lacks the actual sequence (ATCG..)
        This means that we can't use those criteria up front. Instead we match by name and taxon. If those match, the caller has to sort through possible multiple results to find the correct one.
        Parameters:
        bioSequence - bio sequence
        queryObject - query object
      • addRestrictions

        public static void addRestrictions​(Criteria queryObject,
                                           Characteristic characteristic)
      • addRestrictions

        public static void addRestrictions​(Criteria queryObject,
                                           Chromosome chromosome)
      • addRestrictions

        public static void addRestrictions​(Criteria queryObject,
                                           Contact contact)
      • addRestrictions

        public static void addRestrictions​(Criteria queryObject,
                                           Gene gene,
                                           boolean stricter)
      • addRestrictions

        public static void addRestrictions​(Criteria queryObject,
                                           Taxon taxon)
      • attachCriteria

        public static void attachCriteria​(Criteria queryObject,
                                          BioSequence bioSequence,
                                          String propertyName)
        Restricts the query to the provided BioSequence.
        Parameters:
        bioSequence - The object used to create the criteria
        propertyName - Often this will be 'bioSequence'
        queryObject - query object
      • attachCriteria

        public static void attachCriteria​(Criteria queryObject,
                                          Characteristic ontologyEntry,
                                          String propertyName)
        Restricts the query to the provided OntologyEntry.
        Parameters:
        ontologyEntry - The object used to create the criteria
        propertyName - Often this will be 'ontologyEntry'
        queryObject - query object
      • attachCriteria

        public static void attachCriteria​(Criteria queryObject,
                                          DatabaseEntry databaseEntry,
                                          String propertyName)
        Restricts query to the given DatabaseEntry association
        Parameters:
        databaseEntry - to match
        propertyName - often "accession"
        queryObject - query object
      • attachCriteria

        public static void attachCriteria​(Criteria queryObject,
                                          Gene gene,
                                          String propertyName)
        Restricts the query to the provided Gene.
        Parameters:
        queryObject - query object
        gene - gene
        propertyName - property name
      • attachCriteria

        public static void attachCriteria​(Criteria queryObject,
                                          Taxon taxon,
                                          String propertyName)
        Restricts query to the given Taxon.
        Parameters:
        propertyName - often "taxon"
        queryObject - query object
        taxon - taxon
      • checkKey

        public static void checkKey​(Characteristic ontologyEntry)
      • checkKey

        public static void checkKey​(Contact contact)
      • checkKey

        public static void checkKey​(DatabaseEntry accession)
      • checkKey

        public static void checkKey​(FactorValue factorValue)
      • checkKey

        public static void checkKey​(Gene gene)
      • checkKey

        public static void checkKey​(User user)
      • checkValidKey

        public static void checkValidKey​(ArrayDesign arrayDesign)
      • checkValidKey

        public static void checkValidKey​(BioSequence bioSequence)
      • checkValidKey

        public static void checkValidKey​(Chromosome chromosome)
      • checkValidKey

        public static void checkValidKey​(DatabaseEntry databaseEntry)
      • checkValidKey

        public static void checkValidKey​(ExperimentalFactor experimentalFactor)
      • checkValidKey

        public static void checkValidKey​(Gene gene)
      • checkValidKey

        public static void checkValidKey​(Gene2GOAssociation gene2GOAssociation)
      • checkValidKey

        public static void checkValidKey​(GeneProduct geneProduct)
      • checkValidKey

        public static void checkValidKey​(Taxon taxon)
      • checkValidKey

        public static void checkValidKey​(LocalFile localFile)
      • checkValidKey

        public static void checkValidKey​(Unit unit)
      • createQueryObject

        public static void createQueryObject​(Criteria queryObject,
                                             FactorValue factorValue)
      • createQueryObject

        public static void createQueryObject​(Criteria queryObject,
                                             Gene gene)
      • createQueryObject

        public static void createQueryObject​(Criteria queryObject,
                                             GeneProduct geneProduct)
      • createQueryObject

        public static Criteria createQueryObject​(Session session,
                                                 Unit unit)