Class GenePickerController


  • @Controller
    public class GenePickerController
    extends Object
    For 'live searches' from the web interface.
    Author:
    luke
    • Constructor Detail

      • GenePickerController

        public GenePickerController()
    • Method Detail

      • getGenes

        public Collection<GeneValueObject> getGenes​(Collection<Long> geneIds)
        AJAX
        Parameters:
        geneIds - gene ids
        Returns:
        collection of gene entity objects; duplicates will be resolved.
      • getGenesByGOId

        public Collection<GeneValueObject> getGenesByGOId​(String goId,
                                                          Long taxonId)
        for AJAX get all genes in the given taxon that are annotated with the given go id, including its child terms in the hierarchy
        Parameters:
        goId - GO id that must be in the format "GO_#######"
        taxonId - must not be null and must correspond to a taxon
        Returns:
        Collection empty if goId was blank or taxonId didn't correspond to a taxon
      • getGeneSetByGOId

        public GOGroupValueObject getGeneSetByGOId​(String goId,
                                                   Long taxonId)
        for AJAX get a gene set with all genes in the given taxon that are annotated with the given go id, including its child terms in the hierarchy
        Parameters:
        goId - GO id that must be in the format "GO_#######"
        taxonId - must not be null and must correspond to a taxon
        Returns:
        GOGroupValueObject empty if goId was blank or taxonId didn't correspond to a taxon
      • getTaxaWithArrays

        public Collection<TaxonValueObject> getTaxaWithArrays()
        AJAX
        Returns:
        List of taxa with array designs in gemma
      • getTaxaWithDatasets

        public Collection<TaxonValueObject> getTaxaWithDatasets()
        AJAX
        Returns:
        collection of taxa that have expression experiments available.
      • getTaxaWithEvidence

        public Collection<TaxonValueObject> getTaxaWithEvidence()
        AJAX
        Returns:
        Taxon that are on Phenocarta evidence
      • getTaxaWithGenes

        public Collection<TaxonValueObject> getTaxaWithGenes()
        AJAX
        Returns:
        Taxon that have genes loaded into Gemma and that should be used
      • searchGenes

        public Collection<GeneValueObject> searchGenes​(String query,
                                                       Long taxonId)
        AJAX (used by GeneCombo.js)
        Parameters:
        query - query
        taxonId - taxon id
        Returns:
        Collection of Gene entity objects
      • searchGenesAndGeneGroups

        public Collection<SearchResultDisplayObject> searchGenesAndGeneGroups​(String query,
                                                                              Long taxonId)
        AJAX (used by GeneAndGeneGroupCombo.js)
        Parameters:
        query - query
        taxonId - can be null
        Returns:
        Collection of SearchResultDisplayObject
      • searchGenesWithNCBIId

        public Collection<GeneValueObject> searchGenesWithNCBIId​(String query,
                                                                 Long taxonId)
        AJAX (used by Phenocarta)
        Parameters:
        query - query
        taxonId - taxon id
        Returns:
        Collection of Gene entity objects
      • searchMultipleGenes

        public Collection<GeneValueObject> searchMultipleGenes​(String query,
                                                               Long taxonId)
                                                        throws IOException
        AJAX Search for multiple genes at once. This attempts to limit the number of genes per query to only one.
        Parameters:
        query - A list of gene names (symbols), one per line.
        taxonId - taxon id
        Returns:
        collection of gene value objects
        Throws:
        IOException
      • searchMultipleGenesGetMap

        public Map<String,​GeneValueObject> searchMultipleGenesGetMap​(Collection<String> query,
                                                                           Long taxonId)
        AJAX Search for multiple genes at once. This attempts to limit the number of genes per query to only one.
        Parameters:
        query - A list of gene names (symbols), one per line.
        taxonId - taxon id
        Returns:
        map with each gene-query as a key and a collection of the search-results as the value