@izara_project/izara-market-library-service-schemas 1.0.7 → 1.0.9

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 (221) hide show
  1. package/package.json +2 -2
  2. package/src/GenerateCodeLibs/src/Consts.js +27 -12
  3. package/src/GenerateCodeLibs/src/GenerateCodeLibs.js +41 -50
  4. package/src/MainLibs/src/Utils.js +13 -0
  5. package/src/TemplateManager/src/FindData/FindDataYaml/data.js +3 -2
  6. package/src/TemplateManager/src/FindData/FindDataYaml/template.ejs +1 -1
  7. package/src/TemplateManager/src/FindData/Handler/data.js +1 -2
  8. package/src/TemplateManager/src/FindData/mainFunction/data.js +1 -1
  9. package/src/TemplateManager/src/GenerateCode.js +120 -47
  10. package/src/TemplateManager/src/OutPerActionComplete/OutCreateComplete/functionYaml/data.js +3 -16
  11. package/src/TemplateManager/src/OutPerActionComplete/OutCreateComplete/handler/data.js +4 -2
  12. package/src/TemplateManager/src/OutPerActionComplete/OutCreateComplete/handler/template.ejs +11 -10
  13. package/src/TemplateManager/src/OutPerActionComplete/OutCreateComplete/mainFunction/data.js +1 -1
  14. package/src/TemplateManager/src/OutPerActionComplete/OutCreateComplete/mainFunction/template.ejs +9 -14
  15. package/src/TemplateManager/src/OutPerActionComplete/OutDeleteComplete/functionYaml/data.js +82 -0
  16. package/src/TemplateManager/src/OutPerActionComplete/OutDeleteComplete/handler/data.js +61 -0
  17. package/src/TemplateManager/src/OutPerActionComplete/OutDeleteComplete/handler/template.ejs +129 -0
  18. package/src/TemplateManager/src/{CreateRelationship/createRelationship → OutPerActionComplete/OutDeleteComplete}/mainFunction/data.js +9 -15
  19. package/src/TemplateManager/src/OutPerActionComplete/OutDeleteComplete/mainFunction/template.ejs +90 -0
  20. package/src/TemplateManager/src/OutPerActionComplete/OutDeleteComplete/sns-out/data.js +62 -0
  21. package/src/TemplateManager/src/OutPerActionComplete/OutDeleteComplete/sqs-in-sns/data.js +58 -0
  22. package/src/TemplateManager/src/OutPerActionComplete/OutUpdateComplete/functionYaml/data.js +3 -17
  23. package/src/TemplateManager/src/OutPerActionComplete/OutUpdateComplete/handler/data.js +4 -2
  24. package/src/TemplateManager/src/OutPerActionComplete/OutUpdateComplete/mainFunction/data.js +1 -1
  25. package/src/TemplateManager/src/OutPerActionComplete/OutUpdateComplete/mainFunction/template.ejs +4 -4
  26. package/src/TemplateManager/src/PerActionEndpoint/FunctionYaml/HdrApi/data.js +41 -46
  27. package/src/TemplateManager/src/PerActionEndpoint/FunctionYaml/HdrApi/template.ejs +1 -1
  28. package/src/TemplateManager/src/PerActionEndpoint/FunctionYaml/HdrDsq/data.js +31 -43
  29. package/src/TemplateManager/src/PerActionEndpoint/FunctionYaml/HdrDsq/template.ejs +1 -1
  30. package/src/TemplateManager/src/PerActionEndpoint/FunctionYaml/HdrInv/data.js +22 -67
  31. package/src/TemplateManager/src/PerActionEndpoint/FunctionYaml/HdrInv/template.ejs +1 -1
  32. package/src/TemplateManager/src/PerActionEndpoint/FunctionYaml/HdrSqs/data.js +31 -43
  33. package/src/TemplateManager/src/PerActionEndpoint/FunctionYaml/HdrSqs/template.ejs +1 -1
  34. package/src/TemplateManager/src/PerActionEndpoint/Handler/HdrApi/data.js +6 -7
  35. package/src/TemplateManager/src/PerActionEndpoint/Handler/HdrApi/template.ejs +2 -2
  36. package/src/TemplateManager/src/PerActionEndpoint/Handler/HdrDsq/data.js +8 -42
  37. package/src/TemplateManager/src/PerActionEndpoint/Handler/HdrDsq/template.ejs +80 -65
  38. package/src/TemplateManager/src/PerActionEndpoint/Handler/HdrInv/data.js +12 -65
  39. package/src/TemplateManager/src/PerActionEndpoint/Handler/HdrInv/template.ejs +3 -4
  40. package/src/TemplateManager/src/PerActionEndpoint/Handler/HdrSqs/data.js +11 -45
  41. package/src/TemplateManager/src/PerActionEndpoint/Handler/HdrSqs/template.ejs +64 -59
  42. package/src/TemplateManager/src/PerActionEndpoint/MainFunction/Create/data.js +1 -2
  43. package/src/TemplateManager/src/PerActionEndpoint/MainFunction/Create/template.ejs +141 -183
  44. package/src/TemplateManager/src/PerActionEndpoint/MainFunction/Delete/data.js +66 -0
  45. package/src/TemplateManager/src/PerActionEndpoint/MainFunction/Delete/template.ejs +194 -0
  46. package/src/TemplateManager/src/PerActionEndpoint/MainFunction/Get/data.js +1 -2
  47. package/src/TemplateManager/src/PerActionEndpoint/MainFunction/Update/template.ejs +2 -3
  48. package/src/TemplateManager/src/ProcessLogical/Handler/data.js +2 -1
  49. package/src/TemplateManager/src/ProcessLogical/ProcessLogicalYaml/data.js +49 -80
  50. package/src/TemplateManager/src/ProcessLogical/ProcessLogicalYaml/template.ejs +1 -1
  51. package/src/TemplateManager/src/ProcessLogical/mainFunction/template.ejs +1 -1
  52. package/src/TemplateManager/src/ProcessLogicalPagination/FunctionYaml/HdrDsq/data.js +42 -72
  53. package/src/TemplateManager/src/ProcessLogicalPagination/FunctionYaml/HdrDsq/template.ejs +1 -1
  54. package/src/TemplateManager/src/ProcessLogicalPagination/FunctionYaml/HdrSqs/data.js +44 -74
  55. package/src/TemplateManager/src/ProcessLogicalPagination/FunctionYaml/HdrSqs/template.ejs +1 -1
  56. package/src/TemplateManager/src/RelationshipPerAction/CreateRelationship/createRelationship/functionYaml/HdrApi/data.js +85 -0
  57. package/src/TemplateManager/src/{UpdateRelationshipSchema/updateRelationship → RelationshipPerAction/CreateRelationship/createRelationship}/functionYaml/HdrApi/template.ejs +3 -3
  58. package/src/TemplateManager/src/{CreateRelationship → RelationshipPerAction/CreateRelationship}/createRelationship/functionYaml/HdrDsq/data.js +6 -42
  59. package/src/TemplateManager/src/RelationshipPerAction/CreateRelationship/createRelationship/functionYaml/HdrDsq/template.ejs +30 -0
  60. package/src/TemplateManager/src/{CreateRelationship → RelationshipPerAction/CreateRelationship}/createRelationship/functionYaml/HdrInv/data.js +6 -42
  61. package/src/TemplateManager/src/RelationshipPerAction/CreateRelationship/createRelationship/functionYaml/HdrInv/template.ejs +26 -0
  62. package/src/TemplateManager/src/{CreateRelationship → RelationshipPerAction/CreateRelationship}/createRelationship/functionYaml/HdrSqs/data.js +6 -42
  63. package/src/TemplateManager/src/RelationshipPerAction/CreateRelationship/createRelationship/functionYaml/HdrSqs/template.ejs +26 -0
  64. package/src/TemplateManager/src/{UpdateRelationshipSchema/updateRelationship/perAction/HdrApi → RelationshipPerAction/CreateRelationship/createRelationship/mainFunction}/data.js +4 -5
  65. package/src/TemplateManager/src/{CreateRelationship → RelationshipPerAction/CreateRelationship}/createRelationship/mainFunction/template.ejs +2 -2
  66. package/src/TemplateManager/src/{CreateRelationship → RelationshipPerAction/CreateRelationship}/createRelationship/perAction/HdrApi/data.js +3 -3
  67. package/src/TemplateManager/src/{CreateRelationship → RelationshipPerAction/CreateRelationship}/createRelationship/perAction/HdrDsq/data.js +3 -3
  68. package/src/TemplateManager/src/{CreateRelationship → RelationshipPerAction/CreateRelationship}/createRelationship/perAction/HdrInv/data.js +3 -3
  69. package/src/TemplateManager/src/{CreateRelationship → RelationshipPerAction/CreateRelationship}/createRelationship/perAction/HdrSqs/data.js +3 -3
  70. package/src/TemplateManager/src/{CreateRelationship → RelationshipPerAction/CreateRelationship}/createRelationship/sns-in-sqs/data.js +4 -4
  71. package/src/TemplateManager/src/RelationshipPerAction/CreateRelationship/createRelationship/sns-in-sqs/snsTemplate.ejs +59 -0
  72. package/src/TemplateManager/src/RelationshipPerAction/CreateRelationship/createRelationship/sns-in-sqs/sqsTemplate.ejs +43 -0
  73. package/src/TemplateManager/src/{CreateRelationship → RelationshipPerAction/CreateRelationship}/createRelationshipComplete/functionYaml/data.js +10 -47
  74. package/src/TemplateManager/src/{UpdateRelationshipSchema/updateRalationshipComplete → RelationshipPerAction/CreateRelationship/createRelationshipComplete}/functionYaml/template.ejs +1 -1
  75. package/src/TemplateManager/src/{CreateRelationship → RelationshipPerAction/CreateRelationship}/createRelationshipComplete/handler/HdrSqs/data.js +2 -2
  76. package/src/TemplateManager/src/{CreateRelationship → RelationshipPerAction/CreateRelationship}/createRelationshipComplete/mainFunction/data.js +2 -2
  77. package/src/TemplateManager/src/{CreateRelationship → RelationshipPerAction/CreateRelationship}/createRelationshipComplete/sns-in-sqs/data.js +2 -2
  78. package/src/TemplateManager/src/RelationshipPerAction/CreateRelationship/createRelationshipComplete/sns-in-sqs/template.ejs +47 -0
  79. package/src/TemplateManager/src/{CreateRelationship → RelationshipPerAction/CreateRelationship}/createRelationshipComplete/sns-out/data.js +3 -3
  80. package/src/TemplateManager/src/RelationshipPerAction/CreateRelationship/createRelationshipComplete/sns-out/template.ejs +10 -0
  81. package/src/TemplateManager/src/RelationshipPerAction/DeleteRelationship/DeleteRelationship/functionYaml/HdrApi/data.js +86 -0
  82. package/src/TemplateManager/src/RelationshipPerAction/DeleteRelationship/DeleteRelationship/functionYaml/HdrApi/template.ejs +33 -0
  83. package/src/TemplateManager/src/RelationshipPerAction/DeleteRelationship/DeleteRelationship/functionYaml/HdrDsq/data.js +97 -0
  84. package/src/TemplateManager/src/RelationshipPerAction/DeleteRelationship/DeleteRelationship/functionYaml/HdrDsq/template.ejs +30 -0
  85. package/src/TemplateManager/src/RelationshipPerAction/DeleteRelationship/DeleteRelationship/functionYaml/HdrInv/data.js +84 -0
  86. package/src/TemplateManager/src/RelationshipPerAction/DeleteRelationship/DeleteRelationship/functionYaml/HdrInv/template.ejs +26 -0
  87. package/src/TemplateManager/src/RelationshipPerAction/DeleteRelationship/DeleteRelationship/functionYaml/HdrSqs/data.js +97 -0
  88. package/src/TemplateManager/src/RelationshipPerAction/DeleteRelationship/DeleteRelationship/functionYaml/HdrSqs/template.ejs +26 -0
  89. package/src/TemplateManager/src/RelationshipPerAction/DeleteRelationship/DeleteRelationship/mainFunction/data.js +58 -0
  90. package/src/TemplateManager/src/RelationshipPerAction/DeleteRelationship/DeleteRelationship/mainFunction/template.ejs +329 -0
  91. package/src/TemplateManager/src/RelationshipPerAction/DeleteRelationship/DeleteRelationship/perAction/HdrApi/data.js +58 -0
  92. package/src/TemplateManager/src/RelationshipPerAction/DeleteRelationship/DeleteRelationship/perAction/HdrApi/template.ejs +119 -0
  93. package/src/TemplateManager/src/RelationshipPerAction/DeleteRelationship/DeleteRelationship/perAction/HdrDsq/data.js +59 -0
  94. package/src/TemplateManager/src/RelationshipPerAction/DeleteRelationship/DeleteRelationship/perAction/HdrDsq/template.ejs +167 -0
  95. package/src/TemplateManager/src/RelationshipPerAction/DeleteRelationship/DeleteRelationship/perAction/HdrInv/data.js +60 -0
  96. package/src/TemplateManager/src/RelationshipPerAction/DeleteRelationship/DeleteRelationship/perAction/HdrInv/template.ejs +107 -0
  97. package/src/TemplateManager/src/RelationshipPerAction/DeleteRelationship/DeleteRelationship/perAction/HdrSqs/data.js +60 -0
  98. package/src/TemplateManager/src/RelationshipPerAction/DeleteRelationship/DeleteRelationship/perAction/HdrSqs/template.ejs +146 -0
  99. package/src/TemplateManager/src/RelationshipPerAction/DeleteRelationship/DeleteRelationship/perAction/request.json +30 -0
  100. package/src/TemplateManager/src/RelationshipPerAction/DeleteRelationship/DeleteRelationship/sns-in-sqs/data.js +78 -0
  101. package/src/TemplateManager/src/RelationshipPerAction/DeleteRelationship/DeleteRelationship/sns-in-sqs/snsTemplate.ejs +59 -0
  102. package/src/TemplateManager/src/RelationshipPerAction/DeleteRelationship/DeleteRelationship/sns-in-sqs/sqsTemplate.ejs +43 -0
  103. package/src/TemplateManager/src/RelationshipPerAction/DeleteRelationship/DeleteRelationshipComplete/functionYaml/data.js +96 -0
  104. package/src/TemplateManager/src/RelationshipPerAction/DeleteRelationship/DeleteRelationshipComplete/functionYaml/template.ejs +33 -0
  105. package/src/TemplateManager/src/{UpdateRelationshipSchema/updateRelationship/perAction → RelationshipPerAction/DeleteRelationship/DeleteRelationshipComplete/handler}/HdrSqs/data.js +7 -5
  106. package/src/TemplateManager/src/RelationshipPerAction/DeleteRelationship/DeleteRelationshipComplete/handler/HdrSqs/request.json +0 -0
  107. package/src/TemplateManager/src/RelationshipPerAction/DeleteRelationship/DeleteRelationshipComplete/handler/HdrSqs/template.ejs +125 -0
  108. package/src/TemplateManager/src/RelationshipPerAction/DeleteRelationship/DeleteRelationshipComplete/mainFunction/data.js +56 -0
  109. package/src/TemplateManager/src/RelationshipPerAction/DeleteRelationship/DeleteRelationshipComplete/mainFunction/request.json +0 -0
  110. package/src/TemplateManager/src/RelationshipPerAction/DeleteRelationship/DeleteRelationshipComplete/mainFunction/template.ejs +137 -0
  111. package/src/TemplateManager/src/RelationshipPerAction/DeleteRelationship/DeleteRelationshipComplete/sns-in-sqs/data.js +72 -0
  112. package/src/TemplateManager/src/RelationshipPerAction/DeleteRelationship/DeleteRelationshipComplete/sns-in-sqs/request.json +0 -0
  113. package/src/TemplateManager/src/RelationshipPerAction/DeleteRelationship/DeleteRelationshipComplete/sns-in-sqs/template.ejs +47 -0
  114. package/src/TemplateManager/src/RelationshipPerAction/DeleteRelationship/DeleteRelationshipComplete/sns-out/data.js +72 -0
  115. package/src/TemplateManager/src/RelationshipPerAction/DeleteRelationship/DeleteRelationshipComplete/sns-out/request.json +0 -0
  116. package/src/TemplateManager/src/RelationshipPerAction/DeleteRelationship/DeleteRelationshipComplete/sns-out/template.ejs +10 -0
  117. package/src/TemplateManager/src/{UpdateRelationshipSchema → RelationshipPerAction/UpdateRelationshipSchema}/updateRalationshipComplete/functionYaml/data.js +6 -45
  118. package/src/TemplateManager/src/RelationshipPerAction/UpdateRelationshipSchema/updateRalationshipComplete/functionYaml/template.ejs +33 -0
  119. package/src/TemplateManager/src/{UpdateRelationshipSchema → RelationshipPerAction/UpdateRelationshipSchema}/updateRalationshipComplete/handler/HdrSqs/data.js +3 -3
  120. package/src/TemplateManager/src/RelationshipPerAction/UpdateRelationshipSchema/updateRalationshipComplete/handler/HdrSqs/request.json +0 -0
  121. package/src/TemplateManager/src/{UpdateRelationshipSchema → RelationshipPerAction/UpdateRelationshipSchema}/updateRalationshipComplete/mainFunction/data.js +2 -2
  122. package/src/TemplateManager/src/{UpdateRelationshipSchema → RelationshipPerAction/UpdateRelationshipSchema}/updateRalationshipComplete/sns-in-sqs/data.js +2 -2
  123. package/src/TemplateManager/src/{UpdateRelationshipSchema → RelationshipPerAction/UpdateRelationshipSchema}/updateRalationshipComplete/sns-out/data.js +3 -3
  124. package/src/TemplateManager/src/RelationshipPerAction/UpdateRelationshipSchema/updateRalationshipComplete/sns-out/template.ejs +10 -0
  125. package/src/TemplateManager/src/{UpdateRelationshipSchema → RelationshipPerAction/UpdateRelationshipSchema}/updateRelationship/functionYaml/HdrApi/data.js +6 -42
  126. package/src/TemplateManager/src/RelationshipPerAction/UpdateRelationshipSchema/updateRelationship/functionYaml/HdrApi/request.json +0 -0
  127. package/src/TemplateManager/src/RelationshipPerAction/UpdateRelationshipSchema/updateRelationship/functionYaml/HdrApi/template.ejs +33 -0
  128. package/src/TemplateManager/src/{UpdateRelationshipSchema → RelationshipPerAction/UpdateRelationshipSchema}/updateRelationship/functionYaml/HdrDsq/data.js +6 -42
  129. package/src/TemplateManager/src/RelationshipPerAction/UpdateRelationshipSchema/updateRelationship/functionYaml/HdrDsq/request.json +0 -0
  130. package/src/TemplateManager/src/RelationshipPerAction/UpdateRelationshipSchema/updateRelationship/functionYaml/HdrDsq/template.ejs +30 -0
  131. package/src/TemplateManager/src/{UpdateRelationshipSchema → RelationshipPerAction/UpdateRelationshipSchema}/updateRelationship/functionYaml/HdrInv/data.js +7 -42
  132. package/src/TemplateManager/src/RelationshipPerAction/UpdateRelationshipSchema/updateRelationship/functionYaml/HdrInv/request.json +0 -0
  133. package/src/TemplateManager/src/RelationshipPerAction/UpdateRelationshipSchema/updateRelationship/functionYaml/HdrInv/template.ejs +26 -0
  134. package/src/TemplateManager/src/{UpdateRelationshipSchema → RelationshipPerAction/UpdateRelationshipSchema}/updateRelationship/functionYaml/HdrSqs/data.js +7 -43
  135. package/src/TemplateManager/src/RelationshipPerAction/UpdateRelationshipSchema/updateRelationship/functionYaml/HdrSqs/request.json +0 -0
  136. package/src/TemplateManager/src/RelationshipPerAction/UpdateRelationshipSchema/updateRelationship/functionYaml/HdrSqs/template.ejs +26 -0
  137. package/src/TemplateManager/src/{UpdateRelationshipSchema → RelationshipPerAction/UpdateRelationshipSchema}/updateRelationship/mainFunction/data.js +3 -4
  138. package/src/TemplateManager/src/{UpdateRelationshipSchema → RelationshipPerAction/UpdateRelationshipSchema}/updateRelationship/mainFunction/template.ejs +14 -15
  139. package/src/TemplateManager/src/{UpdateRelationshipSchema/updateRelationship/perAction/HdrInv → RelationshipPerAction/UpdateRelationshipSchema/updateRelationship/perAction/HdrApi}/data.js +3 -6
  140. package/src/TemplateManager/src/{UpdateRelationshipSchema → RelationshipPerAction/UpdateRelationshipSchema}/updateRelationship/perAction/HdrDsq/data.js +3 -3
  141. package/src/TemplateManager/src/RelationshipPerAction/UpdateRelationshipSchema/updateRelationship/perAction/HdrInv/data.js +62 -0
  142. package/src/TemplateManager/src/RelationshipPerAction/UpdateRelationshipSchema/updateRelationship/perAction/HdrSqs/data.js +59 -0
  143. package/src/TemplateManager/src/{UpdateRelationshipSchema → RelationshipPerAction/UpdateRelationshipSchema}/updateRelationship/sns-in-sqs/data.js +4 -4
  144. package/src/TemplateManager/src/RelationshipPerAction/UpdateRelationshipSchema/updateRelationship/sns-in-sqs/snsTemplate.ejs +59 -0
  145. package/src/TemplateManager/src/RelationshipPerAction/UpdateRelationshipSchema/updateRelationship/sns-in-sqs/sqsTemplate.ejs +43 -0
  146. package/src/TemplateManager/src/{UpdateRelationshipSchema → RelationshipPerAction/UpdateRelationshipSchema}/updateRelationship/sns-out/data.js +2 -2
  147. package/src/TemplateManager/src/ResourceYaml/dynamodb/mainResourcePerObjectSchemaData.js +30 -3
  148. package/src/TemplateManager/src/ResourceYaml/dynamodb/template.ejs +1 -1
  149. package/src/TemplateManager/src/ResourceYaml/sns-in-sqs/defaultSnsInSqsForFindDataAndProcessLogical.js +6 -6
  150. package/src/TemplateManager/src/ResourceYaml/sns-out/defaultSnsOutForFindDataAndProcessLogical.js +2 -2
  151. package/src/TemplateManager/src/TranslateIdReq/ProcessingTranslateIds/functionYaml/data.js +5 -6
  152. package/src/TemplateManager/src/TranslateIdReq/ProcessingTranslateIds/functionYaml/template.ejs +1 -1
  153. package/src/TemplateManager/src/TranslateIdReq/ProcessingTranslateIds/handler/dataHdrDsq.js +1 -1
  154. package/src/TemplateManager/src/TranslateIdReq/ProcessingTranslateIds/handler/template.ejs +3 -5
  155. package/src/TemplateManager/src/TranslateIdReq/ProcessingTranslateIds/mainFunction/template.ejs +42 -39
  156. package/src/TemplateManager/src/TranslateIdReq/TranslateIds/functionYaml/HdrDsq/data.js +6 -31
  157. package/src/TemplateManager/src/TranslateIdReq/TranslateIds/functionYaml/HdrDsq/template.ejs +30 -0
  158. package/src/TemplateManager/src/TranslateIdReq/TranslateIds/functionYaml/HdrSqs/data.js +6 -31
  159. package/src/TemplateManager/src/TranslateIdReq/TranslateIds/functionYaml/HdrSqs/template.ejs +30 -0
  160. package/src/TemplateManager/src/TranslateIdReq/TranslateIds/handler/HdrDsq/data.js +2 -2
  161. package/src/TemplateManager/src/TranslateIdReq/TranslateIds/handler/HdrDsq/template.ejs +3 -5
  162. package/src/TemplateManager/src/TranslateIdReq/TranslateIds/handler/HdrSqs/data.js +1 -1
  163. package/src/TemplateManager/src/TranslateIdReq/TranslateIds/handler/HdrSqs/template.ejs +22 -34
  164. package/src/TemplateManager/src/TranslateIdReq/TranslateIds/mainFunction/template.ejs +5 -5
  165. package/src/TemplateManager/src/externalService/FunctionNameConfig/data.js +50 -0
  166. package/src/TemplateManager/src/externalService/FunctionNameConfig/template.ejs +14 -0
  167. package/src/TemplateManager/src/externalService/LambdaRole/data.js +94 -53
  168. package/src/TemplateManager/src/externalService/SnsTopicSubscriotions/data.js +13 -0
  169. package/src/TemplateManager/src/externalService/SnsTopicSubscriotions/template.ejs +19 -0
  170. package/src/TemplateManager/src/libs/Consts.js +41 -15
  171. package/src/TemplateManager/src/PerActionEndpoint/Handler/HdrApi/getTemplate.ejs +0 -76
  172. package/src/TemplateManager/src/PerActionEndpoint/Handler/HdrApi/updateTemplate.ejs +0 -67
  173. package/src/TemplateManager/src/PerActionEndpoint/Handler/HdrDsq/getTemplate.ejs +0 -105
  174. package/src/TemplateManager/src/PerActionEndpoint/Handler/HdrDsq/updateTemplate.ejs +0 -109
  175. package/src/TemplateManager/src/PerActionEndpoint/Handler/HdrInv/createTemplate.ejs +0 -75
  176. package/src/TemplateManager/src/PerActionEndpoint/Handler/HdrInv/getTemplate.ejs +0 -82
  177. package/src/TemplateManager/src/PerActionEndpoint/Handler/HdrInv/updateTemplate.ejs +0 -75
  178. package/src/TemplateManager/src/PerActionEndpoint/Handler/HdrSqs/getTemplate.ejs +0 -124
  179. package/src/TemplateManager/src/PerActionEndpoint/Handler/HdrSqs/updateTemplate.ejs +0 -133
  180. /package/src/TemplateManager/src/{CreateRelationship/createRelationshipComplete → OutPerActionComplete/OutDeleteComplete}/functionYaml/template.ejs +0 -0
  181. /package/src/TemplateManager/src/{CreateRelationship/createRelationshipComplete/sns-in-sqs → OutPerActionComplete/OutDeleteComplete/sqs-in-sns}/template.ejs +0 -0
  182. /package/src/TemplateManager/src/{CreateRelationship → RelationshipPerAction/CreateRelationship}/createRelationship/perAction/HdrApi/request.json +0 -0
  183. /package/src/TemplateManager/src/{CreateRelationship → RelationshipPerAction/CreateRelationship}/createRelationship/perAction/HdrApi/template.ejs +0 -0
  184. /package/src/TemplateManager/src/{CreateRelationship → RelationshipPerAction/CreateRelationship}/createRelationship/perAction/HdrDsq/request.json +0 -0
  185. /package/src/TemplateManager/src/{CreateRelationship → RelationshipPerAction/CreateRelationship}/createRelationship/perAction/HdrDsq/template.ejs +0 -0
  186. /package/src/TemplateManager/src/{CreateRelationship → RelationshipPerAction/CreateRelationship}/createRelationship/perAction/HdrInv/request.json +0 -0
  187. /package/src/TemplateManager/src/{CreateRelationship → RelationshipPerAction/CreateRelationship}/createRelationship/perAction/HdrInv/template.ejs +0 -0
  188. /package/src/TemplateManager/src/{CreateRelationship → RelationshipPerAction/CreateRelationship}/createRelationship/perAction/HdrSqs/request.json +0 -0
  189. /package/src/TemplateManager/src/{CreateRelationship → RelationshipPerAction/CreateRelationship}/createRelationship/perAction/HdrSqs/template.ejs +0 -0
  190. /package/src/TemplateManager/src/{CreateRelationship → RelationshipPerAction/CreateRelationship}/createRelationship/perAction/request.json +0 -0
  191. /package/src/TemplateManager/src/{CreateRelationship → RelationshipPerAction/CreateRelationship}/createRelationshipComplete/functionYaml/request.json +0 -0
  192. /package/src/TemplateManager/src/{CreateRelationship → RelationshipPerAction/CreateRelationship}/createRelationshipComplete/handler/HdrSqs/request.json +0 -0
  193. /package/src/TemplateManager/src/{CreateRelationship → RelationshipPerAction/CreateRelationship}/createRelationshipComplete/handler/HdrSqs/template.ejs +0 -0
  194. /package/src/TemplateManager/src/{CreateRelationship → RelationshipPerAction/CreateRelationship}/createRelationshipComplete/mainFunction/request.json +0 -0
  195. /package/src/TemplateManager/src/{CreateRelationship → RelationshipPerAction/CreateRelationship}/createRelationshipComplete/mainFunction/template.ejs +0 -0
  196. /package/src/TemplateManager/src/{CreateRelationship → RelationshipPerAction/CreateRelationship}/createRelationshipComplete/sns-in-sqs/request.json +0 -0
  197. /package/src/TemplateManager/src/{CreateRelationship → RelationshipPerAction/CreateRelationship}/createRelationshipComplete/sns-out/request.json +0 -0
  198. /package/src/TemplateManager/src/{UpdateRelationshipSchema/updateRalationshipComplete/handler/HdrSqs → RelationshipPerAction/DeleteRelationship/DeleteRelationship/perAction/HdrApi}/request.json +0 -0
  199. /package/src/TemplateManager/src/{UpdateRelationshipSchema/updateRelationship/functionYaml/HdrApi → RelationshipPerAction/DeleteRelationship/DeleteRelationship/perAction/HdrDsq}/request.json +0 -0
  200. /package/src/TemplateManager/src/{UpdateRelationshipSchema/updateRelationship/functionYaml/HdrDsq → RelationshipPerAction/DeleteRelationship/DeleteRelationship/perAction/HdrInv}/request.json +0 -0
  201. /package/src/TemplateManager/src/{UpdateRelationshipSchema/updateRelationship/functionYaml/HdrInv → RelationshipPerAction/DeleteRelationship/DeleteRelationship/perAction/HdrSqs}/request.json +0 -0
  202. /package/src/TemplateManager/src/{UpdateRelationshipSchema/updateRelationship/functionYaml/HdrSqs → RelationshipPerAction/DeleteRelationship/DeleteRelationshipComplete/functionYaml}/request.json +0 -0
  203. /package/src/TemplateManager/src/{UpdateRelationshipSchema → RelationshipPerAction/UpdateRelationshipSchema}/updateRalationshipComplete/functionYaml/request.json +0 -0
  204. /package/src/TemplateManager/src/{UpdateRelationshipSchema → RelationshipPerAction/UpdateRelationshipSchema}/updateRalationshipComplete/handler/HdrSqs/template.ejs +0 -0
  205. /package/src/TemplateManager/src/{UpdateRelationshipSchema → RelationshipPerAction/UpdateRelationshipSchema}/updateRalationshipComplete/mainFunction/request.json +0 -0
  206. /package/src/TemplateManager/src/{UpdateRelationshipSchema → RelationshipPerAction/UpdateRelationshipSchema}/updateRalationshipComplete/mainFunction/template.ejs +0 -0
  207. /package/src/TemplateManager/src/{UpdateRelationshipSchema → RelationshipPerAction/UpdateRelationshipSchema}/updateRalationshipComplete/sns-in-sqs/request.json +0 -0
  208. /package/src/TemplateManager/src/{UpdateRelationshipSchema → RelationshipPerAction/UpdateRelationshipSchema}/updateRalationshipComplete/sns-in-sqs/template.ejs +0 -0
  209. /package/src/TemplateManager/src/{UpdateRelationshipSchema → RelationshipPerAction/UpdateRelationshipSchema}/updateRalationshipComplete/sns-out/request.json +0 -0
  210. /package/src/TemplateManager/src/{UpdateRelationshipSchema → RelationshipPerAction/UpdateRelationshipSchema}/updateRelationship/mainFunction/request.json +0 -0
  211. /package/src/TemplateManager/src/{UpdateRelationshipSchema → RelationshipPerAction/UpdateRelationshipSchema}/updateRelationship/perAction/HdrApi/request.json +0 -0
  212. /package/src/TemplateManager/src/{UpdateRelationshipSchema → RelationshipPerAction/UpdateRelationshipSchema}/updateRelationship/perAction/HdrApi/template.ejs +0 -0
  213. /package/src/TemplateManager/src/{UpdateRelationshipSchema → RelationshipPerAction/UpdateRelationshipSchema}/updateRelationship/perAction/HdrDsq/request.json +0 -0
  214. /package/src/TemplateManager/src/{UpdateRelationshipSchema → RelationshipPerAction/UpdateRelationshipSchema}/updateRelationship/perAction/HdrDsq/template.ejs +0 -0
  215. /package/src/TemplateManager/src/{UpdateRelationshipSchema → RelationshipPerAction/UpdateRelationshipSchema}/updateRelationship/perAction/HdrInv/request.json +0 -0
  216. /package/src/TemplateManager/src/{UpdateRelationshipSchema → RelationshipPerAction/UpdateRelationshipSchema}/updateRelationship/perAction/HdrInv/template.ejs +0 -0
  217. /package/src/TemplateManager/src/{UpdateRelationshipSchema → RelationshipPerAction/UpdateRelationshipSchema}/updateRelationship/perAction/HdrSqs/request.json +0 -0
  218. /package/src/TemplateManager/src/{UpdateRelationshipSchema → RelationshipPerAction/UpdateRelationshipSchema}/updateRelationship/perAction/HdrSqs/template.ejs +0 -0
  219. /package/src/TemplateManager/src/{UpdateRelationshipSchema → RelationshipPerAction/UpdateRelationshipSchema}/updateRelationship/perAction/request.json +0 -0
  220. /package/src/TemplateManager/src/{UpdateRelationshipSchema → RelationshipPerAction/UpdateRelationshipSchema}/updateRelationship/sns-in-sqs/request.json +0 -0
  221. /package/src/TemplateManager/src/{UpdateRelationshipSchema → RelationshipPerAction/UpdateRelationshipSchema}/updateRelationship/sns-out/request.json +0 -0
