- All Superinterfaces:
org.gcube.informationsystem.base.reference.Element,org.gcube.informationsystem.model.reference.ERElement,org.gcube.informationsystem.base.reference.IdentifiableElement,org.gcube.informationsystem.model.reference.relations.IsRelatedTo<Out,,In> org.gcube.informationsystem.model.reference.ModelElement,org.gcube.informationsystem.model.reference.relations.Relation<Out,,In> org.gcube.informationsystem.base.reference.relations.RelationElement<Out,,In> org.gcube.informationsystem.base.reference.SchemaMixedElement,Serializable
- All Known Subinterfaces:
IsPluginOf<Out,In>
- All Known Implementing Classes:
DependsOnImpl,IsPluginOfImpl
@TypeMetadata(name="DependsOn",
description="DependsOn indicates that a [Software](type:Software) requires another one to work. This relation must not be confused with [Requires](type:Requires).",
version="1.1.0")
@Change(version="1.1.0",description="Added \'optional\', moved from [SoftwareFacet](type:SoftwareFacet): whether the target Software is optional for the source.") @Change(version="1.0.0",description="First Version")
public interface DependsOn<Out extends Software,In extends Software>
extends org.gcube.informationsystem.model.reference.relations.IsRelatedTo<Out,In>
DependsOn indicates that a
Software requires another one to work.
This relation must not be confused with Requires.- Author:
- Luca Frosini (ISTI - CNR)
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final StringThe name of the DependsOn relation type.static final StringThe name of 'optional' propertystatic final StringThe version of the DependsOn relation type.Fields inherited from interface org.gcube.informationsystem.base.reference.Element
DATETIME_PATTERN, REDACTED, TYPE_PROPERTY, UNKNOWN_USERFields inherited from interface org.gcube.informationsystem.model.reference.ERElement
CONTEXTS_PROPERTYFields inherited from interface org.gcube.informationsystem.base.reference.IdentifiableElement
ID_PROPERTY, METADATA_PROPERTYFields inherited from interface org.gcube.informationsystem.model.reference.ModelElement
EXPECTED_TYPE_PROPERTY, SUPERTYPES_PROPERTYFields inherited from interface org.gcube.informationsystem.model.reference.relations.Relation
PROPAGATION_CONSTRAINT_PROPERTYFields inherited from interface org.gcube.informationsystem.base.reference.relations.RelationElement
SOURCE_PROPERTY, TARGET_PROPERTY -
Method Summary
Modifier and TypeMethodDescriptiongetDefaultInstance(Out out, In in) Returns a default instance of DependsOnbooleanWhether the target Software is optional for the source, e.g., the optional flag of a dependency in maven.voidsetOptional(boolean optional) Sets whether the target Software is optional for the source.Methods inherited from interface org.gcube.informationsystem.base.reference.Element
getTypeNameMethods inherited from interface org.gcube.informationsystem.model.reference.ERElement
getContextsMethods inherited from interface org.gcube.informationsystem.model.reference.ModelElement
getExpectedType, getSupertypesMethods inherited from interface org.gcube.informationsystem.model.reference.relations.Relation
getAdditionalProperties, getAdditionalProperty, getPropagationConstraint, getSource, getTarget, setAdditionalProperties, setAdditionalProperty, setPropagationConstraint, setSource, setTargetMethods inherited from interface org.gcube.informationsystem.base.reference.relations.RelationElement
getID, getMetadata, setID, setMetadata
-
Field Details
-
NAME
The name of the DependsOn relation type.- See Also:
-
VERSION
The version of the DependsOn relation type.- See Also:
-
OPTIONAL_PROPERTY
The name of 'optional' property- See Also:
-
-
Method Details
-
getDefaultInstance
static <Out extends Software,In extends Software> DependsOn<Out,In> getDefaultInstance(Out out, In in) Returns a default instance of DependsOn- Type Parameters:
Out- the source SoftwareIn- the target Software- Parameters:
out- the source Software instancein- the target Software instance- Returns:
- a default instance of DependsOn
-
isOptional
@ISProperty(name="optional", description="Whether the target Software is optional for the source, e.g., the optional flag of a dependency in maven.") boolean isOptional()Whether the target Software is optional for the source, e.g., the optional flag of a dependency in maven.- Returns:
- true if the target Software is optional for the source
-
setOptional
void setOptional(boolean optional) Sets whether the target Software is optional for the source.- Parameters:
optional- true if the target Software is optional for the source
-