@finos/legend-graph 0.1.2 → 0.1.3

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.
Files changed (126) hide show
  1. package/CHANGELOG.md +10 -0
  2. package/lib/graphManager/AbstractPureGraphManager.d.ts +1 -1
  3. package/lib/graphManager/AbstractPureGraphManager.d.ts.map +1 -1
  4. package/lib/graphManager/AbstractPureGraphManager.js.map +1 -1
  5. package/lib/index.d.ts +1 -0
  6. package/lib/index.d.ts.map +1 -1
  7. package/lib/index.js +1 -0
  8. package/lib/index.js.map +1 -1
  9. package/lib/models/metamodels/pure/packageableElements/store/relational/connection/DatasourceSpecification.d.ts +10 -0
  10. package/lib/models/metamodels/pure/packageableElements/store/relational/connection/DatasourceSpecification.d.ts.map +1 -1
  11. package/lib/models/metamodels/pure/packageableElements/store/relational/connection/DatasourceSpecification.js +35 -0
  12. package/lib/models/metamodels/pure/packageableElements/store/relational/connection/DatasourceSpecification.js.map +1 -1
  13. package/lib/models/protocols/pure/v1/V1_PureGraphManager.d.ts +1 -1
  14. package/lib/models/protocols/pure/v1/V1_PureGraphManager.d.ts.map +1 -1
  15. package/lib/models/protocols/pure/v1/V1_PureGraphManager.js +4 -13
  16. package/lib/models/protocols/pure/v1/V1_PureGraphManager.js.map +1 -1
  17. package/lib/models/protocols/pure/v1/engine/V1_EngineHelper.d.ts.map +1 -1
  18. package/lib/models/protocols/pure/v1/engine/V1_EngineHelper.js +30 -30
  19. package/lib/models/protocols/pure/v1/engine/V1_EngineHelper.js.map +1 -1
  20. package/lib/models/protocols/pure/v1/engine/V1_ExecutionHelper.js +4 -4
  21. package/lib/models/protocols/pure/v1/engine/V1_ExecutionHelper.js.map +1 -1
  22. package/lib/models/protocols/pure/v1/model/context/V1_AlloySdlc.d.ts +3 -2
  23. package/lib/models/protocols/pure/v1/model/context/V1_AlloySdlc.d.ts.map +1 -1
  24. package/lib/models/protocols/pure/v1/model/context/V1_AlloySdlc.js +5 -3
  25. package/lib/models/protocols/pure/v1/model/context/V1_AlloySdlc.js.map +1 -1
  26. package/lib/models/protocols/pure/v1/model/packageableElements/V1_PackageableElement.d.ts +3 -2
  27. package/lib/models/protocols/pure/v1/model/packageableElements/V1_PackageableElement.d.ts.map +1 -1
  28. package/lib/models/protocols/pure/v1/model/packageableElements/V1_PackageableElement.js +1 -0
  29. package/lib/models/protocols/pure/v1/model/packageableElements/V1_PackageableElement.js.map +1 -1
  30. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/connection/V1_DatasourceSpecification.d.ts +5 -0
  31. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/connection/V1_DatasourceSpecification.d.ts.map +1 -1
  32. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/connection/V1_DatasourceSpecification.js +10 -0
  33. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/connection/V1_DatasourceSpecification.js.map +1 -1
  34. package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_ConnectionTransformer.d.ts.map +1 -1
  35. package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_ConnectionTransformer.js +5 -0
  36. package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_ConnectionTransformer.js.map +1 -1
  37. package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_MappingTransformer.d.ts.map +1 -1
  38. package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_MappingTransformer.js +2 -0
  39. package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_MappingTransformer.js.map +1 -1
  40. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ElementBuilder.d.ts.map +1 -1
  41. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ElementBuilder.js +2 -2
  42. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ElementBuilder.js.map +1 -1
  43. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ExecutionPlanBuilder.js +5 -5
  44. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ExecutionPlanBuilder.js.map +1 -1
  45. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_GraphBuilderContext.d.ts.map +1 -1
  46. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_GraphBuilderContext.js +17 -17
  47. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_GraphBuilderContext.js.map +1 -1
  48. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelClassMappingFirstPassBuilder.js +11 -11
  49. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelClassMappingFirstPassBuilder.js.map +1 -1
  50. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelClassMappingSecondPassBuilder.js +5 -5
  51. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelClassMappingSecondPassBuilder.js.map +1 -1
  52. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelConnectionBuilder.d.ts.map +1 -1
  53. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelConnectionBuilder.js +13 -13
  54. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelConnectionBuilder.js.map +1 -1
  55. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphFirstPassBuilder.d.ts.map +1 -1
  56. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphFirstPassBuilder.js +28 -28
  57. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphFirstPassBuilder.js.map +1 -1
  58. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphSecondPassBuilder.d.ts.map +1 -1
  59. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphSecondPassBuilder.js +8 -8
  60. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphSecondPassBuilder.js.map +1 -1
  61. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelPropertyMappingBuilder.js +27 -27
  62. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelPropertyMappingBuilder.js.map +1 -1
  63. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_DatabaseBuilderHelper.d.ts.map +1 -1
  64. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_DatabaseBuilderHelper.js +14 -14
  65. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_DatabaseBuilderHelper.js.map +1 -1
  66. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_DomainBuilderHelper.d.ts.map +1 -1
  67. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_DomainBuilderHelper.js +15 -15
  68. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_DomainBuilderHelper.js.map +1 -1
  69. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_FlatDataStoreBuilderHelper.d.ts.map +1 -1
  70. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_FlatDataStoreBuilderHelper.js +7 -7
  71. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_FlatDataStoreBuilderHelper.js.map +1 -1
  72. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_GenerationSpecificationBuilderHelper.d.ts.map +1 -1
  73. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_GenerationSpecificationBuilderHelper.js +3 -3
  74. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_GenerationSpecificationBuilderHelper.js.map +1 -1
  75. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_MappingBuilderHelper.d.ts.map +1 -1
  76. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_MappingBuilderHelper.js +13 -13
  77. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_MappingBuilderHelper.js.map +1 -1
  78. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_RelationalConnectionBuilderHelper.d.ts.map +1 -1
  79. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_RelationalConnectionBuilderHelper.js +24 -19
  80. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_RelationalConnectionBuilderHelper.js.map +1 -1
  81. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_RuntimeBuilderHelper.js +3 -3
  82. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_RuntimeBuilderHelper.js.map +1 -1
  83. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_ServiceBuilderHelper.d.ts.map +1 -1
  84. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_ServiceBuilderHelper.js +15 -15
  85. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_ServiceBuilderHelper.js.map +1 -1
  86. package/lib/models/protocols/pure/v1/transformation/pureProtocol/V1_PureProtocolSerialization.d.ts.map +1 -1
  87. package/lib/models/protocols/pure/v1/transformation/pureProtocol/V1_PureProtocolSerialization.js +2 -1
  88. package/lib/models/protocols/pure/v1/transformation/pureProtocol/V1_PureProtocolSerialization.js.map +1 -1
  89. package/lib/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_ConnectionSerializationHelper.d.ts.map +1 -1
  90. package/lib/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_ConnectionSerializationHelper.js +5 -0
  91. package/lib/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_ConnectionSerializationHelper.js.map +1 -1
  92. package/lib/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_MappingSerializationHelper.d.ts.map +1 -1
  93. package/lib/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_MappingSerializationHelper.js +3 -4
  94. package/lib/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_MappingSerializationHelper.js.map +1 -1
  95. package/package.json +2 -2
  96. package/src/graphManager/AbstractPureGraphManager.ts +2 -1
  97. package/src/index.ts +1 -0
  98. package/src/models/metamodels/pure/packageableElements/store/relational/connection/DatasourceSpecification.ts +40 -0
  99. package/src/models/protocols/pure/v1/V1_PureGraphManager.ts +5 -14
  100. package/src/models/protocols/pure/v1/engine/V1_EngineHelper.ts +55 -34
  101. package/src/models/protocols/pure/v1/engine/V1_ExecutionHelper.ts +4 -4
  102. package/src/models/protocols/pure/v1/model/context/V1_AlloySdlc.ts +9 -3
  103. package/src/models/protocols/pure/v1/model/packageableElements/V1_PackageableElement.ts +3 -2
  104. package/src/models/protocols/pure/v1/model/packageableElements/store/relational/connection/V1_DatasourceSpecification.ts +10 -0
  105. package/src/models/protocols/pure/v1/transformation/pureGraph/from/V1_ConnectionTransformer.ts +5 -0
  106. package/src/models/protocols/pure/v1/transformation/pureGraph/from/V1_MappingTransformer.ts +2 -0
  107. package/src/models/protocols/pure/v1/transformation/pureGraph/to/V1_ElementBuilder.ts +8 -2
  108. package/src/models/protocols/pure/v1/transformation/pureGraph/to/V1_ExecutionPlanBuilder.ts +5 -5
  109. package/src/models/protocols/pure/v1/transformation/pureGraph/to/V1_GraphBuilderContext.ts +41 -17
  110. package/src/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelClassMappingFirstPassBuilder.ts +11 -11
  111. package/src/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelClassMappingSecondPassBuilder.ts +5 -5
  112. package/src/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelConnectionBuilder.ts +22 -13
  113. package/src/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphFirstPassBuilder.ts +112 -28
  114. package/src/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphSecondPassBuilder.ts +20 -8
  115. package/src/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelPropertyMappingBuilder.ts +27 -27
  116. package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_DatabaseBuilderHelper.ts +44 -14
  117. package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_DomainBuilderHelper.ts +42 -15
  118. package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_FlatDataStoreBuilderHelper.ts +19 -7
  119. package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_GenerationSpecificationBuilderHelper.ts +6 -3
  120. package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_MappingBuilderHelper.ts +16 -13
  121. package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_RelationalConnectionBuilderHelper.ts +24 -19
  122. package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_RuntimeBuilderHelper.ts +3 -3
  123. package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_ServiceBuilderHelper.ts +18 -15
  124. package/src/models/protocols/pure/v1/transformation/pureProtocol/V1_PureProtocolSerialization.ts +2 -1
  125. package/src/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_ConnectionSerializationHelper.ts +5 -0
  126. package/src/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_MappingSerializationHelper.ts +2 -3
