Example usage for com.google.common.collect ImmutableSetMultimap.Builder ImmutableSetMultimap.Builder

List of usage examples for com.google.common.collect ImmutableSetMultimap.Builder ImmutableSetMultimap.Builder

Introduction

In this page you can find the example usage for com.google.common.collect ImmutableSetMultimap.Builder ImmutableSetMultimap.Builder.

Prototype

ImmutableSetMultimap.Builder

Source Link

Usage

From source file:uk.ac.ebi.atlas.bioentity.GeneSetPageController.java

@Override
protected void initBioentityPropertyService(String identifier) {
    String species = speciesResult.isSingleSpecies() ? speciesResult.firstSpecies() : "";

    SortedSetMultimap<String, String> propertyValuesByType = TreeMultimap.create();

    ImmutableSetMultimap.Builder<Integer, GoPoTerm> builder = new ImmutableSetMultimap.Builder<>();
    ImmutableSetMultimap<Integer, GoPoTerm> goTermsByDepth = builder.build();
    ImmutableSetMultimap<Integer, GoPoTerm> poTermsByDepth = builder.build();

    identifier = identifier.toUpperCase();

    if (GeneSetUtil.isReactome(identifier)) {
        propertyValuesByType.put("reactome", identifier);
        propertyValuesByType.put(BioEntityPropertyService.PROPERTY_TYPE_DESCRIPTION,
                reactomeClient.fetchPathwayNameFailSafe(identifier));
    } else if (GeneSetUtil.isGeneOntology(identifier)) {
        String termName = goTermTrader.getTermName(identifier);
        propertyValuesByType.put("go", identifier);
        propertyValuesByType.put(BioEntityPropertyService.PROPERTY_TYPE_DESCRIPTION, termName);
        goTermsByDepth = mapGoTermsByDepth(propertyValuesByType.get("go"));
    } else if (GeneSetUtil.isPlantOntology(identifier)) {
        String termName = poTermTrader.getTermName(identifier);
        propertyValuesByType.put("po", identifier);
        propertyValuesByType.put(BioEntityPropertyService.PROPERTY_TYPE_DESCRIPTION, termName);
        poTermsByDepth = mapPoTermsByDepth(propertyValuesByType.get("po"));
    } else if (GeneSetUtil.isInterPro(identifier)) {
        String term = interProTermTrader.getTerm(identifier);
        propertyValuesByType.put("interpro", identifier);
        propertyValuesByType.put(BioEntityPropertyService.PROPERTY_TYPE_DESCRIPTION, term);
    } else if (GeneSetUtil.isPlantReactome(identifier)) {
        propertyValuesByType.put("plant_reactome", identifier);
    }/*from w  ww .ja va 2 s.c o m*/

    SortedSet<String> names = Sets.newTreeSet();
    names.add(identifier);

    bioEntityPropertyService.init(species, propertyValuesByType, goTermsByDepth, poTermsByDepth, names,
            identifier);
}

From source file:uk.ac.ebi.atlas.bioentity.BioEntityPageController.java

protected ImmutableSetMultimap<Integer, GoPoTerm> mapGoTermsByDepth(Set<String> accessions) {
    ImmutableSetMultimap.Builder<Integer, GoPoTerm> builder = new ImmutableSetMultimap.Builder<>();

    for (String accession : accessions) {
        builder.put(goTermTrader.getDepth(accession), goTermTrader.getTerm(accession));
    }//from w w w.j av a 2 s  .c  om

    return builder.build();
}

From source file:uk.ac.ebi.atlas.bioentity.BioEntityPageController.java

protected ImmutableSetMultimap<Integer, GoPoTerm> mapPoTermsByDepth(Set<String> accessions) {
    ImmutableSetMultimap.Builder<Integer, GoPoTerm> builder = new ImmutableSetMultimap.Builder<>();

    for (String accession : accessions) {
        builder.put(poTermTrader.getDepth(accession), poTermTrader.getTerm(accession));
    }/*from   w ww  .j a va 2 s  . c  o m*/

    return builder.build();
}