@finos/legend-graph 24.0.0 → 24.1.0
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/graph/BasicModel.d.ts +6 -0
- package/lib/graph/BasicModel.d.ts.map +1 -1
- package/lib/graph/BasicModel.js +23 -0
- package/lib/graph/BasicModel.js.map +1 -1
- package/lib/graph/Core_HashUtils.d.ts +6 -0
- package/lib/graph/Core_HashUtils.d.ts.map +1 -1
- package/lib/graph/Core_HashUtils.js +7 -0
- package/lib/graph/Core_HashUtils.js.map +1 -1
- package/lib/graph/DependencyManager.d.ts +3 -0
- package/lib/graph/DependencyManager.d.ts.map +1 -1
- package/lib/graph/DependencyManager.js +4 -0
- package/lib/graph/DependencyManager.js.map +1 -1
- package/lib/graph/MetaModelConst.d.ts +2 -0
- package/lib/graph/MetaModelConst.d.ts.map +1 -1
- package/lib/graph/MetaModelConst.js +2 -0
- package/lib/graph/MetaModelConst.js.map +1 -1
- package/lib/graph/PureModel.d.ts +2 -0
- package/lib/graph/PureModel.d.ts.map +1 -1
- package/lib/graph/PureModel.js +9 -0
- package/lib/graph/PureModel.js.map +1 -1
- package/lib/graph/helpers/PureLanguageHelper.d.ts +2 -1
- package/lib/graph/helpers/PureLanguageHelper.d.ts.map +1 -1
- package/lib/graph/helpers/PureLanguageHelper.js +1 -0
- package/lib/graph/helpers/PureLanguageHelper.js.map +1 -1
- package/lib/graph/metamodel/pure/packageableElements/PackageableElement.d.ts +2 -0
- package/lib/graph/metamodel/pure/packageableElements/PackageableElement.d.ts.map +1 -1
- package/lib/graph/metamodel/pure/packageableElements/PackageableElement.js.map +1 -1
- package/lib/graph/metamodel/pure/packageableElements/service/ExecutionEnvironmentInstance.d.ts +40 -0
- package/lib/graph/metamodel/pure/packageableElements/service/ExecutionEnvironmentInstance.d.ts.map +1 -0
- package/lib/graph/metamodel/pure/packageableElements/service/ExecutionEnvironmentInstance.js +58 -0
- package/lib/graph/metamodel/pure/packageableElements/service/ExecutionEnvironmentInstance.js.map +1 -0
- package/lib/graph/metamodel/pure/packageableElements/store/relational/connection/AuthenticationStrategy.d.ts +6 -0
- package/lib/graph/metamodel/pure/packageableElements/store/relational/connection/AuthenticationStrategy.d.ts.map +1 -1
- package/lib/graph/metamodel/pure/packageableElements/store/relational/connection/AuthenticationStrategy.js +16 -0
- package/lib/graph/metamodel/pure/packageableElements/store/relational/connection/AuthenticationStrategy.js.map +1 -1
- package/lib/graph/metamodel/pure/packageableElements/store/relational/connection/DatasourceSpecification.d.ts +17 -0
- package/lib/graph/metamodel/pure/packageableElements/store/relational/connection/DatasourceSpecification.d.ts.map +1 -1
- package/lib/graph/metamodel/pure/packageableElements/store/relational/connection/DatasourceSpecification.js +41 -0
- package/lib/graph/metamodel/pure/packageableElements/store/relational/connection/DatasourceSpecification.js.map +1 -1
- package/lib/graph/metamodel/pure/packageableElements/store/relational/connection/RelationalDatabaseConnection.d.ts +2 -1
- package/lib/graph/metamodel/pure/packageableElements/store/relational/connection/RelationalDatabaseConnection.d.ts.map +1 -1
- package/lib/graph/metamodel/pure/packageableElements/store/relational/connection/RelationalDatabaseConnection.js +1 -0
- package/lib/graph/metamodel/pure/packageableElements/store/relational/connection/RelationalDatabaseConnection.js.map +1 -1
- package/lib/graphManager/action/changeDetection/DSL_ExecutionEnvironment_ObseverHelper.d.ts +18 -0
- package/lib/graphManager/action/changeDetection/DSL_ExecutionEnvironment_ObseverHelper.d.ts.map +1 -0
- package/lib/graphManager/action/changeDetection/DSL_ExecutionEnvironment_ObseverHelper.js +26 -0
- package/lib/graphManager/action/changeDetection/DSL_ExecutionEnvironment_ObseverHelper.js.map +1 -0
- package/lib/graphManager/action/changeDetection/GraphObserverHelper.d.ts.map +1 -1
- package/lib/graphManager/action/changeDetection/GraphObserverHelper.js +4 -0
- package/lib/graphManager/action/changeDetection/GraphObserverHelper.js.map +1 -1
- package/lib/graphManager/action/changeDetection/PackageableElementObserver.d.ts.map +1 -1
- package/lib/graphManager/action/changeDetection/PackageableElementObserver.js +4 -0
- package/lib/graphManager/action/changeDetection/PackageableElementObserver.js.map +1 -1
- package/lib/graphManager/action/changeDetection/STO_Relational_ObserverHelper.d.ts +5 -2
- package/lib/graphManager/action/changeDetection/STO_Relational_ObserverHelper.d.ts.map +1 -1
- package/lib/graphManager/action/changeDetection/STO_Relational_ObserverHelper.js +31 -2
- package/lib/graphManager/action/changeDetection/STO_Relational_ObserverHelper.js.map +1 -1
- package/lib/graphManager/protocol/pure/v1/V1_PureGraphManager.d.ts +2 -0
- package/lib/graphManager/protocol/pure/v1/V1_PureGraphManager.d.ts.map +1 -1
- package/lib/graphManager/protocol/pure/v1/V1_PureGraphManager.js +10 -1
- package/lib/graphManager/protocol/pure/v1/V1_PureGraphManager.js.map +1 -1
- package/lib/graphManager/protocol/pure/v1/model/packageableElements/V1_PackageableElement.d.ts +2 -0
- package/lib/graphManager/protocol/pure/v1/model/packageableElements/V1_PackageableElement.d.ts.map +1 -1
- package/lib/graphManager/protocol/pure/v1/model/packageableElements/V1_PackageableElement.js.map +1 -1
- package/lib/graphManager/protocol/pure/v1/model/packageableElements/service/V1_ExecutionEnvironmentInstance.d.ts +38 -0
- package/lib/graphManager/protocol/pure/v1/model/packageableElements/service/V1_ExecutionEnvironmentInstance.d.ts.map +1 -0
- package/lib/graphManager/protocol/pure/v1/model/packageableElements/service/V1_ExecutionEnvironmentInstance.js +58 -0
- package/lib/graphManager/protocol/pure/v1/model/packageableElements/service/V1_ExecutionEnvironmentInstance.js.map +1 -0
- package/lib/graphManager/protocol/pure/v1/model/packageableElements/store/relational/connection/V1_AuthenticationStrategy.d.ts +5 -0
- package/lib/graphManager/protocol/pure/v1/model/packageableElements/store/relational/connection/V1_AuthenticationStrategy.d.ts.map +1 -1
- package/lib/graphManager/protocol/pure/v1/model/packageableElements/store/relational/connection/V1_AuthenticationStrategy.js +11 -0
- package/lib/graphManager/protocol/pure/v1/model/packageableElements/store/relational/connection/V1_AuthenticationStrategy.js.map +1 -1
- package/lib/graphManager/protocol/pure/v1/model/packageableElements/store/relational/connection/V1_DatasourceSpecification.d.ts +15 -0
- package/lib/graphManager/protocol/pure/v1/model/packageableElements/store/relational/connection/V1_DatasourceSpecification.d.ts.map +1 -1
- package/lib/graphManager/protocol/pure/v1/model/packageableElements/store/relational/connection/V1_DatasourceSpecification.js +32 -0
- package/lib/graphManager/protocol/pure/v1/model/packageableElements/store/relational/connection/V1_DatasourceSpecification.js.map +1 -1
- package/lib/graphManager/protocol/pure/v1/model/packageableElements/store/relational/connection/V1_RelationalDatabaseConnection.d.ts +2 -1
- package/lib/graphManager/protocol/pure/v1/model/packageableElements/store/relational/connection/V1_RelationalDatabaseConnection.d.ts.map +1 -1
- package/lib/graphManager/protocol/pure/v1/model/packageableElements/store/relational/connection/V1_RelationalDatabaseConnection.js +1 -0
- package/lib/graphManager/protocol/pure/v1/model/packageableElements/store/relational/connection/V1_RelationalDatabaseConnection.js.map +1 -1
- package/lib/graphManager/protocol/pure/v1/transformation/pureGraph/from/V1_ConnectionTransformer.d.ts.map +1 -1
- package/lib/graphManager/protocol/pure/v1/transformation/pureGraph/from/V1_ConnectionTransformer.js +29 -4
- package/lib/graphManager/protocol/pure/v1/transformation/pureGraph/from/V1_ConnectionTransformer.js.map +1 -1
- package/lib/graphManager/protocol/pure/v1/transformation/pureGraph/from/V1_ExecutionEnvironmentTransformer.d.ts +20 -0
- package/lib/graphManager/protocol/pure/v1/transformation/pureGraph/from/V1_ExecutionEnvironmentTransformer.d.ts.map +1 -0
- package/lib/graphManager/protocol/pure/v1/transformation/pureGraph/from/V1_ExecutionEnvironmentTransformer.js +46 -0
- package/lib/graphManager/protocol/pure/v1/transformation/pureGraph/from/V1_ExecutionEnvironmentTransformer.js.map +1 -0
- package/lib/graphManager/protocol/pure/v1/transformation/pureGraph/from/V1_PackageableElementTransformer.d.ts.map +1 -1
- package/lib/graphManager/protocol/pure/v1/transformation/pureGraph/from/V1_PackageableElementTransformer.js +4 -0
- package/lib/graphManager/protocol/pure/v1/transformation/pureGraph/from/V1_PackageableElementTransformer.js.map +1 -1
- package/lib/graphManager/protocol/pure/v1/transformation/pureGraph/to/V1_ElementFifthPassBuilder.d.ts +2 -0
- package/lib/graphManager/protocol/pure/v1/transformation/pureGraph/to/V1_ElementFifthPassBuilder.d.ts.map +1 -1
- package/lib/graphManager/protocol/pure/v1/transformation/pureGraph/to/V1_ElementFifthPassBuilder.js +3 -0
- package/lib/graphManager/protocol/pure/v1/transformation/pureGraph/to/V1_ElementFifthPassBuilder.js.map +1 -1
- package/lib/graphManager/protocol/pure/v1/transformation/pureGraph/to/V1_ElementFirstPassBuilder.d.ts +2 -0
- package/lib/graphManager/protocol/pure/v1/transformation/pureGraph/to/V1_ElementFirstPassBuilder.d.ts.map +1 -1
- package/lib/graphManager/protocol/pure/v1/transformation/pureGraph/to/V1_ElementFirstPassBuilder.js +11 -0
- package/lib/graphManager/protocol/pure/v1/transformation/pureGraph/to/V1_ElementFirstPassBuilder.js.map +1 -1
- package/lib/graphManager/protocol/pure/v1/transformation/pureGraph/to/V1_ElementFourthPassBuilder.d.ts +2 -0
- package/lib/graphManager/protocol/pure/v1/transformation/pureGraph/to/V1_ElementFourthPassBuilder.d.ts.map +1 -1
- package/lib/graphManager/protocol/pure/v1/transformation/pureGraph/to/V1_ElementFourthPassBuilder.js +3 -0
- package/lib/graphManager/protocol/pure/v1/transformation/pureGraph/to/V1_ElementFourthPassBuilder.js.map +1 -1
- package/lib/graphManager/protocol/pure/v1/transformation/pureGraph/to/V1_ElementSecondPassBuilder.d.ts +2 -0
- package/lib/graphManager/protocol/pure/v1/transformation/pureGraph/to/V1_ElementSecondPassBuilder.d.ts.map +1 -1
- package/lib/graphManager/protocol/pure/v1/transformation/pureGraph/to/V1_ElementSecondPassBuilder.js +5 -0
- package/lib/graphManager/protocol/pure/v1/transformation/pureGraph/to/V1_ElementSecondPassBuilder.js.map +1 -1
- package/lib/graphManager/protocol/pure/v1/transformation/pureGraph/to/V1_ElementThirdPassBuilder.d.ts +2 -0
- package/lib/graphManager/protocol/pure/v1/transformation/pureGraph/to/V1_ElementThirdPassBuilder.d.ts.map +1 -1
- package/lib/graphManager/protocol/pure/v1/transformation/pureGraph/to/V1_ElementThirdPassBuilder.js +3 -0
- package/lib/graphManager/protocol/pure/v1/transformation/pureGraph/to/V1_ElementThirdPassBuilder.js.map +1 -1
- package/lib/graphManager/protocol/pure/v1/transformation/pureGraph/to/V1_ExecutionEnvironmentBuilderHelper.d.ts +21 -0
- package/lib/graphManager/protocol/pure/v1/transformation/pureGraph/to/V1_ExecutionEnvironmentBuilderHelper.d.ts.map +1 -0
- package/lib/graphManager/protocol/pure/v1/transformation/pureGraph/to/V1_ExecutionEnvironmentBuilderHelper.js +51 -0
- package/lib/graphManager/protocol/pure/v1/transformation/pureGraph/to/V1_ExecutionEnvironmentBuilderHelper.js.map +1 -0
- package/lib/graphManager/protocol/pure/v1/transformation/pureGraph/to/helpers/V1_RelationalConnectionBuilderHelper.d.ts.map +1 -1
- package/lib/graphManager/protocol/pure/v1/transformation/pureGraph/to/helpers/V1_RelationalConnectionBuilderHelper.js +23 -4
- package/lib/graphManager/protocol/pure/v1/transformation/pureGraph/to/helpers/V1_RelationalConnectionBuilderHelper.js.map +1 -1
- package/lib/graphManager/protocol/pure/v1/transformation/pureProtocol/V1_PackageableElementSerialization.d.ts.map +1 -1
- package/lib/graphManager/protocol/pure/v1/transformation/pureProtocol/V1_PackageableElementSerialization.js +6 -0
- package/lib/graphManager/protocol/pure/v1/transformation/pureProtocol/V1_PackageableElementSerialization.js.map +1 -1
- package/lib/graphManager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_ConnectionSerializationHelper.d.ts.map +1 -1
- package/lib/graphManager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_ConnectionSerializationHelper.js +34 -3
- package/lib/graphManager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_ConnectionSerializationHelper.js.map +1 -1
- package/lib/graphManager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_ExecutionEnvironmentSerializationHelper.d.ts +20 -0
- package/lib/graphManager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_ExecutionEnvironmentSerializationHelper.d.ts.map +1 -0
- package/lib/graphManager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_ExecutionEnvironmentSerializationHelper.js +63 -0
- package/lib/graphManager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_ExecutionEnvironmentSerializationHelper.js.map +1 -0
- package/lib/graphManager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_ServiceSerializationHelper.d.ts +3 -0
- package/lib/graphManager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_ServiceSerializationHelper.d.ts.map +1 -1
- package/lib/graphManager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_ServiceSerializationHelper.js +5 -17
- package/lib/graphManager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_ServiceSerializationHelper.js.map +1 -1
- package/lib/index.d.ts +2 -1
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +2 -1
- package/lib/index.js.map +1 -1
- package/lib/package.json +1 -1
- package/package.json +3 -3
- package/src/graph/BasicModel.ts +33 -0
- package/src/graph/Core_HashUtils.ts +7 -0
- package/src/graph/DependencyManager.ts +10 -0
- package/src/graph/MetaModelConst.ts +2 -0
- package/src/graph/PureModel.ts +11 -0
- package/src/graph/helpers/PureLanguageHelper.ts +1 -0
- package/src/graph/metamodel/pure/packageableElements/PackageableElement.ts +2 -0
- package/src/graph/metamodel/pure/packageableElements/service/ExecutionEnvironmentInstance.ts +78 -0
- package/src/graph/metamodel/pure/packageableElements/store/relational/connection/AuthenticationStrategy.ts +25 -0
- package/src/graph/metamodel/pure/packageableElements/store/relational/connection/DatasourceSpecification.ts +53 -0
- package/src/graph/metamodel/pure/packageableElements/store/relational/connection/RelationalDatabaseConnection.ts +1 -0
- package/src/graphManager/action/changeDetection/DSL_ExecutionEnvironment_ObseverHelper.ts +40 -0
- package/src/graphManager/action/changeDetection/GraphObserverHelper.ts +5 -0
- package/src/graphManager/action/changeDetection/PackageableElementObserver.ts +8 -0
- package/src/graphManager/action/changeDetection/STO_Relational_ObserverHelper.ts +47 -0
- package/src/graphManager/protocol/pure/v1/V1_PureGraphManager.ts +22 -1
- package/src/graphManager/protocol/pure/v1/model/packageableElements/V1_PackageableElement.ts +4 -0
- package/src/graphManager/protocol/pure/v1/model/packageableElements/service/V1_ExecutionEnvironmentInstance.ts +82 -0
- package/src/graphManager/protocol/pure/v1/model/packageableElements/store/relational/connection/V1_AuthenticationStrategy.ts +16 -0
- package/src/graphManager/protocol/pure/v1/model/packageableElements/store/relational/connection/V1_DatasourceSpecification.ts +39 -0
- package/src/graphManager/protocol/pure/v1/model/packageableElements/store/relational/connection/V1_RelationalDatabaseConnection.ts +1 -0
- package/src/graphManager/protocol/pure/v1/transformation/pureGraph/from/V1_ConnectionTransformer.ts +33 -0
- package/src/graphManager/protocol/pure/v1/transformation/pureGraph/from/V1_ExecutionEnvironmentTransformer.ts +72 -0
- package/src/graphManager/protocol/pure/v1/transformation/pureGraph/from/V1_PackageableElementTransformer.ts +8 -0
- package/src/graphManager/protocol/pure/v1/transformation/pureGraph/to/V1_ElementFifthPassBuilder.ts +7 -0
- package/src/graphManager/protocol/pure/v1/transformation/pureGraph/to/V1_ElementFirstPassBuilder.ts +28 -0
- package/src/graphManager/protocol/pure/v1/transformation/pureGraph/to/V1_ElementFourthPassBuilder.ts +7 -0
- package/src/graphManager/protocol/pure/v1/transformation/pureGraph/to/V1_ElementSecondPassBuilder.ts +13 -0
- package/src/graphManager/protocol/pure/v1/transformation/pureGraph/to/V1_ElementThirdPassBuilder.ts +7 -0
- package/src/graphManager/protocol/pure/v1/transformation/pureGraph/to/V1_ExecutionEnvironmentBuilderHelper.ts +88 -0
- package/src/graphManager/protocol/pure/v1/transformation/pureGraph/to/helpers/V1_RelationalConnectionBuilderHelper.ts +46 -0
- package/src/graphManager/protocol/pure/v1/transformation/pureProtocol/V1_PackageableElementSerialization.ts +13 -0
- package/src/graphManager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_ConnectionSerializationHelper.ts +50 -0
- package/src/graphManager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_ExecutionEnvironmentSerializationHelper.ts +120 -0
- package/src/graphManager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_ServiceSerializationHelper.ts +6 -22
- package/src/index.ts +2 -1
- package/tsconfig.json +6 -0
|
@@ -41,6 +41,7 @@ import type { Measure } from './domain/Measure.js';
|
|
|
41
41
|
import type { SectionIndex } from './section/SectionIndex.js';
|
|
42
42
|
import type { DataElement } from './data/DataElement.js';
|
|
43
43
|
import { AnnotatedElement } from './domain/AnnotatedElement.js';
|
|
44
|
+
import type { ExecutionEnvironmentInstance } from './service/ExecutionEnvironmentInstance.js';
|
|
44
45
|
|
|
45
46
|
export interface PackageableElementVisitor<T> {
|
|
46
47
|
visit_PackageableElement(element: PackageableElement): T;
|
|
@@ -63,6 +64,7 @@ export interface PackageableElementVisitor<T> {
|
|
|
63
64
|
visit_FileGenerationSpecification(element: FileGenerationSpecification): T;
|
|
64
65
|
visit_GenerationSpecification(element: GenerationSpecification): T;
|
|
65
66
|
visit_DataElement(element: DataElement): T;
|
|
67
|
+
visit_ExecutionEnvironmentInstance(element: ExecutionEnvironmentInstance): T;
|
|
66
68
|
}
|
|
67
69
|
|
|
68
70
|
class ModelElement extends AnnotatedElement {
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) 2020-present, Goldman Sachs
|
|
3
|
+
*
|
|
4
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
+
* you may not use this file except in compliance with the License.
|
|
6
|
+
* You may obtain a copy of the License at
|
|
7
|
+
*
|
|
8
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
*
|
|
10
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
* See the License for the specific language governing permissions and
|
|
14
|
+
* limitations under the License.
|
|
15
|
+
*/
|
|
16
|
+
|
|
17
|
+
import { hashArray, type Hashable } from '@finos/legend-shared';
|
|
18
|
+
import { CORE_HASH_STRUCTURE } from '../../../../../graph/Core_HashUtils.js';
|
|
19
|
+
import type { Mapping } from '../mapping/Mapping.js';
|
|
20
|
+
import type { Runtime } from '../runtime/Runtime.js';
|
|
21
|
+
import {
|
|
22
|
+
type PackageableElementVisitor,
|
|
23
|
+
PackageableElement,
|
|
24
|
+
} from '../PackageableElement.js';
|
|
25
|
+
import type { PackageableElementReference } from '../PackageableElementReference.js';
|
|
26
|
+
|
|
27
|
+
export class ExecutionEnvironmentInstance
|
|
28
|
+
extends PackageableElement
|
|
29
|
+
implements Hashable
|
|
30
|
+
{
|
|
31
|
+
executionParameters: ExecutionParameters[] = [];
|
|
32
|
+
|
|
33
|
+
protected override get _elementHashCode(): string {
|
|
34
|
+
return hashArray([
|
|
35
|
+
CORE_HASH_STRUCTURE.EXECUTION_ENVIRONMENT_INSTANCE,
|
|
36
|
+
this.path,
|
|
37
|
+
hashArray(this.executionParameters),
|
|
38
|
+
]);
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
accept_PackageableElementVisitor<T>(
|
|
42
|
+
visitor: PackageableElementVisitor<T>,
|
|
43
|
+
): T {
|
|
44
|
+
return visitor.visit_ExecutionEnvironmentInstance(this);
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
export abstract class ExecutionParameters implements Hashable {
|
|
49
|
+
abstract get hashCode(): string;
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
export class SingleExecutionParameters implements Hashable {
|
|
53
|
+
key!: string;
|
|
54
|
+
mapping!: PackageableElementReference<Mapping>;
|
|
55
|
+
runtime!: Runtime;
|
|
56
|
+
|
|
57
|
+
get hashCode(): string {
|
|
58
|
+
return hashArray([
|
|
59
|
+
CORE_HASH_STRUCTURE.SINGLE_EXECUTION_PARAMETER,
|
|
60
|
+
this.key,
|
|
61
|
+
this.mapping.valueForSerialization ?? '',
|
|
62
|
+
this.runtime,
|
|
63
|
+
]);
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
export class MultiExecutionParameters implements Hashable {
|
|
68
|
+
masterKey!: string;
|
|
69
|
+
singleExecutionParameters: SingleExecutionParameters[] = [];
|
|
70
|
+
|
|
71
|
+
get hashCode(): string {
|
|
72
|
+
return hashArray([
|
|
73
|
+
CORE_HASH_STRUCTURE.MULTI_EXECUTION_PARAMETER,
|
|
74
|
+
this.masterKey,
|
|
75
|
+
hashArray(this.singleExecutionParameters),
|
|
76
|
+
]);
|
|
77
|
+
}
|
|
78
|
+
}
|
|
@@ -189,3 +189,28 @@ export class MiddleTierUsernamePasswordAuthenticationStrategy
|
|
|
189
189
|
]);
|
|
190
190
|
}
|
|
191
191
|
}
|
|
192
|
+
|
|
193
|
+
export class TrinoDelegatedKerberosAuthenticationStrategy
|
|
194
|
+
extends AuthenticationStrategy
|
|
195
|
+
implements Hashable
|
|
196
|
+
{
|
|
197
|
+
kerberosRemoteServiceName: string;
|
|
198
|
+
kerberosUseCanonicalHostname: boolean;
|
|
199
|
+
|
|
200
|
+
constructor(
|
|
201
|
+
kerberosRemoteServiceName: string,
|
|
202
|
+
kerberosUseCanonicalHostname: boolean,
|
|
203
|
+
) {
|
|
204
|
+
super();
|
|
205
|
+
this.kerberosRemoteServiceName = kerberosRemoteServiceName;
|
|
206
|
+
this.kerberosUseCanonicalHostname = kerberosUseCanonicalHostname;
|
|
207
|
+
}
|
|
208
|
+
|
|
209
|
+
get hashCode(): string {
|
|
210
|
+
return hashArray([
|
|
211
|
+
CORE_HASH_STRUCTURE.TRINO_DELEGATED_KERBEROS_AUTHENTICATION_STRATEGY,
|
|
212
|
+
this.kerberosRemoteServiceName,
|
|
213
|
+
this.kerberosUseCanonicalHostname.toString(),
|
|
214
|
+
]);
|
|
215
|
+
}
|
|
216
|
+
}
|
|
@@ -276,3 +276,56 @@ export class SpannerDatasourceSpecification
|
|
|
276
276
|
]);
|
|
277
277
|
}
|
|
278
278
|
}
|
|
279
|
+
export class TrinoSslSpecification implements Hashable {
|
|
280
|
+
ssl: boolean;
|
|
281
|
+
trustStorePathVaultReference?: string | undefined;
|
|
282
|
+
trustStorePasswordVaultReference?: string | undefined;
|
|
283
|
+
|
|
284
|
+
constructor(ssl: boolean) {
|
|
285
|
+
this.ssl = ssl;
|
|
286
|
+
}
|
|
287
|
+
|
|
288
|
+
get hashCode(): string {
|
|
289
|
+
return hashArray([
|
|
290
|
+
CORE_HASH_STRUCTURE.TRINO_SSL_SPECIFICATION,
|
|
291
|
+
this.ssl.toString(),
|
|
292
|
+
this.trustStorePathVaultReference ?? '',
|
|
293
|
+
this.trustStorePasswordVaultReference ?? '',
|
|
294
|
+
]);
|
|
295
|
+
}
|
|
296
|
+
}
|
|
297
|
+
|
|
298
|
+
export class TrinoDatasourceSpecification
|
|
299
|
+
extends DatasourceSpecification
|
|
300
|
+
implements Hashable
|
|
301
|
+
{
|
|
302
|
+
host: string;
|
|
303
|
+
port: number;
|
|
304
|
+
sslSpecification: TrinoSslSpecification;
|
|
305
|
+
catalog?: string | undefined;
|
|
306
|
+
schema?: string | undefined;
|
|
307
|
+
clientTags?: string | undefined;
|
|
308
|
+
|
|
309
|
+
constructor(
|
|
310
|
+
host: string,
|
|
311
|
+
port: number,
|
|
312
|
+
sslSpecification: TrinoSslSpecification,
|
|
313
|
+
) {
|
|
314
|
+
super();
|
|
315
|
+
this.host = host;
|
|
316
|
+
this.port = port;
|
|
317
|
+
this.sslSpecification = sslSpecification;
|
|
318
|
+
}
|
|
319
|
+
|
|
320
|
+
get hashCode(): string {
|
|
321
|
+
return hashArray([
|
|
322
|
+
CORE_HASH_STRUCTURE.TRINO_DATASOURCE_SPECIFICATION,
|
|
323
|
+
this.host,
|
|
324
|
+
this.port.toString(),
|
|
325
|
+
this.sslSpecification,
|
|
326
|
+
this.catalog ?? '',
|
|
327
|
+
this.schema ?? '',
|
|
328
|
+
this.clientTags ?? '',
|
|
329
|
+
]);
|
|
330
|
+
}
|
|
331
|
+
}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) 2020-present, Goldman Sachs
|
|
3
|
+
*
|
|
4
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
+
* you may not use this file except in compliance with the License.
|
|
6
|
+
* You may obtain a copy of the License at
|
|
7
|
+
*
|
|
8
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
*
|
|
10
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
* See the License for the specific language governing permissions and
|
|
14
|
+
* limitations under the License.
|
|
15
|
+
*/
|
|
16
|
+
|
|
17
|
+
import { makeObservable, override } from 'mobx';
|
|
18
|
+
import type { ExecutionEnvironmentInstance } from '../../../graph/metamodel/pure/packageableElements/service/ExecutionEnvironmentInstance.js';
|
|
19
|
+
import {
|
|
20
|
+
observe_Abstract_PackageableElement,
|
|
21
|
+
skipObservedWithContext,
|
|
22
|
+
} from './CoreObserverHelper.js';
|
|
23
|
+
|
|
24
|
+
export const observe_ExecutionEnvironmentInstance = skipObservedWithContext(
|
|
25
|
+
(
|
|
26
|
+
metamodel: ExecutionEnvironmentInstance,
|
|
27
|
+
context,
|
|
28
|
+
): ExecutionEnvironmentInstance => {
|
|
29
|
+
observe_Abstract_PackageableElement(metamodel);
|
|
30
|
+
|
|
31
|
+
makeObservable<ExecutionEnvironmentInstance, '_elementHashCode'>(
|
|
32
|
+
metamodel,
|
|
33
|
+
{
|
|
34
|
+
_elementHashCode: override,
|
|
35
|
+
},
|
|
36
|
+
);
|
|
37
|
+
// TODO once form is implemented
|
|
38
|
+
return metamodel;
|
|
39
|
+
},
|
|
40
|
+
);
|
|
@@ -50,6 +50,7 @@ const observe_Abstract_BasicModel = (metamodel: BasicModel): void => {
|
|
|
50
50
|
| 'generationSpecificationsIndex'
|
|
51
51
|
| 'fileGenerationsIndex'
|
|
52
52
|
| 'dataElementsIndex'
|
|
53
|
+
| 'executionEnvironmentIndex'
|
|
53
54
|
>(metamodel, {
|
|
54
55
|
elementSectionIndex: observable,
|
|
55
56
|
extensions: observable,
|
|
@@ -67,6 +68,7 @@ const observe_Abstract_BasicModel = (metamodel: BasicModel): void => {
|
|
|
67
68
|
generationSpecificationsIndex: observable,
|
|
68
69
|
fileGenerationsIndex: observable,
|
|
69
70
|
dataElementsIndex: observable,
|
|
71
|
+
executionEnvironmentIndex: observable,
|
|
70
72
|
|
|
71
73
|
ownSectionIndices: computed,
|
|
72
74
|
ownProfiles: computed,
|
|
@@ -86,6 +88,7 @@ const observe_Abstract_BasicModel = (metamodel: BasicModel): void => {
|
|
|
86
88
|
ownFileGenerations: computed,
|
|
87
89
|
ownGenerationSpecifications: computed,
|
|
88
90
|
ownDataElements: computed,
|
|
91
|
+
ownExecutionEnvironments: computed,
|
|
89
92
|
|
|
90
93
|
allOwnElements: computed,
|
|
91
94
|
});
|
|
@@ -120,6 +123,7 @@ export const observe_DependencyManager = skipObserved(
|
|
|
120
123
|
generationSpecifications: computed,
|
|
121
124
|
fileGenerations: computed,
|
|
122
125
|
dataElements: computed,
|
|
126
|
+
executionEnvironments: computed,
|
|
123
127
|
|
|
124
128
|
allOwnElements: computed,
|
|
125
129
|
}),
|
|
@@ -166,6 +170,7 @@ export const observe_Graph = (metamodel: PureModel): PureModel => {
|
|
|
166
170
|
generationSpecifications: computed,
|
|
167
171
|
fileGenerations: computed,
|
|
168
172
|
dataElements: computed,
|
|
173
|
+
executionEnvironments: computed,
|
|
169
174
|
|
|
170
175
|
allElements: computed,
|
|
171
176
|
allOwnTestables: computed,
|
|
@@ -63,6 +63,8 @@ import { observe_FlatData } from './STO_FlatData_ObserverHelper.js';
|
|
|
63
63
|
import { observe_Database } from './STO_Relational_ObserverHelper.js';
|
|
64
64
|
import type { DataElement } from '../../../graph/metamodel/pure/packageableElements/data/DataElement.js';
|
|
65
65
|
import { observe_DataElement } from './DSL_Data_ObserverHelper.js';
|
|
66
|
+
import type { ExecutionEnvironmentInstance } from '../../../graph/metamodel/pure/packageableElements/service/ExecutionEnvironmentInstance.js';
|
|
67
|
+
import { observe_ExecutionEnvironmentInstance } from './DSL_ExecutionEnvironment_ObseverHelper.js';
|
|
66
68
|
|
|
67
69
|
class PackageableElementObserver implements PackageableElementVisitor<void> {
|
|
68
70
|
observerContext: ObserverContext;
|
|
@@ -135,6 +137,12 @@ class PackageableElementObserver implements PackageableElementVisitor<void> {
|
|
|
135
137
|
observe_Service(element, this.observerContext);
|
|
136
138
|
}
|
|
137
139
|
|
|
140
|
+
visit_ExecutionEnvironmentInstance(
|
|
141
|
+
element: ExecutionEnvironmentInstance,
|
|
142
|
+
): void {
|
|
143
|
+
observe_ExecutionEnvironmentInstance(element, this.observerContext);
|
|
144
|
+
}
|
|
145
|
+
|
|
138
146
|
visit_PackageableRuntime(element: PackageableRuntime): void {
|
|
139
147
|
observe_PackageableRuntime(element, this.observerContext);
|
|
140
148
|
}
|
|
@@ -26,9 +26,11 @@ import {
|
|
|
26
26
|
UsernamePasswordAuthenticationStrategy,
|
|
27
27
|
GCPWorkloadIdentityFederationAuthenticationStrategy,
|
|
28
28
|
MiddleTierUsernamePasswordAuthenticationStrategy,
|
|
29
|
+
TrinoDelegatedKerberosAuthenticationStrategy,
|
|
29
30
|
} from '../../../graph/metamodel/pure/packageableElements/store/relational/connection/AuthenticationStrategy.js';
|
|
30
31
|
import {
|
|
31
32
|
type DatasourceSpecification,
|
|
33
|
+
type TrinoSslSpecification,
|
|
32
34
|
BigQueryDatasourceSpecification,
|
|
33
35
|
DatabricksDatasourceSpecification,
|
|
34
36
|
EmbeddedH2DatasourceSpecification,
|
|
@@ -37,6 +39,7 @@ import {
|
|
|
37
39
|
SnowflakeDatasourceSpecification,
|
|
38
40
|
StaticDatasourceSpecification,
|
|
39
41
|
SpannerDatasourceSpecification,
|
|
42
|
+
TrinoDatasourceSpecification,
|
|
40
43
|
} from '../../../graph/metamodel/pure/packageableElements/store/relational/connection/DatasourceSpecification.js';
|
|
41
44
|
import {
|
|
42
45
|
type Mapper,
|
|
@@ -841,6 +844,32 @@ export const observe_SpannerDatasourceSpecification = skipObserved(
|
|
|
841
844
|
}),
|
|
842
845
|
);
|
|
843
846
|
|
|
847
|
+
export const observe_TrinoSslSpecification = skipObserved(
|
|
848
|
+
(metamodel: TrinoSslSpecification): TrinoSslSpecification =>
|
|
849
|
+
makeObservable(metamodel, {
|
|
850
|
+
ssl: observable,
|
|
851
|
+
trustStorePathVaultReference: observable,
|
|
852
|
+
trustStorePasswordVaultReference: observable,
|
|
853
|
+
hashCode: computed,
|
|
854
|
+
}),
|
|
855
|
+
);
|
|
856
|
+
|
|
857
|
+
export const observe_TrinoDatasourceSpecification = skipObserved(
|
|
858
|
+
(metamodel: TrinoDatasourceSpecification): TrinoDatasourceSpecification => {
|
|
859
|
+
makeObservable(metamodel, {
|
|
860
|
+
host: observable,
|
|
861
|
+
port: observable,
|
|
862
|
+
catalog: observable,
|
|
863
|
+
schema: observable,
|
|
864
|
+
clientTags: observable,
|
|
865
|
+
hashCode: computed,
|
|
866
|
+
});
|
|
867
|
+
observe_TrinoSslSpecification(metamodel.sslSpecification);
|
|
868
|
+
|
|
869
|
+
return metamodel;
|
|
870
|
+
},
|
|
871
|
+
);
|
|
872
|
+
|
|
844
873
|
export const observe_DatasourceSpecification = (
|
|
845
874
|
metamodel: DatasourceSpecification,
|
|
846
875
|
context: ObserverContext,
|
|
@@ -861,6 +890,8 @@ export const observe_DatasourceSpecification = (
|
|
|
861
890
|
return observe_BigQueryDatasourceSpecification(metamodel);
|
|
862
891
|
} else if (metamodel instanceof SpannerDatasourceSpecification) {
|
|
863
892
|
return observe_SpannerDatasourceSpecification(metamodel);
|
|
893
|
+
} else if (metamodel instanceof TrinoDatasourceSpecification) {
|
|
894
|
+
return observe_TrinoDatasourceSpecification(metamodel);
|
|
864
895
|
}
|
|
865
896
|
const extraObservers = context.plugins.flatMap(
|
|
866
897
|
(plugin) =>
|
|
@@ -970,6 +1001,18 @@ export const observe_MiddleTierUsernamePasswordAuthenticationStrategy =
|
|
|
970
1001
|
}),
|
|
971
1002
|
);
|
|
972
1003
|
|
|
1004
|
+
export const observe_TrinoDelegatedKerberosAuthenticationStrategy =
|
|
1005
|
+
skipObserved(
|
|
1006
|
+
(
|
|
1007
|
+
metamodel: TrinoDelegatedKerberosAuthenticationStrategy,
|
|
1008
|
+
): TrinoDelegatedKerberosAuthenticationStrategy =>
|
|
1009
|
+
makeObservable(metamodel, {
|
|
1010
|
+
hashCode: computed,
|
|
1011
|
+
kerberosRemoteServiceName: observable,
|
|
1012
|
+
kerberosUseCanonicalHostname: observable,
|
|
1013
|
+
}),
|
|
1014
|
+
);
|
|
1015
|
+
|
|
973
1016
|
export const observe_AuthenticationStrategy = (
|
|
974
1017
|
metamodel: AuthenticationStrategy,
|
|
975
1018
|
context: ObserverContext,
|
|
@@ -1002,6 +1045,10 @@ export const observe_AuthenticationStrategy = (
|
|
|
1002
1045
|
metamodel instanceof MiddleTierUsernamePasswordAuthenticationStrategy
|
|
1003
1046
|
) {
|
|
1004
1047
|
return observe_MiddleTierUsernamePasswordAuthenticationStrategy(metamodel);
|
|
1048
|
+
} else if (
|
|
1049
|
+
metamodel instanceof TrinoDelegatedKerberosAuthenticationStrategy
|
|
1050
|
+
) {
|
|
1051
|
+
return observe_TrinoDelegatedKerberosAuthenticationStrategy(metamodel);
|
|
1005
1052
|
}
|
|
1006
1053
|
const extraObservers = context.plugins.flatMap(
|
|
1007
1054
|
(plugin) =>
|
|
@@ -279,6 +279,7 @@ import {
|
|
|
279
279
|
import { MultiExecutionServiceTestResult } from '../../../../graph/metamodel/pure/packageableElements/service/MultiExecutionServiceTestResult.js';
|
|
280
280
|
import type { ParameterValue } from '../../../../graph/metamodel/pure/packageableElements/service/ParameterValue.js';
|
|
281
281
|
import type { Service } from '../../../../graph/metamodel/pure/packageableElements/service/Service.js';
|
|
282
|
+
import { V1_ExecutionEnvironmentInstance } from './model/packageableElements/service/V1_ExecutionEnvironmentInstance.js';
|
|
282
283
|
|
|
283
284
|
class V1_PureModelContextDataIndex {
|
|
284
285
|
elements: V1_PackageableElement[] = [];
|
|
@@ -305,6 +306,8 @@ class V1_PureModelContextDataIndex {
|
|
|
305
306
|
|
|
306
307
|
dataElements: V1_DataElement[] = [];
|
|
307
308
|
|
|
309
|
+
executionEnvironments: V1_ExecutionEnvironmentInstance[] = [];
|
|
310
|
+
|
|
308
311
|
otherElementsByBuilder: Map<
|
|
309
312
|
V1_ElementBuilder<V1_PackageableElement>,
|
|
310
313
|
V1_PackageableElement[]
|
|
@@ -369,6 +372,8 @@ export const V1_indexPureModelContextData = (
|
|
|
369
372
|
index.generationSpecifications.push(el);
|
|
370
373
|
} else if (el instanceof V1_DataElement) {
|
|
371
374
|
index.dataElements.push(el);
|
|
375
|
+
} else if (el instanceof V1_ExecutionEnvironmentInstance) {
|
|
376
|
+
index.executionEnvironments.push(el);
|
|
372
377
|
} else {
|
|
373
378
|
const clazz = getClass<V1_PackageableElement>(el);
|
|
374
379
|
if (otherElementsByClass.has(clazz)) {
|
|
@@ -985,7 +990,9 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
|
|
|
985
990
|
);
|
|
986
991
|
|
|
987
992
|
// build services
|
|
988
|
-
graphBuilderState.setMessage(
|
|
993
|
+
graphBuilderState.setMessage(
|
|
994
|
+
`Building services and execution environments...`,
|
|
995
|
+
);
|
|
989
996
|
await this.buildServices(graph, inputs, options);
|
|
990
997
|
stopWatch.record(GRAPH_MANAGER_EVENT.GRAPH_BUILDER_BUILD_SERVICES__SUCCESS);
|
|
991
998
|
|
|
@@ -1381,6 +1388,18 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
|
|
|
1381
1388
|
),
|
|
1382
1389
|
),
|
|
1383
1390
|
);
|
|
1391
|
+
await Promise.all(
|
|
1392
|
+
inputs.flatMap((input) =>
|
|
1393
|
+
input.data.executionEnvironments.map((element) =>
|
|
1394
|
+
this.visitWithGraphBuilderErrorHandling(
|
|
1395
|
+
element,
|
|
1396
|
+
new V1_ElementSecondPassBuilder(
|
|
1397
|
+
this.getBuilderContext(graph, input.model, element, options),
|
|
1398
|
+
),
|
|
1399
|
+
),
|
|
1400
|
+
),
|
|
1401
|
+
),
|
|
1402
|
+
);
|
|
1384
1403
|
}
|
|
1385
1404
|
|
|
1386
1405
|
private async buildDataElements(
|
|
@@ -3212,6 +3231,8 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
|
|
|
3212
3231
|
return CORE_PURE_PATH.FLAT_DATA;
|
|
3213
3232
|
} else if (protocol instanceof V1_Database) {
|
|
3214
3233
|
return CORE_PURE_PATH.DATABASE;
|
|
3234
|
+
} else if (protocol instanceof V1_ExecutionEnvironmentInstance) {
|
|
3235
|
+
return CORE_PURE_PATH.EXECUTION_ENVIRONMENT;
|
|
3215
3236
|
} else if (protocol instanceof V1_Service) {
|
|
3216
3237
|
return CORE_PURE_PATH.SERVICE;
|
|
3217
3238
|
} else if (protocol instanceof V1_FileGenerationSpecification) {
|
package/src/graphManager/protocol/pure/v1/model/packageableElements/V1_PackageableElement.ts
CHANGED
|
@@ -33,6 +33,7 @@ import type { V1_Measure } from './domain/V1_Measure.js';
|
|
|
33
33
|
import type { V1_SectionIndex } from './section/V1_SectionIndex.js';
|
|
34
34
|
import type { V1_DataElement } from './data/V1_DataElement.js';
|
|
35
35
|
import { ELEMENT_PATH_DELIMITER } from '../../../../../../graph/MetaModelConst.js';
|
|
36
|
+
import type { V1_ExecutionEnvironmentInstance } from './service/V1_ExecutionEnvironmentInstance.js';
|
|
36
37
|
|
|
37
38
|
export interface V1_PackageableElementVisitor<T> {
|
|
38
39
|
visit_PackageableElement(element: V1_PackageableElement): T;
|
|
@@ -53,6 +54,9 @@ export interface V1_PackageableElementVisitor<T> {
|
|
|
53
54
|
visit_GenerationSpecification(element: V1_GenerationSpecification): T;
|
|
54
55
|
visit_FileGeneration(element: V1_FileGenerationSpecification): T;
|
|
55
56
|
visit_DataElement(element: V1_DataElement): T;
|
|
57
|
+
visit_ExecutionEnvironmentInstance(
|
|
58
|
+
element: V1_ExecutionEnvironmentInstance,
|
|
59
|
+
): T;
|
|
56
60
|
}
|
|
57
61
|
|
|
58
62
|
export abstract class V1_PackageableElement implements Hashable {
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) 2020-present, Goldman Sachs
|
|
3
|
+
*
|
|
4
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
+
* you may not use this file except in compliance with the License.
|
|
6
|
+
* You may obtain a copy of the License at
|
|
7
|
+
*
|
|
8
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
*
|
|
10
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
* See the License for the specific language governing permissions and
|
|
14
|
+
* limitations under the License.
|
|
15
|
+
*/
|
|
16
|
+
|
|
17
|
+
import { type Hashable, hashArray } from '@finos/legend-shared';
|
|
18
|
+
import { CORE_HASH_STRUCTURE } from '../../../../../../../graph/Core_HashUtils.js';
|
|
19
|
+
import type { V1_Runtime } from '../runtime/V1_Runtime.js';
|
|
20
|
+
import {
|
|
21
|
+
V1_PackageableElement,
|
|
22
|
+
type V1_PackageableElementVisitor,
|
|
23
|
+
} from '../V1_PackageableElement.js';
|
|
24
|
+
|
|
25
|
+
export class V1_ExecutionEnvironmentInstance
|
|
26
|
+
extends V1_PackageableElement
|
|
27
|
+
implements Hashable
|
|
28
|
+
{
|
|
29
|
+
executionParameters: V1_ExecutionParameters[] = [];
|
|
30
|
+
|
|
31
|
+
override get hashCode(): string {
|
|
32
|
+
return hashArray([
|
|
33
|
+
CORE_HASH_STRUCTURE.EXECUTION_ENVIRONMENT_INSTANCE,
|
|
34
|
+
this.path,
|
|
35
|
+
hashArray(this.executionParameters),
|
|
36
|
+
]);
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
accept_PackageableElementVisitor<T>(
|
|
40
|
+
visitor: V1_PackageableElementVisitor<T>,
|
|
41
|
+
): T {
|
|
42
|
+
return visitor.visit_ExecutionEnvironmentInstance(this);
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
export abstract class V1_ExecutionParameters implements Hashable {
|
|
47
|
+
abstract get hashCode(): string;
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
export class V1_SingleExecutionParameters
|
|
51
|
+
extends V1_ExecutionParameters
|
|
52
|
+
implements Hashable
|
|
53
|
+
{
|
|
54
|
+
key!: string;
|
|
55
|
+
mapping!: string;
|
|
56
|
+
runtime!: V1_Runtime;
|
|
57
|
+
|
|
58
|
+
get hashCode(): string {
|
|
59
|
+
return hashArray([
|
|
60
|
+
CORE_HASH_STRUCTURE.SINGLE_EXECUTION_PARAMETER,
|
|
61
|
+
this.key,
|
|
62
|
+
this.mapping,
|
|
63
|
+
this.runtime,
|
|
64
|
+
]);
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
export class V1_MultiExecutionParameters
|
|
69
|
+
extends V1_ExecutionParameters
|
|
70
|
+
implements Hashable
|
|
71
|
+
{
|
|
72
|
+
masterKey!: string;
|
|
73
|
+
singleExecutionParameters: V1_SingleExecutionParameters[] = [];
|
|
74
|
+
|
|
75
|
+
get hashCode(): string {
|
|
76
|
+
return hashArray([
|
|
77
|
+
CORE_HASH_STRUCTURE.MULTI_EXECUTION_PARAMETER,
|
|
78
|
+
this.masterKey,
|
|
79
|
+
hashArray(this.singleExecutionParameters),
|
|
80
|
+
]);
|
|
81
|
+
}
|
|
82
|
+
}
|
|
@@ -149,3 +149,19 @@ export class V1_MiddleTierUsernamePasswordAuthenticationStrategy
|
|
|
149
149
|
]);
|
|
150
150
|
}
|
|
151
151
|
}
|
|
152
|
+
|
|
153
|
+
export class V1_TrinoDelegatedKerberosAuthenticationStrategy
|
|
154
|
+
extends V1_AuthenticationStrategy
|
|
155
|
+
implements Hashable
|
|
156
|
+
{
|
|
157
|
+
kerberosRemoteServiceName!: string;
|
|
158
|
+
kerberosUseCanonicalHostname!: boolean;
|
|
159
|
+
|
|
160
|
+
get hashCode(): string {
|
|
161
|
+
return hashArray([
|
|
162
|
+
CORE_HASH_STRUCTURE.TRINO_DELEGATED_KERBEROS_AUTHENTICATION_STRATEGY,
|
|
163
|
+
this.kerberosRemoteServiceName,
|
|
164
|
+
this.kerberosUseCanonicalHostname.toString(),
|
|
165
|
+
]);
|
|
166
|
+
}
|
|
167
|
+
}
|
|
@@ -194,3 +194,42 @@ export class V1_LocalH2DataSourceSpecification
|
|
|
194
194
|
]);
|
|
195
195
|
}
|
|
196
196
|
}
|
|
197
|
+
|
|
198
|
+
export class V1_TrinoSslSpecification implements Hashable {
|
|
199
|
+
ssl!: boolean;
|
|
200
|
+
trustStorePathVaultReference?: string | undefined;
|
|
201
|
+
trustStorePasswordVaultReference?: string | undefined;
|
|
202
|
+
|
|
203
|
+
get hashCode(): string {
|
|
204
|
+
return hashArray([
|
|
205
|
+
CORE_HASH_STRUCTURE.TRINO_SSL_SPECIFICATION,
|
|
206
|
+
this.ssl.toString(),
|
|
207
|
+
this.trustStorePathVaultReference ?? '',
|
|
208
|
+
this.trustStorePasswordVaultReference ?? '',
|
|
209
|
+
]);
|
|
210
|
+
}
|
|
211
|
+
}
|
|
212
|
+
|
|
213
|
+
export class V1_TrinoDatasourceSpecification
|
|
214
|
+
extends V1_DatasourceSpecification
|
|
215
|
+
implements Hashable
|
|
216
|
+
{
|
|
217
|
+
host!: string;
|
|
218
|
+
port!: number;
|
|
219
|
+
sslSpecification!: V1_TrinoSslSpecification;
|
|
220
|
+
catalog?: string | undefined;
|
|
221
|
+
schema?: string | undefined;
|
|
222
|
+
clientTags?: string | undefined;
|
|
223
|
+
|
|
224
|
+
get hashCode(): string {
|
|
225
|
+
return hashArray([
|
|
226
|
+
CORE_HASH_STRUCTURE.TRINO_DATASOURCE_SPECIFICATION,
|
|
227
|
+
this.host,
|
|
228
|
+
this.port.toString(),
|
|
229
|
+
this.sslSpecification,
|
|
230
|
+
this.catalog ?? '',
|
|
231
|
+
this.schema ?? '',
|
|
232
|
+
this.clientTags ?? '',
|
|
233
|
+
]);
|
|
234
|
+
}
|
|
235
|
+
}
|