@finos/legend-extension-dsl-persistence 2.0.9 → 3.0.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.
Files changed (300) hide show
  1. package/lib/DSLPersistence_Extension.d.ts +1 -1
  2. package/lib/DSLPersistence_Extension.d.ts.map +1 -1
  3. package/lib/DSLPersistence_Extension.js +3 -3
  4. package/lib/DSLPersistence_Extension.js.map +1 -1
  5. package/lib/components/studio/DSLPersistence_CodeSnippets.d.ts +1 -0
  6. package/lib/components/studio/DSLPersistence_CodeSnippets.d.ts.map +1 -1
  7. package/lib/components/studio/DSLPersistence_CodeSnippets.js +5 -1
  8. package/lib/components/studio/DSLPersistence_CodeSnippets.js.map +1 -1
  9. package/lib/components/studio/{DSLPersistence_LegendStudioPlugin.d.ts → DSLPersistence_LegendStudioApplicationPlugin.d.ts} +4 -3
  10. package/lib/components/studio/DSLPersistence_LegendStudioApplicationPlugin.d.ts.map +1 -0
  11. package/lib/components/studio/{DSLPersistence_LegendStudioPlugin.js → DSLPersistence_LegendStudioApplicationPlugin.js} +51 -10
  12. package/lib/components/studio/DSLPersistence_LegendStudioApplicationPlugin.js.map +1 -0
  13. package/lib/components/studio/DSLPersistence_LegendStudioDocumentation.d.ts +2 -1
  14. package/lib/components/studio/DSLPersistence_LegendStudioDocumentation.d.ts.map +1 -1
  15. package/lib/components/studio/DSLPersistence_LegendStudioDocumentation.js +1 -0
  16. package/lib/components/studio/DSLPersistence_LegendStudioDocumentation.js.map +1 -1
  17. package/lib/{models/DSLPersistence_ModelUtils.d.ts → graph/DSLPersistence_HashUtils.d.ts} +6 -1
  18. package/lib/graph/DSLPersistence_HashUtils.d.ts.map +1 -0
  19. package/lib/{models/DSLPersistence_ModelUtils.js → graph/DSLPersistence_HashUtils.js} +10 -1
  20. package/lib/graph/DSLPersistence_HashUtils.js.map +1 -0
  21. package/lib/graph/DSLPersistence_PureGraphPlugin.d.ts.map +1 -1
  22. package/lib/graph/DSLPersistence_PureGraphPlugin.js +3 -2
  23. package/lib/graph/DSLPersistence_PureGraphPlugin.js.map +1 -1
  24. package/lib/{models/metamodels → graph/metamodel}/pure/model/packageableElements/persistence/DSLPersistence_Auditing.d.ts +0 -0
  25. package/lib/graph/metamodel/pure/model/packageableElements/persistence/DSLPersistence_Auditing.d.ts.map +1 -0
  26. package/lib/{models/metamodels → graph/metamodel}/pure/model/packageableElements/persistence/DSLPersistence_Auditing.js +1 -1
  27. package/lib/graph/metamodel/pure/model/packageableElements/persistence/DSLPersistence_Auditing.js.map +1 -0
  28. package/lib/{models/metamodels → graph/metamodel}/pure/model/packageableElements/persistence/DSLPersistence_DeduplicationStrategy.d.ts +0 -0
  29. package/lib/graph/metamodel/pure/model/packageableElements/persistence/DSLPersistence_DeduplicationStrategy.d.ts.map +1 -0
  30. package/lib/{models/metamodels → graph/metamodel}/pure/model/packageableElements/persistence/DSLPersistence_DeduplicationStrategy.js +1 -1
  31. package/lib/graph/metamodel/pure/model/packageableElements/persistence/DSLPersistence_DeduplicationStrategy.js.map +1 -0
  32. package/lib/{models/metamodels → graph/metamodel}/pure/model/packageableElements/persistence/DSLPersistence_IngestMode.d.ts +0 -0
  33. package/lib/graph/metamodel/pure/model/packageableElements/persistence/DSLPersistence_IngestMode.d.ts.map +1 -0
  34. package/lib/{models/metamodels → graph/metamodel}/pure/model/packageableElements/persistence/DSLPersistence_IngestMode.js +1 -1
  35. package/lib/graph/metamodel/pure/model/packageableElements/persistence/DSLPersistence_IngestMode.js.map +1 -0
  36. package/lib/{models/metamodels → graph/metamodel}/pure/model/packageableElements/persistence/DSLPersistence_MergeStrategy.d.ts +0 -0
  37. package/lib/graph/metamodel/pure/model/packageableElements/persistence/DSLPersistence_MergeStrategy.d.ts.map +1 -0
  38. package/lib/{models/metamodels → graph/metamodel}/pure/model/packageableElements/persistence/DSLPersistence_MergeStrategy.js +1 -1
  39. package/lib/graph/metamodel/pure/model/packageableElements/persistence/DSLPersistence_MergeStrategy.js.map +1 -0
  40. package/lib/{models/metamodels → graph/metamodel}/pure/model/packageableElements/persistence/DSLPersistence_Milestoning.d.ts +0 -0
  41. package/lib/graph/metamodel/pure/model/packageableElements/persistence/DSLPersistence_Milestoning.d.ts.map +1 -0
  42. package/lib/{models/metamodels → graph/metamodel}/pure/model/packageableElements/persistence/DSLPersistence_Milestoning.js +1 -1
  43. package/lib/graph/metamodel/pure/model/packageableElements/persistence/DSLPersistence_Milestoning.js.map +1 -0
  44. package/lib/{models/metamodels → graph/metamodel}/pure/model/packageableElements/persistence/DSLPersistence_Notifier.d.ts +0 -0
  45. package/lib/graph/metamodel/pure/model/packageableElements/persistence/DSLPersistence_Notifier.d.ts.map +1 -0
  46. package/lib/{models/metamodels → graph/metamodel}/pure/model/packageableElements/persistence/DSLPersistence_Notifier.js +1 -1
  47. package/lib/graph/metamodel/pure/model/packageableElements/persistence/DSLPersistence_Notifier.js.map +1 -0
  48. package/lib/{models/metamodels → graph/metamodel}/pure/model/packageableElements/persistence/DSLPersistence_Persistence.d.ts +0 -0
  49. package/lib/graph/metamodel/pure/model/packageableElements/persistence/DSLPersistence_Persistence.d.ts.map +1 -0
  50. package/lib/{models/metamodels → graph/metamodel}/pure/model/packageableElements/persistence/DSLPersistence_Persistence.js +1 -1
  51. package/lib/graph/metamodel/pure/model/packageableElements/persistence/DSLPersistence_Persistence.js.map +1 -0
  52. package/lib/graph/metamodel/pure/model/packageableElements/persistence/DSLPersistence_PersistenceContext.d.ts +29 -0
  53. package/lib/graph/metamodel/pure/model/packageableElements/persistence/DSLPersistence_PersistenceContext.d.ts.map +1 -0
  54. package/lib/graph/metamodel/pure/model/packageableElements/persistence/DSLPersistence_PersistenceContext.js +37 -0
  55. package/lib/graph/metamodel/pure/model/packageableElements/persistence/DSLPersistence_PersistenceContext.js.map +1 -0
  56. package/lib/graph/metamodel/pure/model/packageableElements/persistence/DSLPersistence_PersistencePlatform.d.ts +23 -0
  57. package/lib/graph/metamodel/pure/model/packageableElements/persistence/DSLPersistence_PersistencePlatform.d.ts.map +1 -0
  58. package/lib/graph/metamodel/pure/model/packageableElements/persistence/DSLPersistence_PersistencePlatform.js +25 -0
  59. package/lib/graph/metamodel/pure/model/packageableElements/persistence/DSLPersistence_PersistencePlatform.js.map +1 -0
  60. package/lib/{models/metamodels → graph/metamodel}/pure/model/packageableElements/persistence/DSLPersistence_Persister.d.ts +0 -0
  61. package/lib/graph/metamodel/pure/model/packageableElements/persistence/DSLPersistence_Persister.d.ts.map +1 -0
  62. package/lib/{models/metamodels → graph/metamodel}/pure/model/packageableElements/persistence/DSLPersistence_Persister.js +1 -1
  63. package/lib/graph/metamodel/pure/model/packageableElements/persistence/DSLPersistence_Persister.js.map +1 -0
  64. package/lib/graph/metamodel/pure/model/packageableElements/persistence/DSLPersistence_ServiceParameter.d.ts +34 -0
  65. package/lib/graph/metamodel/pure/model/packageableElements/persistence/DSLPersistence_ServiceParameter.d.ts.map +1 -0
  66. package/lib/graph/metamodel/pure/model/packageableElements/persistence/DSLPersistence_ServiceParameter.js +49 -0
  67. package/lib/graph/metamodel/pure/model/packageableElements/persistence/DSLPersistence_ServiceParameter.js.map +1 -0
  68. package/lib/{models/metamodels → graph/metamodel}/pure/model/packageableElements/persistence/DSLPersistence_Sink.d.ts +3 -2
  69. package/lib/graph/metamodel/pure/model/packageableElements/persistence/DSLPersistence_Sink.d.ts.map +1 -0
  70. package/lib/{models/metamodels → graph/metamodel}/pure/model/packageableElements/persistence/DSLPersistence_Sink.js +7 -2
  71. package/lib/graph/metamodel/pure/model/packageableElements/persistence/DSLPersistence_Sink.js.map +1 -0
  72. package/lib/{models/metamodels → graph/metamodel}/pure/model/packageableElements/persistence/DSLPersistence_TargetShape.d.ts +2 -2
  73. package/lib/graph/metamodel/pure/model/packageableElements/persistence/DSLPersistence_TargetShape.d.ts.map +1 -0
  74. package/lib/{models/metamodels → graph/metamodel}/pure/model/packageableElements/persistence/DSLPersistence_TargetShape.js +2 -2
  75. package/lib/graph/metamodel/pure/model/packageableElements/persistence/DSLPersistence_TargetShape.js.map +1 -0
  76. package/lib/{models/metamodels → graph/metamodel}/pure/model/packageableElements/persistence/DSLPersistence_Trigger.d.ts +0 -0
  77. package/lib/graph/metamodel/pure/model/packageableElements/persistence/DSLPersistence_Trigger.d.ts.map +1 -0
  78. package/lib/{models/metamodels → graph/metamodel}/pure/model/packageableElements/persistence/DSLPersistence_Trigger.js +1 -1
  79. package/lib/graph/metamodel/pure/model/packageableElements/persistence/DSLPersistence_Trigger.js.map +1 -0
  80. package/lib/graphManager/DSLPersistence_GraphManagerHelper.d.ts +4 -1
  81. package/lib/graphManager/DSLPersistence_GraphManagerHelper.d.ts.map +1 -1
  82. package/lib/graphManager/DSLPersistence_GraphManagerHelper.js +4 -1
  83. package/lib/graphManager/DSLPersistence_GraphManagerHelper.js.map +1 -1
  84. package/lib/graphManager/DSLPersistence_PureGraphManagerPlugin.d.ts +1 -0
  85. package/lib/graphManager/DSLPersistence_PureGraphManagerPlugin.d.ts.map +1 -1
  86. package/lib/graphManager/DSLPersistence_PureGraphManagerPlugin.js +14 -2
  87. package/lib/graphManager/DSLPersistence_PureGraphManagerPlugin.js.map +1 -1
  88. package/lib/graphManager/action/changeDetection/DSLPersistenceContext_ObserverHelper.d.ts +18 -0
  89. package/lib/graphManager/action/changeDetection/DSLPersistenceContext_ObserverHelper.d.ts.map +1 -0
  90. package/lib/graphManager/action/changeDetection/DSLPersistenceContext_ObserverHelper.js +29 -0
  91. package/lib/graphManager/action/changeDetection/DSLPersistenceContext_ObserverHelper.js.map +1 -0
  92. package/lib/graphManager/action/changeDetection/DSLPersistence_ObserverHelper.d.ts +1 -1
  93. package/lib/graphManager/action/changeDetection/DSLPersistence_ObserverHelper.d.ts.map +1 -1
  94. package/lib/{models/protocols → graphManager/protocol}/pure/DSLPersistence_PureProtocolProcessorPlugin.d.ts +1 -0
  95. package/lib/graphManager/protocol/pure/DSLPersistence_PureProtocolProcessorPlugin.d.ts.map +1 -0
  96. package/lib/{models/protocols → graphManager/protocol}/pure/DSLPersistence_PureProtocolProcessorPlugin.js +34 -1
  97. package/lib/graphManager/protocol/pure/DSLPersistence_PureProtocolProcessorPlugin.js.map +1 -0
  98. package/lib/graphManager/protocol/pure/DSLPersistence_PureProtocolProcessorPlugin_Extension.d.ts +30 -0
  99. package/lib/graphManager/protocol/pure/DSLPersistence_PureProtocolProcessorPlugin_Extension.d.ts.map +1 -0
  100. package/lib/graphManager/protocol/pure/DSLPersistence_PureProtocolProcessorPlugin_Extension.js +17 -0
  101. package/lib/graphManager/protocol/pure/DSLPersistence_PureProtocolProcessorPlugin_Extension.js.map +1 -0
  102. package/lib/{models/protocols → graphManager/protocol}/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_Auditing.d.ts +0 -0
  103. package/lib/graphManager/protocol/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_Auditing.d.ts.map +1 -0
  104. package/lib/{models/protocols → graphManager/protocol}/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_Auditing.js +1 -1
  105. package/lib/graphManager/protocol/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_Auditing.js.map +1 -0
  106. package/lib/{models/protocols → graphManager/protocol}/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_DeduplicationStrategy.d.ts +0 -0
  107. package/lib/graphManager/protocol/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_DeduplicationStrategy.d.ts.map +1 -0
  108. package/lib/{models/protocols → graphManager/protocol}/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_DeduplicationStrategy.js +1 -1
  109. package/lib/graphManager/protocol/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_DeduplicationStrategy.js.map +1 -0
  110. package/lib/{models/protocols → graphManager/protocol}/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_IngestMode.d.ts +0 -0
  111. package/lib/graphManager/protocol/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_IngestMode.d.ts.map +1 -0
  112. package/lib/{models/protocols → graphManager/protocol}/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_IngestMode.js +1 -1
  113. package/lib/graphManager/protocol/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_IngestMode.js.map +1 -0
  114. package/lib/{models/protocols → graphManager/protocol}/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_MergeStrategy.d.ts +0 -0
  115. package/lib/graphManager/protocol/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_MergeStrategy.d.ts.map +1 -0
  116. package/lib/{models/protocols → graphManager/protocol}/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_MergeStrategy.js +1 -1
  117. package/lib/graphManager/protocol/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_MergeStrategy.js.map +1 -0
  118. package/lib/{models/protocols → graphManager/protocol}/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_Milestoning.d.ts +0 -0
  119. package/lib/graphManager/protocol/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_Milestoning.d.ts.map +1 -0
  120. package/lib/{models/protocols → graphManager/protocol}/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_Milestoning.js +1 -1
  121. package/lib/graphManager/protocol/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_Milestoning.js.map +1 -0
  122. package/lib/{models/protocols → graphManager/protocol}/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_Notifier.d.ts +0 -0
  123. package/lib/graphManager/protocol/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_Notifier.d.ts.map +1 -0
  124. package/lib/{models/protocols → graphManager/protocol}/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_Notifier.js +1 -1
  125. package/lib/graphManager/protocol/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_Notifier.js.map +1 -0
  126. package/lib/{models/protocols → graphManager/protocol}/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_Persistence.d.ts +0 -0
  127. package/lib/graphManager/protocol/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_Persistence.d.ts.map +1 -0
  128. package/lib/{models/protocols → graphManager/protocol}/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_Persistence.js +1 -1
  129. package/lib/graphManager/protocol/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_Persistence.js.map +1 -0
  130. package/lib/graphManager/protocol/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_PersistenceContext.d.ts +28 -0
  131. package/lib/graphManager/protocol/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_PersistenceContext.d.ts.map +1 -0
  132. package/lib/graphManager/protocol/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_PersistenceContext.js +37 -0
  133. package/lib/graphManager/protocol/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_PersistenceContext.js.map +1 -0
  134. package/lib/graphManager/protocol/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_PersistencePlatform.d.ts +23 -0
  135. package/lib/graphManager/protocol/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_PersistencePlatform.d.ts.map +1 -0
  136. package/lib/graphManager/protocol/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_PersistencePlatform.js +25 -0
  137. package/lib/graphManager/protocol/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_PersistencePlatform.js.map +1 -0
  138. package/lib/{models/protocols → graphManager/protocol}/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_Persister.d.ts +0 -0
  139. package/lib/graphManager/protocol/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_Persister.d.ts.map +1 -0
  140. package/lib/{models/protocols → graphManager/protocol}/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_Persister.js +1 -1
  141. package/lib/graphManager/protocol/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_Persister.js.map +1 -0
  142. package/lib/graphManager/protocol/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_ServiceParameter.d.ts +34 -0
  143. package/lib/graphManager/protocol/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_ServiceParameter.d.ts.map +1 -0
  144. package/lib/graphManager/protocol/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_ServiceParameter.js +49 -0
  145. package/lib/graphManager/protocol/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_ServiceParameter.js.map +1 -0
  146. package/lib/{models/protocols → graphManager/protocol}/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_Sink.d.ts +2 -1
  147. package/lib/graphManager/protocol/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_Sink.d.ts.map +1 -0
  148. package/lib/{models/protocols → graphManager/protocol}/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_Sink.js +7 -2
  149. package/lib/graphManager/protocol/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_Sink.js.map +1 -0
  150. package/lib/{models/protocols → graphManager/protocol}/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_TargetShape.d.ts +0 -0
  151. package/lib/graphManager/protocol/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_TargetShape.d.ts.map +1 -0
  152. package/lib/{models/protocols → graphManager/protocol}/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_TargetShape.js +1 -1
  153. package/lib/graphManager/protocol/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_TargetShape.js.map +1 -0
  154. package/lib/{models/protocols → graphManager/protocol}/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_Trigger.d.ts +0 -0
  155. package/lib/graphManager/protocol/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_Trigger.d.ts.map +1 -0
  156. package/lib/{models/protocols → graphManager/protocol}/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_Trigger.js +1 -1
  157. package/lib/graphManager/protocol/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_Trigger.js.map +1 -0
  158. package/lib/{models/protocols → graphManager/protocol}/pure/v1/transformation/pureGraph/V1_DSLPersistence_GraphBuilderHelper.d.ts +3 -1
  159. package/lib/graphManager/protocol/pure/v1/transformation/pureGraph/V1_DSLPersistence_GraphBuilderHelper.d.ts.map +1 -0
  160. package/lib/{models/protocols → graphManager/protocol}/pure/v1/transformation/pureGraph/V1_DSLPersistence_GraphBuilderHelper.js +2 -1
  161. package/lib/graphManager/protocol/pure/v1/transformation/pureGraph/V1_DSLPersistence_GraphBuilderHelper.js.map +1 -0
  162. package/lib/graphManager/protocol/pure/v1/transformation/pureGraph/from/V1_PersistenceContextTransformer.d.ts +36 -0
  163. package/lib/graphManager/protocol/pure/v1/transformation/pureGraph/from/V1_PersistenceContextTransformer.d.ts.map +1 -0
  164. package/lib/graphManager/protocol/pure/v1/transformation/pureGraph/from/V1_PersistenceContextTransformer.js +75 -0
  165. package/lib/graphManager/protocol/pure/v1/transformation/pureGraph/from/V1_PersistenceContextTransformer.js.map +1 -0
  166. package/lib/{models/protocols → graphManager/protocol}/pure/v1/transformation/pureGraph/from/V1_PersistenceTransformer.d.ts +11 -11
  167. package/lib/graphManager/protocol/pure/v1/transformation/pureGraph/from/V1_PersistenceTransformer.d.ts.map +1 -0
  168. package/lib/{models/protocols → graphManager/protocol}/pure/v1/transformation/pureGraph/from/V1_PersistenceTransformer.js +17 -12
  169. package/lib/graphManager/protocol/pure/v1/transformation/pureGraph/from/V1_PersistenceTransformer.js.map +1 -0
  170. package/lib/{models/protocols → graphManager/protocol}/pure/v1/transformation/pureGraph/to/V1_PersistenceBuilder.d.ts +10 -10
  171. package/lib/graphManager/protocol/pure/v1/transformation/pureGraph/to/V1_PersistenceBuilder.d.ts.map +1 -0
  172. package/lib/{models/protocols → graphManager/protocol}/pure/v1/transformation/pureGraph/to/V1_PersistenceBuilder.js +21 -14
  173. package/lib/graphManager/protocol/pure/v1/transformation/pureGraph/to/V1_PersistenceBuilder.js.map +1 -0
  174. package/lib/graphManager/protocol/pure/v1/transformation/pureGraph/to/V1_PersistenceContextBuilder.d.ts +35 -0
  175. package/lib/graphManager/protocol/pure/v1/transformation/pureGraph/to/V1_PersistenceContextBuilder.d.ts.map +1 -0
  176. package/lib/graphManager/protocol/pure/v1/transformation/pureGraph/to/V1_PersistenceContextBuilder.js +74 -0
  177. package/lib/graphManager/protocol/pure/v1/transformation/pureGraph/to/V1_PersistenceContextBuilder.js.map +1 -0
  178. package/lib/graphManager/protocol/pure/v1/transformation/pureProtocol/V1_DSLPersistenceContext_ProtocolHelper.d.ts +31 -0
  179. package/lib/graphManager/protocol/pure/v1/transformation/pureProtocol/V1_DSLPersistenceContext_ProtocolHelper.d.ts.map +1 -0
  180. package/lib/graphManager/protocol/pure/v1/transformation/pureProtocol/V1_DSLPersistenceContext_ProtocolHelper.js +118 -0
  181. package/lib/graphManager/protocol/pure/v1/transformation/pureProtocol/V1_DSLPersistenceContext_ProtocolHelper.js.map +1 -0
  182. package/lib/{models/protocols → graphManager/protocol}/pure/v1/transformation/pureProtocol/V1_DSLPersistence_ProtocolHelper.d.ts +3 -3
  183. package/lib/graphManager/protocol/pure/v1/transformation/pureProtocol/V1_DSLPersistence_ProtocolHelper.d.ts.map +1 -0
  184. package/lib/{models/protocols → graphManager/protocol}/pure/v1/transformation/pureProtocol/V1_DSLPersistence_ProtocolHelper.js +3 -5
  185. package/lib/graphManager/protocol/pure/v1/transformation/pureProtocol/V1_DSLPersistence_ProtocolHelper.js.map +1 -0
  186. package/lib/index.css +2 -2
  187. package/lib/index.css.map +1 -1
  188. package/lib/index.d.ts +12 -5
  189. package/lib/index.d.ts.map +1 -1
  190. package/lib/index.js +15 -5
  191. package/lib/index.js.map +1 -1
  192. package/lib/package.json +12 -12
  193. package/package.json +17 -17
  194. package/src/DSLPersistence_Extension.ts +3 -3
  195. package/src/components/studio/DSLPersistence_CodeSnippets.ts +6 -1
  196. package/src/components/studio/{DSLPersistence_LegendStudioPlugin.tsx → DSLPersistence_LegendStudioApplicationPlugin.tsx} +66 -15
  197. package/src/components/studio/DSLPersistence_LegendStudioDocumentation.ts +1 -0
  198. package/src/{models/DSLPersistence_ModelUtils.ts → graph/DSLPersistence_HashUtils.ts} +14 -0
  199. package/src/graph/DSLPersistence_PureGraphPlugin.ts +3 -2
  200. package/src/{models/metamodels → graph/metamodel}/pure/model/packageableElements/persistence/DSLPersistence_Auditing.ts +1 -1
  201. package/src/{models/metamodels → graph/metamodel}/pure/model/packageableElements/persistence/DSLPersistence_DeduplicationStrategy.ts +1 -1
  202. package/src/{models/metamodels → graph/metamodel}/pure/model/packageableElements/persistence/DSLPersistence_IngestMode.ts +1 -1
  203. package/src/{models/metamodels → graph/metamodel}/pure/model/packageableElements/persistence/DSLPersistence_MergeStrategy.ts +1 -1
  204. package/src/{models/metamodels → graph/metamodel}/pure/model/packageableElements/persistence/DSLPersistence_Milestoning.ts +1 -1
  205. package/src/{models/metamodels → graph/metamodel}/pure/model/packageableElements/persistence/DSLPersistence_Notifier.ts +1 -1
  206. package/src/{models/metamodels → graph/metamodel}/pure/model/packageableElements/persistence/DSLPersistence_Persistence.ts +1 -1
  207. package/src/graph/metamodel/pure/model/packageableElements/persistence/DSLPersistence_PersistenceContext.ts +50 -0
  208. package/src/graph/metamodel/pure/model/packageableElements/persistence/DSLPersistence_PersistencePlatform.ts +30 -0
  209. package/src/{models/metamodels → graph/metamodel}/pure/model/packageableElements/persistence/DSLPersistence_Persister.ts +1 -1
  210. package/src/graph/metamodel/pure/model/packageableElements/persistence/DSLPersistence_ServiceParameter.ts +61 -0
  211. package/src/{models/metamodels → graph/metamodel}/pure/model/packageableElements/persistence/DSLPersistence_Sink.ts +9 -3
  212. package/src/{models/metamodels → graph/metamodel}/pure/model/packageableElements/persistence/DSLPersistence_TargetShape.ts +4 -8
  213. package/src/{models/metamodels → graph/metamodel}/pure/model/packageableElements/persistence/DSLPersistence_Trigger.ts +1 -1
  214. package/src/graphManager/DSLPersistence_GraphManagerHelper.ts +21 -1
  215. package/src/graphManager/DSLPersistence_PureGraphManagerPlugin.ts +13 -2
  216. package/src/graphManager/action/changeDetection/DSLPersistenceContext_ObserverHelper.ts +38 -0
  217. package/src/graphManager/action/changeDetection/DSLPersistence_ObserverHelper.ts +1 -1
  218. package/src/{models/protocols → graphManager/protocol}/pure/DSLPersistence_PureProtocolProcessorPlugin.ts +53 -1
  219. package/src/graphManager/protocol/pure/DSLPersistence_PureProtocolProcessorPlugin_Extension.ts +57 -0
  220. package/src/{models/protocols → graphManager/protocol}/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_Auditing.ts +1 -1
  221. package/src/{models/protocols → graphManager/protocol}/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_DeduplicationStrategy.ts +1 -1
  222. package/src/{models/protocols → graphManager/protocol}/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_IngestMode.ts +1 -1
  223. package/src/{models/protocols → graphManager/protocol}/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_MergeStrategy.ts +1 -1
  224. package/src/{models/protocols → graphManager/protocol}/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_Milestoning.ts +1 -1
  225. package/src/{models/protocols → graphManager/protocol}/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_Notifier.ts +1 -1
  226. package/src/{models/protocols → graphManager/protocol}/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_Persistence.ts +1 -1
  227. package/src/graphManager/protocol/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_PersistenceContext.ts +51 -0
  228. package/src/graphManager/protocol/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_PersistencePlatform.ts +31 -0
  229. package/src/{models/protocols → graphManager/protocol}/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_Persister.ts +1 -1
  230. package/src/graphManager/protocol/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_ServiceParameter.ts +64 -0
  231. package/src/{models/protocols → graphManager/protocol}/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_Sink.ts +8 -3
  232. package/src/{models/protocols → graphManager/protocol}/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_TargetShape.ts +1 -1
  233. package/src/{models/protocols → graphManager/protocol}/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_Trigger.ts +1 -1
  234. package/src/{models/protocols → graphManager/protocol}/pure/v1/transformation/pureGraph/V1_DSLPersistence_GraphBuilderHelper.ts +14 -2
  235. package/src/graphManager/protocol/pure/v1/transformation/pureGraph/from/V1_PersistenceContextTransformer.ts +141 -0
  236. package/src/{models/protocols → graphManager/protocol}/pure/v1/transformation/pureGraph/from/V1_PersistenceTransformer.ts +22 -17
  237. package/src/{models/protocols → graphManager/protocol}/pure/v1/transformation/pureGraph/to/V1_PersistenceBuilder.ts +25 -22
  238. package/src/graphManager/protocol/pure/v1/transformation/pureGraph/to/V1_PersistenceContextBuilder.ts +151 -0
  239. package/src/graphManager/protocol/pure/v1/transformation/pureProtocol/V1_DSLPersistenceContext_ProtocolHelper.ts +242 -0
  240. package/src/{models/protocols → graphManager/protocol}/pure/v1/transformation/pureProtocol/V1_DSLPersistence_ProtocolHelper.ts +20 -31
  241. package/src/index.ts +17 -5
  242. package/tsconfig.json +40 -29
  243. package/lib/components/studio/DSLPersistence_LegendStudioPlugin.d.ts.map +0 -1
  244. package/lib/components/studio/DSLPersistence_LegendStudioPlugin.js.map +0 -1
  245. package/lib/models/DSLPersistence_ModelUtils.d.ts.map +0 -1
  246. package/lib/models/DSLPersistence_ModelUtils.js.map +0 -1
  247. package/lib/models/metamodels/pure/model/packageableElements/persistence/DSLPersistence_Auditing.d.ts.map +0 -1
  248. package/lib/models/metamodels/pure/model/packageableElements/persistence/DSLPersistence_Auditing.js.map +0 -1
  249. package/lib/models/metamodels/pure/model/packageableElements/persistence/DSLPersistence_DeduplicationStrategy.d.ts.map +0 -1
  250. package/lib/models/metamodels/pure/model/packageableElements/persistence/DSLPersistence_DeduplicationStrategy.js.map +0 -1
  251. package/lib/models/metamodels/pure/model/packageableElements/persistence/DSLPersistence_IngestMode.d.ts.map +0 -1
  252. package/lib/models/metamodels/pure/model/packageableElements/persistence/DSLPersistence_IngestMode.js.map +0 -1
  253. package/lib/models/metamodels/pure/model/packageableElements/persistence/DSLPersistence_MergeStrategy.d.ts.map +0 -1
  254. package/lib/models/metamodels/pure/model/packageableElements/persistence/DSLPersistence_MergeStrategy.js.map +0 -1
  255. package/lib/models/metamodels/pure/model/packageableElements/persistence/DSLPersistence_Milestoning.d.ts.map +0 -1
  256. package/lib/models/metamodels/pure/model/packageableElements/persistence/DSLPersistence_Milestoning.js.map +0 -1
  257. package/lib/models/metamodels/pure/model/packageableElements/persistence/DSLPersistence_Notifier.d.ts.map +0 -1
  258. package/lib/models/metamodels/pure/model/packageableElements/persistence/DSLPersistence_Notifier.js.map +0 -1
  259. package/lib/models/metamodels/pure/model/packageableElements/persistence/DSLPersistence_Persistence.d.ts.map +0 -1
  260. package/lib/models/metamodels/pure/model/packageableElements/persistence/DSLPersistence_Persistence.js.map +0 -1
  261. package/lib/models/metamodels/pure/model/packageableElements/persistence/DSLPersistence_Persister.d.ts.map +0 -1
  262. package/lib/models/metamodels/pure/model/packageableElements/persistence/DSLPersistence_Persister.js.map +0 -1
  263. package/lib/models/metamodels/pure/model/packageableElements/persistence/DSLPersistence_Sink.d.ts.map +0 -1
  264. package/lib/models/metamodels/pure/model/packageableElements/persistence/DSLPersistence_Sink.js.map +0 -1
  265. package/lib/models/metamodels/pure/model/packageableElements/persistence/DSLPersistence_TargetShape.d.ts.map +0 -1
  266. package/lib/models/metamodels/pure/model/packageableElements/persistence/DSLPersistence_TargetShape.js.map +0 -1
  267. package/lib/models/metamodels/pure/model/packageableElements/persistence/DSLPersistence_Trigger.d.ts.map +0 -1
  268. package/lib/models/metamodels/pure/model/packageableElements/persistence/DSLPersistence_Trigger.js.map +0 -1
  269. package/lib/models/protocols/pure/DSLPersistence_PureProtocolProcessorPlugin.d.ts.map +0 -1
  270. package/lib/models/protocols/pure/DSLPersistence_PureProtocolProcessorPlugin.js.map +0 -1
  271. package/lib/models/protocols/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_Auditing.d.ts.map +0 -1
  272. package/lib/models/protocols/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_Auditing.js.map +0 -1
  273. package/lib/models/protocols/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_DeduplicationStrategy.d.ts.map +0 -1
  274. package/lib/models/protocols/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_DeduplicationStrategy.js.map +0 -1
  275. package/lib/models/protocols/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_IngestMode.d.ts.map +0 -1
  276. package/lib/models/protocols/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_IngestMode.js.map +0 -1
  277. package/lib/models/protocols/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_MergeStrategy.d.ts.map +0 -1
  278. package/lib/models/protocols/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_MergeStrategy.js.map +0 -1
  279. package/lib/models/protocols/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_Milestoning.d.ts.map +0 -1
  280. package/lib/models/protocols/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_Milestoning.js.map +0 -1
  281. package/lib/models/protocols/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_Notifier.d.ts.map +0 -1
  282. package/lib/models/protocols/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_Notifier.js.map +0 -1
  283. package/lib/models/protocols/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_Persistence.d.ts.map +0 -1
  284. package/lib/models/protocols/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_Persistence.js.map +0 -1
  285. package/lib/models/protocols/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_Persister.d.ts.map +0 -1
  286. package/lib/models/protocols/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_Persister.js.map +0 -1
  287. package/lib/models/protocols/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_Sink.d.ts.map +0 -1
  288. package/lib/models/protocols/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_Sink.js.map +0 -1
  289. package/lib/models/protocols/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_TargetShape.d.ts.map +0 -1
  290. package/lib/models/protocols/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_TargetShape.js.map +0 -1
  291. package/lib/models/protocols/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_Trigger.d.ts.map +0 -1
  292. package/lib/models/protocols/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_Trigger.js.map +0 -1
  293. package/lib/models/protocols/pure/v1/transformation/pureGraph/V1_DSLPersistence_GraphBuilderHelper.d.ts.map +0 -1
  294. package/lib/models/protocols/pure/v1/transformation/pureGraph/V1_DSLPersistence_GraphBuilderHelper.js.map +0 -1
  295. package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_PersistenceTransformer.d.ts.map +0 -1
  296. package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_PersistenceTransformer.js.map +0 -1
  297. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_PersistenceBuilder.d.ts.map +0 -1
  298. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_PersistenceBuilder.js.map +0 -1
  299. package/lib/models/protocols/pure/v1/transformation/pureProtocol/V1_DSLPersistence_ProtocolHelper.d.ts.map +0 -1
  300. package/lib/models/protocols/pure/v1/transformation/pureProtocol/V1_DSLPersistence_ProtocolHelper.js.map +0 -1
