List of usage examples for org.apache.commons.lang3 StringUtils isNoneEmpty
public static boolean isNoneEmpty(final CharSequence... css)
Checks if none of the CharSequences are empty ("") or null.
StringUtils.isNoneEmpty(null) = false StringUtils.isNoneEmpty(null, "foo") = false StringUtils.isNoneEmpty("", "bar") = false StringUtils.isNoneEmpty("bob", "") = false StringUtils.isNoneEmpty(" bob ", null) = false StringUtils.isNoneEmpty(" ", "bar") = true StringUtils.isNoneEmpty("foo", "bar") = true
From source file:org.neo4art.importer.wikipedia.domain.WikipediaArtworkPage.java
public WikipediaElement from(WikiArticle article) { String infobox = WikipediaElementTransformer.toWikipediaElement(this, article); if (StringUtils.isNoneEmpty(infobox)) { this.artwork = WikipediaArtworkInfoboxParser.parse(infobox); }//w w w .j a v a 2 s . c om return this; }
From source file:org.neo4art.importer.wikipedia.domain.WikipediaCountryPage.java
public WikipediaElement from(WikiArticle article) { String infobox = WikipediaElementTransformer.toWikipediaElement(this, article); if (StringUtils.isNoneEmpty(infobox)) { this.country = WikipediaCountryInfoboxParser.parse(infobox); }//from w ww. j a v a 2 s .co m return this; }
From source file:org.neo4art.importer.wikipedia.domain.WikipediaMonumentPage.java
public WikipediaElement from(WikiArticle article) { String infobox = WikipediaElementTransformer.toWikipediaElement(this, article); if (StringUtils.isNoneEmpty(infobox)) { this.monument = WikipediaMonumentInfoboxParser.parse(infobox); }/*from ww w. j a v a 2 s . c o m*/ return this; }
From source file:org.neo4art.importer.wikipedia.domain.WikipediaMuseumPage.java
public WikipediaElement from(WikiArticle article) { String infobox = WikipediaElementTransformer.toWikipediaElement(this, article); if (StringUtils.isNoneEmpty(infobox)) { this.museum = WikipediaMuseumInfoboxParser.parse(infobox); }//from w ww . ja va2 s . c o m return this; }
From source file:org.neo4art.importer.wikipedia.domain.WikipediaReligiousBuildingPage.java
public WikipediaElement from(WikiArticle article) { String infobox = WikipediaElementTransformer.toWikipediaElement(this, article); if (StringUtils.isNoneEmpty(infobox)) { this.religiousBuilding = WikipediaReligiousBuildingInfoboxParser.parse(infobox); }//from www .ja v a 2 s . c om return this; }
From source file:org.neo4art.importer.wikipedia.domain.WikipediaSettlementPage.java
public WikipediaElement from(WikiArticle article) { String infobox = WikipediaElementTransformer.toWikipediaElement(this, article); if (StringUtils.isNoneEmpty(infobox)) { this.settlement = WikipediaSettlementInfoboxParser.parse(infobox); }//from w w w . ja v a 2 s .c o m return this; }
From source file:org.opencb.opencga.app.cli.analysis.executors.VariantQueryCommandUtils.java
@Deprecated public static Query oldParseQuery(VariantCommandOptions.VariantQueryCommandOptions queryVariantsOptions, Map<Long, String> studyIds) throws Exception { Query query = new Query(); /*//from w w w .ja v a 2 s .com * Parse Variant parameters */ if (queryVariantsOptions.genericVariantQueryOptions.region != null && !queryVariantsOptions.genericVariantQueryOptions.region.isEmpty()) { query.put(REGION.key(), queryVariantsOptions.genericVariantQueryOptions.region); } else if (queryVariantsOptions.genericVariantQueryOptions.regionFile != null && !queryVariantsOptions.genericVariantQueryOptions.regionFile.isEmpty()) { Path gffPath = Paths.get(queryVariantsOptions.genericVariantQueryOptions.regionFile); FileUtils.checkFile(gffPath); String regionsFromFile = Files.readAllLines(gffPath).stream().map(line -> { String[] array = line.split("\t"); return new String(array[0].replace("chr", "") + ":" + array[3] + "-" + array[4]); }).collect(Collectors.joining(",")); query.put(REGION.key(), regionsFromFile); } addParam(query, ID, queryVariantsOptions.genericVariantQueryOptions.id); addParam(query, GENE, queryVariantsOptions.genericVariantQueryOptions.gene); addParam(query, TYPE, queryVariantsOptions.genericVariantQueryOptions.type); List studies = new LinkedList<>(); if (StringUtils.isNotEmpty(queryVariantsOptions.study)) { query.put(STUDIES.key(), queryVariantsOptions.study); for (String study : queryVariantsOptions.study.split(",|;")) { if (!study.startsWith("!")) { studies.add(study); } } } else { studies = new ArrayList<>(studyIds.keySet()); } // If the studies to be returned is empty then we return the studies being queried if (StringUtils.isNotEmpty(queryVariantsOptions.genericVariantQueryOptions.returnStudy)) { // query.put(RETURNED_STUDIES.key(), Arrays.asList(queryVariantCommandOptions.returnStudy.split(","))); List<String> list = new ArrayList<>(); Collections.addAll(list, queryVariantsOptions.genericVariantQueryOptions.returnStudy.split(",")); query.put(RETURNED_STUDIES.key(), list); } else { if (!studies.isEmpty()) { query.put(RETURNED_STUDIES.key(), studies); } } addParam(query, FILES, queryVariantsOptions.genericVariantQueryOptions.file); addParam(query, RETURNED_FILES, queryVariantsOptions.genericVariantQueryOptions.returnFile); addParam(query, FILTER, queryVariantsOptions.genericVariantQueryOptions.filter); addParam(query, GENOTYPE, queryVariantsOptions.genericVariantQueryOptions.sampleGenotype); addParam(query, SAMPLES, queryVariantsOptions.genericVariantQueryOptions.samples); addParam(query, VariantCatalogQueryUtils.SAMPLE_FILTER, queryVariantsOptions.sampleFilter); if (queryVariantsOptions.genericVariantQueryOptions.returnSample != null) { if (queryVariantsOptions.genericVariantQueryOptions.returnSample.isEmpty() || queryVariantsOptions.genericVariantQueryOptions.returnSample.equals(".")) { query.put(RETURNED_SAMPLES.key(), Collections.emptyList()); } else { query.put(RETURNED_SAMPLES.key(), queryVariantsOptions.genericVariantQueryOptions.returnSample); } } addParam(query, UNKNOWN_GENOTYPE, queryVariantsOptions.genericVariantQueryOptions.unknownGenotype); /** * Annotation parameters */ addParam(query, ANNOT_CONSEQUENCE_TYPE, queryVariantsOptions.genericVariantQueryOptions.consequenceType); addParam(query, ANNOT_BIOTYPE, queryVariantsOptions.genericVariantQueryOptions.geneBiotype); addParam(query, ANNOT_POPULATION_ALTERNATE_FREQUENCY, queryVariantsOptions.genericVariantQueryOptions.populationFreqs); addParam(query, ANNOT_POPULATION_MINOR_ALLELE_FREQUENCY, queryVariantsOptions.genericVariantQueryOptions.populationMaf); addParam(query, ANNOT_CONSERVATION, queryVariantsOptions.genericVariantQueryOptions.conservation); addParam(query, ANNOT_TRANSCRIPTION_FLAGS, queryVariantsOptions.genericVariantQueryOptions.flags); addParam(query, ANNOT_GENE_TRAITS_ID, queryVariantsOptions.genericVariantQueryOptions.geneTraitId); addParam(query, ANNOT_GENE_TRAITS_NAME, queryVariantsOptions.genericVariantQueryOptions.geneTraitName); addParam(query, ANNOT_HPO, queryVariantsOptions.genericVariantQueryOptions.hpo); addParam(query, ANNOT_GO, queryVariantsOptions.genericVariantQueryOptions.go); // addParam(query, ANNOT_EXPRESSION, queryVariantsOptions.genericVariantQueryOptions.expression); addParam(query, ANNOT_PROTEIN_KEYWORDS, queryVariantsOptions.genericVariantQueryOptions.proteinKeywords); addParam(query, ANNOT_DRUG, queryVariantsOptions.genericVariantQueryOptions.drugs); if (StringUtils.isNoneEmpty(queryVariantsOptions.genericVariantQueryOptions.proteinSubstitution)) { query.put(ANNOT_PROTEIN_SUBSTITUTION.key(), queryVariantsOptions.genericVariantQueryOptions.proteinSubstitution); } /* * Stats parameters */ if (queryVariantsOptions.genericVariantQueryOptions.stats != null && !queryVariantsOptions.genericVariantQueryOptions.stats.isEmpty()) { Set<String> acceptedStatKeys = new HashSet<>(Arrays.asList(STATS_MAF.key(), STATS_MGF.key(), MISSING_ALLELES.key(), MISSING_GENOTYPES.key())); for (String stat : queryVariantsOptions.genericVariantQueryOptions.stats.split(",")) { int index = stat.indexOf("<"); index = index >= 0 ? index : stat.indexOf("!"); index = index >= 0 ? index : stat.indexOf("~"); index = index >= 0 ? index : stat.indexOf("<"); index = index >= 0 ? index : stat.indexOf(">"); index = index >= 0 ? index : stat.indexOf("="); if (index < 0) { throw new UnsupportedOperationException("Unknown stat filter operation: " + stat); } String name = stat.substring(0, index); String cond = stat.substring(index); if (acceptedStatKeys.contains(name)) { query.put(name, cond); } else { throw new UnsupportedOperationException("Unknown stat filter name: " + name); } logger.info("Parsed stat filter: {} {}", name, cond); } } addParam(query, STATS_MAF, queryVariantsOptions.genericVariantQueryOptions.maf); addParam(query, STATS_MGF, queryVariantsOptions.genericVariantQueryOptions.mgf); addParam(query, MISSING_ALLELES, queryVariantsOptions.genericVariantQueryOptions.missingAlleleCount); addParam(query, MISSING_GENOTYPES, queryVariantsOptions.genericVariantQueryOptions.missingGenotypeCount); boolean returnVariants = !queryVariantsOptions.numericOptions.count && StringUtils.isEmpty(queryVariantsOptions.genericVariantQueryOptions.groupBy) && StringUtils.isEmpty(queryVariantsOptions.genericVariantQueryOptions.rank); VariantOutputFormat of = VCF; if (StringUtils.isNotEmpty(queryVariantsOptions.commonOptions.outputFormat)) { of = VariantWriterFactory.toOutputFormat(queryVariantsOptions.commonOptions.outputFormat, null); if (of == null) { throw variantFormatNotSupported(queryVariantsOptions.commonOptions.outputFormat); } } if (returnVariants && !of.isMultiStudyOutput()) { int returnedStudiesSize = query.getAsStringList(RETURNED_STUDIES.key()).size(); if (returnedStudiesSize == 0 && studies.size() == 1) { query.put(RETURNED_STUDIES.key(), studies.get(0)); } else if (returnedStudiesSize == 0 && studyIds.size() != 1 //If there are no returned studies, and there are more than one study || returnedStudiesSize > 1) { // Or is required more than one returned study throw new Exception("Only one study is allowed when returning " + of + ", please use '--return-study' to select the returned " + "study. Available studies: " + studyIds); } else { if (returnedStudiesSize == 0) { //If there were no returned studies, set the study existing one query.put(RETURNED_STUDIES.key(), studyIds.get(0)); } } } return query; }
From source file:org.opencb.opencga.app.cli.analysis.VariantQueryCommandUtils.java
public static Query parseQuery(AnalysisCliOptionsParser.QueryVariantCommandOptions queryVariantsOptions, Map<Long, String> studyIds) throws Exception { Query query = new Query(); /*// w w w .j av a 2 s .c om * Parse Variant parameters */ if (queryVariantsOptions.region != null && !queryVariantsOptions.region.isEmpty()) { query.put(REGION.key(), queryVariantsOptions.region); } else if (queryVariantsOptions.regionFile != null && !queryVariantsOptions.regionFile.isEmpty()) { Path gffPath = Paths.get(queryVariantsOptions.regionFile); FileUtils.checkFile(gffPath); String regionsFromFile = Files.readAllLines(gffPath).stream().map(line -> { String[] array = line.split("\t"); return new String(array[0].replace("chr", "") + ":" + array[3] + "-" + array[4]); }).collect(Collectors.joining(",")); query.put(REGION.key(), regionsFromFile); } addParam(query, ID, queryVariantsOptions.id); addParam(query, GENE, queryVariantsOptions.gene); addParam(query, TYPE, queryVariantsOptions.type); List studies = new LinkedList<>(); if (StringUtils.isNotEmpty(queryVariantsOptions.study)) { query.put(STUDIES.key(), queryVariantsOptions.study); for (String study : queryVariantsOptions.study.split(",|;")) { if (!study.startsWith("!")) { studies.add(study); } } } else { studies = new ArrayList<>(studyIds.keySet()); } // If the studies to be returned is empty then we return the studies being queried if (StringUtils.isNotEmpty(queryVariantsOptions.returnStudy)) { // query.put(RETURNED_STUDIES.key(), Arrays.asList(queryVariantsOptions.returnStudy.split(","))); List<String> list = new ArrayList<>(); Collections.addAll(list, queryVariantsOptions.returnStudy.split(",")); query.put(RETURNED_STUDIES.key(), list); } else { if (!studies.isEmpty()) { query.put(RETURNED_STUDIES.key(), studies); } } addParam(query, FILES, queryVariantsOptions.file); addParam(query, GENOTYPE, queryVariantsOptions.sampleGenotype); if (queryVariantsOptions.returnSample != null) { if (queryVariantsOptions.returnSample.isEmpty() || queryVariantsOptions.returnSample.equals(".")) { query.put(RETURNED_SAMPLES.key(), Collections.emptyList()); } else { query.put(RETURNED_SAMPLES.key(), queryVariantsOptions.returnSample); } } addParam(query, UNKNOWN_GENOTYPE, queryVariantsOptions.unknownGenotype); /** * Annotation parameters */ addParam(query, ANNOT_CONSEQUENCE_TYPE, queryVariantsOptions.consequenceType); addParam(query, ANNOT_BIOTYPE, queryVariantsOptions.biotype); addParam(query, ANNOT_POPULATION_ALTERNATE_FREQUENCY, queryVariantsOptions.populationFreqs); addParam(query, ANNOT_POPULATION_MINOR_ALLELE_FREQUENCY, queryVariantsOptions.populationMaf); addParam(query, ANNOT_CONSERVATION, queryVariantsOptions.conservation); addParam(query, ANNOT_TRANSCRIPTION_FLAGS, queryVariantsOptions.flags); addParam(query, ANNOT_GENE_TRAITS_ID, queryVariantsOptions.geneTraitId); addParam(query, ANNOT_GENE_TRAITS_NAME, queryVariantsOptions.geneTraitName); addParam(query, ANNOT_HPO, queryVariantsOptions.hpo); addParam(query, ANNOT_GO, queryVariantsOptions.go); addParam(query, ANNOT_EXPRESSION, queryVariantsOptions.expression); addParam(query, ANNOT_PROTEIN_KEYWORDS, queryVariantsOptions.proteinKeywords); addParam(query, ANNOT_DRUG, queryVariantsOptions.drugs); if (StringUtils.isNoneEmpty(queryVariantsOptions.proteinSubstitution)) { query.put(ANNOT_PROTEIN_SUBSTITUTION.key(), queryVariantsOptions.proteinSubstitution); } /* * Stats parameters */ if (queryVariantsOptions.stats != null && !queryVariantsOptions.stats.isEmpty()) { Set<String> acceptedStatKeys = new HashSet<>(Arrays.asList(STATS_MAF.key(), STATS_MGF.key(), MISSING_ALLELES.key(), MISSING_GENOTYPES.key())); for (String stat : queryVariantsOptions.stats.split(",")) { int index = stat.indexOf("<"); index = index >= 0 ? index : stat.indexOf("!"); index = index >= 0 ? index : stat.indexOf("~"); index = index >= 0 ? index : stat.indexOf("<"); index = index >= 0 ? index : stat.indexOf(">"); index = index >= 0 ? index : stat.indexOf("="); if (index < 0) { throw new UnsupportedOperationException("Unknown stat filter operation: " + stat); } String name = stat.substring(0, index); String cond = stat.substring(index); if (acceptedStatKeys.contains(name)) { query.put(name, cond); } else { throw new UnsupportedOperationException("Unknown stat filter name: " + name); } logger.info("Parsed stat filter: {} {}", name, cond); } } addParam(query, STATS_MAF, queryVariantsOptions.maf); addParam(query, STATS_MGF, queryVariantsOptions.mgf); addParam(query, MISSING_ALLELES, queryVariantsOptions.missingAlleleCount); addParam(query, MISSING_GENOTYPES, queryVariantsOptions.missingGenotypeCount); boolean returnVariants = !queryVariantsOptions.count && StringUtils.isEmpty(queryVariantsOptions.groupBy) && StringUtils.isEmpty(queryVariantsOptions.rank); VariantOutputFormat of = VCF; if (StringUtils.isNotEmpty(queryVariantsOptions.outputFormat)) { of = VariantOutputFormat.safeValueOf(queryVariantsOptions.outputFormat); if (of == null) { throw variantFormatNotSupported(queryVariantsOptions.outputFormat); } } if (returnVariants && !of.isMultiStudyOutput()) { int returnedStudiesSize = query.getAsStringList(RETURNED_STUDIES.key()).size(); if (returnedStudiesSize == 0 && studies.size() == 1) { query.put(RETURNED_STUDIES.key(), studies.get(0)); } else if (returnedStudiesSize == 0 && studyIds.size() != 1 //If there are no returned studies, and there are more than one study || returnedStudiesSize > 1) { // Or is required more than one returned study throw new Exception("Only one study is allowed when returning " + of + ", please use '--return-study' to select the returned " + "study. Available studies: " + studyIds); } else { if (returnedStudiesSize == 0) { //If there were no returned studies, set the study existing one query.put(RETURNED_STUDIES.key(), studyIds.get(0)); } } } return query; }
From source file:org.opencb.opencga.app.cli.main.executors.analysis.VariantCommandExecutor.java
private QueryResponse query() throws CatalogException, IOException, InterruptedException { logger.debug("Listing variants of a study."); VariantCommandOptions.VariantQueryCommandOptions queryCommandOptions = variantCommandOptions.queryVariantCommandOptions; String study = resolveStudy(queryCommandOptions.study); ObjectMap params = new ObjectMap(); params.putIfNotNull(VariantDBAdaptor.VariantQueryParams.ID.key(), queryCommandOptions.genericVariantQueryOptions.id); params.putIfNotEmpty(VariantDBAdaptor.VariantQueryParams.REGION.key(), queryCommandOptions.genericVariantQueryOptions.region); // params.putIfNotEmpty(VariantDBAdaptor.VariantQueryParams.CHROMOSOME.key(), // queryCommandOptions.queryVariantsOptions.chromosome); params.putIfNotEmpty(VariantDBAdaptor.VariantQueryParams.GENE.key(), queryCommandOptions.genericVariantQueryOptions.gene); params.putIfNotNull(VariantDBAdaptor.VariantQueryParams.TYPE.key(), queryCommandOptions.genericVariantQueryOptions.type); // params.putIfNotEmpty(VariantDBAdaptor.VariantQueryParams.REFERENCE.key(), queryCommandOptions.queryVariantsOptions.reference); // params.putIfNotEmpty(VariantDBAdaptor.VariantQueryParams.ALTERNATE.key(), queryCommandOptions.queryVariantsOptions.alternate); params.putIfNotEmpty(VariantDBAdaptor.VariantQueryParams.RETURNED_STUDIES.key(), queryCommandOptions.genericVariantQueryOptions.returnStudy); params.putIfNotEmpty(VariantDBAdaptor.VariantQueryParams.RETURNED_SAMPLES.key(), queryCommandOptions.genericVariantQueryOptions.returnSample); // params.putIfNotEmpty(VariantDBAdaptor.VariantQueryParams.RETURNED_FILES.key(), queryCommandOptions.queryVariantsOptions.returnFile); params.putIfNotEmpty(VariantDBAdaptor.VariantQueryParams.STUDIES.key(), study); params.putIfNotEmpty(VariantDBAdaptor.VariantQueryParams.FILES.key(), queryCommandOptions.genericVariantQueryOptions.file); params.putIfNotEmpty(VariantDBAdaptor.VariantQueryParams.RETURNED_FILES.key(), queryCommandOptions.genericVariantQueryOptions.returnFile); params.putIfNotEmpty(VariantDBAdaptor.VariantQueryParams.FILTER.key(), queryCommandOptions.genericVariantQueryOptions.filter); params.putIfNotEmpty(VariantDBAdaptor.VariantQueryParams.STATS_MAF.key(), queryCommandOptions.genericVariantQueryOptions.maf); params.putIfNotEmpty(VariantDBAdaptor.VariantQueryParams.STATS_MGF.key(), queryCommandOptions.genericVariantQueryOptions.mgf); params.putIfNotEmpty(VariantDBAdaptor.VariantQueryParams.MISSING_ALLELES.key(), queryCommandOptions.genericVariantQueryOptions.missingAlleleCount); params.putIfNotEmpty(VariantDBAdaptor.VariantQueryParams.MISSING_GENOTYPES.key(), queryCommandOptions.genericVariantQueryOptions.missingGenotypeCount); // queryOptions.put(VariantDBAdaptor.VariantQueryParams.ANNOTATION_EXISTS.key(), // queryCommandOptions.annotationExists); params.putIfNotEmpty(VariantDBAdaptor.VariantQueryParams.GENOTYPE.key(), queryCommandOptions.genericVariantQueryOptions.sampleGenotype); params.putIfNotEmpty(VariantDBAdaptor.VariantQueryParams.SAMPLES.key(), queryCommandOptions.genericVariantQueryOptions.samples); params.putIfNotEmpty(VariantDBAdaptor.VariantQueryParams.ANNOT_CONSEQUENCE_TYPE.key(), queryCommandOptions.genericVariantQueryOptions.consequenceType); params.putIfNotEmpty(VariantDBAdaptor.VariantQueryParams.ANNOT_XREF.key(), queryCommandOptions.genericVariantQueryOptions.annotXref); params.putIfNotEmpty(VariantDBAdaptor.VariantQueryParams.ANNOT_BIOTYPE.key(), queryCommandOptions.genericVariantQueryOptions.geneBiotype); params.putIfNotEmpty(VariantDBAdaptor.VariantQueryParams.ANNOT_PROTEIN_SUBSTITUTION.key(), queryCommandOptions.genericVariantQueryOptions.proteinSubstitution); // params.putIfNotEmpty(VariantDBAdaptor.VariantQueryParams.ANNOT_POLYPHEN.key(), queryCommandOptions.queryVariantsOptions.polyphen); // params.putIfNotEmpty(VariantDBAdaptor.VariantQueryParams.ANNOT_SIFT.key(), queryCommandOptions.queryVariantsOptions.sift); params.putIfNotEmpty(VariantDBAdaptor.VariantQueryParams.ANNOT_CONSERVATION.key(), queryCommandOptions.genericVariantQueryOptions.conservation); params.putIfNotEmpty(VariantDBAdaptor.VariantQueryParams.ANNOT_POPULATION_MINOR_ALLELE_FREQUENCY.key(), queryCommandOptions.genericVariantQueryOptions.populationMaf); params.putIfNotEmpty(VariantDBAdaptor.VariantQueryParams.ANNOT_POPULATION_ALTERNATE_FREQUENCY.key(), queryCommandOptions.genericVariantQueryOptions.populationFreqs); // params.putIfNotEmpty(VariantDBAdaptor.VariantQueryParams.ANNOT_POPULATION_REFERENCE_FREQUENCY.key(), // queryCommandOptions.reference_frequency); params.putIfNotEmpty(VariantDBAdaptor.VariantQueryParams.ANNOT_TRANSCRIPTION_FLAGS.key(), queryCommandOptions.genericVariantQueryOptions.flags); params.putIfNotEmpty(VariantDBAdaptor.VariantQueryParams.ANNOT_GENE_TRAITS_ID.key(), queryCommandOptions.genericVariantQueryOptions.geneTraitId); params.putIfNotEmpty(VariantDBAdaptor.VariantQueryParams.ANNOT_GENE_TRAITS_NAME.key(), queryCommandOptions.genericVariantQueryOptions.geneTraitName); params.putIfNotEmpty(VariantDBAdaptor.VariantQueryParams.ANNOT_HPO.key(), queryCommandOptions.genericVariantQueryOptions.hpo); params.putIfNotEmpty(VariantDBAdaptor.VariantQueryParams.ANNOT_GO.key(), queryCommandOptions.genericVariantQueryOptions.go); // params.putIfNotEmpty(VariantDBAdaptor.VariantQueryParams.ANNOT_EXPRESSION.key(), queryCommandOptions.genericVariantQueryOptions.expression); params.putIfNotEmpty(VariantDBAdaptor.VariantQueryParams.ANNOT_PROTEIN_KEYWORDS.key(), queryCommandOptions.genericVariantQueryOptions.proteinKeywords); params.putIfNotEmpty(VariantDBAdaptor.VariantQueryParams.ANNOT_DRUG.key(), queryCommandOptions.genericVariantQueryOptions.drugs); params.putIfNotEmpty(VariantDBAdaptor.VariantQueryParams.ANNOT_FUNCTIONAL_SCORE.key(), queryCommandOptions.genericVariantQueryOptions.functionalScore); params.putIfNotEmpty(VariantDBAdaptor.VariantQueryParams.UNKNOWN_GENOTYPE.key(), queryCommandOptions.genericVariantQueryOptions.unknownGenotype); // params.put(QueryOptions.SORT, queryCommandOptions.sort); // queryOptions.putIfNotEmpty("merge", queryCommandOptions.merge); params.putIfNotEmpty(VariantCatalogQueryUtils.SAMPLE_FILTER.key(), queryCommandOptions.sampleFilter); QueryOptions options = new QueryOptions(); options.putIfNotEmpty(QueryOptions.INCLUDE, queryCommandOptions.dataModelOptions.include); options.putIfNotEmpty(QueryOptions.EXCLUDE, queryCommandOptions.dataModelOptions.exclude); options.put(QueryOptions.LIMIT, queryCommandOptions.numericOptions.limit); options.put(QueryOptions.SKIP, queryCommandOptions.numericOptions.skip); options.put(QueryOptions.COUNT, queryCommandOptions.numericOptions.count); options.putAll(variantCommandOptions.commonCommandOptions.params); params.put("samplesMetadata", queryCommandOptions.genericVariantQueryOptions.samplesMetadata); params.putIfNotEmpty("groupBy", queryCommandOptions.genericVariantQueryOptions.groupBy); params.put("histogram", queryCommandOptions.genericVariantQueryOptions.histogram); params.put("interval", queryCommandOptions.genericVariantQueryOptions.interval); boolean grpc = usingGrpcMode(queryCommandOptions.mode); if (!grpc) {// w w w .j a v a 2 s. com if (queryCommandOptions.numericOptions.count) { return openCGAClient.getVariantClient().count(params, options); } else if (queryCommandOptions.genericVariantQueryOptions.samplesMetadata || StringUtils.isNoneEmpty(queryCommandOptions.genericVariantQueryOptions.groupBy) || queryCommandOptions.genericVariantQueryOptions.histogram) { return openCGAClient.getVariantClient().genericQuery(params, options); } else { options.put(QueryOptions.SKIP_COUNT, true); params.put(VariantDBAdaptor.VariantQueryParams.SAMPLES_METADATA.key(), true); if (queryCommandOptions.commonOptions.outputFormat.equalsIgnoreCase("vcf") || queryCommandOptions.commonOptions.outputFormat.equalsIgnoreCase("text")) { VariantQueryResult<Variant> variantQueryResult = openCGAClient.getVariantClient().query2(params, options); List<String> annotations = queryCommandOptions.genericVariantQueryOptions.annotations == null ? Collections.singletonList("gene") : Arrays.asList(queryCommandOptions.genericVariantQueryOptions.annotations.split(",")); printVcf(variantQueryResult, queryCommandOptions.study, annotations, System.out); return null; } else { return openCGAClient.getVariantClient().query(params, options); } } } else { ManagedChannel channel = getManagedChannel(); // We use a blocking stub to execute the query to gRPC VariantServiceGrpc.VariantServiceBlockingStub variantServiceBlockingStub = VariantServiceGrpc .newBlockingStub(channel); params.putAll(options); Query query = VariantStorageManager.getVariantQuery(params); Map<String, String> queryMap = new HashMap<>(); Map<String, String> queryOptionsMap = new HashMap<>(); for (String key : params.keySet()) { if (query.containsKey(key)) { queryMap.put(key, query.getString(key)); } else { queryOptionsMap.put(key, params.getString(key)); } } // We create the OpenCGA gRPC request object with the query, queryOptions and sessionId GenericServiceModel.Request request = GenericServiceModel.Request.newBuilder().putAllQuery(queryMap) .putAllOptions(queryOptionsMap).setSessionId(sessionId == null ? "" : sessionId).build(); QueryResponse queryResponse; if (queryCommandOptions.numericOptions.count) { ServiceTypesModel.LongResponse countResponse = variantServiceBlockingStub.count(request); ServiceTypesModel.Response response = countResponse.getResponse(); queryResponse = new QueryResponse<>("", 0, response.getWarning(), response.getError(), new QueryOptions(params), Collections.singletonList(new QueryResult<>(response.getId(), 0, 1, 1, "", "", Collections.singletonList(countResponse.getValue())))); return queryResponse; } else if (queryCommandOptions.genericVariantQueryOptions.samplesMetadata || StringUtils.isNoneEmpty(queryCommandOptions.genericVariantQueryOptions.groupBy) || queryCommandOptions.genericVariantQueryOptions.histogram) { queryResponse = openCGAClient.getVariantClient().genericQuery(params, options); } else { Iterator<VariantProto.Variant> variantIterator = variantServiceBlockingStub.get(request); JsonFormat.Printer printer = JsonFormat.printer(); try (PrintStream printStream = new PrintStream(System.out)) { while (variantIterator.hasNext()) { VariantProto.Variant next = variantIterator.next(); printStream.println(printer.print(next)); } } queryResponse = null; } channel.shutdown().awaitTermination(2, TimeUnit.SECONDS); return queryResponse; } }
From source file:org.opencb.opencga.app.cli.main.executors.catalog.StudyCommandExecutor.java
@Deprecated private QueryResponse variants() throws CatalogException, IOException { logger.debug("Listing variants of a study."); QueryOptions queryOptions = new QueryOptions(); queryOptions.putAll(studiesCommandOptions.commonCommandOptions.params); queryOptions.putIfNotEmpty(CatalogVariantDBAdaptor.VariantQueryParams.ID.key(), studiesCommandOptions.variantsCommandOptions.ids); queryOptions.putIfNotEmpty(CatalogVariantDBAdaptor.VariantQueryParams.REGION.key(), studiesCommandOptions.variantsCommandOptions.region); queryOptions.putIfNotEmpty(CatalogVariantDBAdaptor.VariantQueryParams.CHROMOSOME.key(), studiesCommandOptions.variantsCommandOptions.chromosome); queryOptions.putIfNotEmpty(CatalogVariantDBAdaptor.VariantQueryParams.GENE.key(), studiesCommandOptions.variantsCommandOptions.gene); queryOptions.putIfNotNull(CatalogVariantDBAdaptor.VariantQueryParams.TYPE.key(), studiesCommandOptions.variantsCommandOptions.type); queryOptions.putIfNotEmpty(CatalogVariantDBAdaptor.VariantQueryParams.REFERENCE.key(), studiesCommandOptions.variantsCommandOptions.reference); queryOptions.putIfNotEmpty(CatalogVariantDBAdaptor.VariantQueryParams.ALTERNATE.key(), studiesCommandOptions.variantsCommandOptions.alternate); queryOptions.putIfNotEmpty(CatalogVariantDBAdaptor.VariantQueryParams.RETURNED_STUDIES.key(), studiesCommandOptions.variantsCommandOptions.returnedStudies); queryOptions.putIfNotEmpty(CatalogVariantDBAdaptor.VariantQueryParams.RETURNED_SAMPLES.key(), studiesCommandOptions.variantsCommandOptions.returnedSamples); queryOptions.putIfNotEmpty(CatalogVariantDBAdaptor.VariantQueryParams.RETURNED_FILES.key(), studiesCommandOptions.variantsCommandOptions.returnedFiles); queryOptions.putIfNotEmpty(CatalogVariantDBAdaptor.VariantQueryParams.FILES.key(), studiesCommandOptions.variantsCommandOptions.files); queryOptions.putIfNotEmpty(CatalogVariantDBAdaptor.VariantQueryParams.STATS_MAF.key(), studiesCommandOptions.variantsCommandOptions.maf); queryOptions.putIfNotEmpty(CatalogVariantDBAdaptor.VariantQueryParams.STATS_MGF.key(), studiesCommandOptions.variantsCommandOptions.mgf); queryOptions.putIfNotEmpty(CatalogVariantDBAdaptor.VariantQueryParams.MISSING_ALLELES.key(), studiesCommandOptions.variantsCommandOptions.missingAlleles); queryOptions.putIfNotEmpty(CatalogVariantDBAdaptor.VariantQueryParams.MISSING_GENOTYPES.key(), studiesCommandOptions.variantsCommandOptions.missingGenotypes); // queryOptions.put(CatalogVariantDBAdaptor.VariantQueryParams.ANNOTATION_EXISTS.key(), // studiesCommandOptions.variantsCommandOptions.annotationExists); queryOptions.putIfNotEmpty(CatalogVariantDBAdaptor.VariantQueryParams.GENOTYPE.key(), studiesCommandOptions.variantsCommandOptions.genotype); queryOptions.putIfNotEmpty(CatalogVariantDBAdaptor.VariantQueryParams.ANNOT_CONSEQUENCE_TYPE.key(), studiesCommandOptions.variantsCommandOptions.annot_ct); queryOptions.putIfNotEmpty(CatalogVariantDBAdaptor.VariantQueryParams.ANNOT_XREF.key(), studiesCommandOptions.variantsCommandOptions.annot_xref); queryOptions.putIfNotEmpty(CatalogVariantDBAdaptor.VariantQueryParams.ANNOT_BIOTYPE.key(), studiesCommandOptions.variantsCommandOptions.annot_biotype); queryOptions.putIfNotEmpty(CatalogVariantDBAdaptor.VariantQueryParams.ANNOT_POLYPHEN.key(), studiesCommandOptions.variantsCommandOptions.polyphen); queryOptions.putIfNotEmpty(CatalogVariantDBAdaptor.VariantQueryParams.ANNOT_SIFT.key(), studiesCommandOptions.variantsCommandOptions.sift); queryOptions.putIfNotEmpty(CatalogVariantDBAdaptor.VariantQueryParams.ANNOT_CONSERVATION.key(), studiesCommandOptions.variantsCommandOptions.conservation); queryOptions.putIfNotEmpty(//from ww w . j a v a2s . c om CatalogVariantDBAdaptor.VariantQueryParams.ANNOT_POPULATION_MINOR_ALLELE_FREQUENCY.key(), studiesCommandOptions.variantsCommandOptions.annotPopulationMaf); queryOptions.putIfNotEmpty( CatalogVariantDBAdaptor.VariantQueryParams.ANNOT_POPULATION_ALTERNATE_FREQUENCY.key(), studiesCommandOptions.variantsCommandOptions.alternate_frequency); queryOptions.putIfNotEmpty( CatalogVariantDBAdaptor.VariantQueryParams.ANNOT_POPULATION_REFERENCE_FREQUENCY.key(), studiesCommandOptions.variantsCommandOptions.reference_frequency); queryOptions.putIfNotEmpty(CatalogVariantDBAdaptor.VariantQueryParams.ANNOT_TRANSCRIPTION_FLAGS.key(), studiesCommandOptions.variantsCommandOptions.transcriptionFlags); queryOptions.putIfNotEmpty(CatalogVariantDBAdaptor.VariantQueryParams.ANNOT_GENE_TRAITS_ID.key(), studiesCommandOptions.variantsCommandOptions.geneTraitId); queryOptions.putIfNotEmpty(CatalogVariantDBAdaptor.VariantQueryParams.ANNOT_GENE_TRAITS_NAME.key(), studiesCommandOptions.variantsCommandOptions.geneTraitName); queryOptions.putIfNotEmpty(CatalogVariantDBAdaptor.VariantQueryParams.ANNOT_HPO.key(), studiesCommandOptions.variantsCommandOptions.hpo); queryOptions.putIfNotEmpty(CatalogVariantDBAdaptor.VariantQueryParams.ANNOT_GO.key(), studiesCommandOptions.variantsCommandOptions.go); queryOptions.putIfNotEmpty(CatalogVariantDBAdaptor.VariantQueryParams.ANNOT_EXPRESSION.key(), studiesCommandOptions.variantsCommandOptions.expression); queryOptions.putIfNotEmpty(CatalogVariantDBAdaptor.VariantQueryParams.ANNOT_PROTEIN_KEYWORDS.key(), studiesCommandOptions.variantsCommandOptions.proteinKeyword); queryOptions.putIfNotEmpty(CatalogVariantDBAdaptor.VariantQueryParams.ANNOT_DRUG.key(), studiesCommandOptions.variantsCommandOptions.drug); queryOptions.putIfNotEmpty(CatalogVariantDBAdaptor.VariantQueryParams.ANNOT_FUNCTIONAL_SCORE.key(), studiesCommandOptions.variantsCommandOptions.functionalScore); queryOptions.putIfNotEmpty(CatalogVariantDBAdaptor.VariantQueryParams.UNKNOWN_GENOTYPE.key(), studiesCommandOptions.variantsCommandOptions.unknownGenotype); queryOptions.put(QueryOptions.SORT, studiesCommandOptions.variantsCommandOptions.sort); // queryOptions.putIfNotEmpty("merge", studiesCommandOptions.variantsCommandOptions.merge); queryOptions.putIfNotEmpty(QueryOptions.INCLUDE, studiesCommandOptions.variantsCommandOptions.include); queryOptions.putIfNotEmpty(QueryOptions.EXCLUDE, studiesCommandOptions.variantsCommandOptions.exclude); queryOptions.putIfNotEmpty(QueryOptions.LIMIT, studiesCommandOptions.variantsCommandOptions.limit); queryOptions.putIfNotEmpty(QueryOptions.SKIP, studiesCommandOptions.variantsCommandOptions.skip); queryOptions.put("samplesMetadata", studiesCommandOptions.variantsCommandOptions.samplesMetadata); queryOptions.putIfNotEmpty("groupBy", studiesCommandOptions.variantsCommandOptions.groupBy); queryOptions.put("histogram", studiesCommandOptions.variantsCommandOptions.histogram); queryOptions.putIfNotEmpty("interval", studiesCommandOptions.variantsCommandOptions.interval); queryOptions.put("count", studiesCommandOptions.variantsCommandOptions.count); if (studiesCommandOptions.variantsCommandOptions.count) { return openCGAClient.getStudyClient().countVariants(studiesCommandOptions.variantsCommandOptions.study, queryOptions); } else if (studiesCommandOptions.variantsCommandOptions.samplesMetadata || StringUtils.isNoneEmpty(studiesCommandOptions.variantsCommandOptions.groupBy) || studiesCommandOptions.variantsCommandOptions.histogram) { return openCGAClient.getStudyClient() .getVariantsGeneric(studiesCommandOptions.variantsCommandOptions.study, queryOptions); } else { return openCGAClient.getStudyClient().getVariants(studiesCommandOptions.variantsCommandOptions.study, queryOptions); } }