@@ -0,0 +1,30 @@
1
+ <%_ const join = require('path').join; _%>
2
+ <%- firstLetterUpperCase(functionNameConfig) %>:
3
+ handler: <%- join(resourceLocation, `${firstLetterUpperCase(functionName)}_${firstLetterUpperCase(handlerType)}.main`)%>
4
+ name: ${self:custom.iz_resourcePrefix}<%- firstLetterUpperCase(functionName) %><%- firstLetterUpperCase(handlerType) %>
5
+ events:
6
+ - sqs:
7
+ arn: arn:aws:sqs:${self:custom.iz_region}:${self:custom.iz_accountId}:${self:custom.iz_resourcePrefix}<%- firstLetterUpperCase(functionName) %><%- firstLetterUpperCase(handlerType) %>
8
+ batchSize: 10
9
+ iamRoleStatements:
10
+ <%_ additionalResourcePermission.forEach(resourcePermission => { _%>
11
+ - Effect: <%- resourcePermission.effect %>
12
+ Action:
13
+ <%_ Object.keys(resourcePermission.action).forEach(resourcePerAction => { _%>
14
+ <%_ resourcePermission.action[resourcePerAction].forEach(permission => { _%>
15
+ - <%- resourcePerAction %>:<%- permission %>
16
+ <%_}) _%>
17
+ <%_ }) _%>
18
+ Resource:
19
+ <%_ resourcePermission.resource.forEach(resource => { _%>
20
+ - "<%- resource %>"
21
+ <%_ }) _%>
22
+ <%_}) _%>
23
+ #<#<%- functionName %><%- handlerType %>IamRole#>
24
+ #<#/<%- functionName %><%- handlerType %>IamRole#>
25
+ <%_ function firstLetterUpperCase(text){
26
+ return text.charAt(0).toUpperCase() + text.slice(1)
27
+ } _%>
28
+ <%_ function firstLetterLowerCase(str) {
29
+ return str.charAt(0).toLowerCase() + str.slice(1)
30
+ } _%>
@@ -22,35 +22,9 @@ const fs = require('fs');
22
22
  const { ACTIONS, HANDLER, STORAGE_TYPES } = require('@izara_project/izara-core-library-service-schemas/src/Consts')