@@ -15,12 +15,13 @@
15
15
  */
16
16
 
17
17
  import packageJson from '../../../package.json';
18
- import { MeteorIcon } from '@finos/legend-art';
18
+ import type { DocumentationEntry } from '@finos/legend-application';
19
+ import { MeteorIcon, PuzzlePieceIcon } from '@finos/legend-art';
19
20
  import type { PackageableElement } from '@finos/legend-graph';
20
21
  import {
21
- LegendStudioPlugin,
22
+ LegendStudioApplicationPlugin,
22
23
  UnsupportedElementEditorState,
23
- type DSL_LegendStudioPlugin_Extension,
24
+ type DSL_LegendStudioApplicationPlugin_Extension,
24
25
  type EditorStore,
25
26
  type ElementEditorState,
26
27
  type ElementEditorStateCreator,
@@ -34,37 +35,47 @@ import {
34
35
  type PureGrammarTextSuggestion,
35
36
  type PureGrammarParserElementDocumentationGetter,
36
37
  type PureGrammarParserDocumentationGetter,
37
- } from '@finos/legend-studio';
38
- import { Persistence } from '../../models/metamodels/pure/model/packageableElements/persistence/DSLPersistence_Persistence.js';
38
+ type ElementTypeLabelGetter,
39
+ } from '@finos/legend-application-studio';
40
+ import { Persistence } from '../../graph/metamodel/pure/model/packageableElements/persistence/DSLPersistence_Persistence.js';
41
+ import { PersistenceContext } from '../../graph/metamodel/pure/model/packageableElements/persistence/DSLPersistence_PersistenceContext.js';
39
42
  import {
43
+ PURE_GRAMMAR_PERSISTENCE_CONTEXT_ELEMENT_TYPE_LABEL,
40
44
  PURE_GRAMMAR_PERSISTENCE_ELEMENT_TYPE_LABEL,
41
45
  PURE_GRAMMAR_PERSISTENCE_PARSER_NAME,
42
46
  } from '../../graphManager/DSLPersistence_PureGraphManagerPlugin.js';
