@Override public DBIterator<Individual> iterator(String studyStr, Query query, QueryOptions options, String sessionId) throws CatalogException { ParamUtils.checkObj(sessionId, "sessionId"); query = ParamUtils.defaultObject(query, Query::new); options = ParamUtils.defaultObject(options, QueryOptions::new); String userId = userManager.getUserId(sessionId); Study study = catalogManager.getStudyManager().resolveId(studyStr, userId); query.append(IndividualDBAdaptor.QueryParams.STUDY_UID.key(), study.getUid()); return individualDBAdaptor.iterator(query, options, userId); }
iterator = individualDBAdaptor.iterator(finalQuery, QueryOptions.empty(), userId);
private Boolean indexIndividual(CatalogSolrManager catalogSolrManager, Study study) throws CatalogException, IOException { Query query = new Query() .append(IndividualDBAdaptor.QueryParams.STUDY_UID.key(), study.getUid()) .append(IndividualDBAdaptor.QueryParams.STATUS_NAME.key(), Constants.ALL_STATUS); QueryOptions individualQueryOptions = new QueryOptions() .append(QueryOptions.INCLUDE, Arrays.asList(IndividualDBAdaptor.QueryParams.ID.key(), IndividualDBAdaptor.QueryParams.FATHER_UID.key(), IndividualDBAdaptor.QueryParams.MOTHER_UID.key(), IndividualDBAdaptor.QueryParams.MULTIPLES.key(), IndividualDBAdaptor.QueryParams.SEX.key(), IndividualDBAdaptor.QueryParams.ETHNICITY.key(), IndividualDBAdaptor.QueryParams.POPULATION_NAME.key(), IndividualDBAdaptor.QueryParams.RELEASE.key(), IndividualDBAdaptor.QueryParams.CREATION_DATE.key(), IndividualDBAdaptor.QueryParams.VERSION.key(), IndividualDBAdaptor.QueryParams.STATUS.key(), IndividualDBAdaptor.QueryParams.LIFE_STATUS.key(), IndividualDBAdaptor.QueryParams.AFFECTATION_STATUS.key(), IndividualDBAdaptor.QueryParams.PHENOTYPES.key(), IndividualDBAdaptor.QueryParams.SAMPLE_UIDS.key(), IndividualDBAdaptor.QueryParams.PARENTAL_CONSANGUINITY.key(), IndividualDBAdaptor.QueryParams.KARYOTYPIC_SEX.key(), IndividualDBAdaptor.QueryParams.ANNOTATION_SETS.key())) .append(DBAdaptor.INCLUDE_ACLS, true) .append(Constants.FLATTENED_ANNOTATIONS, true); catalogSolrManager.insertCatalogCollection(this.individualDBAdaptor.iterator(query, individualQueryOptions), new CatalogIndividualToSolrIndividualConverter(study), CatalogSolrManager.INDIVIDUAL_SOLR_COLLECTION); return true; }
@Test public void testInsertIndividuals() throws CatalogException, SolrServerException, IOException { QueryOptions queryOptions = new QueryOptions(FLATTENED_ANNOTATIONS, "true"); queryOptions.put(QueryOptions.INCLUDE, Arrays.asList(IndividualDBAdaptor.QueryParams.ID.key(), IndividualDBAdaptor.QueryParams.STUDY_UID.key(), IndividualDBAdaptor.QueryParams.MULTIPLES.key(), IndividualDBAdaptor.QueryParams.SEX.key(), IndividualDBAdaptor.QueryParams.KARYOTYPIC_SEX.key(), IndividualDBAdaptor.QueryParams.ETHNICITY.key(), IndividualDBAdaptor.QueryParams.POPULATION_NAME.key(), IndividualDBAdaptor.QueryParams.RELEASE.key(), IndividualDBAdaptor.QueryParams.CREATION_DATE.key(), IndividualDBAdaptor.QueryParams.STATUS.key(), IndividualDBAdaptor.QueryParams.LIFE_STATUS.key(), IndividualDBAdaptor.QueryParams.AFFECTATION_STATUS.key(), IndividualDBAdaptor.QueryParams.PHENOTYPES.key(), IndividualDBAdaptor.QueryParams.SAMPLE_UIDS.key(), IndividualDBAdaptor.QueryParams.PARENTAL_CONSANGUINITY.key(), IndividualDBAdaptor.QueryParams.ANNOTATION_SETS.key())); MongoDBAdaptorFactory factory = new MongoDBAdaptorFactory(catalogManager.getConfiguration()); IndividualDBAdaptor individualDBAdaptor = factory.getCatalogIndividualDBAdaptor(); DBIterator<Individual> individualDBIterator = individualDBAdaptor.iterator(new Query(), queryOptions); // catalogSolrManager.insertCatalogCollection(individualDBIterator, new CatalogIndividualToSolrIndividualConverter(), // CatalogSolrManager.INDIVIDUAL_SOLR_COLLECTION); }
MongoDBAdaptorFactory factory = new MongoDBAdaptorFactory(catalogManager.getConfiguration()); IndividualDBAdaptor individualDBAdaptor = factory.getCatalogIndividualDBAdaptor(); DBIterator<Individual> individualDBIterator = individualDBAdaptor.iterator(new Query(), queryOptions); int i = 0; StopWatch stopWatch = StopWatch.createStarted();