23
23
 
24
24
  const { firstLetterLowerCase: lowerCase, firstLetterUpperCase: upperCase } = require("../../../../../../MainLibs/src/Utils")
25
- const { DEFAULT_HANDLER_PER_ACTION, createIamRole, resourceNames, RESOURCE_CLASSES, DEFAULT_LAMBDA_ROLE_PER_ACTION, SQS_RESOURCE, SOURCE_PATH, SAVE_FILE_NAME, FUNCTION_NAME, externalResourceName } = require("../../../../libs/Consts");
25
+ const { DEFAULT_HANDLER_PER_ACTION, createIamRole, resourceNames, RESOURCE_CLASSES, DEFAULT_LAMBDA_ROLE_PER_ACTION, SQS_RESOURCE, SOURCE_PATH, SAVE_FILE_NAME, FUNCTION_NAME, externalResourceName, defaultIamRolePerAction, SNS_RESOURCE, DYNAMO_RESOURCE, shortNameHandler } = require("../../../../libs/Consts");
26
26
 
27
- const templatePath = path.join(__dirname, '../../../../PerActionEndpoint/FunctionYaml/HdrDsq/template.ejs');
28
-
29
- function defaultIamRolePerAction() {
30
- let defaultIamRole = [];
31
-
32
- defaultIamRole.push(
33
- createIamRole(
34
- {
35
- [RESOURCE_CLASSES.s3]: ["GetObject", "GetObjectVersion"],
36
- },
37
- [
38
- resourceNames(RESOURCE_CLASSES.s3, "object-schema/perServiceSchemas/*"),
39
- resourceNames(RESOURCE_CLASSES.s3, "object-schema/serviceConfig/ServiceNameConfig.json"),
40
- resourceNames(RESOURCE_CLASSES.s3, "object-schema/serviceConfig/GraphServerTags.json")
41
- ]
42
- ),
43
- createIamRole(
44
- {
45
- [RESOURCE_CLASSES.s3]: ["ListBucket"]
46
- },
47
- [
48
- resourceNames(RESOURCE_CLASSES.s3, "object-schema")
49
- ]
50
- )
51
- )
52
- return defaultIamRole
53
- }
27
+ const templatePath = path.join(__dirname, './template.ejs');
54
28
 