47
+ import {
48
+ BLANK_PERSISTENCE_CONTEXT_SNIPPET,
49
+ BLANK_PERSISTENCE_SNIPPET,
50
+ } from './DSLPersistence_CodeSnippets.js';
43
51
  import { DSL_PERSISTENCE_LEGEND_STUDIO_DOCUMENTATION_KEY } from './DSLPersistence_LegendStudioDocumentation.js';
44
- import { BLANK_PERSISTENCE_SNIPPET } from './DSLPersistence_CodeSnippets.js';
45
- import type { LegendApplicationDocumentationEntry } from '@finos/legend-application';
46
52
 
47
53
  const PERSISTENCE_ELEMENT_TYPE = 'PERSISTENCE';
54
+ const PERSISTENCE_CONTEXT_ELEMENT_TYPE = 'PERSISTENCE_CONTEXT';
55
+
48
56
  const PERSISTENCE_ELEMENT_PROJECT_EXPLORER_DND_TYPE =
49
57
  'PROJECT_EXPLORER_PERSISTENCE';
58
+ const PERSISTENCE_CONTEXT_ELEMENT_PROJECT_EXPLORER_DND_TYPE =
59
+ 'PROJECT_EXPLORER_PERSISTENCE_CONTEXT';
50
60
 
51
- export class DSLPersistence_LegendStudioPlugin
52
- extends LegendStudioPlugin
53
- implements DSL_LegendStudioPlugin_Extension
61
+ export class DSLPersistence_LegendStudioApplicationPlugin
62
+ extends LegendStudioApplicationPlugin
63
+ implements DSL_LegendStudioApplicationPlugin_Extension
54
64
  {
55
65
  constructor() {
56
- super(packageJson.extensions.studioPlugin, packageJson.version);
66
+ super(packageJson.extensions.applicationStudioPlugin, packageJson.version);
57
67
  }
58
68
 
59
69
  override getExtraRequiredDocumentationKeys(): string[] {
60
70
  return [
61
71
  DSL_PERSISTENCE_LEGEND_STUDIO_DOCUMENTATION_KEY.GRAMMAR_ELEMENT_PERSISTENCE,
72
+ DSL_PERSISTENCE_LEGEND_STUDIO_DOCUMENTATION_KEY.GRAMMAR_ELEMENT_PERSISTENCE_CONTEXT,
62
73
  DSL_PERSISTENCE_LEGEND_STUDIO_DOCUMENTATION_KEY.GRAMMAR_PARSER,
63
74
  ];
64
75
  }
65
76
 
66
77
  getExtraSupportedElementTypes(): string[] {
67
- return [PERSISTENCE_ELEMENT_TYPE];
78
+ return [PERSISTENCE_ELEMENT_TYPE, PERSISTENCE_CONTEXT_ELEMENT_TYPE];
68
79
  }
69
80
 
70
81
  getExtraElementTypeGetters(): ElementTypeGetter[] {
@@ -72,6 +83,8 @@ export class DSLPersistence_LegendStudioPlugin
72
83
  (element: PackageableElement): string | undefined => {
73
84
  if (element instanceof Persistence) {
74
85
  return PERSISTENCE_ELEMENT_TYPE;
86
+ } else if (element instanceof PersistenceContext) {
87
+ return PERSISTENCE_CONTEXT_ELEMENT_TYPE;
75
88
  }
76
89
  return undefined;
77
90
  },
@@ -87,6 +100,12 @@ export class DSLPersistence_LegendStudioPlugin
87
100
  <MeteorIcon />
88
101
  </div>
89
102
  );
103
+ } else if (type === PERSISTENCE_CONTEXT_ELEMENT_TYPE) {
104
+ return (
105
+ <div className="icon icon--persistence-context">
106
+ <PuzzlePieceIcon />
107
+ </div>
108
+ );
90
109
  }
