Search in sources :

Example 11 with StudyTable

use of org.obiba.mica.core.domain.StudyTable in project mica2 by obiba.

the class HarmonizedDatasetHelperTest method createStudyTable.

private StudyTable createStudyTable(String studyId) {
    StudyTable table = new StudyTable();
    initTable(studyId, table);
    table.setDataCollectionEventId(RandomStringUtils.random(10, true, true));
    return table;
}
Also used : HarmonizationStudyTable(org.obiba.mica.core.domain.HarmonizationStudyTable) BaseStudyTable(org.obiba.mica.core.domain.BaseStudyTable) StudyTable(org.obiba.mica.core.domain.StudyTable)

Example 12 with StudyTable

use of org.obiba.mica.core.domain.StudyTable in project mica2 by obiba.

the class CollectedDatasetService method processVariablesForStudyDataset.

public List<DatasetVariable> processVariablesForStudyDataset(StudyDataset dataset, Iterable<DatasetVariable> variables) {
    if (!dataset.hasStudyTable()) {
        return Lists.newArrayList(variables);
    }
    StudyTable studyTable = dataset.getStudyTable();
    BaseStudy study = studyService.findStudy(dataset.getStudyTable().getStudyId());
    Population population = study.findPopulation(studyTable.getPopulationId());
    if (population == null) {
        return Lists.newArrayList(variables);
    }
    int populationWeight = population.getWeight();
    DataCollectionEvent dataCollectionEvent = population.findDataCollectionEvent(studyTable.getDataCollectionEventId());
    if (dataCollectionEvent == null) {
        return Lists.newArrayList(variables);
    }
    int dataCollectionEventWeight = dataCollectionEvent.getWeight();
    return StreamSupport.stream(variables.spliterator(), false).map(datasetVariable -> {
        datasetVariable.setPopulationWeight(populationWeight);
        datasetVariable.setDataCollectionEventWeight(dataCollectionEventWeight);
        return datasetVariable;
    }).collect(toList());
}
Also used : Search(org.obiba.opal.web.model.Search) DatasetDeletedEvent(org.obiba.mica.dataset.event.DatasetDeletedEvent) FileUtils(org.obiba.mica.file.FileUtils) Cacheable(org.springframework.cache.annotation.Cacheable) LoggerFactory(org.slf4j.LoggerFactory) CacheEvict(org.springframework.cache.annotation.CacheEvict) AbstractGitPersistable(org.obiba.mica.core.domain.AbstractGitPersistable) NoSuchVariableException(org.obiba.magma.NoSuchVariableException) DatasetUnpublishedEvent(org.obiba.mica.dataset.event.DatasetUnpublishedEvent) Valid(javax.validation.Valid) StudyDatasetIndexedEvent(org.obiba.mica.dataset.event.StudyDatasetIndexedEvent) PublishCascadingScope(org.obiba.mica.core.domain.PublishCascadingScope) EntityStateRepository(org.obiba.mica.core.repository.EntityStateRepository) NoSuchDatasetException(org.obiba.mica.dataset.NoSuchDatasetException) StudyState(org.obiba.mica.study.domain.StudyState) QueryTermsUtil(org.obiba.mica.dataset.service.support.QueryTermsUtil) Set(java.util.Set) StudyService(org.obiba.mica.study.service.StudyService) NotNull(javax.validation.constraints.NotNull) Collectors(java.util.stream.Collectors) NoSuchEntityException(org.obiba.mica.NoSuchEntityException) Sets(com.google.common.collect.Sets) List(java.util.List) NoSuchValueTableException(org.obiba.magma.NoSuchValueTableException) Stream(java.util.stream.Stream) Study(org.obiba.mica.study.domain.Study) StudyDatasetState(org.obiba.mica.dataset.domain.StudyDatasetState) StudyDatasetStateRepository(org.obiba.mica.dataset.StudyDatasetStateRepository) Lazy(org.springframework.context.annotation.Lazy) NetworkService(org.obiba.mica.network.service.NetworkService) BeanUtils(org.springframework.beans.BeanUtils) Async(org.springframework.scheduling.annotation.Async) DatasetPublishedEvent(org.obiba.mica.dataset.event.DatasetPublishedEvent) RestValueTable(org.obiba.opal.rest.client.magma.RestValueTable) OpalService(org.obiba.mica.micaConfig.service.OpalService) HashSet(java.util.HashSet) Inject(javax.inject.Inject) Caching(org.springframework.cache.annotation.Caching) EventBus(com.google.common.eventbus.EventBus) Strings(com.google.common.base.Strings) Lists(com.google.common.collect.Lists) Service(org.springframework.stereotype.Service) StreamSupport(java.util.stream.StreamSupport) StudyDataset(org.obiba.mica.dataset.domain.StudyDataset) Validated(org.springframework.validation.annotation.Validated) DatasetUpdatedEvent(org.obiba.mica.dataset.event.DatasetUpdatedEvent) Logger(org.slf4j.Logger) DatasetVariable(org.obiba.mica.dataset.domain.DatasetVariable) BaseStudy(org.obiba.mica.study.domain.BaseStudy) DateTime(org.joda.time.DateTime) Population(org.obiba.mica.study.domain.Population) FileSystemService(org.obiba.mica.file.service.FileSystemService) DataCollectionEvent(org.obiba.mica.study.domain.DataCollectionEvent) NoSuchStudyException(org.obiba.mica.study.NoSuchStudyException) PublishedStudyService(org.obiba.mica.study.service.PublishedStudyService) IndividualStudyService(org.obiba.mica.study.service.IndividualStudyService) Component(org.springframework.stereotype.Component) Collectors.toList(java.util.stream.Collectors.toList) StudyDatasetRepository(org.obiba.mica.dataset.StudyDatasetRepository) StudyTable(org.obiba.mica.core.domain.StudyTable) DataCollectionEvent(org.obiba.mica.study.domain.DataCollectionEvent) StudyTable(org.obiba.mica.core.domain.StudyTable) Population(org.obiba.mica.study.domain.Population) BaseStudy(org.obiba.mica.study.domain.BaseStudy)