55
29
  /**
56
30
  * create data for function yaml for translateIds HdrSqs
@@ -76,7 +50,7 @@ function createTranslateIdFunctionYmlHdrSqs(srcPath) {
76
50
  ],
77
51
  [RESOURCE_CLASSES.sns]:
78
52
  [
79
- "Publish", "Subscribe"
53
+ SNS_RESOURCE.publish, SNS_RESOURCE.subscription
80
54
  ]
81
55
  },
82
56
  [
@@ -88,7 +62,7 @@ function createTranslateIdFunctionYmlHdrSqs(srcPath) {
88
62
  ),
89
63
  createIamRole(
90
64
  {
91
- [RESOURCE_CLASSES.dynamoDbTable]: ["GetItem", "UpdateItem"]
65
+ [RESOURCE_CLASSES.dynamoDbTable]: [DYNAMO_RESOURCE.getItem, DYNAMO_RESOURCE.updateItem]
92
66
  },
93
67
  [
94
68
  resourceNames(RESOURCE_CLASSES.dynamoDbTable, "TranslateIdsCacheMain")
@@ -102,7 +76,8 @@ function createTranslateIdFunctionYmlHdrSqs(srcPath) {
102
76
  functionName,
103
77
  handlerType,
104
78
  resourceLocation: SOURCE_PATH.resourceLocationTranslateId,
105
- additionalResourcePermission
79
+ additionalResourcePermission,
80
+ functionNameConfig: upperCase(functionName) + upperCase(shortNameHandler(handlerType))
106
81
  },
107
82
  setting: {
108
83
  savePath: path.join(srcPath, SOURCE_PATH.appYaml),
@@ -0,0 +1,30 @@
1
+ <%_ const join = require('path').join; _%>
2
+ <%- firstLetterUpperCase(functionNameConfig) %>:
3
+ handler: <%- join(resourceLocation, `${firstLetterUpperCase(functionName)}_${firstLetterUpperCase(handlerType)}.main`)%>
4
+ name: ${self:custom.iz_resourcePrefix}<%- firstLetterUpperCase(functionName) %><%- firstLetterUpperCase(handlerType) %>
5
+ events:
6
+ - sqs:
7
+ arn: arn:aws:sqs:${self:custom.iz_region}:${self:custom.iz_accountId}:${self:custom.iz_resourcePrefix}<%- firstLetterUpperCase(functionName) %><%- firstLetterUpperCase(handlerType) %>
8
+ batchSize: 10
9
+ iamRoleStatements:
10
+ <%_ additionalResourcePermission.forEach(resourcePermission => { _%>
11
+ - Effect: <%- resourcePermission.effect %>
12
+ Action:
13
+ <%_ Object.keys(resourcePermission.action).forEach(resourcePerAction => { _%>
14
+ <%_ resourcePermission.action[resourcePerAction].forEach(permission => { _%>
15
+ - <%- resourcePerAction %>:<%- permission %>
16
+ <%_ }) _%>
17
+ <%_ }) _%>
18
+ Resource:
19
+ <%_ resourcePermission.resource.forEach(resource => { _%>
20
+ - "<%- resource %>"
21
+ <%_ }) _%>
22
+ <%_}) _%>
23
+ #<#<%- functionName %><%- handlerType %>IamRole#>
24
+ #<#/<%- functionName %><%- handlerType %>IamRole#>
25
+ <%_ function firstLetterUpperCase(text){
26
+ return text.charAt(0).toUpperCase() + text.slice(1)
27
+ } _%>
28
+ <%_ function firstLetterLowerCase(str) {
29
+ return str.charAt(0).toLowerCase() + str.slice(1)
30
+ } _%>
@@ -21,7 +21,7 @@ const fs = require('fs');
21
21
 
22
22
  const { ACTIONS, HANDLER } = require('@izara_project/izara-core-library-service-schemas/src/Consts')
23
23
 
24
- const { firstLetterLowerCase: lowerCase, firstLetterUpperCase: upperCase, firstLetterUpperCase } = require("../../../../../../MainLibs/src/Utils")
24
+ const { firstLetterLowerCase: lowerCase, firstLetterUpperCase: upperCase } = require("../../../../../../MainLibs/src/Utils")
25
25
  const { DEFAULT_HANDLER_PER_ACTION, SOURCE_PATH, SAVE_FILE_NAME, FUNCTION_NAME } = require("../../../../libs/Consts");
26
26
 
27
27
 
@@ -46,7 +46,7 @@ function createSourceParamsTranslateIdHandlerDsq(srcPath) {
46
46
  templateData: {
47
47
  queueName,
48
48
  functionName,
49
- handlerType
49
+ handlerType,
50
50
  },
51
51
  setting: {
52
52
  savePath: path.join(srcPath, SOURCE_PATH.translateIdsRequestFile),
@@ -29,9 +29,7 @@ const perRecordsValidatorSchema = {
29
29
  type: "object",
30
30
  required: [
31
31
  "fromObjType",
32
- // "fromTypeId",
33
32
  "toObjType",
34
- // "toTypeId",
35
33
  "relType",
36
34
  ],
37
35
  properties: {
@@ -46,8 +44,8 @@ const perRecordsValidatorSchema = {
46
44
  fromTypeId: {
47
45
  type: "string",
48
46
  },
49
- concatinateIdentifier: {
50
- type: "string",
47
+ identifiers: {
48
+ type: "array",
51
49
  },
52
50
  fromTable: {
53
51
  type: "string",
@@ -117,7 +115,7 @@ module.exports.main = middleware.wrap(async (event, context, callback) => {
117
115
  // add argument (to invoke lambda) to passOnProperties[]
118
116
  passOnProperties.push(record.body.Message.fromObjType)
119
117
  passOnProperties.push(record.body.Message.fromTypeId)
120
- passOnProperties.push(record.body.Message.concatinateIdentifier)
118
+ passOnProperties.push(record.body.Message.identifiers)
121
119
  passOnProperties.push(record.body.Message.fromTable)
122
120
  passOnProperties.push(record.body.Message.fromPartitionKeyId)
123
121
  passOnProperties.push(record.body.Message.fromPartitionKeyFieldName)
@@ -45,7 +45,7 @@ function createTranslateIdsHandlerSqs(srcPath) {
45
45
  templateData: {
46
46
  functionName,
47
47
  handler,
48
- queueName
48
+ queueName,
49
49
  },
50
50
  setting: {
51
51
  savePath: path.join(srcPath, SOURCE_PATH.translateIdsRequestFile),
@@ -25,7 +25,7 @@ const {
25
25
  const Logger = require('@izara_project/izara-core-library-logger');
26
26
  const recordHandlerSharedLib = require('@izara_project/izara-shared').recordHandlerSharedLib
27
27
 
28
- const <%- functionName %> = require('./<%- firstLetterUpperCase(functionName) %>_Main');
28
+ const translateIdsRequest = require('./TranslateIdsRequest_Main');
29
29
 
30
30
  middleware.setValidatorSchema(recordHandlerSharedLib.baseValidatorSchema());
31
31
 
@@ -34,9 +34,7 @@ let validatorSchema = {
34
34
  type: "object",
35
35
  required: [
36
36
  "fromObjType",
37
- // "fromTypeId",
38
37
  "toObjType",
39
- // "toTypeId",
40
38
  "relType",
41
39
  ],
42
40
  properties: {
@@ -51,8 +49,8 @@ let validatorSchema = {
51
49
  fromTypeId: {
52
50
  type: "string",
53
51
  },
54
- concatinateIdentifier: {
55
- type: "string",
52
+ identifiers: {
53
+ type: "array",
56
54
  },
57
55
  fromTable: {
58
56
  type: "string",
@@ -117,7 +115,7 @@ module.exports.main = middleware.wrap(async (event, context, callback) => {
117
115
  // --- validate message (and MessageAttributes)
118
116
  await recordHandlerSharedLib.validateRecord(
119
117
  record, // one record will send to mainFunction
120
- "<%-firstLetterUpperCase(queueName) %>", // queue name that need to retry or send to dlq
118
+ "TranslateIdsRequestHdrSqs", // queue name that need to retry or send to dlq
121
119
  validatorSchema, // schema for record.Message
122
120
  // messageAttributeValidatorSchema // ----- for msgAttr default is null -> do not send this parameter if not want to validate msgAtt
123
121
  );
@@ -125,7 +123,7 @@ module.exports.main = middleware.wrap(async (event, context, callback) => {
125
123
  // add argument (to invoke lambda) to passOnProperties[]
126
124
  passOnProperties.push(record.body.Message.fromObjType)
127
125
  passOnProperties.push(record.body.Message.fromTypeId)
128
- passOnProperties.push(record.body.Message.concatinateIdentifier)
126
+ passOnProperties.push(record.body.Message.identifiers)
129
127
  passOnProperties.push(record.body.Message.fromTable)
130
128
  passOnProperties.push(record.body.Message.fromPartitionKeyId)
131
129
  passOnProperties.push(record.body.Message.fromPartitionKeyFieldName)
@@ -142,34 +140,24 @@ module.exports.main = middleware.wrap(async (event, context, callback) => {
142
140
  // call recordHandlerSharedLib.recordHandler with 3 parameters and return promise(resolve)
143
141
  let recordPromise = recordHandlerSharedLib.recordHandler(
144
142
  record, // one record will send to mainFunction
145
- <%- functionName %>.<%- functionName %>, // mainFunction that need to invoke.
146
- "<%-firstLetterUpperCase(queueName) %>", // queue name that need to retry or send to dlq
143
+ translateIdsRequest.translateIdsRequest, // mainFunction that need to invoke.
144
+ "TranslateIdsRequestHdrSqs", // queue name that need to retry or send to dlq
147
145
  passOnProperties, // all parameters that mainFunction needed.
148
- );
149
- record._izContext.logger.debug('after recordPromise in handler');
150
- recordPromises.push(recordPromise); // push promise to recordPromises
151
- })) //end record
152
-
153
- Logger.debug('before Promise.all(recordPromises) in handler');
154
- try {
155
- await Promise.all(recordPromises); // await all promises
156
- return event.Records // return all for local test
157
- } catch {
158
- Logger.debug('Promise.all(recordPromises) in handler threw error (at least one record did no resolve)');
159
- }
160
- Logger.debug('after Promise.all(recordPromises) in handler');
146
+ );
147
+ record._izContext.logger.debug('after recordPromise in handler');
148
+ recordPromises.push(recordPromise); // push promise to recordPromises
149
+ })) //end record
150
+
151
+ Logger.debug('before Promise.all(recordPromises) in handler');
152
+ try {
153
+ await Promise.all(recordPromises); // await all promises
154
+ return event.Records // return all for local test
155
+ } catch {
156
+ Logger.debug('Promise.all(recordPromises) in handler threw error (at least one record did no resolve)');
157
+ }
158
+ Logger.debug('after Promise.all(recordPromises) in handler');
161
159
  } catch (err) {
162
- Logger.error('Unhandled Error, <%- firstLetterUpperCase(functionName) %>:', err);
160
+ Logger.error('Unhandled Error, TranslateIdsRequest:', err);
163
161
  throw (err);
164
162
  }
165
- })
166
-
167
-
168
-
169
-
170
- <%_ function firstLetterUpperCase(text) {
171
- return text.charAt(0).toUpperCase() + text.slice(1)
172
- } _%>
173
- <%_ function firstLetterLowerCase(str) {
174
- return str.charAt(0).toLowerCase() + str.slice(1)
175
- } _%>
163
+ })
@@ -39,7 +39,7 @@ const sqs = externalRequest.sqs
39
39
  * translate ids from one object to another related object
40
40
  * @param {Object} _izContext
41
41
  * @param {object} fromObjType - the type of object we are translating ids from
42
- * @param {string} concatinateIdentifier
42
+ * @param {Object[]} identifiers
43
43
  * @param {string} fromTypeId - the type of object we are translating ids from
44
44
  * @param {string} fromTable - table name
45
45
  * @param {string} fromPartitionKeyId - partition key value
@@ -59,7 +59,7 @@ module.exports.translateIdsRequest = async (
59
59
  _izContext,
60
60
  fromObjType,
61
61
  fromTypeId,
62
- concatinateIdentifier,
62
+ identifiers,
63
63
  fromTable,
64
64
  fromPartitionKeyId,
65
65
  fromPartitionKeyFieldName,
@@ -81,7 +81,7 @@ module.exports.translateIdsRequest = async (
81
81
  _izContext.logger.debug("=== Function:TranslateIdsRequest ===", {
82
82
  fromObjType: fromObjType,
83
83
  fromTypeId: fromTypeId,
84
- concatinateIdentifier: concatinateIdentifier,
84
+ identifiers: identifiers,
85
85
  fromTable: fromTable,
86
86
  fromPartitionKeyId: fromPartitionKeyId,
87
87
  fromPartitionKeyFieldName: fromPartitionKeyFieldName,
@@ -103,7 +103,7 @@ module.exports.translateIdsRequest = async (
103
103
  let [translateIdsCacheMainStatus, translateIdsCacheId, translateIdsCacheMain] = await translateIdsSharedLib.translateIdsCheckCacheMain(
104
104
  _izContext,
105
105
  fromObjType,
106
- concatinateIdentifier,
106
+ identifiers,
107
107
  fromTable,
108
108
  fromPartitionKeyId,
109
109
  fromPartitionKeyFieldName,
@@ -126,7 +126,7 @@ module.exports.translateIdsRequest = async (
126
126
  MessageBody: JSON.stringify({
127
127
  fromObjType: fromObjType,
128
128
  fromTypeId: fromTypeId,
129
- concatinateIdentifier: concatinateIdentifier,
129
+ identifiers: identifiers,
130
130
  fromTable: fromTable,
131
131
  fromPartitionKeyId: fromPartitionKeyId,
132
132
  fromPartitionKeyFieldName: fromPartitionKeyFieldName,
@@ -0,0 +1,50 @@
1
+ /*
2
+ Copyright (C) 2020 Sven Mason <http://izara.io>
3
+
4
+ This program is free software: you can redistribute it and/or modify
5
+ it under the terms of the GNU Affero General Public License as
6
+ published by the Free Software Foundation, either version 3 of the
7
+ License, or (at your option) any later version.
8
+
9
+ This program is distributed in the hope that it will be useful,
10
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
11
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12
+ GNU Affero General Public License for more details.
13
+
14
+ You should have received a copy of the GNU Affero General Public License
15
+ along with this program. If not, see <http://www.gnu.org/licenses/>.
16
+ */
17
+
18
+ 'use strict';
19
+ const path = require('path');
20
+ const fs = require('fs');
21
+
22
+ const { firstLetterLowerCase: lowerCase, firstLetterUpperCase: upperCase } = require("../../../../MainLibs/src/Utils");
23
+ const { SOURCE_PATH } = require('../../libs/Consts');
24
+ const templatePath = path.join(__dirname, "./template.ejs");
25
+
26
+
27
+ function data(_izContext, createSourceParams, srcPath) {
28
+ // console.log("createSourceParams in Data", createSourceParams);
29
+ const functionNameConfigs = new Set();
30
+ for (let { templatePath, templateData, setting } of createSourceParams) {
31
+ if (templateData.functionNameConfig !== undefined) {
32
+ functionNameConfigs.add(templateData.functionNameConfig)
33
+ }
34
+ }
35
+
36
+ return {
37
+ templatePath: templatePath,
38
+ templateData: {
39
+ functionNameConfigs: functionNameConfigs
40
+ },
41
+ setting: {
42
+ savePath: path.join(srcPath, SOURCE_PATH.appYaml),
43
+ saveFileName: "FunctionNameConfig",
44
+ fileExtension: ".yml",
45
+ isAppend: true
46
+ }
47
+ }
48
+ }
49
+
50
+ module.exports = data;
@@ -0,0 +1,14 @@
1
+ # for createIamRole
2
+
3
+ <% functionNameConfigs.forEach(functionNameConfig => { _%>
4
+ - ${self:custom.iz_prefixIamRole}<%- firstLetterUpperCase(functionNameConfig) %>${self:custom.iz_suffixIamRole}
5
+ <% }) _%>
6
+
7
+ # for createIntTest
8
+ <% functionNameConfigs.forEach(functionNameConfig => { _%>
9
+ "<%- firstLetterUpperCase(functionNameConfig) %>",
10
+ <% }) _%>
11
+
12
+ <%_function firstLetterUpperCase(text) {
13
+ return text.charAt(0).toUpperCase() + text.slice(1)
14
+ } %>
@@ -22,10 +22,11 @@ const fs = require('fs');
22
22
  const { ACTIONS, HANDLER, STORAGE_TYPES } = require('@izara_project/izara-core-library-service-schemas/src/Consts')
