Package io.adminshell.aas.v3.model.impl
Class DefaultSubmodelElementCollection
- java.lang.Object
-
- io.adminshell.aas.v3.model.impl.DefaultSubmodelElementCollection
-
- All Implemented Interfaces:
HasDataSpecification,HasExtensions,HasKind,HasSemantics,Qualifiable,Referable,SubmodelElement,SubmodelElementCollection
public class DefaultSubmodelElementCollection extends java.lang.Object implements SubmodelElementCollection
Default implementation of package io.adminshell.aas.v3.model.SubmodelElementCollection A submodel element collection is a set or list of submodel elements. Constraint AASd-059: If the semanticId of a SubmodelElementCollection references a ConceptDescription then the category of the ConceptDescription shall be COLLECTION or ENTITY. Constraint AASd-092: If the semanticId of a SubmodelElementCollection with SubmodelElementCollection/allowDuplicates == false references a ConceptDescription then the ConceptDescription/category shall be ENTITY. Constraint AASd-093: If the semanticId of a SubmodelElementCollection with SubmodelElementCollection/allowDuplicates == true references a ConceptDescription then the ConceptDescription/category shall be COLLECTION.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classDefaultSubmodelElementCollection.BuilderThis builder class can be used to construct a DefaultSubmodelElementCollection bean.
-
Field Summary
Fields Modifier and Type Field Description protected booleanallowDuplicatesprotected java.lang.Stringcategoryprotected java.util.List<LangString>descriptionsprotected java.util.List<LangString>displayNamesprotected java.util.List<EmbeddedDataSpecification>embeddedDataSpecificationsprotected java.util.List<Extension>extensionsprotected java.lang.StringidShortprotected ModelingKindkindprotected booleanorderedprotected java.util.List<Constraint>qualifiersprotected ReferencesemanticIdprotected java.util.Collection<SubmodelElement>values
-
Constructor Summary
Constructors Constructor Description DefaultSubmodelElementCollection()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanequals(java.lang.Object obj)booleangetAllowDuplicates()If allowDuplicates=true then it is allowed that the collection contains the same element several times.java.lang.StringgetCategory()The category is a value that gives further meta information w.r.t. to the class of the element.java.util.List<LangString>getDescriptions()Description or comments on the element.java.util.List<LangString>getDisplayNames()Display name.java.util.List<EmbeddedDataSpecification>getEmbeddedDataSpecifications()Link to the included description of the Data Specification.java.util.List<Extension>getExtensions()An extension of the element.java.lang.StringgetIdShort()Identifying string of the element within its name space.ModelingKindgetKind()ModelingKind of the element: either type or instance.booleangetOrdered()If ordered=false then the elements in the property collection are not ordered.java.util.List<Constraint>getQualifiers()Additional qualification of a qualifiable element.ReferencegetSemanticId()Points to the Expression Semantic of the Submodels The semantic id might refer to an external information source, which explains the formulation of the submodel (for example an PDF if a standard).java.util.Collection<SubmodelElement>getValues()Submodel element contained in the collection.inthashCode()voidsetAllowDuplicates(boolean allowDuplicates)If allowDuplicates=true then it is allowed that the collection contains the same element several times.voidsetCategory(java.lang.String category)The category is a value that gives further meta information w.r.t. to the class of the element.voidsetDescriptions(java.util.List<LangString> descriptions)Description or comments on the element.voidsetDisplayNames(java.util.List<LangString> displayNames)Display name.voidsetEmbeddedDataSpecifications(java.util.List<EmbeddedDataSpecification> embeddedDataSpecifications)Link to the included description of the Data Specification.voidsetExtensions(java.util.List<Extension> extensions)An extension of the element.voidsetIdShort(java.lang.String idShort)Identifying string of the element within its name space.voidsetKind(ModelingKind kind)ModelingKind of the element: either type or instance.voidsetOrdered(boolean ordered)If ordered=false then the elements in the property collection are not ordered.voidsetQualifiers(java.util.List<Constraint> qualifiers)Additional qualification of a qualifiable element.voidsetSemanticId(Reference semanticId)Points to the Expression Semantic of the Submodels The semantic id might refer to an external information source, which explains the formulation of the submodel (for example an PDF if a standard).voidsetValues(java.util.Collection<SubmodelElement> values)Submodel element contained in the collection.
-
-
-
Field Detail
-
embeddedDataSpecifications
protected java.util.List<EmbeddedDataSpecification> embeddedDataSpecifications
-
extensions
protected java.util.List<Extension> extensions
-
kind
protected ModelingKind kind
-
semanticId
protected Reference semanticId
-
qualifiers
protected java.util.List<Constraint> qualifiers
-
category
protected java.lang.String category
-
descriptions
protected java.util.List<LangString> descriptions
-
displayNames
protected java.util.List<LangString> displayNames
-
idShort
protected java.lang.String idShort
-
allowDuplicates
protected boolean allowDuplicates
-
ordered
protected boolean ordered
-
values
protected java.util.Collection<SubmodelElement> values
-
-
Method Detail
-
hashCode
public int hashCode()
- Overrides:
hashCodein classjava.lang.Object
-
equals
public boolean equals(java.lang.Object obj)
- Overrides:
equalsin classjava.lang.Object
-
getAllowDuplicates
public boolean getAllowDuplicates()
Description copied from interface:SubmodelElementCollectionIf allowDuplicates=true then it is allowed that the collection contains the same element several times. Default = false Constraint AASd-026: If allowDuplicates==false then it is not allowed that the collection contains several elements with the same semantics (i.e. the same semanticId). More information under https://admin-shell.io/aas/3/0/RC01/SubmodelElementCollection/allowDuplicates- Specified by:
getAllowDuplicatesin interfaceSubmodelElementCollection- Returns:
- Returns the boolean for the property allowDuplicates.
-
setAllowDuplicates
public void setAllowDuplicates(boolean allowDuplicates)
Description copied from interface:SubmodelElementCollectionIf allowDuplicates=true then it is allowed that the collection contains the same element several times. Default = false Constraint AASd-026: If allowDuplicates==false then it is not allowed that the collection contains several elements with the same semantics (i.e. the same semanticId). More information under https://admin-shell.io/aas/3/0/RC01/SubmodelElementCollection/allowDuplicates- Specified by:
setAllowDuplicatesin interfaceSubmodelElementCollection- Parameters:
allowDuplicates- desired value for the property allowDuplicates.
-
getOrdered
public boolean getOrdered()
Description copied from interface:SubmodelElementCollectionIf ordered=false then the elements in the property collection are not ordered. If ordered=true then the elements in the collection are ordered. Default = false More information under https://admin-shell.io/aas/3/0/RC01/SubmodelElementCollection/ordered- Specified by:
getOrderedin interfaceSubmodelElementCollection- Returns:
- Returns the boolean for the property ordered.
-
setOrdered
public void setOrdered(boolean ordered)
Description copied from interface:SubmodelElementCollectionIf ordered=false then the elements in the property collection are not ordered. If ordered=true then the elements in the collection are ordered. Default = false More information under https://admin-shell.io/aas/3/0/RC01/SubmodelElementCollection/ordered- Specified by:
setOrderedin interfaceSubmodelElementCollection- Parameters:
ordered- desired value for the property ordered.
-
getValues
public java.util.Collection<SubmodelElement> getValues()
Description copied from interface:SubmodelElementCollectionSubmodel element contained in the collection. More information under https://admin-shell.io/aas/3/0/RC01/SubmodelElementCollection/value- Specified by:
getValuesin interfaceSubmodelElementCollection- Returns:
- Returns the Collection of SubmodelElements for the property values.
-
setValues
public void setValues(java.util.Collection<SubmodelElement> values)
Description copied from interface:SubmodelElementCollectionSubmodel element contained in the collection. More information under https://admin-shell.io/aas/3/0/RC01/SubmodelElementCollection/value- Specified by:
setValuesin interfaceSubmodelElementCollection- Parameters:
values- desired value for the property values.
-
getCategory
public java.lang.String getCategory()
Description copied from interface:ReferableThe category is a value that gives further meta information w.r.t. to the class of the element. It affects the expected existence of attributes and the applicability of constraints. More information under https://admin-shell.io/aas/3/0/RC01/Referable/category- Specified by:
getCategoryin interfaceReferable- Returns:
- Returns the String for the property category.
-
setCategory
public void setCategory(java.lang.String category)
Description copied from interface:ReferableThe category is a value that gives further meta information w.r.t. to the class of the element. It affects the expected existence of attributes and the applicability of constraints. More information under https://admin-shell.io/aas/3/0/RC01/Referable/category- Specified by:
setCategoryin interfaceReferable- Parameters:
category- desired value for the property category.
-
getDescriptions
public java.util.List<LangString> getDescriptions()
Description copied from interface:ReferableDescription or comments on the element. The description can be provided in several languages. More information under https://admin-shell.io/aas/3/0/RC01/Referable/description- Specified by:
getDescriptionsin interfaceReferable- Returns:
- Returns the List of LangStrings for the property descriptions.
-
setDescriptions
public void setDescriptions(java.util.List<LangString> descriptions)
Description copied from interface:ReferableDescription or comments on the element. The description can be provided in several languages. More information under https://admin-shell.io/aas/3/0/RC01/Referable/description- Specified by:
setDescriptionsin interfaceReferable- Parameters:
descriptions- desired value for the property descriptions.
-
getDisplayNames
public java.util.List<LangString> getDisplayNames()
Description copied from interface:ReferableDisplay name. Can be provided in several languages. More information under https://admin-shell.io/aas/3/0/RC01/Referable/displayName- Specified by:
getDisplayNamesin interfaceReferable- Returns:
- Returns the List of LangStrings for the property displayNames.
-
setDisplayNames
public void setDisplayNames(java.util.List<LangString> displayNames)
Description copied from interface:ReferableDisplay name. Can be provided in several languages. More information under https://admin-shell.io/aas/3/0/RC01/Referable/displayName- Specified by:
setDisplayNamesin interfaceReferable- Parameters:
displayNames- desired value for the property displayNames.
-
getIdShort
public java.lang.String getIdShort()
Description copied from interface:ReferableIdentifying string of the element within its name space. Constraint AASd-002: idShort shall only feature letters, digits, underscore ('_'); starting with a small letter. I.e. [a-z][a-zA-Z0-9_]+. Constraint AASd-003: idShort shall be matched case-insensitive. Constraint AASd-022: idShort of non-identifiable referables shall be unqiue in its namespace. Note: In case the element is a property and the property has a semantic definition (HasSemantics) the idShort is typically identical to the short name in English. Note: In case of an identifiable element idShort is optional but recommended to be defined. It can be used for unique reference in its name space and thus allows better usability and a more performant implementation. In this case it is similar to the 'BrowserPath' in OPC UA. More information under https://admin-shell.io/aas/3/0/RC01/Referable/idShort- Specified by:
getIdShortin interfaceReferable- Returns:
- Returns the String for the property idShort.
-
setIdShort
public void setIdShort(java.lang.String idShort)
Description copied from interface:ReferableIdentifying string of the element within its name space. Constraint AASd-002: idShort shall only feature letters, digits, underscore ('_'); starting with a small letter. I.e. [a-z][a-zA-Z0-9_]+. Constraint AASd-003: idShort shall be matched case-insensitive. Constraint AASd-022: idShort of non-identifiable referables shall be unqiue in its namespace. Note: In case the element is a property and the property has a semantic definition (HasSemantics) the idShort is typically identical to the short name in English. Note: In case of an identifiable element idShort is optional but recommended to be defined. It can be used for unique reference in its name space and thus allows better usability and a more performant implementation. In this case it is similar to the 'BrowserPath' in OPC UA. More information under https://admin-shell.io/aas/3/0/RC01/Referable/idShort- Specified by:
setIdShortin interfaceReferable- Parameters:
idShort- desired value for the property idShort.
-
getExtensions
public java.util.List<Extension> getExtensions()
Description copied from interface:HasExtensionsAn extension of the element. More information under https://admin-shell.io/aas/3/0/RC01/HasExtensions/extension- Specified by:
getExtensionsin interfaceHasExtensions- Returns:
- Returns the List of Extensions for the property extensions.
-
setExtensions
public void setExtensions(java.util.List<Extension> extensions)
Description copied from interface:HasExtensionsAn extension of the element. More information under https://admin-shell.io/aas/3/0/RC01/HasExtensions/extension- Specified by:
setExtensionsin interfaceHasExtensions- Parameters:
extensions- desired value for the property extensions.
-
getQualifiers
public java.util.List<Constraint> getQualifiers()
Description copied from interface:QualifiableAdditional qualification of a qualifiable element. More information under https://admin-shell.io/aas/3/0/RC01/Qualifiable/qualifier- Specified by:
getQualifiersin interfaceQualifiable- Returns:
- Returns the List of Constraints for the property qualifiers.
-
setQualifiers
public void setQualifiers(java.util.List<Constraint> qualifiers)
Description copied from interface:QualifiableAdditional qualification of a qualifiable element. More information under https://admin-shell.io/aas/3/0/RC01/Qualifiable/qualifier- Specified by:
setQualifiersin interfaceQualifiable- Parameters:
qualifiers- desired value for the property qualifiers.
-
getEmbeddedDataSpecifications
public java.util.List<EmbeddedDataSpecification> getEmbeddedDataSpecifications()
Description copied from interface:HasDataSpecificationLink to the included description of the Data Specification. More information under https://admin-shell.io/aas/3/0/RC01/HasDataSpecification/embeddedDataSpecification- Specified by:
getEmbeddedDataSpecificationsin interfaceHasDataSpecification- Returns:
- Returns the List of EmbeddedDataSpecifications for the property embeddedDataSpecifications.
-
setEmbeddedDataSpecifications
public void setEmbeddedDataSpecifications(java.util.List<EmbeddedDataSpecification> embeddedDataSpecifications)
Description copied from interface:HasDataSpecificationLink to the included description of the Data Specification. More information under https://admin-shell.io/aas/3/0/RC01/HasDataSpecification/embeddedDataSpecification- Specified by:
setEmbeddedDataSpecificationsin interfaceHasDataSpecification- Parameters:
embeddedDataSpecifications- desired value for the property embeddedDataSpecifications.
-
getKind
public ModelingKind getKind()
Description copied from interface:HasKindModelingKind of the element: either type or instance. More information under https://admin-shell.io/aas/3/0/RC01/HasKind/kind
-
setKind
public void setKind(ModelingKind kind)
Description copied from interface:HasKindModelingKind of the element: either type or instance. More information under https://admin-shell.io/aas/3/0/RC01/HasKind/kind
-
getSemanticId
public Reference getSemanticId()
Description copied from interface:HasSemanticsPoints to the Expression Semantic of the Submodels The semantic id might refer to an external information source, which explains the formulation of the submodel (for example an PDF if a standard). More information under https://admin-shell.io/aas/3/0/RC01/HasSemantics/semanticId- Specified by:
getSemanticIdin interfaceHasSemantics- Returns:
- Returns the Reference for the property semanticId.
-
setSemanticId
public void setSemanticId(Reference semanticId)
Description copied from interface:HasSemanticsPoints to the Expression Semantic of the Submodels The semantic id might refer to an external information source, which explains the formulation of the submodel (for example an PDF if a standard). More information under https://admin-shell.io/aas/3/0/RC01/HasSemantics/semanticId- Specified by:
setSemanticIdin interfaceHasSemantics- Parameters:
semanticId- desired value for the property semanticId.
-
-