diff --git a/openbis_api/source/java/ch/ethz/sis/openbis/generic/shared/api/v3/dto/entity/space/Space.java b/openbis_api/source/java/ch/ethz/sis/openbis/generic/shared/api/v3/dto/entity/space/Space.java index 196038ef6c24d00ee799af0d5b9412fd018d46f6..327928debde3a4a8128438a001d6009fa268f025 100644 --- a/openbis_api/source/java/ch/ethz/sis/openbis/generic/shared/api/v3/dto/entity/space/Space.java +++ b/openbis_api/source/java/ch/ethz/sis/openbis/generic/shared/api/v3/dto/entity/space/Space.java @@ -17,6 +17,7 @@ package ch.ethz.sis.openbis.generic.shared.api.v3.dto.entity.space; import ch.ethz.sis.openbis.generic.shared.api.v3.dto.entity.person.Person; import ch.ethz.sis.openbis.generic.shared.api.v3.dto.entity.project.Project; +import ch.ethz.sis.openbis.generic.shared.api.v3.dto.entity.sample.Sample; 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; import ch.ethz.sis.openbis.generic.shared.api.v3.exceptions.NotFetchedException; @@ -53,6 +54,9 @@ public class Space implements Serializable @JsonProperty private Person registrator; + @JsonProperty + private List<Sample> samples; + @JsonProperty private List<Project> projects; @@ -141,6 +145,26 @@ public class Space implements Serializable this.registrator = registrator; } + // Method automatically generated with {@link ch.ethz.sis.openbis.generic.shared.api.v3.dto.generators.DtoGenerator} + @JsonIgnore + public List<Sample> getSamples() + { + if (getFetchOptions().hasSamples()) + { + return samples; + } + else + { + throw new NotFetchedException("Samples have not been fetched."); + } + } + + // Method automatically generated with {@link ch.ethz.sis.openbis.generic.shared.api.v3.dto.generators.DtoGenerator} + public void setSamples(List<Sample> samples) + { + this.samples = samples; + } + // Method automatically generated with {@link ch.ethz.sis.openbis.generic.shared.api.v3.dto.generators.DtoGenerator} @JsonIgnore public List<Project> getProjects() diff --git a/openbis_api/source/java/ch/ethz/sis/openbis/generic/shared/api/v3/dto/fetchoptions/space/SpaceFetchOptions.java b/openbis_api/source/java/ch/ethz/sis/openbis/generic/shared/api/v3/dto/fetchoptions/space/SpaceFetchOptions.java index 2fe0392f77665fab8d9f554f76f35bf32f34e9bb..43d70160d2004726e9ec8b986e22ce115b1a9d9e 100644 --- a/openbis_api/source/java/ch/ethz/sis/openbis/generic/shared/api/v3/dto/fetchoptions/space/SpaceFetchOptions.java +++ b/openbis_api/source/java/ch/ethz/sis/openbis/generic/shared/api/v3/dto/fetchoptions/space/SpaceFetchOptions.java @@ -17,6 +17,7 @@ package ch.ethz.sis.openbis.generic.shared.api.v3.dto.fetchoptions.space; import ch.ethz.sis.openbis.generic.shared.api.v3.dto.fetchoptions.person.PersonFetchOptions; import ch.ethz.sis.openbis.generic.shared.api.v3.dto.fetchoptions.project.ProjectFetchOptions; +import ch.ethz.sis.openbis.generic.shared.api.v3.dto.fetchoptions.sample.SampleFetchOptions; import ch.systemsx.cisd.base.annotation.JsonObject; import com.fasterxml.jackson.annotation.JsonProperty; import java.io.Serializable; @@ -32,6 +33,9 @@ public class SpaceFetchOptions implements Serializable @JsonProperty private PersonFetchOptions registrator; + @JsonProperty + private SampleFetchOptions samples; + @JsonProperty private ProjectFetchOptions projects; @@ -57,6 +61,28 @@ public class SpaceFetchOptions implements Serializable return registrator != null; } + // Method automatically generated with {@link ch.ethz.sis.openbis.generic.shared.api.v3.dto.generators.DtoGenerator} + public SampleFetchOptions withSamples() + { + if (samples == null) + { + samples = new SampleFetchOptions(); + } + return samples; + } + + // Method automatically generated with {@link ch.ethz.sis.openbis.generic.shared.api.v3.dto.generators.DtoGenerator} + public SampleFetchOptions withSamplesUsing(SampleFetchOptions fetchOptions) + { + return samples = fetchOptions; + } + + // Method automatically generated with {@link ch.ethz.sis.openbis.generic.shared.api.v3.dto.generators.DtoGenerator} + public boolean hasSamples() + { + return samples != null; + } + // Method automatically generated with {@link ch.ethz.sis.openbis.generic.shared.api.v3.dto.generators.DtoGenerator} public ProjectFetchOptions withProjects() { diff --git a/openbis_api/source/java/ch/ethz/sis/openbis/generic/shared/api/v3/dto/generators/Generator.java b/openbis_api/source/java/ch/ethz/sis/openbis/generic/shared/api/v3/dto/generators/Generator.java index a282d5f04e8c725ec120972af03897017283bc23..a81792fc58efa134926d7428f2f9d2ab727cdf13 100644 --- a/openbis_api/source/java/ch/ethz/sis/openbis/generic/shared/api/v3/dto/generators/Generator.java +++ b/openbis_api/source/java/ch/ethz/sis/openbis/generic/shared/api/v3/dto/generators/Generator.java @@ -342,6 +342,8 @@ public class Generator extends AbstractGenerator addDescription(gen); addRegistrationDate(gen); addRegistrator(gen); + gen.addFetchedField("List<Sample>", List.class.getName(), "samples", "Samples", SampleFetchOptions.class); + gen.addClassForImport(Sample.class); gen.addFetchedField("List<Project>", List.class.getName(), "projects", "Projects", ProjectFetchOptions.class); gen.addClassForImport(Project.class); return gen;