diff --git a/api-spec.json b/api-spec.json index 774f91f..47f4e45 100644 --- a/api-spec.json +++ b/api-spec.json @@ -14392,7 +14392,7 @@ } }, "NxDimension": { - "description": "Either qDef or qLibraryId must be set, but not both.\nIf the dimension is set in the hypercube and not in the library, this dimension cannot be shared with other objects.\nA dimension that is set in the library can be used by many objects.", + "description": "The fields or expressions in the dimension are either defined in qDef or in the master dimension referred to by qLibraryId. If qLibraryId is set then the qFieldDefs, qFieldLabels, qGrouping, qLabelExpression and qAlias of the master dimension will be used.\nIf the dimension is set in the hypercube and not in the library, this dimension cannot be shared with other objects.\nA dimension that is set in the library can be used by many objects.", "type": "struct", "entries": { "AttributeDimensions": { @@ -15129,7 +15129,7 @@ } }, "NxMeasure": { - "description": "Either qDef or qLibraryId must be set, but not both.\nIf the measure is set in the hypercube and not in the library, this measure cannot be shared with other objects.\nA measure that is set in the library can be used by many objects.\n\nexpressions are complementary expressions associated to a measure. For example, you can decide to change the background color of a visualization depending on the values of the measure.\nAttribute expressions do not affect the layout of an object. The sorting order is unchanged.", + "description": "Either qDef or qLibraryId must be set, but not both. If both are set, the library measure's qDef and qLabel will be used.\nIf the measure is set in the hypercube and not in the library, this measure cannot be shared with other objects.\nA measure that is set in the library can be used by many objects.\n\nexpressions are complementary expressions associated to a measure. For example, you can decide to change the background color of a visualization depending on the values of the measure.\nAttribute expressions do not affect the layout of an object. The sorting order is unchanged.", "type": "struct", "entries": { "AttributeDimensions": { diff --git a/qix_generated.go b/qix_generated.go index e2f1b3c..85c2db0 100644 --- a/qix_generated.go +++ b/qix_generated.go @@ -1,4 +1,4 @@ -// Code generated by QIX generator (./schema/generate.go) for Qlik Associative Engine version 12.2064.0 . DO NOT EDIT. +// Code generated by QIX generator (./schema/generate.go) for Qlik Associative Engine version 12.2073.0 . DO NOT EDIT. package enigma @@ -8,7 +8,7 @@ import ( ) // Version of the schema used to generate the enigma.go QIX API -const QIX_SCHEMA_VERSION = "12.2064.0" +const QIX_SCHEMA_VERSION = "12.2073.0" // Deprecated: This will be removed in a future version type AlfaNumString struct { @@ -2771,7 +2771,7 @@ type NxDerivedGroup struct { FieldDefs []string `json:"qFieldDefs,omitempty"` } -// Either qDef or qLibraryId must be set, but not both. +// The fields or expressions in the dimension are either defined in qDef or in the master dimension referred to by qLibraryId. If qLibraryId is set then the qFieldDefs, qFieldLabels, qGrouping, qLabelExpression and qAlias of the master dimension will be used. // If the dimension is set in the hypercube and not in the library, this dimension cannot be shared with other objects. // A dimension that is set in the library can be used by many objects. type NxDimension struct { @@ -3965,7 +3965,7 @@ type NxMatchingFieldInfo struct { Tags []string `json:"qTags,omitempty"` } -// Either qDef or qLibraryId must be set, but not both. +// Either qDef or qLibraryId must be set, but not both. If both are set, the library measure's qDef and qLabel will be used. // If the measure is set in the hypercube and not in the library, this measure cannot be shared with other objects. // A measure that is set in the library can be used by many objects. // diff --git a/schema/engine-rpc.json b/schema/engine-rpc.json index ee1ae77..6645196 100644 --- a/schema/engine-rpc.json +++ b/schema/engine-rpc.json @@ -2,7 +2,7 @@ "openrpc": "1.0.0", "info": { "title": "QIX", - "version": "12.2064.0", + "version": "12.2073.0", "description": "The JSON-RPC API over websocket that enables you to interact with the Qlik Associative Engine." }, "methods": [ @@ -15965,7 +15965,7 @@ }, "NxDimension": { "type": "object", - "description": "
Either **qDef** or **qLibraryId** must be set, but not both.
If the dimension is set in the hypercube and not in the library, this dimension cannot be shared with other objects.
A dimension that is set in the library can be used by many objects.
", + "description": "
The fields or expressions in the dimension are either defined in **qDef** or in the master dimension referred to by **qLibraryId**. If **qLibraryId** is set then the qFieldDefs, qFieldLabels, qGrouping, qLabelExpression and qAlias of the master dimension will be used.
If the dimension is set in the hypercube and not in the library, this dimension cannot be shared with other objects.
A dimension that is set in the library can be used by many objects.
", "properties": { "qLibraryId": { "type": "string", @@ -16358,7 +16358,7 @@ }, "NxMeasure": { "type": "object", - "description": "
Either **qDef** or **qLibraryId** must be set, but not both.
If the measure is set in the hypercube and not in the library, this measure cannot be shared with other objects.
A measure that is set in the library can be used by many objects.
\nexpressions are complementary expressions associated to a measure. For example, you can decide to change the background color of a visualization depending on the values of the measure.\nAttribute expressions do not affect the layout of an object. The sorting order is unchanged.\n
", + "description": "
Either **qDef** or **qLibraryId** must be set, but not both. If both are set, the library measure's qDef and qLabel will be used.
If the measure is set in the hypercube and not in the library, this measure cannot be shared with other objects.
A measure that is set in the library can be used by many objects.
\nexpressions are complementary expressions associated to a measure. For example, you can decide to change the background color of a visualization depending on the values of the measure.\nAttribute expressions do not affect the layout of an object. The sorting order is unchanged.\n
", "properties": { "qLibraryId": { "type": "string", @@ -24408,8 +24408,5 @@ } }, "x-qlik-visibility": "public", - "x-qlik-stability": "locked", - "x-qlik-categories": [ - "external/manage" - ] -} \ No newline at end of file + "x-qlik-stability": "locked" +} diff --git a/schema/generate.sh b/schema/generate.sh index 667c68d..0e5aab6 100755 --- a/schema/generate.sh +++ b/schema/generate.sh @@ -2,9 +2,18 @@ ## compares engine spec with master -wget -q https://qlik.dev/specs/json-rpc/qix.json -O ./schema/engine-rpc.json -git diff --exit-code origin/master -- ./schema/engine-rpc.json >/dev/null -if [[ $? -ne 0 ]]; then +generate() { + if [[ $QCS_HOST == "" ]]; then + echo "QCS_HOST not set" + return 1 + fi + if [[ $QCS_API_KEY == "" ]]; then + echo "QCS_API_KEY not set" + return 1 + fi + curl -s -H "Authorization: Bearer $QCS_API_KEY" https://$QCS_HOST/api/engine/openrpc | jq > ./schema/engine-rpc.json + git diff --exit-code origin/master -- ./schema/engine-rpc.json >/dev/null + if [[ $? -ne 0 ]]; then ENGINE_VERSION=$(cat ./schema/engine-rpc.json | jq -r '.info.version') echo "Generating enigma-go based on OPEN-RPC API for Qlik Associative Engine version $ENGINE_VERSION" ## generate code @@ -13,6 +22,9 @@ if [[ $? -ne 0 ]]; then go fmt ./qix_generated.go >/dev/null ## generate spec go run ./spec/generate.go -else + else echo "No changes to engine-rpc.json, nothing to do." -fi + fi +} + +generate