Skip to content
Snippets Groups Projects
Commit c7ac7487 authored by jakubs's avatar jakubs
Browse files

SSDM-1625: add projects to spaces, and experiments to projects

SVN: 33630
parent 79dbb8e5
No related branches found
No related tags found
No related merge requests found
Showing
with 79 additions and 61 deletions
......@@ -331,7 +331,7 @@ public class ApplicationServerApi extends AbstractServer<IApplicationServerApi>
Map<IExperimentId, ExperimentPE> map = mapExperimentByIdExecutor.map(context, experimentIds);
return new MapTranslator<IExperimentId, IExperimentId, ExperimentPE, Experiment>().translate(map, new IdentityTranslator<IExperimentId>(),
new ExperimentTranslator(new TranslationContext(session), managedPropertyEvaluatorFactory,
new ExperimentTranslator(new TranslationContext(session, managedPropertyEvaluatorFactory),
fetchOptions));
}
......@@ -347,7 +347,7 @@ public class ApplicationServerApi extends AbstractServer<IApplicationServerApi>
Map<ISampleId, SamplePE> map = mapSampleByIdExecutor.map(context, sampleIds);
return new MapTranslator<ISampleId, ISampleId, SamplePE, Sample>().translate(map, new IdentityTranslator<ISampleId>(),
new SampleTranslator(new TranslationContext(session), managedPropertyEvaluatorFactory,
new SampleTranslator(new TranslationContext(session, managedPropertyEvaluatorFactory),
fetchOptions));
}
......@@ -362,7 +362,7 @@ public class ApplicationServerApi extends AbstractServer<IApplicationServerApi>
Map<IDataSetId, DataPE> map = mapDataSetByIdExecutor.map(context, dataSetIds);
return new MapTranslator<IDataSetId, IDataSetId, DataPE, DataSet>().translate(map, new IdentityTranslator<IDataSetId>(),
new DataSetTranslator(new TranslationContext(session), managedPropertyEvaluatorFactory,
new DataSetTranslator(new TranslationContext(session, managedPropertyEvaluatorFactory),
fetchOptions));
}
......@@ -380,7 +380,7 @@ public class ApplicationServerApi extends AbstractServer<IApplicationServerApi>
List<ExperimentPE> experiments = searchExperimentExecutor.search(context, searchCriterion);
Map<ExperimentPE, Experiment> translatedMap =
new ExperimentTranslator(new TranslationContext(session), managedPropertyEvaluatorFactory, fetchOptions).translate(experiments);
new ExperimentTranslator(new TranslationContext(session, managedPropertyEvaluatorFactory), fetchOptions).translate(experiments);
return new ArrayList<Experiment>(translatedMap.values());
} catch (Throwable t)
{
......@@ -401,7 +401,7 @@ public class ApplicationServerApi extends AbstractServer<IApplicationServerApi>
List<SamplePE> samples = searchSampleExecutor.search(context, searchCriterion);
Map<SamplePE, Sample> translatedMap =
new SampleTranslator(new TranslationContext(session), managedPropertyEvaluatorFactory, fetchOptions).translate(samples);
new SampleTranslator(new TranslationContext(session, managedPropertyEvaluatorFactory), fetchOptions).translate(samples);
return new ArrayList<Sample>(translatedMap.values());
} catch (Throwable t)
{
......@@ -422,7 +422,7 @@ public class ApplicationServerApi extends AbstractServer<IApplicationServerApi>
List<DataPE> dataSets = searchDataSetExecutor.search(context, searchCriterion);
Map<DataPE, DataSet> translatedMap =
new DataSetTranslator(new TranslationContext(session), managedPropertyEvaluatorFactory, fetchOptions).translate(dataSets);
new DataSetTranslator(new TranslationContext(session, managedPropertyEvaluatorFactory), fetchOptions).translate(dataSets);
return new ArrayList<DataSet>(translatedMap.values());
} catch (Throwable t)
{
......@@ -504,9 +504,9 @@ public class ApplicationServerApi extends AbstractServer<IApplicationServerApi>
try
{
List<ch.systemsx.cisd.openbis.generic.shared.basic.dto.Deletion> deletions = listDeletionExecutor.list(context, fetchOptions);
Map<ch.systemsx.cisd.openbis.generic.shared.basic.dto.Deletion, Deletion> translatedMap =
new DeletionTranslator(new TranslationContext(session), fetchOptions, getDAOFactory()).translate(deletions);
new DeletionTranslator(new TranslationContext(session, managedPropertyEvaluatorFactory), fetchOptions, getDAOFactory())
.translate(deletions);
return new ArrayList<Deletion>(translatedMap.values());
} catch (Throwable t)
{
......
......@@ -2,16 +2,19 @@ package ch.ethz.sis.openbis.generic.server.api.v3.translator;
import ch.ethz.sis.openbis.generic.server.api.v3.context.Context;
import ch.systemsx.cisd.openbis.generic.shared.dto.Session;
import ch.systemsx.cisd.openbis.generic.shared.managed_property.IManagedPropertyEvaluatorFactory;
public class TranslationContext extends Context
{
private final TranslationCache translationCache;
public TranslationContext(Session session)
private IManagedPropertyEvaluatorFactory managedPropertyEvaluatorFactory;
public TranslationContext(Session session, IManagedPropertyEvaluatorFactory managedPropertyEvaluatorFactory)
{
super(session);
this.translationCache = new TranslationCache();
this.managedPropertyEvaluatorFactory = managedPropertyEvaluatorFactory;
}
public TranslationCache getTranslationCache()
......@@ -19,4 +22,9 @@ public class TranslationContext extends Context
return translationCache;
}
public IManagedPropertyEvaluatorFactory getManagedPropertyEvaluatorFactory()
{
return managedPropertyEvaluatorFactory;
}
}
......@@ -40,20 +40,16 @@ import ch.ethz.sis.openbis.generic.shared.api.v3.dto.id.dataset.DataSetPermId;
import ch.systemsx.cisd.openbis.generic.server.authorization.validator.DataSetPEByExperimentOrSampleIdentifierValidator;
import ch.systemsx.cisd.openbis.generic.shared.dto.DataPE;
import ch.systemsx.cisd.openbis.generic.shared.dto.ExternalDataPE;
import ch.systemsx.cisd.openbis.generic.shared.managed_property.IManagedPropertyEvaluatorFactory;
/**
* @author Jakub Straszewski
*/
public class DataSetTranslator extends AbstractCachingTranslator<DataPE, DataSet, DataSetFetchOptions>
{
private IManagedPropertyEvaluatorFactory managedPropertyEvaluatorFactory;
public DataSetTranslator(TranslationContext translationContext, IManagedPropertyEvaluatorFactory managedPropertyEvaluatorFactory,
DataSetFetchOptions fetchOptions)
public DataSetTranslator(TranslationContext translationContext, DataSetFetchOptions fetchOptions)
{
super(translationContext, fetchOptions);
this.managedPropertyEvaluatorFactory = managedPropertyEvaluatorFactory;
}
@Override
......@@ -85,7 +81,7 @@ public class DataSetTranslator extends AbstractCachingTranslator<DataPE, DataSet
{
List<DataSet> children =
new ListTranslator().translate(dataPe.getChildren(), new DataSetTranslator(getTranslationContext(),
managedPropertyEvaluatorFactory, getFetchOptions()
getFetchOptions()
.withChildren()));
result.setChildren(children);
result.getFetchOptions().withChildrenUsing(getFetchOptions().withChildren());
......@@ -95,7 +91,7 @@ public class DataSetTranslator extends AbstractCachingTranslator<DataPE, DataSet
{
List<DataSet> parents =
new ListTranslator().translate(dataPe.getParents(), new DataSetTranslator(getTranslationContext(),
managedPropertyEvaluatorFactory, getFetchOptions()
getFetchOptions()
.withParents()));
result.setParents(parents);
result.getFetchOptions().withParentsUsing(getFetchOptions().withParents());
......@@ -105,7 +101,7 @@ public class DataSetTranslator extends AbstractCachingTranslator<DataPE, DataSet
{
List<DataSet> contained =
new ListTranslator().translate(dataPe.getContainedDataSets(), new DataSetTranslator(getTranslationContext(),
managedPropertyEvaluatorFactory, getFetchOptions()
getFetchOptions()
.withContained()));
result.setContained(contained);
result.getFetchOptions().withContainedUsing(getFetchOptions().withContained());
......@@ -115,7 +111,7 @@ public class DataSetTranslator extends AbstractCachingTranslator<DataPE, DataSet
{
List<DataSet> containers =
new ListTranslator().translate(dataPe.getContainers(), new DataSetTranslator(getTranslationContext(),
managedPropertyEvaluatorFactory, getFetchOptions()
getFetchOptions()
.withContainers()));
result.setContainers(containers);
result.getFetchOptions().withContainersUsing(getFetchOptions().withContainers());
......@@ -124,7 +120,7 @@ public class DataSetTranslator extends AbstractCachingTranslator<DataPE, DataSet
if (getFetchOptions().hasExperiment() && dataPe.getExperiment() != null)
{
Experiment experiment =
new ExperimentTranslator(getTranslationContext(), managedPropertyEvaluatorFactory, getFetchOptions().withExperiment())
new ExperimentTranslator(getTranslationContext(), getFetchOptions().withExperiment())
.translate(dataPe.getExperiment());
result.setExperiment(experiment);
result.getFetchOptions().withExperimentUsing(getFetchOptions().withExperiment());
......@@ -135,7 +131,7 @@ public class DataSetTranslator extends AbstractCachingTranslator<DataPE, DataSet
if (dataPe.tryGetSample() != null)
{
Sample sample =
new SampleTranslator(getTranslationContext(), managedPropertyEvaluatorFactory, getFetchOptions().withSample())
new SampleTranslator(getTranslationContext(), getFetchOptions().withSample())
.translate(dataPe.tryGetSample());
result.setSample(sample);
}
......@@ -144,7 +140,7 @@ public class DataSetTranslator extends AbstractCachingTranslator<DataPE, DataSet
if (getFetchOptions().hasProperties())
{
result.setProperties(new PropertyTranslator(getTranslationContext(), managedPropertyEvaluatorFactory, getFetchOptions().withProperties())
result.setProperties(new PropertyTranslator(getTranslationContext(), getFetchOptions().withProperties())
.translate(dataPe));
result.getFetchOptions().withPropertiesUsing(getFetchOptions().withProperties());
}
......
......@@ -39,7 +39,6 @@ import ch.ethz.sis.openbis.generic.shared.api.v3.dto.id.experiment.ExperimentIde
import ch.ethz.sis.openbis.generic.shared.api.v3.dto.id.experiment.ExperimentPermId;
import ch.systemsx.cisd.openbis.generic.server.authorization.validator.ExperimentByIdentiferValidator;
import ch.systemsx.cisd.openbis.generic.shared.dto.ExperimentPE;
import ch.systemsx.cisd.openbis.generic.shared.managed_property.IManagedPropertyEvaluatorFactory;
/**
* @author pkupczyk
......@@ -47,13 +46,9 @@ import ch.systemsx.cisd.openbis.generic.shared.managed_property.IManagedProperty
public class ExperimentTranslator extends AbstractCachingTranslator<ExperimentPE, Experiment, ExperimentFetchOptions>
{
private IManagedPropertyEvaluatorFactory managedPropertyEvaluatorFactory;
public ExperimentTranslator(TranslationContext translationContext, IManagedPropertyEvaluatorFactory managedPropertyEvaluatorFactory,
ExperimentFetchOptions fetchOptions)
public ExperimentTranslator(TranslationContext translationContext, ExperimentFetchOptions fetchOptions)
{
super(translationContext, fetchOptions);
this.managedPropertyEvaluatorFactory = managedPropertyEvaluatorFactory;
}
@Override
......@@ -91,7 +86,7 @@ public class ExperimentTranslator extends AbstractCachingTranslator<ExperimentPE
if (getFetchOptions().hasProperties())
{
Map<String, String> properties =
new PropertyTranslator(getTranslationContext(), managedPropertyEvaluatorFactory, getFetchOptions().withProperties())
new PropertyTranslator(getTranslationContext(), getFetchOptions().withProperties())
.translate(experiment);
result.setProperties(properties);
result.getFetchOptions().withPropertiesUsing(getFetchOptions().withProperties());
......@@ -99,21 +94,22 @@ public class ExperimentTranslator extends AbstractCachingTranslator<ExperimentPE
if (getFetchOptions().hasProject())
{
result.setProject(new ProjectTranslator(getTranslationContext(), getFetchOptions().withProject()).translate(experiment.getProject()));
result.setProject(new ProjectTranslator(getTranslationContext(), getFetchOptions().withProject())
.translate(experiment.getProject()));
result.getFetchOptions().withProjectUsing(getFetchOptions().withProject());
}
if (getFetchOptions().hasSamples())
{
result.setSamples(new ListTranslator().translate(experiment.getSamples(), new SampleTranslator(getTranslationContext(),
managedPropertyEvaluatorFactory, getFetchOptions().withSamples())));
getFetchOptions().withSamples())));
result.getFetchOptions().withSamplesUsing(getFetchOptions().withSamples());
}
if (getFetchOptions().hasDataSets())
{
result.setDataSets(new ListTranslator().translate(experiment.getDataSets(), new DataSetTranslator(getTranslationContext(),
managedPropertyEvaluatorFactory, getFetchOptions().withDataSets())));
getFetchOptions().withDataSets())));
result.getFetchOptions().withDataSetsUsing(getFetchOptions().withDataSets());
}
......
......@@ -55,14 +55,16 @@ public class PersonTranslator extends AbstractCachingTranslator<PersonPE, Person
{
if (getFetchOptions().hasSpace())
{
result.setSpace(new SpaceTranslator(getTranslationContext(), getFetchOptions().withSpace()).translate(person.getHomeSpace()));
result.setSpace(new SpaceTranslator(getTranslationContext(), getFetchOptions().withSpace())
.translate(person.getHomeSpace()));
result.getFetchOptions().withSpaceUsing(getFetchOptions().withSpace());
}
if (getFetchOptions().hasRegistrator())
{
result.setRegistrator(new PersonTranslator(getTranslationContext(), getFetchOptions().withRegistrator()).translate(person
.getRegistrator()));
result.setRegistrator(new PersonTranslator(getTranslationContext(), getFetchOptions().withRegistrator())
.translate(person
.getRegistrator()));
result.getFetchOptions().withRegistratorUsing(getFetchOptions().withRegistrator());
}
}
......
......@@ -16,11 +16,16 @@
package ch.ethz.sis.openbis.generic.server.api.v3.translator.entity.project;
import java.util.List;
import ch.ethz.sis.openbis.generic.server.api.v3.translator.AbstractCachingTranslator;
import ch.ethz.sis.openbis.generic.server.api.v3.translator.Relations;
import ch.ethz.sis.openbis.generic.server.api.v3.translator.TranslationContext;
import ch.ethz.sis.openbis.generic.server.api.v3.translator.common.ListTranslator;
import ch.ethz.sis.openbis.generic.server.api.v3.translator.entity.experiment.ExperimentTranslator;
import ch.ethz.sis.openbis.generic.server.api.v3.translator.entity.person.PersonTranslator;
import ch.ethz.sis.openbis.generic.server.api.v3.translator.entity.space.SpaceTranslator;
import ch.ethz.sis.openbis.generic.shared.api.v3.dto.entity.experiment.Experiment;
import ch.ethz.sis.openbis.generic.shared.api.v3.dto.entity.project.Project;
import ch.ethz.sis.openbis.generic.shared.api.v3.dto.fetchoptions.project.ProjectFetchOptions;
import ch.ethz.sis.openbis.generic.shared.api.v3.dto.id.project.ProjectIdentifier;
......@@ -33,7 +38,6 @@ import ch.systemsx.cisd.openbis.generic.shared.dto.ProjectPE;
*/
public class ProjectTranslator extends AbstractCachingTranslator<ProjectPE, Project, ProjectFetchOptions>
{
public ProjectTranslator(TranslationContext translationContext, ProjectFetchOptions fetchOptions)
{
super(translationContext, fetchOptions);
......@@ -66,7 +70,8 @@ public class ProjectTranslator extends AbstractCachingTranslator<ProjectPE, Proj
{
if (getFetchOptions().hasSpace())
{
result.setSpace(new SpaceTranslator(getTranslationContext(), getFetchOptions().withSpace()).translate(project.getSpace()));
result.setSpace(new SpaceTranslator(getTranslationContext(), getFetchOptions().withSpace())
.translate(project.getSpace()));
result.getFetchOptions().withSpaceUsing(getFetchOptions().withSpace());
}
......@@ -84,6 +89,13 @@ public class ProjectTranslator extends AbstractCachingTranslator<ProjectPE, Proj
result.getFetchOptions().withModifierUsing(getFetchOptions().withModifier());
}
if (getFetchOptions().hasExperiments())
{
List<Experiment> experiments =
new ListTranslator().translate(project.getExperiments(), new ExperimentTranslator(getTranslationContext(),
getFetchOptions().withExperiments()));
result.setExperiments(experiments);
result.getFetchOptions().withExperimentsUsing(getFetchOptions().withExperiments());
}
}
}
......@@ -28,7 +28,6 @@ import ch.systemsx.cisd.openbis.generic.shared.basic.dto.IEntityProperty;
import ch.systemsx.cisd.openbis.generic.shared.basic.dto.PropertyType;
import ch.systemsx.cisd.openbis.generic.shared.dto.IEntityPropertiesHolder;
import ch.systemsx.cisd.openbis.generic.shared.dto.PropertyTypePE;
import ch.systemsx.cisd.openbis.generic.shared.managed_property.IManagedPropertyEvaluatorFactory;
import ch.systemsx.cisd.openbis.generic.shared.translator.EntityPropertyTranslator;
import ch.systemsx.cisd.openbis.generic.shared.util.HibernateUtils;
......@@ -38,13 +37,9 @@ import ch.systemsx.cisd.openbis.generic.shared.util.HibernateUtils;
public class PropertyTranslator extends AbstractCachingTranslator<IEntityPropertiesHolder, Map<String, String>, PropertyFetchOptions>
{
private IManagedPropertyEvaluatorFactory managedPropertyEvaluatorFactory;
public PropertyTranslator(TranslationContext translationContext, IManagedPropertyEvaluatorFactory managedPropertyEvaluatorFactory,
PropertyFetchOptions fetchOptions)
public PropertyTranslator(TranslationContext translationContext, PropertyFetchOptions fetchOptions)
{
super(translationContext, fetchOptions);
this.managedPropertyEvaluatorFactory = managedPropertyEvaluatorFactory;
}
@Override
......@@ -60,7 +55,7 @@ public class PropertyTranslator extends AbstractCachingTranslator<IEntityPropert
List<IEntityProperty> propertiesPE = EntityPropertyTranslator
.translate(entity.getProperties(),
new HashMap<PropertyTypePE, PropertyType>(),
managedPropertyEvaluatorFactory);
getTranslationContext().getManagedPropertyEvaluatorFactory());
for (IEntityProperty iEntityProperty : propertiesPE)
{
......
......@@ -36,18 +36,13 @@ import ch.ethz.sis.openbis.generic.shared.api.v3.dto.id.sample.SamplePermId;
import ch.systemsx.cisd.openbis.generic.server.authorization.validator.SampleByIdentiferValidator;
import ch.systemsx.cisd.openbis.generic.shared.dto.ExperimentPE;
import ch.systemsx.cisd.openbis.generic.shared.dto.SamplePE;
import ch.systemsx.cisd.openbis.generic.shared.managed_property.IManagedPropertyEvaluatorFactory;
public class SampleTranslator extends AbstractCachingTranslator<SamplePE, Sample, SampleFetchOptions>
{
private IManagedPropertyEvaluatorFactory managedPropertyEvaluatorFactory;
public SampleTranslator(TranslationContext translationContext, IManagedPropertyEvaluatorFactory managedPropertyEvaluatorFactory,
SampleFetchOptions fetchOptions)
public SampleTranslator(TranslationContext translationContext, SampleFetchOptions fetchOptions)
{
super(translationContext, fetchOptions);
this.managedPropertyEvaluatorFactory = managedPropertyEvaluatorFactory;
}
@Override
......@@ -99,15 +94,16 @@ public class SampleTranslator extends AbstractCachingTranslator<SamplePE, Sample
if (getFetchOptions().hasSpace())
{
Space space = new SpaceTranslator(getTranslationContext(), getFetchOptions().withSpace()).translate(samplePe
.getSpace());
Space space =
new SpaceTranslator(getTranslationContext(), getFetchOptions().withSpace()).translate(samplePe
.getSpace());
result.setSpace(space);
result.getFetchOptions().withSpaceUsing(getFetchOptions().withSpace());
}
if (getFetchOptions().hasProperties())
{
result.setProperties(new PropertyTranslator(getTranslationContext(), managedPropertyEvaluatorFactory, getFetchOptions().withProperties())
result.setProperties(new PropertyTranslator(getTranslationContext(), getFetchOptions().withProperties())
.translate(samplePe));
result.getFetchOptions().withPropertiesUsing(getFetchOptions().withProperties());
}
......@@ -122,7 +118,7 @@ public class SampleTranslator extends AbstractCachingTranslator<SamplePE, Sample
{
List<Sample> children =
new ListTranslator().translate(samplePe.getChildren(), new SampleTranslator(getTranslationContext(),
managedPropertyEvaluatorFactory, getFetchOptions()
getFetchOptions()
.withChildren()));
result.setChildren(children);
result.getFetchOptions().withChildrenUsing(getFetchOptions().withChildren());
......@@ -131,7 +127,7 @@ public class SampleTranslator extends AbstractCachingTranslator<SamplePE, Sample
if (getFetchOptions().hasContainer())
{
Sample container =
new SampleTranslator(getTranslationContext(), managedPropertyEvaluatorFactory, getFetchOptions().withContainer())
new SampleTranslator(getTranslationContext(), getFetchOptions().withContainer())
.translate(samplePe.getContainer());
result.setContainer(container);
result.getFetchOptions().withContainerUsing(getFetchOptions().withContainer());
......@@ -141,7 +137,7 @@ public class SampleTranslator extends AbstractCachingTranslator<SamplePE, Sample
{
List<Sample> contained =
new ListTranslator().translate(samplePe.getContained(), new SampleTranslator(getTranslationContext(),
managedPropertyEvaluatorFactory, getFetchOptions()
getFetchOptions()
.withContained()));
result.setContained(contained);
result.getFetchOptions().withContainedUsing(getFetchOptions().withContained());
......@@ -151,7 +147,7 @@ public class SampleTranslator extends AbstractCachingTranslator<SamplePE, Sample
{
List<DataSet> dataSets =
new ListTranslator().translate(samplePe.getDatasets(), new DataSetTranslator(getTranslationContext(),
managedPropertyEvaluatorFactory, getFetchOptions().withDataSets()));
getFetchOptions().withDataSets()));
result.setDataSets(dataSets);
result.getFetchOptions().withDataSetsUsing(getFetchOptions().withDataSets());
}
......@@ -223,7 +219,7 @@ public class SampleTranslator extends AbstractCachingTranslator<SamplePE, Sample
@Override
protected Map<ExperimentPE, Experiment> getTranslatedMap(Collection<ExperimentPE> originalCollection)
{
return new ExperimentTranslator(getTranslationContext(), managedPropertyEvaluatorFactory, getFetchOptions()
return new ExperimentTranslator(getTranslationContext(), getFetchOptions()
.withExperiment()).translate(originalCollection);
}
......@@ -264,7 +260,7 @@ public class SampleTranslator extends AbstractCachingTranslator<SamplePE, Sample
@Override
protected Map<SamplePE, Sample> getTranslatedMap(Collection<SamplePE> originalCollection)
{
return new SampleTranslator(getTranslationContext(), managedPropertyEvaluatorFactory, getFetchOptions()
return new SampleTranslator(getTranslationContext(), getFetchOptions()
.withParents()).translate(originalCollection);
}
......
......@@ -16,10 +16,15 @@
package ch.ethz.sis.openbis.generic.server.api.v3.translator.entity.space;
import java.util.List;
import ch.ethz.sis.openbis.generic.server.api.v3.translator.AbstractCachingTranslator;
import ch.ethz.sis.openbis.generic.server.api.v3.translator.Relations;
import ch.ethz.sis.openbis.generic.server.api.v3.translator.TranslationContext;
import ch.ethz.sis.openbis.generic.server.api.v3.translator.common.ListTranslator;
import ch.ethz.sis.openbis.generic.server.api.v3.translator.entity.person.PersonTranslator;
import ch.ethz.sis.openbis.generic.server.api.v3.translator.entity.project.ProjectTranslator;
import ch.ethz.sis.openbis.generic.shared.api.v3.dto.entity.project.Project;
import ch.ethz.sis.openbis.generic.shared.api.v3.dto.entity.space.Space;
import ch.ethz.sis.openbis.generic.shared.api.v3.dto.fetchoptions.space.SpaceFetchOptions;
import ch.ethz.sis.openbis.generic.shared.api.v3.dto.id.space.SpacePermId;
......@@ -30,7 +35,6 @@ import ch.systemsx.cisd.openbis.generic.shared.dto.SpacePE;
*/
public class SpaceTranslator extends AbstractCachingTranslator<SpacePE, Space, SpaceFetchOptions>
{
public SpaceTranslator(TranslationContext translationContext, SpaceFetchOptions fetchOptions)
{
super(translationContext, fetchOptions);
......@@ -59,6 +63,15 @@ public class SpaceTranslator extends AbstractCachingTranslator<SpacePE, Space, S
.getRegistrator()));
result.getFetchOptions().withRegistratorUsing(getFetchOptions().withRegistrator());
}
if (getFetchOptions().hasProjects())
{
List<Project> projects =
new ListTranslator().translate(space.getProjects(), new ProjectTranslator(getTranslationContext(),
getFetchOptions().withProjects()));
result.setProjects(projects);
result.getFetchOptions().withProjectsUsing(getFetchOptions().withProjects());
}
}
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment