diff --git a/openbis_api/source/java/ch/systemsx/cisd/openbis/generic/shared/api/v1/dto/Material.java b/openbis_api/source/java/ch/systemsx/cisd/openbis/generic/shared/api/v1/dto/Material.java index 063ec2293c01b9ebadf8c0af9635c7c4be3eac83..6f525ebc2135da98e6850a04cbd9a9dbf018d976 100644 --- a/openbis_api/source/java/ch/systemsx/cisd/openbis/generic/shared/api/v1/dto/Material.java +++ b/openbis_api/source/java/ch/systemsx/cisd/openbis/generic/shared/api/v1/dto/Material.java @@ -32,12 +32,78 @@ public class Material extends MaterialIdentifier private Map<String, Material> materialProperties; - public Material(MaterialTypeIdentifier materialTypeIdentifier, String materialCode, - Map<String, String> properties, Map<String, Material> materialProperties) + private EntityRegistrationDetails registrationDetails; + + public static final class MaterialInitializer + { + private MaterialTypeIdentifier materialTypeIdentifier; + + private String materialCode; + + private Map<String, String> properties; + + private Map<String, Material> materialProperties; + + private EntityRegistrationDetails registrationDetails; + + public MaterialTypeIdentifier getMaterialTypeIdentifier() + { + return materialTypeIdentifier; + } + + public void setMaterialTypeIdentifier(MaterialTypeIdentifier materialTypeIdentifier) + { + this.materialTypeIdentifier = materialTypeIdentifier; + } + + public String getMaterialCode() + { + return materialCode; + } + + public void setMaterialCode(String materialCode) + { + this.materialCode = materialCode; + } + + public Map<String, String> getProperties() + { + return properties; + } + + public void setProperties(Map<String, String> properties) + { + this.properties = properties; + } + + public Map<String, Material> getMaterialProperties() + { + return materialProperties; + } + + public void setMaterialProperties(Map<String, Material> materialProperties) + { + this.materialProperties = materialProperties; + } + + public EntityRegistrationDetails getRegistrationDetails() + { + return registrationDetails; + } + + public void setRegistrationDetails(EntityRegistrationDetails registrationDetails) + { + this.registrationDetails = registrationDetails; + } + + } + + public Material(MaterialInitializer initializer) { - super(materialTypeIdentifier, materialCode); - this.properties = new HashMap<String, String>(properties); - this.materialProperties = new HashMap<String, Material>(materialProperties); + super(initializer.getMaterialTypeIdentifier(), initializer.getMaterialCode()); + this.properties = initializer.getProperties(); + this.materialProperties = initializer.getMaterialProperties(); + this.registrationDetails = initializer.getRegistrationDetails(); } /** @@ -53,6 +119,11 @@ public class Material extends MaterialIdentifier return Collections.unmodifiableMap(materialProperties); } + public EntityRegistrationDetails getRegistrationDetails() + { + return registrationDetails; + } + // // JSON-RPC // @@ -72,4 +143,8 @@ public class Material extends MaterialIdentifier this.materialProperties = materialProperties; } + private void setRegistrationDetails(EntityRegistrationDetails registrationDetails) + { + this.registrationDetails = registrationDetails; + } } diff --git a/openbis_api/source/java/ch/systemsx/cisd/openbis/generic/shared/api/v1/dto/MaterialTypeIdentifier.java b/openbis_api/source/java/ch/systemsx/cisd/openbis/generic/shared/api/v1/dto/MaterialTypeIdentifier.java index 2d8d880e8702a44f178475fdc855b1ea8acc6bcb..bebebfcdd3889025121e12a24f0ff08b7f5186bc 100644 --- a/openbis_api/source/java/ch/systemsx/cisd/openbis/generic/shared/api/v1/dto/MaterialTypeIdentifier.java +++ b/openbis_api/source/java/ch/systemsx/cisd/openbis/generic/shared/api/v1/dto/MaterialTypeIdentifier.java @@ -19,7 +19,7 @@ package ch.systemsx.cisd.openbis.generic.shared.api.v1.dto; import java.io.Serializable; /** - * + * duplicated from ch.systemsx.cisd.openbis.plugin.screening.shared.api.v1.dto.MaterialTypeIdentifier * * @author jakubs */