91
110
  return undefined;
92
111
  },
@@ -102,6 +121,8 @@ export class DSLPersistence_LegendStudioPlugin
102
121
  ): PackageableElement | undefined => {
103
122
  if (type === PERSISTENCE_ELEMENT_TYPE) {
104
123
  return new Persistence(name);
124
+ } else if (type === PERSISTENCE_CONTEXT_ELEMENT_TYPE) {
125
+ return new PersistenceContext(name);
105
126
  }
106
127
  return undefined;
107
128
  },
@@ -116,6 +137,8 @@ export class DSLPersistence_LegendStudioPlugin
116
137
  ): ElementEditorState | undefined => {
117
138
  if (element instanceof Persistence) {
118
139
  return new UnsupportedElementEditorState(editorStore, element);
140
+ } else if (element instanceof PersistenceContext) {
141
+ return new UnsupportedElementEditorState(editorStore, element);
119
142
  }
120
143
  return undefined;
121
144
  },
@@ -127,6 +150,8 @@ export class DSLPersistence_LegendStudioPlugin
127
150
  (element: PackageableElement): string | undefined => {
128
151
  if (element instanceof Persistence) {
129
152
  return PERSISTENCE_ELEMENT_PROJECT_EXPLORER_DND_TYPE;
153
+ } else if (element instanceof PersistenceContext) {
154
+ return PERSISTENCE_CONTEXT_ELEMENT_PROJECT_EXPLORER_DND_TYPE;
130
155
  }
131
156
  return undefined;
132
157
  },