23
23
  const { getGraphServiceNameFromGraphServerTagWithCache } = require('@izara_project/izara-core-library-service-schemas/src/ServiceConfig')
24
24
 
25
- const { firstLetterLowerCase: lowerCase, firstLetterUpperCase: upperCase } = require("../../../../MainLibs/src/Utils")
25
+ const { firstLetterLowerCase: lowerCase, firstLetterUpperCase: upperCase, renameObjectType } = require("../../../../MainLibs/src/Utils")
26
26
  const {
27
27
  DEFAULT_HANDLER_PER_ACTION, createIamRole, resourceNames, RESOURCE_CLASSES, DEFAULT_LAMBDA_ROLE_PER_ACTION, SOURCE_PATH, externalResourceName, externalResourceSns, FUNCTION_NAME, getGraphServiceNameFromAllRelSchema, SAVE_FILE_NAME, getComplexFilterServiceTag,
28
- LAMBDA_RESOURCE, SNS_RESOURCE, DYNAMO_RESOURCE, getGraphServiceNameFromObjectSchema } = require("../../libs/Consts");
28
+ LAMBDA_RESOURCE, SNS_RESOURCE, DYNAMO_RESOURCE, getGraphServiceNameFromObjectSchema,
29
+ shortNameHandler } = require("../../libs/Consts");
29
30
  // const templatePath = path.join(__dirname, "./template.ejs");
