Record Class TemplateExecutionResult
java.lang.Object
java.lang.Record
org.gcube.informationsystem.resourceregistry.queries.templates.TemplateExecutionResult
- Record Components:
json- serialized JSON array of query resultsprojection- whether the executed query was projection-based (_emitpresent)ignoredParams- the supplied execution keys that declare no template variable, reported back to the client via anIgnoredFieldsWarning
public record TemplateExecutionResult(String json, boolean projection, Set<String> ignoredParams)
extends Record
Carries the raw JSON array produced by executing a Query Template together with the
facts about the execution that the caller (
QueryTemplatePolicyEnforcementPoint)
cannot otherwise observe: whether the template's query was projection-based (contained an
_emit block), and which supplied keys declare no variable. Per the Canonical
_emit Precedence Rules (appendix/07-json-query-syntax-reference.md), a
projecting query ignores metadataPolicy/contextsPolicy entirely, and the PEP
needs projection to report that back to the client via a QueryParameterWarning.- Author:
- Luca Frosini (ISTI - CNR)
-
Constructor Summary
ConstructorsConstructorDescriptionTemplateExecutionResult(String json, boolean projection, Set<String> ignoredParams) Creates an instance of aTemplateExecutionResultrecord class. -
Method Summary
Modifier and TypeMethodDescriptionfinal booleanIndicates whether some other object is "equal to" this one.final inthashCode()Returns a hash code value for this object.Returns the value of theignoredParamsrecord component.json()Returns the value of thejsonrecord component.booleanReturns the value of theprojectionrecord component.final StringtoString()Returns a string representation of this record class.
-
Constructor Details
-
TemplateExecutionResult
Creates an instance of aTemplateExecutionResultrecord class.- Parameters:
json- the value for thejsonrecord componentprojection- the value for theprojectionrecord componentignoredParams- the value for theignoredParamsrecord component
-
-
Method Details
-
toString
Returns a string representation of this record class. The representation contains the name of the class, followed by the name and value of each of the record components. -
hashCode
public final int hashCode()Returns a hash code value for this object. The value is derived from the hash code of each of the record components. -
equals
Indicates whether some other object is "equal to" this one. The objects are equal if the other object is of the same class and if all the record components are equal. Reference components are compared withObjects::equals(Object,Object); primitive components are compared with '=='. -
json
Returns the value of thejsonrecord component.- Returns:
- the value of the
jsonrecord component
-
projection
public boolean projection()Returns the value of theprojectionrecord component.- Returns:
- the value of the
projectionrecord component
-
ignoredParams
Returns the value of theignoredParamsrecord component.- Returns:
- the value of the
ignoredParamsrecord component
-