Search in sources :

Example 11 with DataCollectionEvent

use of org.obiba.mica.study.domain.DataCollectionEvent 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 12 with DataCollectionEvent

use of org.obiba.mica.study.domain.DataCollectionEvent 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)

Aggregations

DataCollectionEvent (org.obiba.mica.study.domain.DataCollectionEvent)12 Population (org.obiba.mica.study.domain.Population)9 Test (org.junit.Test)7 Study (org.obiba.mica.study.domain.Study)3 NotNull (javax.validation.constraints.NotNull)2 StudyTable (org.obiba.mica.core.domain.StudyTable)2 BaseStudy (org.obiba.mica.study.domain.BaseStudy)2 Strings (com.google.common.base.Strings)1 Lists (com.google.common.collect.Lists)1 Sets (com.google.common.collect.Sets)1 EventBus (com.google.common.eventbus.EventBus)1 HashMap (java.util.HashMap)1 HashSet (java.util.HashSet)1 List (java.util.List)1 Set (java.util.Set)1 Collectors (java.util.stream.Collectors)1 Collectors.toList (java.util.stream.Collectors.toList)1 Stream (java.util.stream.Stream)1 StreamSupport (java.util.stream.StreamSupport)1 Inject (javax.inject.Inject)1