@@ -134,7 +159,10 @@ export class DSLPersistence_LegendStudioPlugin
134
159
  }
135
160
 
136
161
  getExtraGrammarTextEditorDnDTypes(): string[] {
137
- return [PERSISTENCE_ELEMENT_PROJECT_EXPLORER_DND_TYPE];
162
+ return [
163
+ PERSISTENCE_ELEMENT_PROJECT_EXPLORER_DND_TYPE,
164
+ PERSISTENCE_CONTEXT_ELEMENT_PROJECT_EXPLORER_DND_TYPE,
165
+ ];
138
166
  }
139
167
 
140
168
  getExtraPureGrammarParserElementDocumentationGetters(): PureGrammarParserElementDocumentationGetter[] {
@@ -143,12 +171,19 @@ export class DSLPersistence_LegendStudioPlugin
143
171
  editorStore: EditorStore,
144
172
  parserKeyword: string,
145
173
  elementKeyword: string,
146
- ): LegendApplicationDocumentationEntry | undefined => {
174
+ ): DocumentationEntry | undefined => {
147
175
  if (parserKeyword === PURE_GRAMMAR_PERSISTENCE_PARSER_NAME) {
148
176
  if (elementKeyword === PURE_GRAMMAR_PERSISTENCE_ELEMENT_TYPE_LABEL) {
149
177
  return editorStore.applicationStore.documentationService.getDocEntry(
150
178
  DSL_PERSISTENCE_LEGEND_STUDIO_DOCUMENTATION_KEY.GRAMMAR_ELEMENT_PERSISTENCE,
151
179
  );
180
+ } else if (
181
+ elementKeyword ===
182
+ PURE_GRAMMAR_PERSISTENCE_CONTEXT_ELEMENT_TYPE_LABEL
183
+ ) {
184
+ return editorStore.applicationStore.documentationService.getDocEntry(
185
+ DSL_PERSISTENCE_LEGEND_STUDIO_DOCUMENTATION_KEY.GRAMMAR_ELEMENT_PERSISTENCE_CONTEXT,
186
+ );
152
187
  }
153
188
  }
154
189
  return undefined;
@@ -161,7 +196,7 @@ export class DSLPersistence_LegendStudioPlugin
161
196
  (
162
197
  editorStore: EditorStore,
163
198
  parserKeyword: string,
164
- ): LegendApplicationDocumentationEntry | undefined => {
199
+ ): DocumentationEntry | undefined => {
165
200
  if (parserKeyword === PURE_GRAMMAR_PERSISTENCE_PARSER_NAME) {
166
201
  return editorStore.applicationStore.documentationService.getDocEntry(
167
202
  DSL_PERSISTENCE_LEGEND_STUDIO_DOCUMENTATION_KEY.GRAMMAR_PARSER,
@@ -201,8 +236,24 @@ export class DSLPersistence_LegendStudioPlugin
201
236
  description: '(blank)',
202
237
  insertText: BLANK_PERSISTENCE_SNIPPET,
203
238
  },
239
+ {
240
+ text: PURE_GRAMMAR_PERSISTENCE_CONTEXT_ELEMENT_TYPE_LABEL,
241
+ description: '(blank)',
242
+ insertText: BLANK_PERSISTENCE_CONTEXT_SNIPPET,
243
+ },
204
244
  ]
205
245
  : undefined,
206
246
  ];
207
247
  }