@@ -133,7 +133,7 @@ const buildTDSColumn = (
133
133
  const metamodel = new TDSColumn();
134
134
  metamodel.name = guaranteeNonNullable(
135
135
  protocol.name,
136
- 'TDS column name is missing',
136
+ `TDS column 'name' field is missing`,
137
137
  );
138
138
  metamodel.documentation = protocol.doc;
139
139
  metamodel.sourceDataType = protocol.relationalType
@@ -182,7 +182,7 @@ const buildSQLResultColumn = (
182
182
  const metamodel = new SQLResultColumn();
183
183
  metamodel.label = guaranteeNonNullable(
184
184
  protocol.label,
185
- 'SQL result column label is missing',
185
+ `SQL result column 'label' field is missing`,
186
186
  );
187
187
  metamodel.dataType = protocol.dataType
188
188
  ? parseDataType(protocol.dataType)
@@ -215,7 +215,7 @@ const buildSQLExecutionNode = (
215
215
  buildBaseExecutionNode(metamodel, protocol, context);
216
216
  metamodel.sqlQuery = guaranteeNonNullable(
217
217
  protocol.sqlQuery,
218
- 'SQL execution node SQL query is missing',
218
+ `SQL execution node 'sqlQuery' field is missing`,
219
219
  );
220
220
  metamodel.onConnectionCloseCommitQuery =
221
221
  protocol.onConnectionCloseCommitQuery;
@@ -226,7 +226,7 @@ const buildSQLExecutionNode = (
226
226
  new V1_ProtocolToMetaModelConnectionBuilder(context),
227
227
  ),
228
228
  DatabaseConnection,
229
- 'SQL execution node connection must be of type database connection',
229
+ 'SQL execution node connection must be a database connection',
230
230
  );
231
231
  metamodel.resultColumns = protocol.resultColumns.map(buildSQLResultColumn);
232
232
  return metamodel;
@@ -263,7 +263,7 @@ export const V1_buildExecutionPlan = (
263
263
  const metamodel = new ExecutionPlan();
264
264
  metamodel.authDependent = guaranteeNonNullable(
265
265
  protocol.authDependent,
266
- 'Single execution plan authentication dependent flag is missing',
266
+ `Single execution plan 'authDependent' field is missing`,
267
267
  );
268
268
  metamodel.kerberos = protocol.kerberos;
269
269
  metamodel.processingTemplateFunctions = protocol.templateFunctions;
@@ -205,11 +205,11 @@ export class V1_GraphBuilderContext {
205
205
  ): StereotypeImplicitReference => {
206
206
  assertNonEmptyString(
207
207
  stereotypePtr.profile,
208
- 'Steoreotype pointer profile is missing',
208
+ `Steoreotype pointer 'profile' field is missing or empty`,
209
209
  );
210
210
  assertNonEmptyString(
211
211
  stereotypePtr.value,
212
- 'Steoreotype pointer value is missing',
212
+ `Steoreotype pointer 'value' field is missing or empty`,
213
213
  );
214
214
  const ownerReference = this.resolveProfile(stereotypePtr.profile);
215
215
  const value = ownerReference.value.getStereotype(stereotypePtr.value);
@@ -217,8 +217,14 @@ export class V1_GraphBuilderContext {
217
217
  };
218
218
 
219
219
  resolveTag = (tagPtr: V1_TagPtr): TagImplicitReference => {
220
- assertNonEmptyString(tagPtr.profile, 'Tag pointer profile is missing');
221
- assertNonEmptyString(tagPtr.value, 'Tag pointer value is missing');
220
+ assertNonEmptyString(
221
+ tagPtr.profile,
222
+ `Tag pointer 'profile' field is missing or empty`,
223
+ );
224
+ assertNonEmptyString(
225
+ tagPtr.value,
226
+ `Tag pointer 'value' field is missing or empty`,
227
+ );
222
228
  const ownerReference = this.resolveProfile(tagPtr.profile);
223
229
  const value = ownerReference.value.getTag(tagPtr.value);
224
230
  return TagImplicitReference.create(ownerReference, value);
@@ -235,11 +241,11 @@ export class V1_GraphBuilderContext {
235
241
  ): PropertyImplicitReference => {
236
242
  assertNonEmptyString(
237
243
  propertyPtr.class,
238
- 'Property pointer class is missing',
244
+ `Property pointer 'class' field is missing or empty`,
239
245
  );
240
246
  assertNonEmptyString(
241
247
  propertyPtr.property,
242
- 'Property pointer name is missing',
248
+ `Property pointer 'property' field is missing or empty`,
243
249
  );
244
250
  const ownerReference = this.resolveClass(propertyPtr.class);
245
251
  const value = ownerReference.value.getOwnedProperty(propertyPtr.property);
@@ -251,11 +257,11 @@ export class V1_GraphBuilderContext {
251
257
  ): PropertyImplicitReference => {
252
258
  assertNonEmptyString(
253
259
  propertyPtr.class,
254
- 'Property pointer class is missing',
260
+ `Property pointer 'class' field is missing or empty`,
255
261
  );
256
262
  assertNonEmptyString(
257
263
  propertyPtr.property,
258
- 'Property pointer name is missing',
264
+ `Property pointer 'property' field is missing or empty`,
259
265
  );
260
266
  const ownerReference = this.resolveClass(propertyPtr.class);
261
267
  const value = ownerReference.value.getProperty(propertyPtr.property);
@@ -267,11 +273,11 @@ export class V1_GraphBuilderContext {
267
273
  ): RootFlatDataRecordTypeImplicitReference => {
268
274
  assertNonEmptyString(
269
275
  classMapping.flatData,
270
- 'Flat-data class mapping source flat-data store is missing',
276
+ `Flat-data class mapping 'flatData' field is missing or empty`,
271
277
  );
272
278
  assertNonEmptyString(
273
279
  classMapping.sectionName,
274
- 'Flat-data class mapping source flat-data section is missing',
280
+ `Flat-data class mapping 'sectionName' field is missing or empty`,
275
281
  );
276
282
  const ownerReference = this.resolveFlatDataStore(classMapping.flatData);
277
283
  const value = ownerReference.value
@@ -288,10 +294,16 @@ export class V1_GraphBuilderContext {
288
294
  ): ViewImplicitReference | TableImplicitReference => {
289
295
  assertNonEmptyString(
290
296
  tablePtr.database,
291
- 'Table pointer database is missing',
297
+ `Table pointer 'database' field is missing or empty`,
298
+ );
299
+ assertNonEmptyString(
300
+ tablePtr.schema,
301
+ `Table pointer 'schema' field is missing or empty`,
302
+ );
303
+ assertNonEmptyString(
304
+ tablePtr.table,
305
+ `Table pointer 'table' field is missing or empty`,
292
306
  );
293
- assertNonEmptyString(tablePtr.schema, 'Table pointer schema is missing');
294
- assertNonEmptyString(tablePtr.table, 'Table pointer table is missing');
295
307
  const ownerReference = this.resolveDatabase(tablePtr.database);
296
308
  const value = V1_getRelation(
297
309
  ownerReference.value,
@@ -302,16 +314,28 @@ export class V1_GraphBuilderContext {
302
314
  };
303
315
 
304
316
  resolveJoin = (joinPtr: V1_JoinPointer): JoinImplicitReference => {
305
- assertNonEmptyString(joinPtr.db, 'Join pointer database is missing');
306
- assertNonEmptyString(joinPtr.name, 'Join pointer name is missing');
317
+ assertNonEmptyString(
318
+ joinPtr.db,
319
+ `Join pointer 'db' field is missing or empty`,
320
+ );
321
+ assertNonEmptyString(
322
+ joinPtr.name,
323
+ `Join pointer 'name' field is missing or empty`,
324
+ );
307
325
  const ownerReference = this.resolveDatabase(joinPtr.db);
308
326
  const value = ownerReference.value.getJoin(joinPtr.name);
309
327
  return JoinImplicitReference.create(ownerReference, value);
310
328
  };
311
329
 
312
330
  resolveFilter = (filterPtr: V1_FilterPointer): FilterImplicitReference => {
313
- assertNonEmptyString(filterPtr.db, 'Filter pointer database is missing');
314
- assertNonEmptyString(filterPtr.name, 'Filter pointer name is missing');
331
+ assertNonEmptyString(
332
+ filterPtr.db,
333
+ `Filter pointer 'db' field is missing or empty`,
334
+ );
335
+ assertNonEmptyString(
336
+ filterPtr.name,
337
+ `Filter pointer 'name' field is missing or empty`,
338
+ );
315
339
  const ownerReference = this.resolveDatabase(filterPtr.db);
316
340
  const value = ownerReference.value.getFilter(filterPtr.name);
317
341
  return FilterImplicitReference.create(ownerReference, value);
@@ -61,15 +61,15 @@ export class V1_ProtocolToMetaModelClassMappingFirstPassBuilder
61
61
  ): SetImplementation {
62
62
  assertNonEmptyString(
63
63
  classMapping.class,
64
- 'Operation class mapping class is missing',
64
+ `Operation class mapping 'class' field is missing or empty`,
65
65
  );
66
66
  assertNonNullable(
67
67
  classMapping.root,
68
- 'Operation class mapping root flag is missing',
68
+ `Operation class mapping 'root' field is missing`,
69
69
  );
70
70
  assertNonNullable(
71
71
  classMapping.operation,
72
- 'Operation class mapping operation is missing',
72
+ `Operation class mapping operation is missing`,
73
73
  );
74
74
  const targetClass = this.context.resolveClass(classMapping.class);
75
75
  return new OperationSetImplementation(
@@ -86,11 +86,11 @@ export class V1_ProtocolToMetaModelClassMappingFirstPassBuilder
86
86
  ): SetImplementation {
87
87
  assertNonEmptyString(
88
88
  classMapping.class,
89
- 'Model-to-model class mapping class is missing',
89
+ `Pure instance class mapping 'class' field is missing or empty`,
90
90
  );
91
91
  assertNonNullable(
92
92
  classMapping.root,
93
- 'Model-to-model class mapping root flag is missing',
93
+ `Pure instance class mapping 'root' field is missing`,
94
94
  );
95
95
  const targetClass = this.context.resolveClass(classMapping.class);
96
96
  const srcClassReference = classMapping.srcClass
@@ -114,11 +114,11 @@ export class V1_ProtocolToMetaModelClassMappingFirstPassBuilder
114
114
  ): SetImplementation {
115
115
  assertNonEmptyString(
116
116
  classMapping.class,
117
- 'Flat-data class mapping class is missing',
117
+ `Flat-data class mapping 'class' field is missing or empty`,
118
118
  );
119
119
  assertNonNullable(
120
120
  classMapping.root,
121
- 'Flat-data class mapping root flag is missing',
121
+ `Flat-data class mapping 'root' field is missing`,
122
122
  );
123
123
  const targetClass = this.context.resolveClass(classMapping.class);
124
124
  const sourceRootRecordType =
@@ -148,11 +148,11 @@ export class V1_ProtocolToMetaModelClassMappingFirstPassBuilder
148
148
  ): SetImplementation {
149
149
  assertNonEmptyString(
150
150
  classMapping.class,
151
- 'Relational class mapping class is missing',
151
+ `Relational class mapping 'class' field is missing or empty`,
152
152
  );
153
153
  assertNonNullable(
154
154
  classMapping.root,
155
- 'Relational class mapping root flag is missing',
155
+ `Relational class mapping 'root' field is missing`,
156
156
  );
157
157
  const targetClass = this.context.resolveClass(classMapping.class);
158
158
  const rootRelationalInstanceSetImplementation =
@@ -173,11 +173,11 @@ export class V1_ProtocolToMetaModelClassMappingFirstPassBuilder
173
173
  ): SetImplementation {
174
174
  assertNonEmptyString(
175
175
  classMapping.class,
176
- 'Aggregation-aware class mapping class is missing',
176
+ `Aggregation-aware class mapping 'class' field is missing or empty`,
177
177
  );
178
178
  assertNonNullable(
179
179
  classMapping.root,
180
- 'Aggregation-aware class mapping root flag is missing',
180
+ `Aggregation-aware class mapping 'root' field is missing`,
181
181
  );
182
182
  const targetClass = this.context.resolveClass(classMapping.class);
183
183
  const mapping = this.context.graph.getMapping(this.parent.path);
@@ -76,7 +76,7 @@ export class V1_ProtocolToMetaModelClassMappingSecondPassBuilder
76
76
  visit_OperationClassMapping(classMapping: V1_OperationClassMapping): void {
77
77
  assertNonEmptyString(
78
78
  classMapping.class,
79
- 'Operation class mapping class is missing',
79
+ `Operation class mapping 'class' field is missing or empty`,
80
80
  );
81
81
  const id = V1_getInferredClassMappingId(
82
82
  this.context.resolveClass(classMapping.class).value,
@@ -116,7 +116,7 @@ export class V1_ProtocolToMetaModelClassMappingSecondPassBuilder
116
116
  ): void {
117
117
  assertNonEmptyString(
118
118
  classMapping.class,
119
- 'Model-to-model class mapping class is missing',
119
+ `Pure instance class mapping 'class' field is missing or empty`,
120
120
  );
121
121
  const pureInstanceSetImplementation = guaranteeType(
122
122
  getOwnClassMappingById(
@@ -149,7 +149,7 @@ export class V1_ProtocolToMetaModelClassMappingSecondPassBuilder
149
149
  ): void {
150
150
  assertNonEmptyString(
151
151
  classMapping.class,
152
- 'Flat-data class mapping class is missing',
152
+ `Flat-data class mapping 'class' field is missing or empty`,
153
153
  );
154
154
  const flatDataInstanceSetImplementation = guaranteeType(
155
155
  getOwnClassMappingById(
@@ -183,7 +183,7 @@ export class V1_ProtocolToMetaModelClassMappingSecondPassBuilder
183
183
  ): SetImplementation {
184
184
  assertNonEmptyString(
185
185
  classMapping.class,
186
- 'Relational class mapping class is missing',
186
+ `Relational class mapping 'class' field is missing or empty`,
187
187
  );
188
188
  const rootRelationalInstanceSetImplementation = guaranteeType(
189
189
  getOwnClassMappingById(
@@ -272,7 +272,7 @@ export class V1_ProtocolToMetaModelClassMappingSecondPassBuilder
272
272
  ): SetImplementation {
273
273
  assertNonEmptyString(
274
274
  classMapping.class,
275
- 'Aggregation-aware class mapping class is missing',
275
+ `Aggregation-aware class mapping 'class' field is missing or empty`,
276
276
  );
277
277
  const aggragetionAwareInstanceSetImplementation = guaranteeType(
278
278
  getOwnClassMappingById(
@@ -91,7 +91,7 @@ export class V1_ProtocolToMetaModelConnectionBuilder
91
91
  visit_ConnectionPointer(connection: V1_ConnectionPointer): Connection {
92
92
  assertNonNullable(
93
93
  connection.connection,
94
- 'Connection pointer connection is missing',
94
+ `Connection pointer 'connection' field is missing`,
95
95
  );
96
96
  return new ConnectionPointer(
97
97
  this.context.resolveConnection(connection.connection),
@@ -140,9 +140,12 @@ export class V1_ProtocolToMetaModelConnectionBuilder
140
140
  }
141
141
  assertNonNullable(
142
142
  connection.class,
143
- 'JSON model connection class is missing',
143
+ `JSON model connection 'class' field is missing`,
144
+ );
145
+ assertNonNullable(
146
+ connection.url,
147
+ `JSON model connection 'url' field is missing`,
144
148
  );
145
- assertNonNullable(connection.url, 'JSON model connection data is missing');
146
149
  return new JsonModelConnection(
147
150
  PackageableElementImplicitReference.create(
148
151
  this.context.graph.modelStore,
@@ -168,9 +171,12 @@ export class V1_ProtocolToMetaModelConnectionBuilder
168
171
  }
169
172
  assertNonNullable(
170
173
  connection.class,
171
- 'XML model connection class is missing',
174
+ `XML model connection 'class' field is missing`,
175
+ );
176
+ assertNonNullable(
177
+ connection.url,
178
+ `XML model connection 'url' field is missing`,
172
179
  );
173
- assertNonNullable(connection.url, 'XML model connection data is missing');
174
180
  return new XmlModelConnection(
175
181
  PackageableElementImplicitReference.create(
176
182
  this.context.graph.modelStore,
@@ -186,7 +192,7 @@ export class V1_ProtocolToMetaModelConnectionBuilder
186
192
  ? this.context.resolveFlatDataStore(
187
193
  guaranteeNonNullable(
188
194
  connection.store,
189
- 'Flat-data connection store is missing',
195
+ `Flat-data connection 'store' field is missing`,
190
196
  ),
191
197
  )
192
198
  : connection.store
@@ -195,12 +201,15 @@ export class V1_ProtocolToMetaModelConnectionBuilder
195
201
  assertType(
196
202
  this.embeddedConnectionStore.value,
197
203
  FlatData,
198
- 'Flat-data connection store must be a flat-data store',
204
+ `Flat-data connection store must be a flat-data store`,
199
205
  );
200
206
  return this
201
207
  .embeddedConnectionStore as PackageableElementReference<FlatData>;
202
208
  })();
203
- assertNonNullable(connection.url, 'Flat-data connection data is missing');
209
+ assertNonNullable(
210
+ connection.url,
211
+ `Flat-data connection 'url' field is missing`,
212
+ );
204
213
  return new FlatDataConnection(store, connection.url);
205
214
  }
206
215
 
@@ -211,7 +220,7 @@ export class V1_ProtocolToMetaModelConnectionBuilder
211
220
  ? this.context.resolveDatabase(
212
221
  guaranteeNonNullable(
213
222
  connection.store,
214
- 'Relational database connection store is missing',
223
+ `Relational database connection 'store' field is missing`,
215
224
  ),
216
225
  )
217
226
  : connection.store
@@ -220,22 +229,22 @@ export class V1_ProtocolToMetaModelConnectionBuilder
220
229
  assertType(
221
230
  this.embeddedConnectionStore.value,
222
231
  Database,
223
- 'Relational database connection store must be a database',
232
+ `Relational database connection store must be a database`,
224
233
  );
225
234
  return this
226
235
  .embeddedConnectionStore as PackageableElementReference<Database>;
227
236
  })();
228
237
  assertNonNullable(
229
238
  connection.type,
230
- 'Relational database connection type is missing',
239
+ `Relational database connection 'type' field is missing`,
231
240
  );
232
241
  assertNonNullable(
233
242
  connection.datasourceSpecification,
234
- 'Relational database connection datasource specification is missing',
243
+ `Relational database connection 'datasourceSpecification' field is missing`,
235
244
  );
236
245
  assertNonNullable(
237
246
  connection.authenticationStrategy,
238
- 'Relational database connection authentication strategy is missing',
247
+ `Relational database connection 'authenticationStrategy' field is missing`,
239
248
  );
240
249
  const val = new RelationalDatabaseConnection(
241
250
  store,
@@ -75,8 +75,14 @@ export class V1_ProtocolToMetaModelGraphFirstPassBuilder
75
75
  }
76
76
 
77
77
  visit_SectionIndex(element: V1_SectionIndex): PackageableElement {
78
- assertNonEmptyString(element.package, 'Section index package is missing');
79
- assertNonEmptyString(element.name, 'Section index is missing');
78
+ assertNonEmptyString(
79
+ element.package,
80
+ `Section index 'package' field is missing or empty`,
81
+ );
82
+ assertNonEmptyString(
83
+ element.name,
84
+ `Section index 'name' field is missing or empty`,
85
+ );
80
86
  const sectionIndex = new SectionIndex(element.name);
81
87
  const path = this.context.currentSubGraph.buildPath(
82
88
  element.package,
@@ -91,8 +97,14 @@ export class V1_ProtocolToMetaModelGraphFirstPassBuilder
91
97
  }
92
98
 
93
99
  visit_Profile(element: V1_Profile): PackageableElement {
94
- assertNonEmptyString(element.package, 'Profile package is missing');
95
- assertNonEmptyString(element.name, 'Profile name is missing');
100
+ assertNonEmptyString(
101
+ element.package,
102
+ `Profile 'package' field is missing or empty`,
103
+ );
104
+ assertNonEmptyString(
105
+ element.name,
106
+ `Profile 'name' field is missing or empty`,
107
+ );
96
108
  const profile = new Profile(element.name);
97
109
  const path = this.context.currentSubGraph.buildPath(
98
110
  element.package,
@@ -110,8 +122,14 @@ export class V1_ProtocolToMetaModelGraphFirstPassBuilder
110
122
  }
111
123
 
112
124
  visit_Enumeration(element: V1_Enumeration): PackageableElement {
113
- assertNonEmptyString(element.package, 'Enumeration package is missing');
114
- assertNonEmptyString(element.name, 'Enumeration name is missing');
125
+ assertNonEmptyString(
126
+ element.package,
127
+ `Enumeration 'package' field is missing or empty`,
128
+ );
129
+ assertNonEmptyString(
130
+ element.name,
131
+ `Enumeration 'name' field is missing or empty`,
132
+ );
115
133
  const pureEnumeration = new Enumeration(element.name);
116
134
  const path = this.context.currentSubGraph.buildPath(
117
135
  element.package,
@@ -129,8 +147,14 @@ export class V1_ProtocolToMetaModelGraphFirstPassBuilder
129
147
  }
130
148
 
131
149
  visit_Measure(element: V1_Measure): PackageableElement {
132
- assertNonEmptyString(element.package, 'Measure package is missing');
133
- assertNonEmptyString(element.name, 'Measure name is missing');
150
+ assertNonEmptyString(
151
+ element.package,
152
+ `Measure 'package' field is missing or empty`,
153
+ );
154
+ assertNonEmptyString(
155
+ element.name,
156
+ `Measure 'name' field is missing or empty`,
157
+ );
134
158
  const pureMeasure = new Measure(element.name);
135
159
  const path = this.context.currentSubGraph.buildPath(
136
160
  element.package,
@@ -148,8 +172,14 @@ export class V1_ProtocolToMetaModelGraphFirstPassBuilder
148
172
  }
149
173
 
150
174
  visit_Class(element: V1_Class): PackageableElement {
151
- assertNonEmptyString(element.package, 'Class package is missing');
152
- assertNonEmptyString(element.name, 'Class name is missing');
175
+ assertNonEmptyString(
176
+ element.package,
177
+ `Class 'package' field is missing or empty`,
178
+ );
179
+ assertNonEmptyString(
180
+ element.name,
181
+ `Class 'name' field is missing or empty`,
182
+ );
153
183
  const _class = new Class(element.name);
154
184
  const path = this.context.currentSubGraph.buildPath(
155
185
  element.package,
@@ -167,8 +197,14 @@ export class V1_ProtocolToMetaModelGraphFirstPassBuilder
167
197
  }
168
198
 
169
199
  visit_Association(element: V1_Association): PackageableElement {
170
- assertNonEmptyString(element.package, 'Association package is missing');
171
- assertNonEmptyString(element.name, 'Association name is missing');
200
+ assertNonEmptyString(
201
+ element.package,
202
+ `Association 'package' field is missing or empty`,
203
+ );
204
+ assertNonEmptyString(
205
+ element.name,
206
+ `Association 'name' field is missing or empty`,
207
+ );
172
208
  const association = new Association(element.name);
173
209
  const path = this.context.currentSubGraph.buildPath(
174
210
  element.package,
@@ -188,8 +224,14 @@ export class V1_ProtocolToMetaModelGraphFirstPassBuilder
188
224
  visit_ConcreteFunctionDefinition(
189
225
  element: V1_ConcreteFunctionDefinition,
190
226
  ): PackageableElement {
191
- assertNonEmptyString(element.package, 'Function package is missing');
192
- assertNonEmptyString(element.name, 'Function name is missing');
227
+ assertNonEmptyString(
228
+ element.package,
229
+ `Function 'package' field is missing or empty`,
230
+ );
231
+ assertNonEmptyString(
232
+ element.name,
233
+ `Function 'name' field is missing or empty`,
234
+ );
193
235
  const func = new ConcreteFunctionDefinition(
194
236
  element.name,
195
237
  // This is just a stub to fill in when we first create the function
@@ -217,8 +259,14 @@ export class V1_ProtocolToMetaModelGraphFirstPassBuilder
217
259
  }
218
260
 
219
261
  visit_FlatData(element: V1_FlatData): PackageableElement {
220
- assertNonEmptyString(element.package, 'Flat-data store package is missing');
221
- assertNonEmptyString(element.name, 'Flat data store name is missing');
262
+ assertNonEmptyString(
263
+ element.package,
264
+ `Flat-data store 'package' field is missing or empty`,
265
+ );
266
+ assertNonEmptyString(
267
+ element.name,
268
+ `Flat data store 'name' field is missing or empty`,
269
+ );
222
270
  const flatData = new FlatData(element.name);
223
271
  const path = this.context.currentSubGraph.buildPath(
224
272
  element.package,
@@ -236,8 +284,14 @@ export class V1_ProtocolToMetaModelGraphFirstPassBuilder
236
284
  }
237
285
 
238
286
  visit_Database(element: V1_Database): PackageableElement {
239
- assertNonEmptyString(element.package, 'Database store package is missing');
240
- assertNonEmptyString(element.name, 'Database store name is missing');
287
+ assertNonEmptyString(
288
+ element.package,
289
+ `Database store 'package' field is missing or empty`,
290
+ );
291
+ assertNonEmptyString(
292
+ element.name,
293
+ `Database store 'name' field is missing or empty`,
294
+ );
241
295
  const database = new Database(element.name);
242
296
  const path = this.context.currentSubGraph.buildPath(
243
297
  element.package,
@@ -255,8 +309,14 @@ export class V1_ProtocolToMetaModelGraphFirstPassBuilder
255
309
  }
256
310
 
257
311
  visit_ServiceStore(element: V1_ServiceStore): PackageableElement {
258
- assertNonEmptyString(element.package, 'Service store package is missing');
259
- assertNonEmptyString(element.name, 'Service store name is missing');
312
+ assertNonEmptyString(
313
+ element.package,
314
+ `Service store 'package' field is missing or empty`,
315
+ );
316
+ assertNonEmptyString(
317
+ element.name,
318
+ `Service store 'name' field is missing or empty`,
319
+ );
260
320
  const serviceStore = new ServiceStore(element.name);
261
321
  const path = this.context.currentSubGraph.buildPath(
262
322
  element.package,
@@ -274,8 +334,14 @@ export class V1_ProtocolToMetaModelGraphFirstPassBuilder
274
334
  }
275
335
 
276
336
  visit_Mapping(element: V1_Mapping): PackageableElement {
277
- assertNonEmptyString(element.package, 'Mapping package is missing');
278
- assertNonEmptyString(element.name, 'Mapping name is missing');
337
+ assertNonEmptyString(
338
+ element.package,
339
+ `Mapping 'package' field is missing or empty`,
340
+ );
341
+ assertNonEmptyString(
342
+ element.name,
343
+ `Mapping 'name' field is missing or empty`,
344
+ );
279
345
  const pureMapping = new Mapping(element.name);
280
346
  const path = this.context.currentSubGraph.buildPath(
281
347
  element.package,
@@ -293,8 +359,14 @@ export class V1_ProtocolToMetaModelGraphFirstPassBuilder
293
359
  }
294
360
 
295
361
  visit_Service(element: V1_Service): PackageableElement {
296
- assertNonEmptyString(element.package, 'Service package is missing');
297
- assertNonEmptyString(element.name, 'Service name is missing');
362
+ assertNonEmptyString(
363
+ element.package,
364
+ `Service 'package' field is missing or empty`,
365
+ );
366
+ assertNonEmptyString(
367
+ element.name,
368
+ `Service 'name' field is missing or empty`,
369
+ );
298
370
  const service = new Service(element.name);
299
371
  const path = this.context.currentSubGraph.buildPath(
300
372
  element.package,
@@ -370,8 +442,14 @@ export class V1_ProtocolToMetaModelGraphFirstPassBuilder
370
442
  }
371
443
 
372
444
  visit_PackageableRuntime(element: V1_PackageableRuntime): PackageableElement {
373
- assertNonEmptyString(element.package, 'Runtime package is missing');
374
- assertNonEmptyString(element.name, 'Runtime name is missing');
445
+ assertNonEmptyString(
446
+ element.package,
447
+ `Runtime 'package' field is missing or empty`,
448
+ );
449
+ assertNonEmptyString(
450
+ element.name,
451
+ `Runtime 'name' field is missing or empty`,
452
+ );
375
453
  const runtime = new PackageableRuntime(element.name);
376
454
  const path = this.context.currentSubGraph.buildPath(
377
455
  element.package,
@@ -391,8 +469,14 @@ export class V1_ProtocolToMetaModelGraphFirstPassBuilder
391
469
  visit_PackageableConnection(
392
470
  element: V1_PackageableConnection,
393
471
  ): PackageableElement {
394
- assertNonEmptyString(element.package, 'Connection package is missing');
395
- assertNonEmptyString(element.name, 'Connection name is missing');
472
+ assertNonEmptyString(
473
+ element.package,
474
+ `Connection 'package' field is missing or empty`,
475
+ );
476
+ assertNonEmptyString(
477
+ element.name,
478
+ `Connection 'name' field is missing or empty`,
479
+ );
396
480
  const connection = new PackageableConnection(element.name);
397
481
  const path = this.context.currentSubGraph.buildPath(
398
482
  element.package,