Interface PropertyType
- All Superinterfaces:
Element,IdentifiableElement,PropertyElement,Serializable,Type
- All Known Implementing Classes:
PropertyTypeImpl
@TypeMetadata(name="PropertyType",
description="This type provides information for any PropertyType",
version="1.0.0")
@Change(version="1.0.0",
description="First Version")
public interface PropertyType
extends PropertyElement, Type
Defines the type of a
Property.- Author:
- Luca Frosini (ISTI - CNR)
-
Field Summary
FieldsFields inherited from interface org.gcube.informationsystem.base.reference.Element
DATETIME_PATTERN, TYPE_PROPERTYFields inherited from interface org.gcube.informationsystem.base.reference.IdentifiableElement
ID_PROPERTY, METADATA_PROPERTYFields inherited from interface org.gcube.informationsystem.types.reference.Type
ABSTRACT_PROPERTY, CHANGELOG_PROPERTY, DESCRIPTION_PROPERTY, EXTENDED_TYPES_PROPERTY, FINAL_PROPERTY, NAME_PROPERTY, PROPERTIES_PROPERTY, VERSION_PROPERTY -
Method Summary
Modifier and TypeMethodDescriptionReturns the description of the type.Returns the set of types that this type extends.getID()Returns the unique identifier (UUID) of the element.Returns the metadata associated with the element.getName()Returns the name of the type.Returns the set of properties defined by this type.booleanChecks if the type is abstract.voidSets the unique identifier (UUID) for the element.voidsetMetadata(Metadata metadata) Sets the metadata for the element.Methods inherited from interface org.gcube.informationsystem.base.reference.Element
getTypeNameMethods inherited from interface org.gcube.informationsystem.types.reference.Type
getAccessType, getChangelog, getChangelogWithVersionAsString, getVersion, getVersionAsString, isFinal
-
Field Details
-
NAME
The name of the PropertyType.- See Also:
-
-
Method Details
-
getID
@ISProperty(name="id", description="This UUID is be used to identify the instance univocally.", readonly=true, mandatory=true, nullable=false) UUID getID()Returns the unique identifier (UUID) of the element.- Specified by:
getIDin interfaceIdentifiableElement- Specified by:
getIDin interfaceType- Returns:
- The
UUIDof the element.
-
setID
Sets the unique identifier (UUID) for the element.- Specified by:
setIDin interfaceIdentifiableElement- Specified by:
setIDin interfaceType- Parameters:
uuid- TheUUIDto set.
-
getMetadata
@ISProperty(name="metadata", mandatory=true, nullable=false, description="Metadata associated with the instance that is automatically created/updated by the system.") Metadata getMetadata()Returns the metadata associated with the element.The metadata is included in JSON serialization only if it is not null.
- Specified by:
getMetadatain interfaceIdentifiableElement- Specified by:
getMetadatain interfaceType- Returns:
- The
Metadataof the element, ornullif none is set.
-
setMetadata
Sets the metadata for the element.- Specified by:
setMetadatain interfaceIdentifiableElement- Specified by:
setMetadatain interfaceType- Parameters:
metadata- TheMetadatato associate with the element.
-
getName
Returns the name of the type. -
getDescription
@ISProperty(name="description", readonly=false, mandatory=true, nullable=false) String getDescription()Returns the description of the type.- Specified by:
getDescriptionin interfaceType- Returns:
- The type description.
-
isAbstract
Checks if the type is abstract.- Specified by:
isAbstractin interfaceType- Returns:
trueif the type is abstract,falseotherwise.
-
getExtendedTypes
@ISProperty(name="extendedTypes", readonly=true, mandatory=true, nullable=false) Set<String> getExtendedTypes()Returns the set of types that this type extends.- Specified by:
getExtendedTypesin interfaceType- Returns:
- A set of parent type names.
-
getProperties
@ISProperty(name="properties", readonly=false, mandatory=true, nullable=false) Set<PropertyDefinition> getProperties()Returns the set of properties defined by this type.- Specified by:
getPropertiesin interfaceType- Returns:
- A set of
PropertyDefinitions.
-