Example 13 with StudyTable

use of org.obiba.mica.core.domain.StudyTable in project mica2 by obiba.

the class CollectedDatasetService method prepareForIndex.

private void prepareForIndex(StudyDataset dataset) {
    if (dataset.hasStudyTable()) {
        StudyTable studyTable = dataset.getStudyTable();
        BaseStudy study = publishedStudyService.findById(dataset.getStudyTable().getStudyId());
        if (study != null) {
            Population population = study.findPopulation(studyTable.getPopulationId());
            if (population != null) {
                studyTable.setPopulationWeight(population.getWeight());
                DataCollectionEvent dataCollectionEvent = population.findDataCollectionEvent(studyTable.getDataCollectionEventId());
                if (dataCollectionEvent != null) {
                    studyTable.setDataCollectionEventWeight(dataCollectionEvent.getWeight());
                }
            }
        }
    }
}
Also used : DataCollectionEvent(org.obiba.mica.study.domain.DataCollectionEvent) StudyTable(org.obiba.mica.core.domain.StudyTable) Population(org.obiba.mica.study.domain.Population) BaseStudy(org.obiba.mica.study.domain.BaseStudy)

Example 14 with StudyTable

use of org.obiba.mica.core.domain.StudyTable in project mica2 by obiba.

the class PublishedCollectedDatasetVariableResource method getContingencyDto.

private Mica.DatasetVariableContingencyDto getContingencyDto(DatasetVariable var, DatasetVariable crossVar) {
    StudyDataset dataset = getDataset(StudyDataset.class, datasetId);
    StudyTable studyTable = dataset.getSafeStudyTable();
    try {
        return dtos.asContingencyDto(studyTable, var, crossVar, datasetService.getContingencyTable(dataset, var, crossVar)).build();
    } catch (Exception e) {
        log.warn("Unable to retrieve contingency table: " + e.getMessage(), e);
        return dtos.asContingencyDto(studyTable, var, crossVar, null).build();
    }
}
Also used : StudyTable(org.obiba.mica.core.domain.StudyTable) StudyDataset(org.obiba.mica.dataset.domain.StudyDataset) BadRequestException(javax.ws.rs.BadRequestException) IOException(java.io.IOException)

Aggregations

StudyTable (org.obiba.mica.core.domain.StudyTable)14 StudyDataset (org.obiba.mica.dataset.domain.StudyDataset)6 HarmonizationStudyTable (org.obiba.mica.core.domain.HarmonizationStudyTable)5 HarmonizationDataset (org.obiba.mica.dataset.domain.HarmonizationDataset)5 Lists (com.google.common.collect.Lists)4 Inject (javax.inject.Inject)4 DatasetVariable (org.obiba.mica.dataset.domain.DatasetVariable)4 Component (org.springframework.stereotype.Component)4 Strings (com.google.common.base.Strings)3 List (java.util.List)3 Collectors (java.util.stream.Collectors)3 NotNull (javax.validation.constraints.NotNull)3 LocalizedString (org.obiba.mica.core.domain.LocalizedString)3 StudyDatasetStateRepository (org.obiba.mica.dataset.StudyDatasetStateRepository)3 StudyDatasetState (org.obiba.mica.dataset.domain.StudyDatasetState)3 SubjectAclService (org.obiba.mica.security.service.SubjectAclService)3 PublishedStudyService (org.obiba.mica.study.service.PublishedStudyService)3 Search (org.obiba.opal.web.model.Search)3 Timed (com.codahale.metrics.annotation.Timed)2 Maps (com.google.common.collect.Maps)2