Interface DiscoveryFacet
-
- All Superinterfaces:
org.gcube.informationsystem.base.reference.Element,org.gcube.informationsystem.model.reference.entities.Entity,org.gcube.informationsystem.base.reference.entities.EntityElement,org.gcube.informationsystem.model.reference.ERElement,org.gcube.informationsystem.model.reference.entities.Facet,org.gcube.informationsystem.base.reference.IdentifiableElement,org.gcube.informationsystem.model.reference.ModelElement,org.gcube.informationsystem.base.reference.SchemaMixedElement,Serializable
- All Known Implementing Classes:
DiscoveryFacetImpl
@TypeMetadata(name="DiscoveryFacet", description="This facet defines a group of resources to be discovered and potentially selected for inclusion in a context. It enables dynamic resource discovery through queries and supports selection constraints.", version="1.0.0") @Change(version="1.0.0", description="First Version") public interface DiscoveryFacet extends org.gcube.informationsystem.model.reference.entities.Facet- Author:
- Luca Frosini (ISTI - CNR)
-
-
Field Summary
Fields Modifier and Type Field Description static StringDESCRIPTION_PROPERTYstatic StringGROUP_PROPERTYstatic StringMAX_PROPERTYstatic StringMIN_PROPERTYstatic StringNAMEstatic StringQUERIES_PROPERTYstatic StringQUERY_TEMPLATES_PROPERTY-
Fields inherited from interface org.gcube.informationsystem.base.reference.Element
DATETIME_PATTERN, TYPE_PROPERTY
-
Fields inherited from interface org.gcube.informationsystem.model.reference.ERElement
CONTEXTS_PROPERTY
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description voidaddQuery(org.gcube.com.fasterxml.jackson.databind.node.ObjectNode query)voidaddQueryTemplates(org.gcube.informationsystem.queries.templates.reference.properties.QueryTemplateReference queryTemplates)StringgetDescription()StringgetGroup()IntegergetMax()intgetMin()org.gcube.com.fasterxml.jackson.databind.node.ArrayNodegetQueries()List<org.gcube.informationsystem.queries.templates.reference.properties.QueryTemplateReference>getQueryTemplates()voidsetDescription(String description)voidsetGroup(String group)voidsetMax(Integer max)voidsetMin(int min)voidsetQueries(org.gcube.com.fasterxml.jackson.databind.node.ArrayNode queries)voidsetQueryTemplates(List<org.gcube.informationsystem.queries.templates.reference.properties.QueryTemplateReference> queryTemplates)-
Methods inherited from interface org.gcube.informationsystem.base.reference.entities.EntityElement
getID, getMetadata, setID, setMetadata
-
-
-
-
Field Detail
-
NAME
static final String NAME
- See Also:
- Constant Field Values
-
GROUP_PROPERTY
static final String GROUP_PROPERTY
- See Also:
- Constant Field Values
-
DESCRIPTION_PROPERTY
static final String DESCRIPTION_PROPERTY
- See Also:
- Constant Field Values
-
MAX_PROPERTY
static final String MAX_PROPERTY
- See Also:
- Constant Field Values
-
MIN_PROPERTY
static final String MIN_PROPERTY
- See Also:
- Constant Field Values
-
QUERIES_PROPERTY
static final String QUERIES_PROPERTY
- See Also:
- Constant Field Values
-
QUERY_TEMPLATES_PROPERTY
static final String QUERY_TEMPLATES_PROPERTY
- See Also:
- Constant Field Values
-
-
Method Detail
-
getGroup
@ISProperty(name="group", description="The name identifier of the resource group to discover. This serves as a unique identifier for organizing and categorizing discovered resources.", mandatory=true, nullable=false) String getGroup()
-
setGroup
void setGroup(String group)
-
getDescription
@ISProperty(name="description", description="Human-readable description displayed to users explaining what type of resources will be discovered in this group") String getDescription()
-
setDescription
void setDescription(String description)
-
getMin
@ISProperty(name="min", description="Minimum number of resources that must be selected from this group. Default is 0 (optional selection).", readonly=false, mandatory=true, nullable=false, defaultValue="0") int getMin()
-
setMin
void setMin(int min)
-
getMax
@ISProperty(name="max", description="Maximum number of resources that can be selected from this group. Null means unlimited selection.", readonly=false, mandatory=true, nullable=true, defaultValue="null") Integer getMax()
-
setMax
void setMax(Integer max)
-
getQueries
@ISProperty(name="queries", description="Array of JSON query objects used to discover resources. Each query is executed and results are combined (union of all query results).", readonly=false, mandatory=true, nullable=true, defaultValue="null") org.gcube.com.fasterxml.jackson.databind.node.ArrayNode getQueries()
-
setQueries
void setQueries(org.gcube.com.fasterxml.jackson.databind.node.ArrayNode queries)
-
addQuery
void addQuery(org.gcube.com.fasterxml.jackson.databind.node.ObjectNode query)
-
getQueryTemplates
@ISProperty(name="queryTemplates", description="Array of query template references with parameters. These are named, reusable query definitions that can accept variables for dynamic resource discovery.", readonly=false, mandatory=true, nullable=true, defaultValue="null") List<org.gcube.informationsystem.queries.templates.reference.properties.QueryTemplateReference> getQueryTemplates()
-
setQueryTemplates
void setQueryTemplates(List<org.gcube.informationsystem.queries.templates.reference.properties.QueryTemplateReference> queryTemplates)
-
addQueryTemplates
void addQueryTemplates(org.gcube.informationsystem.queries.templates.reference.properties.QueryTemplateReference queryTemplates)
-
-