248
+
249
+ getExtraElementTypeLabelGetters(): ElementTypeLabelGetter[] {
250
+ return [
251
+ (type: string): string | undefined => {
252
+ if (type === PERSISTENCE_CONTEXT_ELEMENT_TYPE) {
253
+ return 'Persistence Context';
254
+ }
255
+ return undefined;
256
+ },
257
+ ];
258
+ }
208
259
  }
@@ -17,4 +17,5 @@
17
17
  export enum DSL_PERSISTENCE_LEGEND_STUDIO_DOCUMENTATION_KEY {
18
18
  GRAMMAR_PARSER = 'dsl-persistence.grammar.parser',
19
19
  GRAMMAR_ELEMENT_PERSISTENCE = 'dsl-persistence.grammar.element.persistence',
20
+ GRAMMAR_ELEMENT_PERSISTENCE_CONTEXT = 'dsl-persistence.grammar.element.persistence-context',
20
21
  }
@@ -15,6 +15,20 @@
15
15
  */
16
16
 
17
17
  export enum PERSISTENCE_HASH_STRUCTURE {
18
+ // ----- PERSISTENCE CONTEXT -----
19
+
20
+ PERSISTENCE_CONTEXT = 'PERSISTENCE_CONTEXT',
21
+
22
+ // platform
23
+ DEFAULT_PERSISTENCE_PLATFORM = 'DEFAULT_PERSISTENCE_PLATFORM',
24
+
25
+ // service parameter
26
+ SERVICE_PARAMETER = 'SERVICE_PARAMETER',
27
+ PRIMITIVE_TYPE_VALUE_SERVICE_PARAMETER = 'PRIMITIVE_TYPE_VALUE_SERVICE_PARAMETER',
28
+ CONNECTION_VALUE_SERVICE_PARAMETER = 'CONNECTION_VALUE_SERVICE_PARAMETER',
29
+
30
+ // ----- PERSISTENCE -----
31
+
18
32
  PERSISTENCE = 'PERSISTENCE',
19
33
 
20
34
  // trigger
@@ -15,7 +15,8 @@
15
15
  */
16
16
 
17
17
  import packageJson from '../../package.json';
18
- import { Persistence } from '../models/metamodels/pure/model/packageableElements/persistence/DSLPersistence_Persistence.js';
18
+ import { Persistence } from '../graph/metamodel/pure/model/packageableElements/persistence/DSLPersistence_Persistence.js';
19
+ import { PersistenceContext } from '../graph/metamodel/pure/model/packageableElements/persistence/DSLPersistence_PersistenceContext.js';
19
20
  import type { Clazz } from '@finos/legend-shared';
20
21
  import { type PackageableElement, PureGraphPlugin } from '@finos/legend-graph';
21
22
 
@@ -25,6 +26,6 @@ export class DSLPersistence_PureGraphPlugin extends PureGraphPlugin {
25
26
  }
26
27
 
27
28
  override getExtraPureGraphExtensionClasses(): Clazz<PackageableElement>[] {
28
- return [Persistence];
29
+ return [Persistence, PersistenceContext];
29
30
  }
30
31
  }
@@ -14,7 +14,7 @@
14
14
  * limitations under the License.
15
15
  */
16
16
 
17
- import { PERSISTENCE_HASH_STRUCTURE } from '../../../../../DSLPersistence_ModelUtils.js';
17
+ import { PERSISTENCE_HASH_STRUCTURE } from '../../../../../DSLPersistence_HashUtils.js';
18
18
  import { type Hashable, hashArray } from '@finos/legend-shared';
19
19
 