30
31
  const templatePath = path.join(__dirname, "./template.ejs");
31
32
  const { getAllLocalRelationshipSchemas } = require('@izara_project/izara-core-library-service-schemas/src/GetObjectSchema')
@@ -36,17 +37,18 @@ const createExternalLambdaRole = async (_izContext, allObjSchemas, allRelSchemas
36
37
  const externalLambdaIamRoleArray = [];
37
38
  for (const objectSchema of allObjSchemas) {
38
39
 
40
+ const newObjectSchema = renameObjectType(objectSchema, srcPath)
39
41
  // per action external lambda role
40
42
  for (const action of Object.values(ACTIONS)) {
41
43
  if (objectSchema.overWriteHandlers?.[action]) {
42
44
  for (const handler of objectSchema.overWriteHandlers[action]) {
43
- const externalLambdaIamRole = await externalLambdaIamRoleDataPerAction(_izContext, objectSchema, action, handler)
45
+ const externalLambdaIamRole = await externalLambdaIamRoleDataPerAction(_izContext, newObjectSchema, action, handler)
44
46
  externalLambdaIamRole && externalLambdaIamRoleArray.push(externalLambdaIamRole);
45
47
  }
46
48
 
47
49
  } else {
48
50
  for (const handler of DEFAULT_HANDLER_PER_ACTION[action]) {
49
- const externalLambdaIamRole = await externalLambdaIamRoleDataPerAction(_izContext, objectSchema, action, handler)
51
+ const externalLambdaIamRole = await externalLambdaIamRoleDataPerAction(_izContext, newObjectSchema, action, handler)
50
52
  externalLambdaIamRole && externalLambdaIamRoleArray.push(externalLambdaIamRole);
51
53
  }
52
54
  }
@@ -59,19 +61,19 @@ const createExternalLambdaRole = async (_izContext, allObjSchemas, allRelSchemas
59
61
 
60
62
  // updateRelationship external lambda role
61
63
  for (const handler of Object.values(HANDLER)) {
62
- if (handler !== HANDLER.hdrApi) {
63
- const externalLambdaIamRoleUpdateRelationship = await externalLambdaIamRoleDataUpdateRelationshipSchema(_izContext, allRelSchemas, handler);
64
- externalLambdaIamRoleUpdateRelationship && externalLambdaIamRoleArray.push(externalLambdaIamRoleUpdateRelationship)
65
-
66
- }
64
+ const externalLambdaIamRoleUpdateRelationship = await externalLambdaIamRoleDataUpdateRelationshipSchema(_izContext, allRelSchemas, handler);
65
+ externalLambdaIamRoleUpdateRelationship && externalLambdaIamRoleArray.push(externalLambdaIamRoleUpdateRelationship)
67
66
  }
68
67
 
69
68
  // CreateRelationship external lambda role
70
69
  for (const handler of Object.values(HANDLER)) {
71
- if (handler !== HANDLER.hdrApi) {
72
- const externalLambdaIamRoleCreateRelationship = await externalLambdaIamRoleDataCreateRelationshipSchema(_izContext, allRelSchemas, handler);
73
- externalLambdaIamRoleCreateRelationship && externalLambdaIamRoleArray.push(externalLambdaIamRoleCreateRelationship)
74
- }
70
+ const externalLambdaIamRoleCreateRelationship = await externalLambdaIamRoleDataCreateRelationshipSchema(_izContext, allRelSchemas, handler);
71
+ externalLambdaIamRoleCreateRelationship && externalLambdaIamRoleArray.push(externalLambdaIamRoleCreateRelationship)
72
+ }
73
+
74
+ for (const handler of Object.values(HANDLER)) {
75
+ const externalLambdaIamRoleDeleteRelationship = await externalLambdaIamRoleDataDeleteRelationshipSchema(_izContext, allRelSchemas, handler);
76
+ externalLambdaIamRoleDeleteRelationship && externalLambdaIamRoleArray.push(externalLambdaIamRoleDeleteRelationship)
75
77
  }
76
78
 
77
79
  // findData external lambda role
@@ -93,7 +95,7 @@ const createExternalLambdaRole = async (_izContext, allObjSchemas, allRelSchemas
93
95
  }
94
96
 
95
97
 
96
- console.log("createSourceArrayIamRole", JSON.stringify(externalLambdaIamRoleArray))
98
+ // console.log("createSourceArrayIamRole", JSON.stringify(externalLambdaIamRoleArray))
97
99
  // return externalLambdaIamRoleArray
98
100
 
99
101
  return {
@@ -109,57 +111,74 @@ const createExternalLambdaRole = async (_izContext, allObjSchemas, allRelSchemas
109
111
  }
110
112
 
111
113
  async function externalLambdaIamRoleDataPerAction(_izContext, objectSchema, action, handler) {
112
- const objectType = objectSchema.objectType;
114
+ const objectType = objectSchema?.shortNameObjectType ? objectSchema?.shortNameObjectType : objectSchema.objectType;
113
115
  const additionalResourcePermission = [];
114
116
  const graphServiceNames = [];
115
117
  for (const storgaeResource of Object.values(objectSchema.storageResources)) {
116
118
  if (storgaeResource.storageType === STORAGE_TYPES.graph) {
117
119
  let getGraphServiceName = await getGraphServiceNameFromGraphServerTagWithCache(_izContext, storgaeResource.graphServerTag)
118
120
  if (!graphServiceNames.includes(getGraphServiceName)) {
119
- graphServiceNames.push(getGraphServiceName)
121
+ getGraphServiceName && graphServiceNames.push(getGraphServiceName)
120
122
  }
121
123
  }
122
124
  }
123
125
 
124
- let functionName = upperCase(objectType) + upperCase(action) + upperCase(handler);
125
126
 
126
- if (action === ACTIONS.get) {
127
- additionalResourcePermission.push(
128
- createIamRole(
129
- { [RESOURCE_CLASSES.lambda]: [LAMBDA_RESOURCE.invokeFunction] },
130
- graphServiceNames.map(graphServiceName =>
131
- externalResourceName(RESOURCE_CLASSES.lambda, "GetNodeV2HdrInv", graphServiceName),
127
+ // let functionName = upperCase(objectType) + upperCase(action) + upperCase(shortNameHandler(handler));
128
+ let functionName = upperCase(objectType) + upperCase(action) + upperCase(shortNameHandler(handler));
129
+
130
+ if (!graphServiceNames.length) {
131
+ return
132
+ } else {
133
+ if (action === ACTIONS.get) {
134
+ additionalResourcePermission.push(
135
+ createIamRole(
136
+ { [RESOURCE_CLASSES.lambda]: [LAMBDA_RESOURCE.invokeFunction] },
137
+ graphServiceNames.map(graphServiceName =>
138
+ externalResourceName(RESOURCE_CLASSES.lambda, "GetNodeV2HdrInv", graphServiceName),
139
+ )
132
140
  )
133
141
  )
134
- )
135
-
136
- } else if (action === ACTIONS.update) {
137
- additionalResourcePermission.push(
138
- createIamRole(
139
- {
140
- [RESOURCE_CLASSES.sns]: [SNS_RESOURCE.publish]
141
- },
142
- graphServiceNames.map(graphServiceName =>
143
- externalResourceSns("InUpdateNode", graphServiceName)
142
+ // }
143
+ } else if (action === ACTIONS.update) {
144
+ additionalResourcePermission.push(
145
+ createIamRole(
146
+ {
147
+ [RESOURCE_CLASSES.sns]: [SNS_RESOURCE.publish]
148
+ },
149
+ graphServiceNames.map(graphServiceName =>
150
+ externalResourceSns("InUpdateNode", graphServiceName)
151
+ )
144
152
  )
145
153
  )
146
- )
147
-
148
- } else if (action === ACTIONS.create) {
149
- additionalResourcePermission.push(
150
- createIamRole(
151
- {
152
- [RESOURCE_CLASSES.sns]: [SNS_RESOURCE.publish]
153
- },
154
- graphServiceNames.map(graphServiceName =>
155
- externalResourceSns("InCreateNodeV2", graphServiceName)
154
+ // }
155
+ } else if (action === ACTIONS.create) {
156
+ additionalResourcePermission.push(
157
+ createIamRole(
158
+ {
159
+ [RESOURCE_CLASSES.sns]: [SNS_RESOURCE.publish]
160
+ },
161
+ graphServiceNames.map(graphServiceName =>
162
+ externalResourceSns("InCreateNodeV2", graphServiceName)
163
+ )
156
164
  )
157
165
  )
158
- )
159
- } else if (action === ACTIONS.delete) {
160
-
161
- } else {
162
- throw new error("Invalid action")
166
+ // }
167
+ } else if (action === ACTIONS.delete) {
168
+ return
169
+ // additionalResourcePermission.push(
170
+ // createIamRole(
171
+ // {
172
+ // [RESOURCE_CLASSES.sns]: [SNS_RESOURCE.publish]
173
+ // },
174
+ // graphServiceNames.map(graphServiceName =>
175
+ // externalResourceSns("InDeleteNode", graphServiceName)
176
+ // )
177
+ // )
178
+ // )
179
+ } else {
180
+ throw new error("Invalid action")
181
+ }
163
182
  }
164
183
 
165
184
 
@@ -173,7 +192,7 @@ async function externalLambdaIamRoleDataPerAction(_izContext, objectSchema, acti
173
192
 
174
193
  // update Relationship
175
194
  async function externalLambdaIamRoleDataUpdateRelationshipSchema(_izContext, allRelSchemas, handler) {
176
- const functionName = upperCase(FUNCTION_NAME.updateRel) + upperCase(handler);
195
+ const functionName = upperCase(FUNCTION_NAME.updateRel) + upperCase(shortNameHandler(handler));
177
196
  const additionalResourcePermission = [];
178
197
  const graphServiceNamesFromAllRelSchemas = await getGraphServiceNameFromAllRelSchema(_izContext, allRelSchemas);
179
198
 
@@ -199,7 +218,7 @@ async function externalLambdaIamRoleDataUpdateRelationshipSchema(_izContext, all
199
218
  // create relationship
200
219
 
201
220
  async function externalLambdaIamRoleDataCreateRelationshipSchema(_izContext, allRelSchemas, handler) {
202
- const functionName = upperCase(FUNCTION_NAME.createRel) + upperCase(handler);
221
+ const functionName = upperCase(FUNCTION_NAME.createRel) + upperCase(shortNameHandler(handler));
203
222
  const additionalResourcePermission = [];
204
223
  const graphServiceNamesFromAllRelSchemas = await getGraphServiceNameFromAllRelSchema(_izContext, allRelSchemas);
205
224
 
@@ -219,9 +238,31 @@ async function externalLambdaIamRoleDataCreateRelationshipSchema(_izContext, all
219
238
  }
220
239
  }
221
240
 
241
+ // delete Relationship
242
+ async function externalLambdaIamRoleDataDeleteRelationshipSchema(_izContext, allRelSchemas, handler) {
243
+ // const functionName = upperCase(FUNCTION_NAME.deleteRel) + upperCase(handler)
244
+ // const additionalResourcePermission = [];
245
+ // const graphServiceNamesFromAllRelSchemas = await getGraphServiceNameFromAllRelSchema(_izContext, allRelSchemas);
246
+
247
+ // additionalResourcePermission.push(
248
+ // createIamRole(
249
+ // {
250
+ // [RESOURCE_CLASSES.sns]: [SNS_RESOURCE.publish]
251
+ // },
252
+ // graphServiceNamesFromAllRelSchemas.map(graphServiceName =>
253
+ // externalResourceSns("InDeleteRelationship", graphServiceName)
254
+ // )
255
+ // )
256
+ // )
257
+ // return {
258
+ // functionName,
259
+ // additionalResourcePermission
260
+ // }
261
+ }
262
+
222
263
  // Process TranslateIds Request
223
264
  async function externalLambdaIamRoleDataTranslateId(_izContext, allRelSchemas, allObjSchemas) {
224
- let functionName = upperCase(FUNCTION_NAME.translateIdsProcess) + upperCase(HANDLER.hdrDsq);
265
+ let functionName = upperCase(FUNCTION_NAME.translateIdsProcess) + upperCase(shortNameHandler(HANDLER.hdrDsq));
225
266
  const additionalResourcePermission = [];
226
267
  const graphServiceNamesFromAllRelSchemas = await getGraphServiceNameFromAllRelSchema(_izContext, allRelSchemas);
227
268
  let complexFilterServiceTags = getComplexFilterServiceTag(allObjSchemas);
@@ -255,7 +296,7 @@ async function externalLambdaIamRoleDataTranslateId(_izContext, allRelSchemas, a
255
296
  }
256
297
 
257
298
  async function externalLambdaIamRoleDataFindData(_izContext, allObjSchemas) {
258
- let functionName = upperCase(FUNCTION_NAME.findData) + upperCase(HANDLER.hdrSqs);
299
+ let functionName = upperCase(FUNCTION_NAME.findData) + upperCase(shortNameHandler(HANDLER.hdrSqs));
259
300
  let additionalResourcePermission = [];
260
301
  let graphServiceNames = []
261
302
  for (const objectSchema of allObjSchemas) {
@@ -289,7 +330,7 @@ async function externalLambdaIamRoleDataFindData(_izContext, allObjSchemas) {
289
330
 
290
331
 
291
332
  async function externalLambdaIamRoleDataProcessLogical(_izContext, allObjectSchemas) {
292
- let functionName = upperCase(FUNCTION_NAME.processLogical) + upperCase(HANDLER.hdrSqs);
333
+ let functionName = upperCase(FUNCTION_NAME.processLogical) + upperCase(shortNameHandler(HANDLER.hdrSqs));
293
334
  let additionalResourcePermission = [];
294
335
  let graphServiceNames = await getGraphServiceNameFromObjectSchema(_izContext, allObjectSchemas)
295
336
  // console.log("graphServiceNameFromProcessLogical::", graphServiceNames)