@finos/legend-extension-dsl-data-quality 1.0.61 → 2.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/components/{DSL_DataQuality_ClassElementDriver.d.ts → DSL_DataQuality_ElementDriver.d.ts} +17 -7
- package/lib/components/DSL_DataQuality_ElementDriver.d.ts.map +1 -0
- package/lib/components/{DSL_DataQuality_ClassElementDriver.js → DSL_DataQuality_ElementDriver.js} +70 -23
- package/lib/components/DSL_DataQuality_ElementDriver.js.map +1 -0
- package/lib/components/DSL_DataQuality_LegendStudioApplicationPlugin.d.ts.map +1 -1
- package/lib/components/DSL_DataQuality_LegendStudioApplicationPlugin.js +20 -39
- package/lib/components/DSL_DataQuality_LegendStudioApplicationPlugin.js.map +1 -1
- package/lib/components/{DSL_NewDataQualityClassValidationElement.d.ts → DSL_NewDataQualityValidationElement.d.ts} +2 -2
- package/lib/components/DSL_NewDataQualityValidationElement.d.ts.map +1 -0
- package/lib/components/DSL_NewDataQualityValidationElement.js +80 -0
- package/lib/components/DSL_NewDataQualityValidationElement.js.map +1 -0
- package/lib/components/DataQualityRelationTrialRuns.d.ts +22 -0
- package/lib/components/DataQualityRelationTrialRuns.d.ts.map +1 -0
- package/lib/components/DataQualityRelationTrialRuns.js +87 -0
- package/lib/components/DataQualityRelationTrialRuns.js.map +1 -0
- package/lib/components/{DSL_NewDataQualityServiceValidationElement.d.ts → DataQualityRelationValidationConfigurationEditor.d.ts} +2 -2
- package/lib/components/DataQualityRelationValidationConfigurationEditor.d.ts.map +1 -0
- package/lib/components/DataQualityRelationValidationConfigurationEditor.js +99 -0
- package/lib/components/DataQualityRelationValidationConfigurationEditor.js.map +1 -0
- package/lib/components/DataQualityRelationValidationEditor.d.ts +30 -0
- package/lib/components/DataQualityRelationValidationEditor.d.ts.map +1 -0
- package/lib/components/DataQualityRelationValidationEditor.js +89 -0
- package/lib/components/DataQualityRelationValidationEditor.js.map +1 -0
- package/lib/components/DataQualityResultPanel.d.ts.map +1 -1
- package/lib/components/DataQualityResultPanel.js +1 -1
- package/lib/components/DataQualityResultPanel.js.map +1 -1
- package/lib/components/DataQualityResultValues.d.ts +0 -2
- package/lib/components/DataQualityResultValues.d.ts.map +1 -1
- package/lib/components/DataQualityResultValues.js.map +1 -1
- package/lib/components/DataQualitySideBar.js +2 -2
- package/lib/components/DataQualitySideBar.js.map +1 -1
- package/lib/components/DataQualityValidationDetailPanel.d.ts +36 -0
- package/lib/components/DataQualityValidationDetailPanel.d.ts.map +1 -0
- package/lib/components/DataQualityValidationDetailPanel.js +39 -0
- package/lib/components/DataQualityValidationDetailPanel.js.map +1 -0
- package/lib/components/DataQualityValidationParametersEditor.d.ts +15 -0
- package/lib/components/DataQualityValidationParametersEditor.d.ts.map +1 -0
- package/lib/components/DataQualityValidationParametersEditor.js +129 -0
- package/lib/components/DataQualityValidationParametersEditor.js.map +1 -0
- package/lib/components/states/ConstraintState.d.ts +2 -0
- package/lib/components/states/ConstraintState.d.ts.map +1 -1
- package/lib/components/states/ConstraintState.js +2 -0
- package/lib/components/states/ConstraintState.js.map +1 -1
- package/lib/components/states/DataQualityClassValidationState.d.ts +2 -2
- package/lib/components/states/DataQualityClassValidationState.d.ts.map +1 -1
- package/lib/components/states/DataQualityClassValidationState.js +4 -4
- package/lib/components/states/DataQualityClassValidationState.js.map +1 -1
- package/lib/components/states/DataQualityRelationResultState.d.ts +46 -0
- package/lib/components/states/DataQualityRelationResultState.d.ts.map +1 -0
- package/lib/components/states/DataQualityRelationResultState.js +194 -0
- package/lib/components/states/DataQualityRelationResultState.js.map +1 -0
- package/lib/components/states/DataQualityRelationValidationConfigurationState.d.ts +73 -0
- package/lib/components/states/DataQualityRelationValidationConfigurationState.d.ts.map +1 -0
- package/lib/components/states/DataQualityRelationValidationConfigurationState.js +255 -0
- package/lib/components/states/DataQualityRelationValidationConfigurationState.js.map +1 -0
- package/lib/components/states/DataQualityRelationValidationLambdaEditorState.d.ts +32 -0
- package/lib/components/states/DataQualityRelationValidationLambdaEditorState.d.ts.map +1 -0
- package/lib/components/states/DataQualityRelationValidationLambdaEditorState.js +79 -0
- package/lib/components/states/DataQualityRelationValidationLambdaEditorState.js.map +1 -0
- package/lib/components/states/DataQualityRelationValidationState.d.ts +38 -0
- package/lib/components/states/DataQualityRelationValidationState.d.ts.map +1 -0
- package/lib/components/states/DataQualityRelationValidationState.js +119 -0
- package/lib/components/states/DataQualityRelationValidationState.js.map +1 -0
- package/lib/components/states/DataQualityResultState.d.ts.map +1 -1
- package/lib/components/states/DataQualityResultState.js +6 -3
- package/lib/components/states/DataQualityResultState.js.map +1 -1
- package/lib/components/states/DataQualityState.js +1 -1
- package/lib/components/states/DataQualityState.js.map +1 -1
- package/lib/graph/metamodel/DSL_DataQuality_HashUtils.d.ts +5 -1
- package/lib/graph/metamodel/DSL_DataQuality_HashUtils.d.ts.map +1 -1
- package/lib/graph/metamodel/DSL_DataQuality_HashUtils.js +4 -0
- package/lib/graph/metamodel/DSL_DataQuality_HashUtils.js.map +1 -1
- package/lib/graph/metamodel/DSL_DataQuality_PureGraphPlugin.d.ts.map +1 -1
- package/lib/graph/metamodel/DSL_DataQuality_PureGraphPlugin.js +2 -1
- package/lib/graph/metamodel/DSL_DataQuality_PureGraphPlugin.js.map +1 -1
- package/lib/graph/metamodel/pure/packageableElements/data-quality/DataQualityValidationConfiguration.d.ts +36 -3
- package/lib/graph/metamodel/pure/packageableElements/data-quality/DataQualityValidationConfiguration.d.ts.map +1 -1
- package/lib/graph/metamodel/pure/packageableElements/data-quality/DataQualityValidationConfiguration.js +58 -4
- package/lib/graph/metamodel/pure/packageableElements/data-quality/DataQualityValidationConfiguration.js.map +1 -1
- package/lib/graph-manager/DSL_DataQuality_GraphManagerHelper.d.ts +2 -1
- package/lib/graph-manager/DSL_DataQuality_GraphManagerHelper.d.ts.map +1 -1
- package/lib/graph-manager/DSL_DataQuality_GraphManagerHelper.js +2 -1
- package/lib/graph-manager/DSL_DataQuality_GraphManagerHelper.js.map +1 -1
- package/lib/graph-manager/DSL_DataQuality_GraphModifierHelper.d.ts +13 -2
- package/lib/graph-manager/DSL_DataQuality_GraphModifierHelper.d.ts.map +1 -1
- package/lib/graph-manager/DSL_DataQuality_GraphModifierHelper.js +36 -2
- package/lib/graph-manager/DSL_DataQuality_GraphModifierHelper.js.map +1 -1
- package/lib/graph-manager/DSL_DataQuality_PureGraphManagerPlugin.d.ts.map +1 -1
- package/lib/graph-manager/DSL_DataQuality_PureGraphManagerPlugin.js +5 -2
- package/lib/graph-manager/DSL_DataQuality_PureGraphManagerPlugin.js.map +1 -1
- package/lib/graph-manager/action/changeDetection/DSL_DataQuality_ObserverHelper.d.ts +5 -1
- package/lib/graph-manager/action/changeDetection/DSL_DataQuality_ObserverHelper.d.ts.map +1 -1
- package/lib/graph-manager/action/changeDetection/DSL_DataQuality_ObserverHelper.js +29 -2
- package/lib/graph-manager/action/changeDetection/DSL_DataQuality_ObserverHelper.js.map +1 -1
- package/lib/graph-manager/protocol/pure/DSL_DataQuality_PureGraphManagerExtension.d.ts +6 -5
- package/lib/graph-manager/protocol/pure/DSL_DataQuality_PureGraphManagerExtension.d.ts.map +1 -1
- package/lib/graph-manager/protocol/pure/DSL_DataQuality_PureGraphManagerExtension.js.map +1 -1
- package/lib/graph-manager/protocol/pure/DSL_DataQuality_PureProtocolProcessorPlugin.d.ts +1 -1
- package/lib/graph-manager/protocol/pure/DSL_DataQuality_PureProtocolProcessorPlugin.d.ts.map +1 -1
- package/lib/graph-manager/protocol/pure/DSL_DataQuality_PureProtocolProcessorPlugin.js +34 -40
- package/lib/graph-manager/protocol/pure/DSL_DataQuality_PureProtocolProcessorPlugin.js.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/V1_DSL_Data_Quality_PureGraphManagerExtension.d.ts +8 -6
- package/lib/graph-manager/protocol/pure/v1/V1_DSL_Data_Quality_PureGraphManagerExtension.d.ts.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/V1_DSL_Data_Quality_PureGraphManagerExtension.js +19 -12
- package/lib/graph-manager/protocol/pure/v1/V1_DSL_Data_Quality_PureGraphManagerExtension.js.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/{V1_DataQualityConstraintsConfiguration.d.ts → V1_DataQualityValidationConfiguration.d.ts} +26 -4
- package/lib/graph-manager/protocol/pure/v1/V1_DataQualityValidationConfiguration.d.ts.map +1 -0
- package/lib/graph-manager/protocol/pure/v1/{V1_DataQualityConstraintsConfiguration.js → V1_DataQualityValidationConfiguration.js} +49 -4
- package/lib/graph-manager/protocol/pure/v1/V1_DataQualityValidationConfiguration.js.map +1 -0
- package/lib/graph-manager/protocol/pure/v1/transformation/V1_DSL_DataQuality_ValueSpecificationBuilderHelper.d.ts +7 -3
- package/lib/graph-manager/protocol/pure/v1/transformation/V1_DSL_DataQuality_ValueSpecificationBuilderHelper.d.ts.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/V1_DSL_DataQuality_ValueSpecificationBuilderHelper.js +43 -3
- package/lib/graph-manager/protocol/pure/v1/transformation/V1_DSL_DataQuality_ValueSpecificationBuilderHelper.js.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/V1_DSL_DataQuality_ValueSpecificationTransformer.d.ts +6 -3
- package/lib/graph-manager/protocol/pure/v1/transformation/V1_DSL_DataQuality_ValueSpecificationTransformer.d.ts.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/V1_DSL_DataQuality_ValueSpecificationTransformer.js +39 -2
- package/lib/graph-manager/protocol/pure/v1/transformation/V1_DSL_DataQuality_ValueSpecificationTransformer.js.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/V1_DSL_DataQuality_ProtocolHelper.d.ts +5 -2
- package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/V1_DSL_DataQuality_ProtocolHelper.d.ts.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/V1_DSL_DataQuality_ProtocolHelper.js +27 -9
- package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/V1_DSL_DataQuality_ProtocolHelper.js.map +1 -1
- package/lib/index.css +2 -2
- package/lib/index.css.map +1 -1
- package/lib/package.json +1 -1
- package/package.json +7 -7
- package/src/components/{DSL_DataQuality_ClassElementDriver.tsx → DSL_DataQuality_ElementDriver.tsx} +87 -18
- package/src/components/DSL_DataQuality_LegendStudioApplicationPlugin.tsx +33 -48
- package/src/components/DSL_NewDataQualityValidationElement.tsx +208 -0
- package/src/components/DataQualityRelationTrialRuns.tsx +288 -0
- package/src/components/DataQualityRelationValidationConfigurationEditor.tsx +364 -0
- package/src/components/DataQualityRelationValidationEditor.tsx +290 -0
- package/src/components/DataQualityResultPanel.tsx +1 -4
- package/src/components/DataQualityResultValues.tsx +1 -5
- package/src/components/DataQualitySideBar.tsx +2 -2
- package/src/components/DataQualityValidationDetailPanel.tsx +182 -0
- package/src/components/DataQualityValidationParametersEditor.tsx +355 -0
- package/src/components/states/ConstraintState.ts +2 -0
- package/src/components/states/DataQualityClassValidationState.ts +5 -5
- package/src/components/states/DataQualityRelationResultState.ts +274 -0
- package/src/components/states/DataQualityRelationValidationConfigurationState.ts +429 -0
- package/src/components/states/DataQualityRelationValidationLambdaEditorState.ts +138 -0
- package/src/components/states/DataQualityRelationValidationState.ts +180 -0
- package/src/components/states/DataQualityResultState.ts +6 -8
- package/src/components/states/DataQualityState.ts +1 -1
- package/src/graph/metamodel/DSL_DataQuality_HashUtils.ts +4 -0
- package/src/graph/metamodel/DSL_DataQuality_PureGraphPlugin.ts +2 -0
- package/src/graph/metamodel/pure/packageableElements/data-quality/DataQualityValidationConfiguration.ts +79 -3
- package/src/graph-manager/DSL_DataQuality_GraphManagerHelper.ts +13 -0
- package/src/graph-manager/DSL_DataQuality_GraphModifierHelper.ts +107 -0
- package/src/graph-manager/DSL_DataQuality_PureGraphManagerPlugin.ts +8 -0
- package/src/graph-manager/action/changeDetection/DSL_DataQuality_ObserverHelper.ts +54 -1
- package/src/graph-manager/protocol/pure/DSL_DataQuality_PureGraphManagerExtension.ts +5 -3
- package/src/graph-manager/protocol/pure/DSL_DataQuality_PureProtocolProcessorPlugin.ts +72 -81
- package/src/graph-manager/protocol/pure/v1/V1_DSL_Data_Quality_PureGraphManagerExtension.ts +20 -23
- package/src/graph-manager/protocol/pure/v1/{V1_DataQualityConstraintsConfiguration.ts → V1_DataQualityValidationConfiguration.ts} +63 -4
- package/src/graph-manager/protocol/pure/v1/transformation/V1_DSL_DataQuality_ValueSpecificationBuilderHelper.ts +116 -2
- package/src/graph-manager/protocol/pure/v1/transformation/V1_DSL_DataQuality_ValueSpecificationTransformer.ts +78 -1
- package/src/graph-manager/protocol/pure/v1/transformation/pureProtocol/V1_DSL_DataQuality_ProtocolHelper.ts +55 -8
- package/style/_data-quality-relation-validation-builder.scss +454 -0
- package/style/index.scss +6 -0
- package/tsconfig.json +13 -6
- package/lib/components/DSL_DataQuality_ClassElementDriver.d.ts.map +0 -1
- package/lib/components/DSL_DataQuality_ClassElementDriver.js.map +0 -1
- package/lib/components/DSL_DataQuality_ServiceElementDriver.d.ts +0 -27
- package/lib/components/DSL_DataQuality_ServiceElementDriver.d.ts.map +0 -1
- package/lib/components/DSL_DataQuality_ServiceElementDriver.js +0 -41
- package/lib/components/DSL_DataQuality_ServiceElementDriver.js.map +0 -1
- package/lib/components/DSL_NewDataQualityClassValidationElement.d.ts.map +0 -1
- package/lib/components/DSL_NewDataQualityClassValidationElement.js +0 -64
- package/lib/components/DSL_NewDataQualityClassValidationElement.js.map +0 -1
- package/lib/components/DSL_NewDataQualityServiceValidationElement.d.ts.map +0 -1
- package/lib/components/DSL_NewDataQualityServiceValidationElement.js +0 -41
- package/lib/components/DSL_NewDataQualityServiceValidationElement.js.map +0 -1
- package/lib/graph-manager/protocol/pure/v1/V1_DataQualityConstraintsConfiguration.d.ts.map +0 -1
- package/lib/graph-manager/protocol/pure/v1/V1_DataQualityConstraintsConfiguration.js.map +0 -1
- package/src/components/DSL_DataQuality_ServiceElementDriver.tsx +0 -57
- package/src/components/DSL_NewDataQualityClassValidationElement.tsx +0 -156
- package/src/components/DSL_NewDataQualityServiceValidationElement.tsx +0 -74
@@ -19,30 +19,33 @@ import { type PlainObject, assertType } from '@finos/legend-shared';
|
|
19
19
|
import {
|
20
20
|
V1_DataQualityClassValidationsConfiguration,
|
21
21
|
V1_DataQualityServiceValidationsConfiguration,
|
22
|
-
|
22
|
+
V1_DataQualityRelationValidationsConfiguration,
|
23
|
+
V1_DataQualityValidationsConfiguration,
|
24
|
+
} from './v1/V1_DataQualityValidationConfiguration.js';
|
23
25
|
import {
|
24
26
|
DataQualityClassValidationsConfiguration,
|
25
27
|
DataQualityServiceValidationConfiguration,
|
28
|
+
DataQualityRelationValidationConfiguration,
|
26
29
|
} from '../../../graph/metamodel/pure/packageableElements/data-quality/DataQualityValidationConfiguration.js';
|
27
|
-
import {
|
28
|
-
getOwnDataQualityClassValidationsConfiguration,
|
29
|
-
getOwnDataQualityServiceValidationsConfiguration,
|
30
|
-
} from '../../DSL_DataQuality_GraphManagerHelper.js';
|
31
30
|
import {
|
32
31
|
V1_DATA_QUALITY_PROTOCOL_TYPE,
|
33
32
|
V1_DATA_QUALITY_SERVICE_PROTOCOL_TYPE,
|
33
|
+
V1_DATA_QUALITY_RELATION_PROTOCOL_TYPE,
|
34
34
|
V1_deserializeDataQualityClassValidation,
|
35
35
|
V1_deserializeDataQualityServiceValidation,
|
36
|
+
V1_deserializeDataQualityRelationValidation,
|
36
37
|
V1_serializeDataQualityClassValidation,
|
37
38
|
V1_serializeDataQualityServiceValidation,
|
39
|
+
V1_serializeDataQualityRelationValidation,
|
38
40
|
} from './v1/transformation/pureProtocol/V1_DSL_DataQuality_ProtocolHelper.js';
|
39
41
|
import {
|
40
|
-
|
41
|
-
|
42
|
+
V1_transformDataQualityClassValidationConfiguration,
|
43
|
+
V1_transformDataQualityRelationValidationConfiguration,
|
42
44
|
} from './v1/transformation/V1_DSL_DataQuality_ValueSpecificationTransformer.js';
|
43
45
|
import {
|
44
|
-
|
45
|
-
|
46
|
+
V1_buildDataQualityClassValidationConfiguration,
|
47
|
+
V1_buildDataQualityRelationValidationConfiguration,
|
48
|
+
V1_buildDataQualityServiceValidationConfiguration,
|
46
49
|
} from './v1/transformation/V1_DSL_DataQuality_ValueSpecificationBuilderHelper.js';
|
47
50
|
import { V1_DataQualityRootGraphFetchTree } from './v1/model/graphFetch/V1_DataQualityRootGraphFetchTree.js';
|
48
51
|
import {
|
@@ -55,17 +58,12 @@ import {
|
|
55
58
|
type V1_PackageableElement,
|
56
59
|
type PackageableElement,
|
57
60
|
type V1_GraphFetchTree,
|
61
|
+
type V1_GraphFetchSerializer,
|
62
|
+
type V1_GraphFetchDeserializer,
|
58
63
|
V1_buildFullPath,
|
59
|
-
V1_buildRawLambdaWithResolvedPaths,
|
60
|
-
V1_initPackageableElement,
|
61
|
-
V1_transformRawLambda,
|
62
64
|
V1_ElementBuilder,
|
63
|
-
V1_ProcessingContext,
|
64
65
|
PureProtocolProcessorPlugin,
|
65
|
-
type V1_GraphFetchSerializer,
|
66
|
-
type V1_GraphFetchDeserializer,
|
67
66
|
} from '@finos/legend-graph';
|
68
|
-
import type { DataQualityRootGraphFetchTree } from '../../../graph/metamodel/pure/packageableElements/data-quality/DataQualityGraphFetchTree.js';
|
69
67
|
import { V1_DataQualityPropertyGraphFetchTree } from './v1/model/graphFetch/V1_DataQualityPropertyGraphFetchTree.js';
|
70
68
|
import { deserialize, serialize } from 'serializr';
|
71
69
|
import {
|
@@ -121,41 +119,54 @@ export class DSL_DataQuality_PureProtocolProcessorPlugin extends PureProtocolPro
|
|
121
119
|
elementProtocol,
|
122
120
|
V1_DataQualityClassValidationsConfiguration,
|
123
121
|
);
|
122
|
+
V1_buildDataQualityClassValidationConfiguration(
|
123
|
+
elementProtocol,
|
124
|
+
context,
|
125
|
+
);
|
126
|
+
},
|
127
|
+
}),
|
128
|
+
new V1_ElementBuilder<V1_DataQualityRelationValidationsConfiguration>({
|
129
|
+
elementClassName: V1_DATA_QUALITY_RELATION_PROTOCOL_TYPE,
|
130
|
+
_class: V1_DataQualityRelationValidationsConfiguration,
|
131
|
+
firstPass: (
|
132
|
+
elementProtocol: V1_PackageableElement,
|
133
|
+
context: V1_GraphBuilderContext,
|
134
|
+
): PackageableElement => {
|
135
|
+
assertType(
|
136
|
+
elementProtocol,
|
137
|
+
V1_DataQualityRelationValidationsConfiguration,
|
138
|
+
);
|
139
|
+
const element = new DataQualityRelationValidationConfiguration(
|
140
|
+
elementProtocol.name,
|
141
|
+
);
|
124
142
|
const path = V1_buildFullPath(
|
125
143
|
elementProtocol.package,
|
126
144
|
elementProtocol.name,
|
127
145
|
);
|
128
|
-
|
146
|
+
context.currentSubGraph.setOwnElementInExtension(
|
129
147
|
path,
|
130
|
-
|
148
|
+
element,
|
149
|
+
DataQualityRelationValidationConfiguration,
|
150
|
+
);
|
151
|
+
return element;
|
152
|
+
},
|
153
|
+
secondPass: (
|
154
|
+
elementProtocol: V1_PackageableElement,
|
155
|
+
context: V1_GraphBuilderContext,
|
156
|
+
): void => {
|
157
|
+
assertType(
|
158
|
+
elementProtocol,
|
159
|
+
V1_DataQualityRelationValidationsConfiguration,
|
131
160
|
);
|
132
|
-
|
133
|
-
elementProtocol
|
161
|
+
V1_buildDataQualityRelationValidationConfiguration(
|
162
|
+
elementProtocol,
|
134
163
|
context,
|
135
164
|
);
|
136
|
-
element.dataQualityRootGraphFetchTree =
|
137
|
-
elementProtocol.dataQualityRootGraphFetchTree
|
138
|
-
? (V1_buildDataQualityGraphFetchTree(
|
139
|
-
elementProtocol.dataQualityRootGraphFetchTree,
|
140
|
-
context,
|
141
|
-
undefined,
|
142
|
-
[],
|
143
|
-
new V1_ProcessingContext(''),
|
144
|
-
true,
|
145
|
-
) as DataQualityRootGraphFetchTree)
|
146
|
-
: undefined;
|
147
|
-
element.filter = elementProtocol.filter
|
148
|
-
? V1_buildRawLambdaWithResolvedPaths(
|
149
|
-
elementProtocol.filter.parameters,
|
150
|
-
elementProtocol.filter.body,
|
151
|
-
context,
|
152
|
-
)
|
153
|
-
: undefined;
|
154
165
|
},
|
155
166
|
}),
|
156
|
-
|
167
|
+
|
157
168
|
new V1_ElementBuilder<V1_DataQualityServiceValidationsConfiguration>({
|
158
|
-
elementClassName:
|
169
|
+
elementClassName: V1_DATA_QUALITY_SERVICE_PROTOCOL_TYPE,
|
159
170
|
_class: V1_DataQualityServiceValidationsConfiguration,
|
160
171
|
firstPass: (
|
161
172
|
elementProtocol: V1_PackageableElement,
|
@@ -187,27 +198,10 @@ export class DSL_DataQuality_PureProtocolProcessorPlugin extends PureProtocolPro
|
|
187
198
|
elementProtocol,
|
188
199
|
V1_DataQualityServiceValidationsConfiguration,
|
189
200
|
);
|
190
|
-
|
191
|
-
elementProtocol
|
192
|
-
|
193
|
-
);
|
194
|
-
const element = getOwnDataQualityServiceValidationsConfiguration(
|
195
|
-
path,
|
196
|
-
context.currentSubGraph,
|
201
|
+
V1_buildDataQualityServiceValidationConfiguration(
|
202
|
+
elementProtocol,
|
203
|
+
context,
|
197
204
|
);
|
198
|
-
element.contextName = elementProtocol.contextName;
|
199
|
-
element.serviceName = elementProtocol.serviceName;
|
200
|
-
element.dataQualityRootGraphFetchTree =
|
201
|
-
elementProtocol.dataQualityRootGraphFetchTree
|
202
|
-
? (V1_buildDataQualityGraphFetchTree(
|
203
|
-
elementProtocol.dataQualityRootGraphFetchTree,
|
204
|
-
context,
|
205
|
-
undefined,
|
206
|
-
[],
|
207
|
-
new V1_ProcessingContext(''),
|
208
|
-
true,
|
209
|
-
) as DataQualityRootGraphFetchTree)
|
210
|
-
: undefined;
|
211
205
|
},
|
212
206
|
}),
|
213
207
|
];
|
@@ -216,7 +210,7 @@ export class DSL_DataQuality_PureProtocolProcessorPlugin extends PureProtocolPro
|
|
216
210
|
override V1_getExtraElementClassifierPathGetters(): V1_ElementProtocolClassifierPathGetter[] {
|
217
211
|
return [
|
218
212
|
(protocol: V1_PackageableElement): string | undefined => {
|
219
|
-
if (protocol instanceof
|
213
|
+
if (protocol instanceof V1_DataQualityValidationsConfiguration) {
|
220
214
|
return DATA_QUALITY_CLASSIFIER_PATH;
|
221
215
|
}
|
222
216
|
return undefined;
|
@@ -236,6 +230,11 @@ export class DSL_DataQuality_PureProtocolProcessorPlugin extends PureProtocolPro
|
|
236
230
|
if (protocol instanceof V1_DataQualityServiceValidationsConfiguration) {
|
237
231
|
return V1_serializeDataQualityServiceValidation(protocol, plugins);
|
238
232
|
}
|
233
|
+
if (
|
234
|
+
protocol instanceof V1_DataQualityRelationValidationsConfiguration
|
235
|
+
) {
|
236
|
+
return V1_serializeDataQualityRelationValidation(protocol, plugins);
|
237
|
+
}
|
239
238
|
return undefined;
|
240
239
|
},
|
241
240
|
];
|
@@ -292,6 +291,9 @@ export class DSL_DataQuality_PureProtocolProcessorPlugin extends PureProtocolPro
|
|
292
291
|
if (json._type === V1_DATA_QUALITY_SERVICE_PROTOCOL_TYPE) {
|
293
292
|
return V1_deserializeDataQualityServiceValidation(json, plugins);
|
294
293
|
}
|
294
|
+
if (json._type === V1_DATA_QUALITY_RELATION_PROTOCOL_TYPE) {
|
295
|
+
return V1_deserializeDataQualityRelationValidation(json, plugins);
|
296
|
+
}
|
295
297
|
return undefined;
|
296
298
|
},
|
297
299
|
];
|
@@ -304,27 +306,16 @@ export class DSL_DataQuality_PureProtocolProcessorPlugin extends PureProtocolPro
|
|
304
306
|
context: V1_GraphTransformerContext,
|
305
307
|
): V1_PackageableElement | undefined => {
|
306
308
|
if (metamodel instanceof DataQualityClassValidationsConfiguration) {
|
307
|
-
|
308
|
-
|
309
|
-
|
310
|
-
|
311
|
-
|
312
|
-
|
313
|
-
|
314
|
-
|
315
|
-
|
316
|
-
new Map<string, unknown[]>(),
|
317
|
-
false,
|
318
|
-
false,
|
319
|
-
) as V1_DataQualityRootGraphFetchTree)
|
320
|
-
: undefined;
|
321
|
-
protocol.context = V1_transformDataQualityExecutionContext(
|
322
|
-
metamodel.context,
|
309
|
+
return V1_transformDataQualityClassValidationConfiguration(
|
310
|
+
metamodel,
|
311
|
+
context,
|
312
|
+
);
|
313
|
+
}
|
314
|
+
if (metamodel instanceof DataQualityRelationValidationConfiguration) {
|
315
|
+
return V1_transformDataQualityRelationValidationConfiguration(
|
316
|
+
metamodel,
|
317
|
+
context,
|
323
318
|
);
|
324
|
-
protocol.filter = metamodel.filter
|
325
|
-
? V1_transformRawLambda(metamodel.filter, context)
|
326
|
-
: undefined;
|
327
|
-
return protocol;
|
328
319
|
}
|
329
320
|
return undefined;
|
330
321
|
},
|
@@ -24,7 +24,6 @@ import {
|
|
24
24
|
type V1_ExecutionResult,
|
25
25
|
type V1_PureModelContext,
|
26
26
|
type V1_RootGraphFetchTree,
|
27
|
-
type ParameterValue,
|
28
27
|
type V1_ParameterValue,
|
29
28
|
LegendSDLC,
|
30
29
|
PureClientVersion,
|
@@ -60,6 +59,7 @@ import {
|
|
60
59
|
V1_transformRootGraphFetchTreeToDataQualityRootGraphFetchTree,
|
61
60
|
} from './transformation/V1_DSL_DataQuality_ValueSpecificationBuilderHelper.js';
|
62
61
|
import type { DataQualityRootGraphFetchTree } from '../../../../graph/metamodel/pure/packageableElements/data-quality/DataQualityGraphFetchTree.js';
|
62
|
+
import type { DQExecuteInputOptions } from '../../../../graph/metamodel/pure/packageableElements/data-quality/DataQualityValidationConfiguration.js';
|
63
63
|
|
64
64
|
const DQ_GENERATE_EXECUTION_PLAN = 'generate execution plan';
|
65
65
|
const DQ_EXECUTE_PLAN = 'execute plan';
|
@@ -72,6 +72,7 @@ export class V1_DQExecuteInput {
|
|
72
72
|
lambdaParameterValues: V1_ParameterValue[] = [];
|
73
73
|
packagePath!: string;
|
74
74
|
queryLimit: number | undefined;
|
75
|
+
validationName: string | undefined;
|
75
76
|
|
76
77
|
static readonly serialization = new SerializationFactory(
|
77
78
|
createModelSchema(V1_DQExecuteInput, {
|
@@ -80,6 +81,7 @@ export class V1_DQExecuteInput {
|
|
80
81
|
lambdaParameterValues: customListWithSchema(V1_parameterValueModelSchema),
|
81
82
|
packagePath: primitive(),
|
82
83
|
queryLimit: optional(primitive()),
|
84
|
+
validationName: optional(primitive()),
|
83
85
|
}),
|
84
86
|
);
|
85
87
|
}
|
@@ -156,35 +158,35 @@ export class V1_DSL_Data_Quality_PureGraphManagerExtension extends DSL_DataQuali
|
|
156
158
|
|
157
159
|
createExecutionInput(
|
158
160
|
graph: PureModel,
|
159
|
-
lambdaParameterValues: ParameterValue[],
|
160
161
|
packagePath: string,
|
161
|
-
clientVersion: string | undefined,
|
162
|
-
previewLimit: number | undefined,
|
163
162
|
dqExecuteInput: V1_DQExecuteInput,
|
163
|
+
options: DQExecuteInputOptions,
|
164
164
|
): V1_DQExecuteInput {
|
165
|
-
dqExecuteInput.clientVersion =
|
165
|
+
dqExecuteInput.clientVersion =
|
166
|
+
options.clientVersion ??
|
167
|
+
V1_DSL_Data_Quality_PureGraphManagerExtension.DEV_PROTOCOL_VERSION;
|
166
168
|
dqExecuteInput.model = graph.origin
|
167
169
|
? this.buildPureModelSDLCPointer(graph.origin, undefined)
|
168
170
|
: this.graphManager.getFullGraphModelData(graph);
|
169
|
-
dqExecuteInput.lambdaParameterValues = lambdaParameterValues
|
170
|
-
V1_transformParameterValue
|
171
|
-
|
171
|
+
dqExecuteInput.lambdaParameterValues = options.lambdaParameterValues
|
172
|
+
? options.lambdaParameterValues.map(V1_transformParameterValue)
|
173
|
+
: [];
|
172
174
|
dqExecuteInput.packagePath = packagePath;
|
173
|
-
dqExecuteInput.queryLimit = previewLimit;
|
175
|
+
dqExecuteInput.queryLimit = options.previewLimit;
|
176
|
+
dqExecuteInput.validationName = options.validationName;
|
174
177
|
return dqExecuteInput;
|
175
178
|
}
|
176
179
|
|
177
180
|
generatePlan = async (
|
178
181
|
graph: PureModel,
|
179
182
|
packagePath: string,
|
183
|
+
options: DQExecuteInputOptions,
|
180
184
|
): Promise<RawExecutionPlan> => {
|
181
185
|
const input = this.createExecutionInput(
|
182
186
|
graph,
|
183
|
-
[],
|
184
187
|
packagePath,
|
185
|
-
V1_DSL_Data_Quality_PureGraphManagerExtension.DEV_PROTOCOL_VERSION,
|
186
|
-
undefined,
|
187
188
|
new V1_DQExecuteInput(),
|
189
|
+
options,
|
188
190
|
);
|
189
191
|
|
190
192
|
const serializedInput = V1_DQExecuteInput.serialization.toJson(input);
|
@@ -209,17 +211,14 @@ export class V1_DSL_Data_Quality_PureGraphManagerExtension extends DSL_DataQuali
|
|
209
211
|
|
210
212
|
execute = async (
|
211
213
|
graph: PureModel,
|
212
|
-
lambdaParameterValues: ParameterValue[],
|
213
214
|
packagePath: string,
|
214
|
-
|
215
|
+
options: DQExecuteInputOptions,
|
215
216
|
): Promise<ExecutionResult> => {
|
216
217
|
const input = this.createExecutionInput(
|
217
218
|
graph,
|
218
|
-
lambdaParameterValues,
|
219
219
|
packagePath,
|
220
|
-
V1_DSL_Data_Quality_PureGraphManagerExtension.DEV_PROTOCOL_VERSION,
|
221
|
-
previewLimit,
|
222
220
|
new V1_DQExecuteInput(),
|
221
|
+
options,
|
223
222
|
);
|
224
223
|
|
225
224
|
try {
|
@@ -251,14 +250,13 @@ export class V1_DSL_Data_Quality_PureGraphManagerExtension extends DSL_DataQuali
|
|
251
250
|
debugExecutionPlanGeneration = async (
|
252
251
|
graph: PureModel,
|
253
252
|
packagePath: string,
|
253
|
+
options: DQExecuteInputOptions,
|
254
254
|
): Promise<{ plan: RawExecutionPlan; debug: string }> => {
|
255
255
|
const input = this.createExecutionInput(
|
256
256
|
graph,
|
257
|
-
[],
|
258
257
|
packagePath,
|
259
|
-
V1_DSL_Data_Quality_PureGraphManagerExtension.DEV_PROTOCOL_VERSION,
|
260
|
-
undefined,
|
261
258
|
new V1_DQExecuteInput(),
|
259
|
+
options,
|
262
260
|
);
|
263
261
|
|
264
262
|
const serializedInput = V1_DQExecuteInput.serialization.toJson(input);
|
@@ -288,6 +286,7 @@ export class V1_DSL_Data_Quality_PureGraphManagerExtension extends DSL_DataQuali
|
|
288
286
|
fetchStructuralValidations = async (
|
289
287
|
graph: PureModel,
|
290
288
|
packagePath: string,
|
289
|
+
options: DQExecuteInputOptions,
|
291
290
|
): Promise<RootGraphFetchTree> => {
|
292
291
|
// TODO: improve abstraction so that we do not need to access the engine server client directly
|
293
292
|
const engineServerClient = guaranteeType(
|
@@ -297,11 +296,9 @@ export class V1_DSL_Data_Quality_PureGraphManagerExtension extends DSL_DataQuali
|
|
297
296
|
).getEngineServerClient();
|
298
297
|
const input = this.createExecutionInput(
|
299
298
|
graph,
|
300
|
-
[],
|
301
299
|
packagePath,
|
302
|
-
V1_DSL_Data_Quality_PureGraphManagerExtension.DEV_PROTOCOL_VERSION,
|
303
|
-
undefined,
|
304
300
|
new V1_DQExecuteInput(),
|
301
|
+
options,
|
305
302
|
);
|
306
303
|
|
307
304
|
const serializedInput = V1_DQExecuteInput.serialization.toJson(input);
|
@@ -15,16 +15,19 @@
|
|
15
15
|
*/
|
16
16
|
|
17
17
|
import {
|
18
|
-
type V1_PackageableElementVisitor,
|
19
18
|
type V1_PackageableElementPointer,
|
19
|
+
type V1_PackageableElementVisitor,
|
20
20
|
type V1_RawLambda,
|
21
|
-
type V1_TaggedValue,
|
22
21
|
type V1_StereotypePtr,
|
22
|
+
type V1_TaggedValue,
|
23
|
+
type V1_RawVariable,
|
24
|
+
hashRawLambda,
|
23
25
|
V1_PackageableElement,
|
24
26
|
} from '@finos/legend-graph';
|
25
27
|
import { type Hashable, hashArray } from '@finos/legend-shared';
|
26
28
|
import { DATA_QUALITY_HASH_STRUCTURE } from '../../../../graph/metamodel/DSL_DataQuality_HashUtils.js';
|
27
29
|
import { type V1_DataQualityRootGraphFetchTree } from './model/graphFetch/V1_DataQualityRootGraphFetchTree.js';
|
30
|
+
import { RelationValidationType } from '../../../../graph/metamodel/pure/packageableElements/data-quality/DataQualityValidationConfiguration.js';
|
28
31
|
|
29
32
|
export abstract class V1_DataQualityExecutionContext implements Hashable {
|
30
33
|
abstract get hashCode(): string;
|
@@ -56,8 +59,29 @@ export class V1_MappingAndRuntimeDataQualityExecutionContext extends V1_DataQual
|
|
56
59
|
}
|
57
60
|
}
|
58
61
|
|
62
|
+
export class V1_DataQualityRelationValidation implements Hashable {
|
63
|
+
name!: string;
|
64
|
+
description: string | undefined;
|
65
|
+
assertion!: V1_RawLambda;
|
66
|
+
type: RelationValidationType = RelationValidationType.ROW_LEVEL;
|
67
|
+
rowMapFunction: V1_RawLambda | undefined;
|
68
|
+
|
69
|
+
get hashCode(): string {
|
70
|
+
return hashArray([
|
71
|
+
DATA_QUALITY_HASH_STRUCTURE.DATA_QUALITY_RELATION_VALIDATION,
|
72
|
+
this.name,
|
73
|
+
this.type,
|
74
|
+
this.description ?? '',
|
75
|
+
this.assertion,
|
76
|
+
this.rowMapFunction ?? '',
|
77
|
+
]);
|
78
|
+
}
|
79
|
+
}
|
80
|
+
|
81
|
+
export abstract class V1_DataQualityValidationsConfiguration extends V1_PackageableElement {}
|
82
|
+
|
59
83
|
export class V1_DataQualityClassValidationsConfiguration
|
60
|
-
extends
|
84
|
+
extends V1_DataQualityValidationsConfiguration
|
61
85
|
implements Hashable
|
62
86
|
{
|
63
87
|
context!: V1_DataQualityExecutionContext;
|
@@ -83,7 +107,7 @@ export class V1_DataQualityClassValidationsConfiguration
|
|
83
107
|
}
|
84
108
|
|
85
109
|
export class V1_DataQualityServiceValidationsConfiguration
|
86
|
-
extends
|
110
|
+
extends V1_DataQualityValidationsConfiguration
|
87
111
|
implements Hashable
|
88
112
|
{
|
89
113
|
contextName?: string | undefined;
|
@@ -105,3 +129,38 @@ export class V1_DataQualityServiceValidationsConfiguration
|
|
105
129
|
return visitor.visit_PackageableElement(this);
|
106
130
|
}
|
107
131
|
}
|
132
|
+
|
133
|
+
export class V1_DataQualityRelationQueryLambda implements Hashable {
|
134
|
+
body?: object | undefined;
|
135
|
+
parameters: V1_RawVariable[] = [];
|
136
|
+
|
137
|
+
get hashCode(): string {
|
138
|
+
return hashArray([
|
139
|
+
DATA_QUALITY_HASH_STRUCTURE.DATA_QUALITY_RELATION_VALIDATION_QUERY,
|
140
|
+
hashArray(this.parameters),
|
141
|
+
hashRawLambda(undefined, this.body),
|
142
|
+
]);
|
143
|
+
}
|
144
|
+
}
|
145
|
+
|
146
|
+
export class V1_DataQualityRelationValidationsConfiguration
|
147
|
+
extends V1_DataQualityValidationsConfiguration
|
148
|
+
implements Hashable
|
149
|
+
{
|
150
|
+
query!: V1_DataQualityRelationQueryLambda;
|
151
|
+
validations: V1_DataQualityRelationValidation[] = [];
|
152
|
+
|
153
|
+
override get hashCode(): string {
|
154
|
+
return hashArray([
|
155
|
+
DATA_QUALITY_HASH_STRUCTURE.DATA_QUALITY_RELATION_VALIDATION_CONFIGURATION,
|
156
|
+
this.query,
|
157
|
+
hashArray(this.validations),
|
158
|
+
]);
|
159
|
+
}
|
160
|
+
|
161
|
+
accept_PackageableElementVisitor<T>(
|
162
|
+
visitor: V1_PackageableElementVisitor<T>,
|
163
|
+
): T {
|
164
|
+
return visitor.visit_PackageableElement(this);
|
165
|
+
}
|
166
|
+
}
|
@@ -26,11 +26,17 @@ import {
|
|
26
26
|
} from '../../../../../graph/metamodel/pure/packageableElements/data-quality/DataQualityGraphFetchTree.js';
|
27
27
|
import {
|
28
28
|
type V1_DataQualityExecutionContext,
|
29
|
+
type V1_DataQualityClassValidationsConfiguration,
|
30
|
+
type V1_DataQualityRelationValidation,
|
31
|
+
type V1_DataQualityRelationValidationsConfiguration,
|
32
|
+
type V1_DataQualityServiceValidationsConfiguration,
|
29
33
|
V1_DataSpaceDataQualityExecutionContext,
|
30
34
|
V1_MappingAndRuntimeDataQualityExecutionContext,
|
31
|
-
} from '../
|
35
|
+
} from '../V1_DataQualityValidationConfiguration.js';
|
32
36
|
import {
|
33
37
|
type DataQualityExecutionContext,
|
38
|
+
DataQualityRelationQueryLambda,
|
39
|
+
DataQualityRelationValidation,
|
34
40
|
DataSpaceDataQualityExecutionContext,
|
35
41
|
MappingAndRuntimeDataQualityExecutionContext,
|
36
42
|
} from '../../../../../graph/metamodel/pure/packageableElements/data-quality/DataQualityValidationConfiguration.js';
|
@@ -44,13 +50,21 @@ import {
|
|
44
50
|
type PropertyGraphFetchTree,
|
45
51
|
type RootGraphFetchTree,
|
46
52
|
type V1_GraphFetchTree,
|
47
|
-
type V1_ProcessingContext,
|
48
53
|
type V1_PropertyGraphFetchTree,
|
49
54
|
type V1_RootGraphFetchTree,
|
55
|
+
V1_ProcessingContext,
|
50
56
|
V1_buildPropertyGraphFetchTree,
|
51
57
|
V1_buildRootGraphFetchTree,
|
58
|
+
V1_buildRawLambdaWithResolvedPaths,
|
59
|
+
V1_buildFullPath,
|
60
|
+
V1_buildVariable,
|
52
61
|
} from '@finos/legend-graph';
|
53
62
|
import type { DataSpace } from '@finos/legend-extension-dsl-data-space/graph';
|
63
|
+
import {
|
64
|
+
getOwnDataQualityClassValidationsConfiguration,
|
65
|
+
getOwnDataQualityServiceValidationsConfiguration,
|
66
|
+
getOwnDataQualityRelationValidationsConfiguration,
|
67
|
+
} from '../../../../DSL_DataQuality_GraphManagerHelper.js';
|
54
68
|
|
55
69
|
export function V1_buildDataQualityExecutionContext(
|
56
70
|
dataQualityExecutionContext: V1_DataQualityExecutionContext,
|
@@ -146,6 +160,30 @@ export function V1_buildDataQualityGraphFetchTree(
|
|
146
160
|
);
|
147
161
|
}
|
148
162
|
|
163
|
+
export function V1_buildDataQualityRelationValidation(
|
164
|
+
validation: V1_DataQualityRelationValidation,
|
165
|
+
context: V1_GraphBuilderContext,
|
166
|
+
): DataQualityRelationValidation {
|
167
|
+
const _validation = new DataQualityRelationValidation(
|
168
|
+
validation.name,
|
169
|
+
V1_buildRawLambdaWithResolvedPaths(
|
170
|
+
validation.assertion.parameters,
|
171
|
+
validation.assertion.body,
|
172
|
+
context,
|
173
|
+
),
|
174
|
+
);
|
175
|
+
_validation.description = validation.description;
|
176
|
+
_validation.type = validation.type;
|
177
|
+
_validation.rowMapFunction = validation.rowMapFunction
|
178
|
+
? V1_buildRawLambdaWithResolvedPaths(
|
179
|
+
validation.rowMapFunction.parameters,
|
180
|
+
validation.rowMapFunction.body,
|
181
|
+
context,
|
182
|
+
)
|
183
|
+
: validation.rowMapFunction;
|
184
|
+
return _validation;
|
185
|
+
}
|
186
|
+
|
149
187
|
function transformGraphFetchTreeToDataQualityGraphFetchTree(
|
150
188
|
graphFetchTree: GraphFetchTree,
|
151
189
|
V1_graphFetchTree: V1_GraphFetchTree,
|
@@ -239,3 +277,79 @@ function V1_transformPropertyGraphFetchTreeToDataQualityPropertyGraphFetchTree(
|
|
239
277
|
);
|
240
278
|
return dataQualityPropertyGraphFetchTree;
|
241
279
|
}
|
280
|
+
|
281
|
+
export function V1_buildDataQualityClassValidationConfiguration(
|
282
|
+
elementProtocol: V1_DataQualityClassValidationsConfiguration,
|
283
|
+
context: V1_GraphBuilderContext,
|
284
|
+
): void {
|
285
|
+
const path = V1_buildFullPath(elementProtocol.package, elementProtocol.name);
|
286
|
+
const element = getOwnDataQualityClassValidationsConfiguration(
|
287
|
+
path,
|
288
|
+
context.currentSubGraph,
|
289
|
+
);
|
290
|
+
element.context = V1_buildDataQualityExecutionContext(
|
291
|
+
elementProtocol.context,
|
292
|
+
context,
|
293
|
+
);
|
294
|
+
element.dataQualityRootGraphFetchTree =
|
295
|
+
elementProtocol.dataQualityRootGraphFetchTree
|
296
|
+
? (V1_buildDataQualityGraphFetchTree(
|
297
|
+
elementProtocol.dataQualityRootGraphFetchTree,
|
298
|
+
context,
|
299
|
+
undefined,
|
300
|
+
[],
|
301
|
+
new V1_ProcessingContext(''),
|
302
|
+
true,
|
303
|
+
) as DataQualityRootGraphFetchTree)
|
304
|
+
: undefined;
|
305
|
+
element.filter = elementProtocol.filter
|
306
|
+
? V1_buildRawLambdaWithResolvedPaths(
|
307
|
+
elementProtocol.filter.parameters,
|
308
|
+
elementProtocol.filter.body,
|
309
|
+
context,
|
310
|
+
)
|
311
|
+
: undefined;
|
312
|
+
}
|
313
|
+
|
314
|
+
export function V1_buildDataQualityRelationValidationConfiguration(
|
315
|
+
elementProtocol: V1_DataQualityRelationValidationsConfiguration,
|
316
|
+
context: V1_GraphBuilderContext,
|
317
|
+
): void {
|
318
|
+
const path = V1_buildFullPath(elementProtocol.package, elementProtocol.name);
|
319
|
+
const element = getOwnDataQualityRelationValidationsConfiguration(
|
320
|
+
path,
|
321
|
+
context.currentSubGraph,
|
322
|
+
);
|
323
|
+
element.query = new DataQualityRelationQueryLambda();
|
324
|
+
element.query.body = elementProtocol.query.body;
|
325
|
+
element.query.parameters = elementProtocol.query.parameters.map((param) =>
|
326
|
+
V1_buildVariable(param, context),
|
327
|
+
);
|
328
|
+
element.validations = elementProtocol.validations.map((validation) =>
|
329
|
+
V1_buildDataQualityRelationValidation(validation, context),
|
330
|
+
);
|
331
|
+
}
|
332
|
+
|
333
|
+
export function V1_buildDataQualityServiceValidationConfiguration(
|
334
|
+
elementProtocol: V1_DataQualityServiceValidationsConfiguration,
|
335
|
+
context: V1_GraphBuilderContext,
|
336
|
+
): void {
|
337
|
+
const path = V1_buildFullPath(elementProtocol.package, elementProtocol.name);
|
338
|
+
const element = getOwnDataQualityServiceValidationsConfiguration(
|
339
|
+
path,
|
340
|
+
context.currentSubGraph,
|
341
|
+
);
|
342
|
+
element.contextName = elementProtocol.contextName;
|
343
|
+
element.serviceName = elementProtocol.serviceName;
|
344
|
+
element.dataQualityRootGraphFetchTree =
|
345
|
+
elementProtocol.dataQualityRootGraphFetchTree
|
346
|
+
? (V1_buildDataQualityGraphFetchTree(
|
347
|
+
elementProtocol.dataQualityRootGraphFetchTree,
|
348
|
+
context,
|
349
|
+
undefined,
|
350
|
+
[],
|
351
|
+
new V1_ProcessingContext(''),
|
352
|
+
true,
|
353
|
+
) as DataQualityRootGraphFetchTree)
|
354
|
+
: undefined;
|
355
|
+
}
|