20
20
  export abstract class Auditing implements Hashable {
@@ -14,7 +14,7 @@
14
14
  * limitations under the License.
15
15
  */
16
16
 
17
- import { PERSISTENCE_HASH_STRUCTURE } from '../../../../../DSLPersistence_ModelUtils.js';
17
+ import { PERSISTENCE_HASH_STRUCTURE } from '../../../../../DSLPersistence_HashUtils.js';
18
18
  import { type Hashable, hashArray } from '@finos/legend-shared';
19
19
 
20
20
  export abstract class DeduplicationStrategy implements Hashable {
@@ -20,7 +20,7 @@ import type {
20
20
  TransactionMilestoning,
21
21
  ValidityMilestoning,
22
22
  } from './DSLPersistence_Milestoning.js';
23
- import { PERSISTENCE_HASH_STRUCTURE } from '../../../../../DSLPersistence_ModelUtils.js';
23
+ import { PERSISTENCE_HASH_STRUCTURE } from '../../../../../DSLPersistence_HashUtils.js';
24
24
  import { type Hashable, hashArray } from '@finos/legend-shared';
25
25
 
26
26
  export abstract class IngestMode implements Hashable {
@@ -14,7 +14,7 @@
14
14
  * limitations under the License.
15
15
  */
16
16
 
17
- import { PERSISTENCE_HASH_STRUCTURE } from '../../../../../DSLPersistence_ModelUtils.js';
17
+ import { PERSISTENCE_HASH_STRUCTURE } from '../../../../../DSLPersistence_HashUtils.js';
18
18
  import { type Hashable, hashArray } from '@finos/legend-shared';
19
19
 
20
20
  export abstract class MergeStrategy implements Hashable {
@@ -14,7 +14,7 @@
14
14
  * limitations under the License.
15
15
  */
16
16
 
17
- import { PERSISTENCE_HASH_STRUCTURE } from '../../../../../DSLPersistence_ModelUtils.js';
17
+ import { PERSISTENCE_HASH_STRUCTURE } from '../../../../../DSLPersistence_HashUtils.js';
18
18
  import { type Hashable, hashArray } from '@finos/legend-shared';
19
19
 
20
20
  // transaction milestoning
@@ -14,7 +14,7 @@
14
14
  * limitations under the License.
15
15
  */
16
16
 
17
- import { PERSISTENCE_HASH_STRUCTURE } from '../../../../../DSLPersistence_ModelUtils.js';
17
+ import { PERSISTENCE_HASH_STRUCTURE } from '../../../../../DSLPersistence_HashUtils.js';
18
18
  import { type Hashable, hashArray } from '@finos/legend-shared';
19
19
 
20
20
  export class Notifier implements Hashable {
@@ -17,7 +17,7 @@
17
17
  import type { Notifier } from './DSLPersistence_Notifier.js';
18
18
  import type { Persister } from './DSLPersistence_Persister.js';
19
19
  import type { Trigger } from './DSLPersistence_Trigger.js';
20
- import { PERSISTENCE_HASH_STRUCTURE } from '../../../../../DSLPersistence_ModelUtils.js';
20
+ import { PERSISTENCE_HASH_STRUCTURE } from '../../../../../DSLPersistence_HashUtils.js';
21
21
  import {
22
22
  PackageableElement,
23
23
  type PackageableElementReference,
@@ -0,0 +1,50 @@
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 { Persistence } from './DSLPersistence_Persistence.js';
18
+ import type { PersistencePlatform } from './DSLPersistence_PersistencePlatform.js';
19
+ import type { ServiceParameter } from './DSLPersistence_ServiceParameter.js';
20
+ import { PERSISTENCE_HASH_STRUCTURE } from '../../../../../DSLPersistence_HashUtils.js';
21
+ import {
22
+ type Connection,
23
+ PackageableElement,
24
+ type PackageableElementReference,
25
+ type PackageableElementVisitor,
26
+ } from '@finos/legend-graph';
27
+ import { type Hashable, hashArray } from '@finos/legend-shared';
28
+
29
+ export class PersistenceContext extends PackageableElement implements Hashable {
30
+ persistence!: PackageableElementReference<Persistence>;
31
+ platform!: PersistencePlatform;
32
+ serviceParameters: ServiceParameter[] = [];
33
+ sinkConnection?: Connection;
34
+
35
+ protected override get _elementHashCode(): string {
36
+ return hashArray([
37
+ PERSISTENCE_HASH_STRUCTURE.PERSISTENCE_CONTEXT,
38
+ this.persistence.valueForSerialization ?? '',
39
+ this.platform,
40
+ hashArray(this.serviceParameters),
41
+ this.sinkConnection ?? '',
42
+ ]);
43
+ }
44
+
45
+ accept_PackageableElementVisitor<T>(
46
+ visitor: PackageableElementVisitor<T>,
47
+ ): T {
48
+ return visitor.visit_PackageableElement(this);
49
+ }
50
+ }
@@ -0,0 +1,30 @@
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 { PERSISTENCE_HASH_STRUCTURE } from '../../../../../DSLPersistence_HashUtils.js';
18
+ import { type Hashable, hashArray } from '@finos/legend-shared';
19
+
20
+ export abstract class PersistencePlatform implements Hashable {
21
+ abstract get hashCode(): string;
22
+ }
23
+ export class DefaultPersistencePlatform
24
+ extends PersistencePlatform
25
+ implements Hashable
26
+ {
27
+ override get hashCode(): string {
28
+ return hashArray([PERSISTENCE_HASH_STRUCTURE.DEFAULT_PERSISTENCE_PLATFORM]);
29
+ }
30
+ }
@@ -17,7 +17,7 @@
17
17
  import type { IngestMode } from './DSLPersistence_IngestMode.js';
18
18
  import type { Sink } from './DSLPersistence_Sink.js';
19
19
  import type { TargetShape } from './DSLPersistence_TargetShape.js';
20
- import { PERSISTENCE_HASH_STRUCTURE } from '../../../../../DSLPersistence_ModelUtils.js';
20
+ import { PERSISTENCE_HASH_STRUCTURE } from '../../../../../DSLPersistence_HashUtils.js';
21
21
  import { type Hashable, hashArray } from '@finos/legend-shared';
22
22
 
23
23
  export abstract class Persister implements Hashable {
@@ -0,0 +1,61 @@
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 { PERSISTENCE_HASH_STRUCTURE } from '../../../../../DSLPersistence_HashUtils.js';
18
+ import type { Connection, ValueSpecification } from '@finos/legend-graph';
19
+ import { type Hashable, hashArray } from '@finos/legend-shared';
20
+
21
+ export class ServiceParameter implements Hashable {
22
+ name!: string;
23
+ value!: ServiceParameterValue;
24
+
25
+ get hashCode(): string {
26
+ return hashArray([
27
+ PERSISTENCE_HASH_STRUCTURE.SERVICE_PARAMETER,
28
+ this.name,
29
+ this.value,
30
+ ]);
31
+ }
32
+ }
33
+
34
+ export abstract class ServiceParameterValue implements Hashable {
35
+ abstract get hashCode(): string;
36
+ }
37
+
38
+ export class PrimitiveTypeValue
39
+ extends ServiceParameterValue
40
+ implements Hashable
41
+ {
42
+ primitiveType!: ValueSpecification;
43
+
44
+ override get hashCode(): string {
45
+ return hashArray([
46
+ PERSISTENCE_HASH_STRUCTURE.PRIMITIVE_TYPE_VALUE_SERVICE_PARAMETER,
47
+ //TODO: ledav -- hash value specification
48
+ ]);
49
+ }
50
+ }
51
+
52
+ export class ConnectionValue extends ServiceParameterValue implements Hashable {
53
+ connection!: Connection;
54
+
55
+ override get hashCode(): string {
56
+ return hashArray([
57
+ PERSISTENCE_HASH_STRUCTURE.CONNECTION_VALUE_SERVICE_PARAMETER,
58
+ this.connection,
59
+ ]);
60
+ }
61
+ }
@@ -14,10 +14,11 @@
14
14
  * limitations under the License.
15
15
  */
16
16
 
17
- import { PERSISTENCE_HASH_STRUCTURE } from '../../../../../DSLPersistence_ModelUtils.js';
17
+ import { PERSISTENCE_HASH_STRUCTURE } from '../../../../../DSLPersistence_HashUtils.js';
18
18
  import type {
19
19
  Binding,
20
20
  Connection,
21
+ Database,
21
22
  PackageableElementReference,
22
23
  } from '@finos/legend-graph';
23
24
  import { type Hashable, hashArray } from '@finos/legend-shared';
@@ -27,11 +28,15 @@ export abstract class Sink implements Hashable {
27
28
  }
28
29
 
29
30
  export class RelationalSink extends Sink implements Hashable {
31
+ //TODO: ledav -- make required once persistence changes are rolled out in engine
32
+ database?: PackageableElementReference<Database>;
33
+ //TODO: ledav -- remove once persistence changes are rolled out in engine
30
34
  connection?: Connection;
31
35
 
32
36
  override get hashCode(): string {
33
37
  return hashArray([
34
38
  PERSISTENCE_HASH_STRUCTURE.RELATIONAL_SINK,
39
+ this.database?.valueForSerialization ?? '',
35
40
  this.connection ?? '',
36
41
  ]);
37
42
  }
@@ -39,13 +44,14 @@ export class RelationalSink extends Sink implements Hashable {
39
44
 
40
45
  export class ObjectStorageSink extends Sink implements Hashable {
41
46
  binding!: PackageableElementReference<Binding>;
42
- connection!: Connection;
47
+ //TODO: ledav -- remove once persistence changes are rolled out in engine
48
+ connection?: Connection;
43
49
 
44
50
  override get hashCode(): string {
45
51
  return hashArray([
46
52
  PERSISTENCE_HASH_STRUCTURE.OBJECT_STORAGE_SINK,
47
53
  this.binding.valueForSerialization ?? '',
48
- this.connection,
54
+ this.connection ?? '',
49
55
  ]);
50
56
  }
51
57
  }
@@ -15,20 +15,16 @@
15
15
  */
16
16
 
17
17
  import type { DeduplicationStrategy } from './DSLPersistence_DeduplicationStrategy.js';
18
- import { PERSISTENCE_HASH_STRUCTURE } from '../../../../../DSLPersistence_ModelUtils.js';
18
+ import { PERSISTENCE_HASH_STRUCTURE } from '../../../../../DSLPersistence_HashUtils.js';
19
19
  import { type Hashable, hashArray } from '@finos/legend-shared';
20
- import type {
21
- Class,
22
- OptionalPackageableElementReference,
23
- PackageableElementReference,
24
- } from '@finos/legend-graph';
20
+ import type { Class, PackageableElementReference } from '@finos/legend-graph';
25
21
 
26
22
  export abstract class TargetShape implements Hashable {
27
23
  abstract get hashCode(): string;
28
24
  }
29
25
 
30
26
  export class FlatTarget extends TargetShape implements Hashable {
31
- modelClass!: OptionalPackageableElementReference<Class>;
27
+ modelClass?: PackageableElementReference<Class> | undefined;
32
28
  targetName!: string;
33
29
  partitionFields: string[] = [];
34
30
  deduplicationStrategy!: DeduplicationStrategy;
@@ -36,7 +32,7 @@ export class FlatTarget extends TargetShape implements Hashable {
36
32
  override get hashCode(): string {
37
33
  return hashArray([
38
34
  PERSISTENCE_HASH_STRUCTURE.FLAT_TARGET,
39
- this.modelClass.valueForSerialization ?? '',
35
+ this.modelClass?.valueForSerialization ?? '',
40
36
  this.targetName,
41
37
  hashArray(this.partitionFields),
42
38
  this.deduplicationStrategy,
@@ -14,7 +14,7 @@
14
14
  * limitations under the License.
15
15
  */
16
16
 
17
- import { PERSISTENCE_HASH_STRUCTURE } from '../../../../../DSLPersistence_ModelUtils.js';
17
+ import { PERSISTENCE_HASH_STRUCTURE } from '../../../../../DSLPersistence_HashUtils.js';
18
18
  import { type Hashable, hashArray } from '@finos/legend-shared';
19
19
 
20
20
  export abstract class Trigger implements Hashable {
@@ -14,7 +14,8 @@
14
14
  * limitations under the License.
15
15
  */
16
16
 
17
- import { Persistence } from '../models/metamodels/pure/model/packageableElements/persistence/DSLPersistence_Persistence.js';
17
+ import { Persistence } from '../graph/metamodel/pure/model/packageableElements/persistence/DSLPersistence_Persistence.js';
18
+ import { PersistenceContext } from '../graph/metamodel/pure/model/packageableElements/persistence/DSLPersistence_PersistenceContext.js';
18
19
  import type { BasicModel, PureModel } from '@finos/legend-graph';
19
20
  import { guaranteeNonNullable } from '@finos/legend-shared';
20
21
 
@@ -25,6 +26,16 @@ export const getPersistence = (path: string, graph: PureModel): Persistence =>
25
26
  `Can't find persistence '${path}'`,
26
27
  );
27
28
 
29
+ export const getPersistenceContext = (
30
+ path: string,
31
+ graph: PureModel,
32
+ ): PersistenceContext =>
33
+ graph.getExtensionElement(
34
+ path,
35
+ PersistenceContext,
36
+ `Can't find persistence context '${path}'`,
37
+ );
38
+
28
39
  export const getOwnPersistence = (
29
40
  path: string,
30
41
  graph: BasicModel,
@@ -33,3 +44,12 @@ export const getOwnPersistence = (
33
44
  graph.getOwnNullableExtensionElement(path, Persistence),
34
45
  `Can't find persistence '${path}'`,
35
46
  );
47
+
48
+ export const getOwnPersistenceContext = (
49
+ path: string,
50
+ graph: BasicModel,
51
+ ): PersistenceContext =>
52
+ guaranteeNonNullable(
53
+ graph.getOwnNullableExtensionElement(path, PersistenceContext),
54
+ `Can't find persistence context '${path}'`,
55
+ );
@@ -15,8 +15,10 @@
15
15
  */
16
16
 
17
17
  import packageJson from '../../package.json';
18
- import { Persistence } from '../models/metamodels/pure/model/packageableElements/persistence/DSLPersistence_Persistence.js';
18
+ import { Persistence } from '../graph/metamodel/pure/model/packageableElements/persistence/DSLPersistence_Persistence.js';
19
+ import { PersistenceContext } from '../graph/metamodel/pure/model/packageableElements/persistence/DSLPersistence_PersistenceContext.js';
19
20
  import { observe_Persistence } from './action/changeDetection/DSLPersistence_ObserverHelper.js';
21
+ import { observe_PersistenceContext } from './action/changeDetection/DSLPersistenceContext_ObserverHelper.js';
20
22
  import {
21
23
  PureGraphManagerPlugin,
22
24
  type PackageableElement,
@@ -27,6 +29,8 @@ import {
27
29
 
28
30
  export const PURE_GRAMMAR_PERSISTENCE_PARSER_NAME = 'Persistence';
29
31
  export const PURE_GRAMMAR_PERSISTENCE_ELEMENT_TYPE_LABEL = 'Persistence';
32
+ export const PURE_GRAMMAR_PERSISTENCE_CONTEXT_ELEMENT_TYPE_LABEL =
33
+ 'PersistenceContext';
30
34
 
31
35
  export class DSLPersistence_PureGraphManagerPlugin extends PureGraphManagerPlugin {
32
36
  constructor() {
@@ -38,7 +42,10 @@ export class DSLPersistence_PureGraphManagerPlugin extends PureGraphManagerPlugi
38
42
  }
39
43
 
40
44
  override getExtraPureGrammarKeywords(): string[] {
41
- return [PURE_GRAMMAR_PERSISTENCE_ELEMENT_TYPE_LABEL];
45
+ return [
46
+ PURE_GRAMMAR_PERSISTENCE_ELEMENT_TYPE_LABEL,
47
+ PURE_GRAMMAR_PERSISTENCE_CONTEXT_ELEMENT_TYPE_LABEL,
48
+ ];
42
49
  }
43
50
 
44
51
  override getExtraPureGrammarElementLabelers(): PureGrammarElementLabeler[] {
@@ -46,6 +53,8 @@ export class DSLPersistence_PureGraphManagerPlugin extends PureGraphManagerPlugi
46
53
  (element: PackageableElement): string | undefined => {
47
54
  if (element instanceof Persistence) {
48
55
  return PURE_GRAMMAR_PERSISTENCE_ELEMENT_TYPE_LABEL;
56
+ } else if (element instanceof PersistenceContext) {
57
+ return PURE_GRAMMAR_PERSISTENCE_CONTEXT_ELEMENT_TYPE_LABEL;
49
58
  }
50
59
  return undefined;
51
60
  },
@@ -60,6 +69,8 @@ export class DSLPersistence_PureGraphManagerPlugin extends PureGraphManagerPlugi
60
69
  ): PackageableElement | undefined => {
61
70
  if (element instanceof Persistence) {
62
71
  return observe_Persistence(element);
72
+ } else if (element instanceof PersistenceContext) {
73
+ return observe_PersistenceContext(element);
63
74
  }
64
75
  return undefined;
65
76
  },