@izara_project/izara-market-library-service-schemas 1.0.3 → 1.0.5

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 (120) hide show
  1. package/package.json +5 -5
  2. package/src/GenerateCodeLibs/src/Consts.js +46 -0
  3. package/src/GenerateCodeLibs/src/GenerateCodeLibs.js +69 -8
  4. package/src/TemplateManager/src/CreateRelationship/createRelationship/functionYaml/HdrApi/data.js +111 -0
  5. package/src/TemplateManager/src/CreateRelationship/createRelationship/functionYaml/HdrDsq/data.js +132 -0
  6. package/src/TemplateManager/src/CreateRelationship/createRelationship/functionYaml/HdrInv/data.js +110 -0
  7. package/src/TemplateManager/src/CreateRelationship/createRelationship/functionYaml/HdrSqs/data.js +132 -0
  8. package/src/TemplateManager/src/CreateRelationship/createRelationship/mainFunction/data.js +59 -0
  9. package/src/TemplateManager/src/CreateRelationship/createRelationship/mainFunction/template.ejs +338 -0
  10. package/src/TemplateManager/src/CreateRelationship/createRelationship/perAction/HdrApi/data.js +58 -0
  11. package/src/TemplateManager/src/CreateRelationship/createRelationship/perAction/HdrApi/request.json +0 -0
  12. package/src/TemplateManager/src/CreateRelationship/createRelationship/perAction/HdrApi/template.ejs +120 -0
  13. package/src/TemplateManager/src/CreateRelationship/createRelationship/perAction/HdrDsq/data.js +60 -0
  14. package/src/TemplateManager/src/CreateRelationship/createRelationship/perAction/HdrDsq/request.json +0 -0
  15. package/src/TemplateManager/src/CreateRelationship/createRelationship/perAction/HdrDsq/template.ejs +167 -0
  16. package/src/TemplateManager/src/CreateRelationship/createRelationship/perAction/HdrInv/data.js +60 -0
  17. package/src/TemplateManager/src/CreateRelationship/createRelationship/perAction/HdrInv/request.json +0 -0
  18. package/src/TemplateManager/src/CreateRelationship/createRelationship/perAction/HdrInv/template.ejs +107 -0
  19. package/src/TemplateManager/src/CreateRelationship/createRelationship/perAction/HdrSqs/data.js +60 -0
  20. package/src/TemplateManager/src/CreateRelationship/createRelationship/perAction/HdrSqs/request.json +0 -0
  21. package/src/TemplateManager/src/CreateRelationship/createRelationship/perAction/HdrSqs/template.ejs +146 -0
  22. package/src/TemplateManager/src/CreateRelationship/createRelationship/perAction/request.json +30 -0
  23. package/src/TemplateManager/src/CreateRelationship/createRelationship/sns-in-sqs/data.js +80 -0
  24. package/src/TemplateManager/src/CreateRelationship/createRelationshipComplete/functionYaml/data.js +133 -0
  25. package/src/TemplateManager/src/CreateRelationship/createRelationshipComplete/functionYaml/request.json +0 -0
  26. package/src/TemplateManager/src/CreateRelationship/createRelationshipComplete/functionYaml/template.ejs +33 -0
  27. package/src/TemplateManager/src/CreateRelationship/createRelationshipComplete/handler/HdrSqs/data.js +62 -0
  28. package/src/TemplateManager/src/CreateRelationship/createRelationshipComplete/handler/HdrSqs/request.json +0 -0
  29. package/src/TemplateManager/src/CreateRelationship/createRelationshipComplete/handler/HdrSqs/template.ejs +125 -0
  30. package/src/TemplateManager/src/CreateRelationship/createRelationshipComplete/mainFunction/data.js +56 -0
  31. package/src/TemplateManager/src/CreateRelationship/createRelationshipComplete/mainFunction/request.json +0 -0
  32. package/src/TemplateManager/src/CreateRelationship/createRelationshipComplete/mainFunction/template.ejs +137 -0
  33. package/src/TemplateManager/src/CreateRelationship/createRelationshipComplete/sns-in-sqs/data.js +72 -0
  34. package/src/TemplateManager/src/CreateRelationship/createRelationshipComplete/sns-in-sqs/request.json +0 -0
  35. package/src/TemplateManager/src/CreateRelationship/createRelationshipComplete/sns-in-sqs/template.ejs +47 -0
  36. package/src/TemplateManager/src/CreateRelationship/createRelationshipComplete/sns-out/data.js +72 -0
  37. package/src/TemplateManager/src/CreateRelationship/createRelationshipComplete/sns-out/request.json +0 -0
  38. package/src/TemplateManager/src/GenerateCode.js +176 -43
  39. package/src/TemplateManager/src/{FunctionYaml → PerActionEndpoint/FunctionYaml}/HdrApi/data.js +7 -23
  40. package/src/TemplateManager/src/{FunctionYaml → PerActionEndpoint/FunctionYaml}/HdrDsq/data.js +10 -24
  41. package/src/TemplateManager/src/{FunctionYaml → PerActionEndpoint/FunctionYaml}/HdrInv/data.js +6 -23
  42. package/src/TemplateManager/src/{FunctionYaml → PerActionEndpoint/FunctionYaml}/HdrSqs/data.js +14 -33
  43. package/src/TemplateManager/src/{FunctionYaml → PerActionEndpoint/FunctionYaml}/HdrSqs/template.ejs +2 -2
  44. package/src/TemplateManager/src/PerActionEndpoint/Handler/HdrApi/data.js +2 -16
  45. package/src/TemplateManager/src/PerActionEndpoint/Handler/HdrDsq/data.js +3 -17
  46. package/src/TemplateManager/src/PerActionEndpoint/Handler/HdrInv/data.js +3 -16
  47. package/src/TemplateManager/src/PerActionEndpoint/Handler/HdrSqs/data.js +4 -17
  48. package/src/TemplateManager/src/PerActionEndpoint/MainFunction/Get/data.js +0 -15
  49. package/src/TemplateManager/src/PerActionEndpoint/MainFunction/Get/template.ejs +28 -30
  50. package/src/TemplateManager/src/PerActionEndpoint/MainFunction/Get/testParam.json +5 -0
  51. package/src/TemplateManager/src/ResourceYaml/dynamodb/awaitingMultipleStepData.js +95 -0
  52. package/src/TemplateManager/src/ResourceYaml/dynamodb/mainResourcePerObjectSchemaData.js +7 -29
  53. package/src/TemplateManager/src/ResourceYaml/dynamodb/processLogicalAndFindData.js +5 -8
  54. package/src/TemplateManager/src/ResourceYaml/sns-in-sqs/defaultSnsInSqsForFindDataAndProcessLogical.js +3 -6
  55. package/src/TemplateManager/src/ResourceYaml/sns-in-sqs/snsAndSqsPerActiondata.js +6 -6
  56. package/src/TemplateManager/src/ResourceYaml/sns-in-sqs/sqsTemplate.ejs +1 -0
  57. package/src/TemplateManager/src/ResourceYaml/sns-out/data.js +89 -0
  58. package/src/TemplateManager/src/ResourceYaml/sns-out/request.json +3 -0
  59. package/src/TemplateManager/src/ResourceYaml/sns-out/template.ejs +10 -0
  60. package/src/TemplateManager/src/UpdateRelationshipSchema/updateRalationshipComplete/functionYaml/data.js +135 -0
  61. package/src/TemplateManager/src/UpdateRelationshipSchema/updateRalationshipComplete/functionYaml/request.json +3 -0
  62. package/src/TemplateManager/src/UpdateRelationshipSchema/updateRalationshipComplete/functionYaml/template.ejs +33 -0
  63. package/src/TemplateManager/src/UpdateRelationshipSchema/updateRalationshipComplete/handler/HdrSqs/data.js +62 -0
  64. package/src/TemplateManager/src/UpdateRelationshipSchema/updateRalationshipComplete/handler/HdrSqs/request.json +0 -0
  65. package/src/TemplateManager/src/UpdateRelationshipSchema/updateRalationshipComplete/handler/HdrSqs/template.ejs +127 -0
  66. package/src/TemplateManager/src/UpdateRelationshipSchema/updateRalationshipComplete/mainFunction/data.js +56 -0
  67. package/src/TemplateManager/src/UpdateRelationshipSchema/updateRalationshipComplete/mainFunction/request.json +1 -0
  68. package/src/TemplateManager/src/UpdateRelationshipSchema/updateRalationshipComplete/mainFunction/template.ejs +140 -0
  69. package/src/TemplateManager/src/UpdateRelationshipSchema/updateRalationshipComplete/sns-in-sqs/data.js +72 -0
  70. package/src/TemplateManager/src/UpdateRelationshipSchema/updateRalationshipComplete/sns-in-sqs/request.json +3 -0
  71. package/src/TemplateManager/src/UpdateRelationshipSchema/updateRalationshipComplete/sns-in-sqs/template.ejs +46 -0
  72. package/src/TemplateManager/src/UpdateRelationshipSchema/updateRalationshipComplete/sns-out/data.js +71 -0
  73. package/src/TemplateManager/src/UpdateRelationshipSchema/updateRalationshipComplete/sns-out/request.json +3 -0
  74. package/src/TemplateManager/src/UpdateRelationshipSchema/updateRelationship/functionYaml/HdrApi/data.js +112 -0
  75. package/src/TemplateManager/src/UpdateRelationshipSchema/updateRelationship/functionYaml/HdrApi/request.json +0 -0
  76. package/src/TemplateManager/src/UpdateRelationshipSchema/updateRelationship/functionYaml/HdrApi/template.ejs +33 -0
  77. package/src/TemplateManager/src/UpdateRelationshipSchema/updateRelationship/functionYaml/HdrDsq/data.js +128 -0
  78. package/src/TemplateManager/src/UpdateRelationshipSchema/updateRelationship/functionYaml/HdrDsq/request.json +0 -0
  79. package/src/TemplateManager/src/UpdateRelationshipSchema/updateRelationship/functionYaml/HdrInv/data.js +110 -0
  80. package/src/TemplateManager/src/UpdateRelationshipSchema/updateRelationship/functionYaml/HdrInv/request.json +0 -0
  81. package/src/TemplateManager/src/UpdateRelationshipSchema/updateRelationship/functionYaml/HdrSqs/data.js +131 -0
  82. package/src/TemplateManager/src/UpdateRelationshipSchema/updateRelationship/functionYaml/HdrSqs/request.json +0 -0
  83. package/src/TemplateManager/src/UpdateRelationshipSchema/updateRelationship/mainFunction/data.js +65 -0
  84. package/src/TemplateManager/src/UpdateRelationshipSchema/updateRelationship/mainFunction/request.json +1 -0
  85. package/src/TemplateManager/src/UpdateRelationshipSchema/updateRelationship/mainFunction/template.ejs +331 -0
  86. package/src/TemplateManager/src/UpdateRelationshipSchema/updateRelationship/perAction/HdrApi/data.js +59 -0
  87. package/src/TemplateManager/src/UpdateRelationshipSchema/updateRelationship/perAction/HdrApi/request.json +7 -0
  88. package/src/TemplateManager/src/UpdateRelationshipSchema/updateRelationship/perAction/HdrApi/template.ejs +120 -0
  89. package/src/TemplateManager/src/UpdateRelationshipSchema/updateRelationship/perAction/HdrDsq/data.js +59 -0
  90. package/src/TemplateManager/src/UpdateRelationshipSchema/updateRelationship/perAction/HdrDsq/request.json +7 -0
  91. package/src/TemplateManager/src/UpdateRelationshipSchema/updateRelationship/perAction/HdrDsq/template.ejs +167 -0
  92. package/src/TemplateManager/src/UpdateRelationshipSchema/updateRelationship/perAction/HdrInv/data.js +62 -0
  93. package/src/TemplateManager/src/UpdateRelationshipSchema/updateRelationship/perAction/HdrInv/request.json +5 -0
  94. package/src/TemplateManager/src/UpdateRelationshipSchema/updateRelationship/perAction/HdrInv/template.ejs +126 -0
  95. package/src/TemplateManager/src/UpdateRelationshipSchema/updateRelationship/perAction/HdrSqs/data.js +59 -0
  96. package/src/TemplateManager/src/UpdateRelationshipSchema/updateRelationship/perAction/HdrSqs/request.json +7 -0
  97. package/src/TemplateManager/src/UpdateRelationshipSchema/updateRelationship/perAction/HdrSqs/template.ejs +146 -0
  98. package/src/TemplateManager/src/UpdateRelationshipSchema/updateRelationship/perAction/request.json +30 -0
  99. package/src/TemplateManager/src/UpdateRelationshipSchema/updateRelationship/sns-in-sqs/data.js +90 -0
  100. package/src/TemplateManager/src/UpdateRelationshipSchema/updateRelationship/sns-in-sqs/request.json +3 -0
  101. package/src/TemplateManager/src/UpdateRelationshipSchema/updateRelationship/sns-out/data.js +70 -0
  102. package/src/TemplateManager/src/UpdateRelationshipSchema/updateRelationship/sns-out/request.json +3 -0
  103. package/src/TemplateManager/src/externalService/LambdaRole/data.js +72 -25
  104. package/src/TemplateManager/src/externalService/LambdaRole/template.ejs +8 -3
  105. package/src/TemplateManager/src/externalService/SnsTopicSubscriotions/data.js +51 -3
  106. package/src/TemplateManager/src/externalService/SnsTopicSubscriotions/request.json +12 -0
  107. package/src/TemplateManager/src/externalService/SnsTopicSubscriotions/template.ejs +10 -14
  108. package/src/TemplateManager/src/libs/Consts.js +52 -23
  109. package/src/TemplateManager/src/MainResourcesYaml/CreateSourceData.js +0 -76
  110. package/src/TemplateManager/src/MainResourcesYaml/TemplateAndData/DynamoDbMain/Data/MainDynamoDbYamlData.js +0 -155
  111. package/src/TemplateManager/src/MainResourcesYaml/TemplateAndData/DynamoDbMain/Template/DynamoDb.ejs +0 -31
  112. package/src/TemplateManager/src/MainResourcesYaml/TemplateAndData/DynamoDbMain/Template/DynamoDb.exampleData.js +0 -12
  113. /package/src/TemplateManager/src/{FunctionYaml → PerActionEndpoint/FunctionYaml}/HdrApi/request.json +0 -0
  114. /package/src/TemplateManager/src/{FunctionYaml → PerActionEndpoint/FunctionYaml}/HdrApi/template.ejs +0 -0
  115. /package/src/TemplateManager/src/{FunctionYaml → PerActionEndpoint/FunctionYaml}/HdrDsq/request.json +0 -0
  116. /package/src/TemplateManager/src/{FunctionYaml → PerActionEndpoint/FunctionYaml}/HdrDsq/template.ejs +0 -0
  117. /package/src/TemplateManager/src/{FunctionYaml → PerActionEndpoint/FunctionYaml}/HdrInv/example req.js +0 -0
  118. /package/src/TemplateManager/src/{FunctionYaml → PerActionEndpoint/FunctionYaml}/HdrInv/request.json +0 -0
  119. /package/src/TemplateManager/src/{FunctionYaml → PerActionEndpoint/FunctionYaml}/HdrInv/template.ejs +0 -0
  120. /package/src/TemplateManager/src/{FunctionYaml → PerActionEndpoint/FunctionYaml}/HdrSqs/request.json +0 -0
@@ -0,0 +1,72 @@
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
+
20
+ const path = require("path")
21
+
22
+
23
+ // const {
24
+ // HANDLER,
25
+ // STORAGE_TYPES
26
+ // } = require('@izara_project/izara-core-library-service-schemas/src/Consts');
27
+
28
+
29
+ const STORAGE_TYPES = {
30
+ dynamoDB: "dynamoDB",
31
+ graph: "graph"
32
+ }
33
+
34
+ const { firstLetterLowerCase: lowerCase, firstLetterUpperCase: upperCase } = require("../../../../../MainLibs/src/Utils")
35
+ const { DEFAULT_HANDLER_PER_ACTION, SOURCE_PATH, SAVE_FILE_NAME, FUNCTION_NAME } = require("../../../libs/Consts");
36
+ const templatePath = path.join(__dirname, '../../../ResourceYaml/sns-out/template.ejs')
37
+
38
+ /**
39
+ * create data for dynamoDbYaml tempalte from objectSchema
40
+ * return array of dynamoDb data
41
+ * because one objectSchema can create multiple dynamoDb table
42
+ *
43
+ * @param {Object} _izContext
44
+ * @param {String} saveFilePath
45
+ * @returns {Object[]} - data of multiple dynamoDb template
46
+ */
47
+
48
+ function createDefaultSnsOut(_izContext, srcPath) {
49
+ const createSourceParams = createParamsForCreateSource(_izContext, srcPath)
50
+ console.log("createSourceParamsCreateRelationshipComplete", createSourceParams)
51
+
52
+ return [createSourceParams]
53
+ }
54
+
55
+ function createParamsForCreateSource(_izContext, srcPath) {
56
+ let queueName = FUNCTION_NAME.createRelComplete;
57
+ return {
58
+ templatePath: templatePath,
59
+ templateData: {
60
+ queueName: upperCase(queueName)
61
+ },
62
+ setting: {
63
+ initialData: 'Resources:\n',
64
+ savePath: path.join(srcPath, SOURCE_PATH.resourceYaml),
65
+ saveFileName: SAVE_FILE_NAME.snsOutYaml,
66
+ fileExtension: '.yml',
67
+ isAppend: true
68
+ }
69
+ }
70
+ }
71
+
72
+ module.exports = createDefaultSnsOut
@@ -23,7 +23,7 @@ const { readFileSync } = require('fs');
23
23
 
24
24
  const {
25
25
  getAllLocalObjectSchemasWithHierarchy,
26
- getAllLocalRelationshipSchemas
26
+ getAllLocalRelationshipSchemas,
27
27
  } = require('@izara_project/izara-core-library-service-schemas/src/GetObjectSchema');
28
28
 
29
29
 
@@ -43,28 +43,80 @@ const perActionHdrDsqData = require("./PerActionEndpoint/Handler/HdrDsq/data");
43
43
  const mainFunctionGetData = require('./PerActionEndpoint/MainFunction/Get/data');
44
44
 
45
45
  // create function.yaml
46
- const functionGetYamlDataHdrInv = require('./FunctionYaml/HdrInv/data');
47
- const functionGetYamlDataHdrApi = require('./FunctionYaml/HdrApi/data');
48
- const functionGetYamlDataHdrSqs = require('./FunctionYaml/HdrSqs/data');
49
- const functionGetYamlDataHdrDsq = require('./FunctionYaml/HdrDsq/data');
46
+ const functionGetYamlDataHdrInv = require('./PerActionEndpoint/FunctionYaml/HdrInv/data');
47
+ const functionGetYamlDataHdrApi = require('./PerActionEndpoint/FunctionYaml/HdrApi/data');
48
+ const functionGetYamlDataHdrSqs = require('./PerActionEndpoint/FunctionYaml/HdrSqs/data');
49
+ const functionGetYamlDataHdrDsq = require('./PerActionEndpoint/FunctionYaml/HdrDsq/data');
50
50
 
51
51
 
52
52
  // create Main resource
53
- const { createSourceDataDynamoDB } = require('./ResourceYaml/dynamodb/mainResourcePerObjectSchemaData');
54
- const { createDefaultSourceDataDynamoDB } = require('./ResourceYaml/dynamodb/processLogicalAndFindData')
55
- const { createSourceSnsAndSqs } = require('./ResourceYaml/sns-in-sqs/snsAndSqsPerActiondata');
56
- const createFindDataAndProcessLogicalDefaultSnsInSqs = require('./ResourceYaml/sns-in-sqs/defaultSnsInSqsForFindDataAndProcessLogical')
53
+ const createSourceDataDynamoDB = require('./ResourceYaml/dynamodb/mainResourcePerObjectSchemaData');
54
+ const createDefaultSourceDataDynamoDB = require('./ResourceYaml/dynamodb/processLogicalAndFindData');
55
+ const createSourceSnsAndSqs = require('./ResourceYaml/sns-in-sqs/snsAndSqsPerActiondata');
56
+ const createDataForCreateSourceSnsOut = require('./ResourceYaml/sns-out/data')
57
+ const createFindDataAndProcessLogicalDefaultSnsInSqs = require('./ResourceYaml/sns-in-sqs/defaultSnsInSqsForFindDataAndProcessLogical');
58
+ const createAwaitingMultipleStepDynamoDbData = require('./ResourceYaml/dynamodb/awaitingMultipleStepData');
57
59
 
58
60
  // create External Service
59
- const createSnsSubscriptions = require('./externalService/SnsTopicSubscriotions/data');
60
- const createLambdaRole = require('./externalService/LambdaRole/data');
61
+ const createExternalLambdaRole = require('./externalService/LambdaRole/data');
62
+ const createExternalSnsSubscriptions = require('./externalService/SnsTopicSubscriotions/data');
61
63
 
64
+ // create update relationship schema
65
+ // const createUpdateRelationshipFunctionYamlHdrApi = require('./UpdateRelationshipSchema/updateRelationship/functionYaml/HdrApi/data')
66
+ const createUpdateRelationshipFunctionYamlHdrInv = require('./UpdateRelationshipSchema/updateRelationship/functionYaml/HdrInv/data');
67
+ const createUpdateRelationshipFunctionYamlHdrDsq = require('./UpdateRelationshipSchema/updateRelationship/functionYaml/HdrDsq/data');
68
+ const createUpdateRelationshipFunctionYamlHdrSqs = require('./UpdateRelationshipSchema/updateRelationship/functionYaml/HdrSqs/data');
62
69
 
70
+ // create main function updateRelationship schema main function
71
+ const createUpdateRelationshipSchemaMainFunction = require('./UpdateRelationshipSchema/updateRelationship/mainFunction/data');
63
72
 
64
- //create resource
65
- // const mainResources = require("./MainResourcesYaml/CreateSourceData");
73
+ // create handler Update Relationship schema
74
+ const createUpdateRelationshipSchemaHdrInv = require('./UpdateRelationshipSchema/updateRelationship/perAction/HdrInv/data');
75
+ // const createUpdateRelationshipSchemaHdrApi = require('./UpdateRelationshipSchema/updateRelationship/perAction/HdrApi/data');
76
+ const createUpdateRelationshipSchemaHdrDsq = require('./UpdateRelationshipSchema/updateRelationship/perAction/HdrDsq/data');
77
+ const createUpdateRelationshipSchemaHdrSqs = require('./UpdateRelationshipSchema/updateRelationship/perAction/HdrSqs/data');
66
78
 
79
+ // create sns for update relationship schema
80
+ const createUpdateRelationshipSchemaSnsInSqsResource = require('./UpdateRelationshipSchema/updateRelationship/sns-in-sqs/data');
81
+ // const createUpdateRelationshipSchemaSnsOutResource = require('./UpdateRelationshipSchema/updateRelationship/sns-out/data');
67
82
 
83
+ // create updateRelationshipFunctionYaml
84
+ const createUpdateRelationshipSchemaCompleteYaml = require('./UpdateRelationshipSchema/updateRalationshipComplete/functionYaml/data');
85
+
86
+ // create update relationship hdrSqs
87
+ const createUpdateRelationshipSchemaCompleteHdrSqs = require('./UpdateRelationshipSchema/updateRalationshipComplete/handler/HdrSqs/data');
88
+
89
+ // create sns-in-sqs resource yaml updateRelationshipSchemaComplete
90
+ const createUpdateRelationshipSchemaCompleteSnsInSqs = require('./UpdateRelationshipSchema/updateRalationshipComplete/sns-in-sqs/data');
91
+
92
+ const createUpdateRelationshipSchemaCompleteSnsOut = require('./UpdateRelationshipSchema/updateRalationshipComplete/sns-out/data');
93
+
94
+ const createUpdateRelationshipSchemaCompleteMainFunction = require('./UpdateRelationshipSchema/updateRalationshipComplete/mainFunction/data');
95
+
96
+ // create CreateRelationshipSchema
97
+ const createRelationshipSchemaMain = require('./CreateRelationship/createRelationship/mainFunction/data');
98
+
99
+ // createRelationsihp Handler
100
+ // const createCreateRelationshipHdrApi = require('./CreateRelationship/createrelationship/perAction/HdrApi/data');
101
+ const createCreateRelationshipHdrDsq = require('./CreateRelationship/createRelationship/perAction/HdrDsq/data');
102
+ const createCreateRelationshipHdrInv = require('./CreateRelationship/createRelationship/perAction/HdrInv/data');
103
+ const createCreateRelationshipHdrSqs = require('./CreateRelationship/createRelationship/perAction/HdrSqs/data');
104
+
105
+ // createRelationshipFunctionYaml
106
+ // const createCreateRelationshipFunctionYamlHdrApi = require('./CreateRelationship/createrelationship/functionYaml/HdrApi/data');
107
+ const createCreateRelationshipFunctionYamlHdrInv = require('./CreateRelationship/createRelationship/functionYaml/HdrInv/data');
108
+ const createCreateRelationshipFunctionYamlHdrDsq = require('./CreateRelationship/createRelationship/functionYaml/HdrDsq/data');
109
+ const createCreateRelationshipFunctionYamlHdrSqs = require('./CreateRelationship/createRelationship/functionYaml/HdrSqs/data');
110
+
111
+ // createRelationship sns-in-sqs , sns-out
112
+ const createRelationshipSnsAndSqsResourceYaml = require('./CreateRelationship/createRelationship/sns-in-sqs/data');
113
+
114
+ // createRelationshipComplete
115
+ const createRelationshipCompleteFunctionYaml = require('./CreateRelationship/createRelationshipComplete/functionYaml/data');
116
+ const createRelationshipCompleteHandlerFunction = require('./CreateRelationship/createRelationshipComplete/handler/HdrSqs/data');
117
+ const createRelationshipCompleteMainFunction = require('./CreateRelationship/createRelationshipComplete/mainFunction/data');
118
+ const createRelationshipCompleteSnsInSqs = require('./CreateRelationship/createRelationshipComplete/sns-in-sqs/data');
119
+ const createRelationshipCompleteSnsOut = require('./CreateRelationship/createRelationshipComplete/sns-out/data');
68
120
  /**
69
121
  *
70
122
  * get template and send to
@@ -88,9 +140,12 @@ async function generateCodeWithTemplate(_izContext, objSchemaPath) {
88
140
  const GENERATECODE_SOURCE_PATH = {
89
141
  appYaml: join(saveFilePath, `../sls_yaml/generatedCode/source/`),
90
142
  resourceYaml: join(saveFilePath, `../../resource/sls_yaml/generatedCode/source/`),
91
- lambdaPerObjectTypePath: join(saveFilePath, `/generatedCode/perAction/source/`), // test
92
- lamdaPerCombindActionPath: join(saveFilePath, `/generatedCode/lamdaPerCombindAction/source/`), // test,
93
- externalService: join(saveFilePath, '../initial_setup/generatedCode/source/')
143
+ lambdaPerAction: join(saveFilePath, '../src/generatedCode/ObjectTypePerActionEndpoint/source/'),
144
+ externalService: join(saveFilePath, '../initial_setup/generatedCode/source/'),
145
+ resourceLocation: join(saveFilePath, 'src/generatedCode/perAction/source/'),
146
+ lamdaPerCombindActionPath: join(saveFilePath, `/generatedCode/lamdaPerCombindAction/source/`), // test
147
+ lambdaPerObjectTypePath: join(saveFilePath, `/generatedCode/lambdaPerObjectType/source/`), // test
148
+ updateRelationship: join(saveFilePath, `../src/generatedCode/RelationshipPerAction/source/`),
94
149
  };
95
150
 
96
151
 
@@ -119,51 +174,39 @@ async function generateCodeWithTemplate(_izContext, objSchemaPath) {
119
174
  }
120
175
 
121
176
  // create External service
122
- const createFunctionIamRole = await createLambdaRole(_izContext, allObjSchemas.records, saveFilePath);
123
- //
124
- for (let objectSchema of allObjSchemas.records) {
125
- console.log("objectSchema: ", objectSchema);
177
+ const createFunctionIamRole = await createExternalLambdaRole(_izContext, allObjSchemas.records, allObjectRelationships, saveFilePath);
178
+ const createSnsSubscription = await createExternalSnsSubscriptions(_izContext, allObjectRelationships, saveFilePath);
126
179
 
127
- // create main resource per objectSchema
128
- // const createSourceMainResourcesObjectSchema = mainResources.createSourceDataObjectSchema(_izContext, objectSchema, saveFilePath);
129
- // console.log("createSourceMainResourcesObjectSchema: ", createSourceMainResourcesObjectSchema);
130
-
131
- // mainFunction, handlerFunction, resourceYaml per action
132
- // let createSourcePerAction = perAction.createSourceDataObjectSchema(_izContext, objectSchema, saveFilePath);
133
- // console.log("createSourcePerAction: ", createSourcePerAction)
180
+ for (let objectSchema of allObjSchemas.records) {
134
181
 
135
- // generate handler
182
+ // generate handler perAction
136
183
  const createSourceHdrInv = perActionHdrInvData(_izContext, objectSchema, saveFilePath);
137
184
  const createSourceHdrApi = perActionHdrApiData(_izContext, objectSchema, saveFilePath);
138
185
  const createSourceHdrSqs = perActionHdrSqsData(_izContext, objectSchema, saveFilePath);
139
- const createSourceHdrDsq = perActionHdrDsqData(_izContext, objectSchema, saveFilePath)
186
+ const createSourceHdrDsq = perActionHdrDsqData(_izContext, objectSchema, saveFilePath);
140
187
 
141
188
  // wrap Handler Function
142
- const createSourceHandler = [...createSourceHdrInv, ...createSourceHdrApi, ...createSourceHdrSqs, ...createSourceHdrDsq]
189
+ const createSourceHandler = [...createSourceHdrInv, ...createSourceHdrApi, ...createSourceHdrSqs, ...createSourceHdrDsq];
143
190
 
144
191
  // generate main function
145
- const createMainFunctionGet = await mainFunctionGetData(_izContext, objectSchema, saveFilePath)
192
+ const createMainFunctionGet = await mainFunctionGetData(_izContext, objectSchema, saveFilePath);
146
193
 
147
194
  // generate functionYaml File
148
- const createFunctionGetYamlHdrInv = functionGetYamlDataHdrInv(_izContext, objectSchema, saveFilePath)
149
- const createFunctionGetYamlHdrApi = functionGetYamlDataHdrApi(_izContext, objectSchema, saveFilePath)
150
- const createFunctionGetYamlHdrSqs = functionGetYamlDataHdrSqs(_izContext, objectSchema, saveFilePath)
151
- const createFunctionGetYamlHdrDsq = functionGetYamlDataHdrDsq(_izContext, objectSchema, saveFilePath)
195
+ const createFunctionGetYamlHdrInv = functionGetYamlDataHdrInv(_izContext, objectSchema, saveFilePath);
196
+ const createFunctionGetYamlHdrApi = functionGetYamlDataHdrApi(_izContext, objectSchema, saveFilePath);
197
+ const createFunctionGetYamlHdrSqs = functionGetYamlDataHdrSqs(_izContext, objectSchema, saveFilePath);
198
+ const createFunctionGetYamlHdrDsq = functionGetYamlDataHdrDsq(_izContext, objectSchema, saveFilePath);
152
199
 
153
200
  // wrapMain Function
154
- const createFunctionYaml = [...createFunctionGetYamlHdrApi, ...createFunctionGetYamlHdrDsq, ...createFunctionGetYamlHdrInv, ...createFunctionGetYamlHdrSqs]
155
-
156
-
157
- // const createSnsSunbscription = createSnsSubscriptions.createSnsSubscription(_izContext, objectSchema, saveFilePath)
201
+ const createFunctionYaml = [...createFunctionGetYamlHdrApi, ...createFunctionGetYamlHdrDsq, ...createFunctionGetYamlHdrInv, ...createFunctionGetYamlHdrSqs];
158
202
 
159
203
  // generate Resource ..via dynamoDb sns-in-sqs sns-put
160
204
  const createResourceDynamo = createSourceDataDynamoDB(_izContext, objectSchema, saveFilePath);
161
205
  const createResourceSnsInSqs = createSourceSnsAndSqs(_izContext, objectSchema, saveFilePath);
162
- const createResourceFindDataAndProcessLogical = createDefaultSourceDataDynamoDB(_izContext, saveFilePath);
163
- const createResourceDefaultSnsInSqsFindDataAndProcessLogical = createFindDataAndProcessLogicalDefaultSnsInSqs(_izContext, saveFilePath);
206
+ const createResourceSnsOut = createDataForCreateSourceSnsOut(_izContext, objectSchema, saveFilePath)
164
207
 
165
208
  // wrap main Resource
166
- const createMainResource = [...createResourceDynamo, ...createResourceSnsInSqs, ...createResourceFindDataAndProcessLogical, ...createResourceDefaultSnsInSqsFindDataAndProcessLogical]
209
+ const createMainResource = [...createResourceDynamo, ...createResourceSnsInSqs, ...createResourceSnsOut];
167
210
 
168
211
  createSourceParams = createSourceParams.concat([
169
212
  // ...createSourceMainResourcesObjectSchema,
@@ -171,13 +214,103 @@ async function generateCodeWithTemplate(_izContext, objSchemaPath) {
171
214
  ...createMainFunctionGet, // create main function
172
215
  ...createFunctionYaml, // create function.yaml
173
216
  ...createMainResource, // create resource yaml
174
- createFunctionIamRole,
175
217
  ]);
176
218
 
177
219
  // console.log("createSourceParams after concat: ", createSourceParams);
178
220
  }
179
221
 
180
222
 
223
+ // create default data resource such as findData ProcessLogical and awaitingMultipleStep
224
+ const createResourceFindDataAndProcessLogical = createDefaultSourceDataDynamoDB(_izContext, saveFilePath);
225
+ const createResourceAwaitingMultipleStep = createAwaitingMultipleStepDynamoDbData(_izContext, saveFilePath);
226
+ const createResourceDefaultSnsInSqsFindDataAndProcessLogical = createFindDataAndProcessLogicalDefaultSnsInSqs(_izContext, saveFilePath);
227
+
228
+ const createMainResourceDefault = [...createResourceFindDataAndProcessLogical, ...createResourceDefaultSnsInSqsFindDataAndProcessLogical, ...createResourceAwaitingMultipleStep];
229
+
230
+ // create function yaml for update relationshipSchema per handler
231
+ const createYamlUpdateRelationshipSchemaHdrSqs = createUpdateRelationshipFunctionYamlHdrSqs(_izContext, saveFilePath);
232
+ const createYamlUpdateRelationshipSchemaHdrInv = createUpdateRelationshipFunctionYamlHdrInv(_izContext, saveFilePath);
233
+ const createYamlUpdateRelationshipSchemaHdrDsq = createUpdateRelationshipFunctionYamlHdrDsq(_izContext, saveFilePath);
234
+ // const createYamlUpdateRelationshipSchemaHdrApi = createUpdateRelationshipFunctionYamlHdrApi(_izContext, saveFilePath)
235
+ const createYamlUpdateRelationshipSchema = [...createYamlUpdateRelationshipSchemaHdrSqs, ...createYamlUpdateRelationshipSchemaHdrInv, ...createYamlUpdateRelationshipSchemaHdrDsq];
236
+
237
+ // create main function
238
+ const createMainFunctionUpdateRelationshipSchema = createUpdateRelationshipSchemaMainFunction(_izContext, saveFilePath);
239
+
240
+ // create handler function for each updateRelationshipSchema
241
+ const createUpdateRelationshipSchemaPerActionHdrInv = createUpdateRelationshipSchemaHdrInv(_izContext, saveFilePath);
242
+ // const createUpdateRelationshipSchemaPerActionHdrApi = createUpdateRelationshipSchemaHdrApi(_izContext, saveFilePath);
243
+ const createUpdateRelationshipSchemaPerActionHdrDsq = createUpdateRelationshipSchemaHdrDsq(_izContext, saveFilePath);
244
+ const createUpdateRelationshipSchemaPerActionHdrSqs = createUpdateRelationshipSchemaHdrSqs(_izContext, saveFilePath);
245
+
246
+ const createUpdateRelationshipSchemaPerAction = [...createUpdateRelationshipSchemaPerActionHdrInv,
247
+ // ...createUpdateRelationshipSchemaPerActionHdrApi,
248
+ ...createUpdateRelationshipSchemaPerActionHdrDsq, ...createUpdateRelationshipSchemaPerActionHdrSqs];
249
+
250
+ // create resource sns-in-sqs for update relationship schema
251
+ const createUpdateRelationshipSchemaSnsIn = createUpdateRelationshipSchemaSnsInSqsResource(_izContext, saveFilePath);
252
+ // const createUpdateRelationshipSchemaSnsOut = createUpdateRelationshipSchemaSnsOutResource(_izContext, saveFilePath);
253
+
254
+ const createResourceUpdateRelationshipSchema = [...createUpdateRelationshipSchemaSnsIn,];
255
+
256
+ // warp function updateRelationshipSchemaData
257
+ const createUpdateRelationshipSchemaData = [...createUpdateRelationshipSchemaPerAction, ...createResourceUpdateRelationshipSchema, ...createMainFunctionUpdateRelationshipSchema]
258
+
259
+ // create UpdateRelationshipComplete Main Function
260
+ const createUpdateRelationshipSchemaCompleteMain = createUpdateRelationshipSchemaCompleteMainFunction(_izContext, saveFilePath);
261
+
262
+ // create function yaml updateRelationshipComplete
263
+ const createUpdateRelationshipSchemaCompleteFunctionYaml = createUpdateRelationshipSchemaCompleteYaml(_izContext, saveFilePath)
264
+
265
+ // create handler updateRelationshipSchemaComplete HdrSqs
266
+ const createUpdateRelationshipSchemaCompleteHandler = createUpdateRelationshipSchemaCompleteHdrSqs(_izContext, saveFilePath)
267
+
268
+ // create resource yaml updateRelationshipSchemaComplete
269
+ const createUpdateRelationshipSchemaCompleteSnsInSqsResource = createUpdateRelationshipSchemaCompleteSnsInSqs(_izContext, saveFilePath)
270
+ const createUpdateRelationshipSchemaCompleteSnsOutResource = createUpdateRelationshipSchemaCompleteSnsOut(_izContext, saveFilePath)
271
+
272
+ // warp function updateRelationshipSchemaCompleteData
273
+ const createUpdateRelationshipSchemaCompleteData = [...createUpdateRelationshipSchemaCompleteFunctionYaml, ...createUpdateRelationshipSchemaCompleteHandler, ...createUpdateRelationshipSchemaCompleteSnsInSqsResource,
274
+ ...createUpdateRelationshipSchemaCompleteSnsOutResource, ...createUpdateRelationshipSchemaCompleteMain];
275
+
276
+ // create CreateRelationshipSchema MainFunction
277
+ const createCreateRelationshipSchemaMainFunction = createRelationshipSchemaMain(_izContext, saveFilePath);
278
+
279
+ // create CreateRelationshipSchema Handler
280
+
281
+ const createCreateRelationshipSchemaHdrInv = createCreateRelationshipHdrInv(_izContext, saveFilePath);
282
+ const createCreateRelationshipSchemaHdrDsq = createCreateRelationshipHdrDsq(_izContext, saveFilePath);
283
+ const createCreateRelationshipSchemaHdrSqs = createCreateRelationshipHdrSqs(_izContext, saveFilePath);
284
+
285
+ const createRelationshipHandler = [...createCreateRelationshipSchemaHdrInv, ...createCreateRelationshipSchemaHdrDsq, ...createCreateRelationshipSchemaHdrSqs];
286
+ // create CreaterelationshipSchema FunctionYaml
287
+ const createRelationshipSchemaFunctionYamlHdrInv = createCreateRelationshipFunctionYamlHdrInv(_izContext, saveFilePath);
288
+ const createRelationshipSchemaFunctionYamlHdrDsq = createCreateRelationshipFunctionYamlHdrDsq(_izContext, saveFilePath);
289
+ const createRelationshipSchemaFunctionYamlHdrSqs = createCreateRelationshipFunctionYamlHdrSqs(_izContext, saveFilePath);
290
+
291
+ const createRelationshipSchemaFunctionYaml = [...createRelationshipSchemaFunctionYamlHdrInv, ...createRelationshipSchemaFunctionYamlHdrDsq, ...createRelationshipSchemaFunctionYamlHdrSqs];
292
+
293
+ const createRelationshipSnsSqsResourceYaml = createRelationshipSnsAndSqsResourceYaml(_izContext, saveFilePath);
294
+
295
+ const createCreateRelationshipData = [...createCreateRelationshipSchemaMainFunction, ...createRelationshipHandler, ...createRelationshipSchemaFunctionYaml, ...createRelationshipSnsSqsResourceYaml];
296
+
297
+ const createRelationshipCompleteFunctionYml = createRelationshipCompleteFunctionYaml(_izContext, saveFilePath);
298
+ const createRelationshipCompleteHandler = createRelationshipCompleteHandlerFunction(_izContext, saveFilePath);
299
+ const createRelationshipCompleteMain = createRelationshipCompleteMainFunction(_izContext, saveFilePath);
300
+ const createRelationshipCompleteQueue = createRelationshipCompleteSnsInSqs(_izContext, saveFilePath);
301
+ const createRelationshipCompleteOutsomething = createRelationshipCompleteSnsOut(_izContext, saveFilePath)
302
+ const createRelationshipComplete = [...createRelationshipCompleteFunctionYml, ...createRelationshipCompleteHandler, ...createRelationshipCompleteMain, ...createRelationshipCompleteQueue, ...createRelationshipCompleteOutsomething]
303
+
304
+ createSourceParams.push(...createMainResourceDefault, ...createYamlUpdateRelationshipSchema,
305
+ ...createUpdateRelationshipSchemaData,
306
+ ...createUpdateRelationshipSchemaCompleteData,
307
+ ...createCreateRelationshipData,
308
+ ...createRelationshipComplete,
309
+ createFunctionIamRole,
310
+ createSnsSubscription,
311
+ );
312
+ // console.log("createSourceParams", createSourceParams);
313
+
181
314
  // delete file .yml before start to prevent confilct of data
182
315
  for (let folderPathToEmpty of Object.keys(GENERATECODE_SOURCE_PATH)) {
183
316
  await deleteFileInDir(GENERATECODE_SOURCE_PATH[folderPathToEmpty]);
@@ -21,8 +21,8 @@ const fs = require('fs');
21
21
 
22
22
  const { ACTIONS, HANDLER, STORAGE_TYPES } = require('@izara_project/izara-core-library-service-schemas/src/Consts')
23
23
 
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, SOURCE_PATH } = require("../../libs/Consts");
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, SOURCE_PATH, SAVE_FILE_NAME } = require("../../../libs/Consts");
26
26
 
27
27
  const templatePath = path.join(__dirname, "./template.ejs")
28
28
 
@@ -52,7 +52,7 @@ function defaultIamRolePerAction() {
52
52
  ]
53
53
  )
54
54
  );
55
- console.log("defaultIamRole Api", defaultIamRole)
55
+ // console.log("defaultIamRole Api", defaultIamRole)
56
56
  return defaultIamRole
57
57
  }
58
58
 
@@ -128,14 +128,14 @@ function createParamForCreateSource(objectSchema, action, srcPath) {
128
128
  }
129
129
 
130
130
  let event = httpEvent(action)
131
- console.log("event:", event)
131
+ // console.log("event:", event)
132
132
 
133
133
  return {
134
134
  templatePath: templatePath,
135
135
  templateData: {
136
136
  functionName: functionName,
137
- resourceLocation: SOURCE_PATH.resourceLocation,
138
- handlerType: "HdrApi",
137
+ resourceLocation: SOURCE_PATH.resourceLocationPerAction,
138
+ handlerType: upperCase(HANDLER.hdrApi),
139
139
  additionalResourcePermission,
140
140
  event: event,
141
141
  objectType: objectType,
@@ -143,7 +143,7 @@ function createParamForCreateSource(objectSchema, action, srcPath) {
143
143
  },
144
144
  setting: {
145
145
  savePath: path.join(srcPath, SOURCE_PATH.appYaml),
146
- saveFileName: `function`,
146
+ saveFileName: SAVE_FILE_NAME.functionPerActionYaml,
147
147
  fileExtension: '.yml',
148
148
  isAppend: true
149
149
  }
@@ -151,20 +151,4 @@ function createParamForCreateSource(objectSchema, action, srcPath) {
151
151
  }
152
152
 
153
153
 
154
-
155
-
156
- // [
157
- // {
158
- // templatePath: '/home/toughnut/BasProgram/empty-service-template/app/node_modules/@izara_project/izara-market-library-service-schemas/src/TemplateManager/src/MainResourcesYaml/TemplateAndData/DynamoDbMain/Template/DynamoDb.ejs',
159
- // templateData: { tableName: 'ObjectTypeSingle', attributes: [Array] },
160
- // setting: {
161
- // savePath: '/generatedCode/source/',
162
- // saveFileName: 'ObjectTypeGet',
163
- // fileExtension: '.js',
164
- // isAppend: false
165
- // }
166
- // }
167
- // ]
168
-
169
-
170
154
  module.exports = data;
@@ -21,8 +21,8 @@ const fs = require('fs');
21
21
 
22
22
  const { ACTIONS, HANDLER, STORAGE_TYPES } = require('@izara_project/izara-core-library-service-schemas/src/Consts')
23
23
 
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 } = require("../../libs/Consts");
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 } = require("../../../libs/Consts");
26
26
 
27
27
  const templatePath = path.join(__dirname, "./template.ejs")
28
28
 
@@ -52,7 +52,7 @@ function defaultIamRolePerAction() {
52
52
  ]
53
53
  )
54
54
  );
55
- console.log("defaultIamRole Api", defaultIamRole)
55
+ // console.log("defaultIamRole Api", defaultIamRole)
56
56
  return defaultIamRole
57
57
  }
58
58
 
@@ -129,8 +129,10 @@ function createParamForCreateSource(objectSchema, action, srcPath) {
129
129
  [
130
130
  SQS_RESOURCE.deleteMessage,
131
131
  SQS_RESOURCE.getQueueAttributes,
132
- SQS_RESOURCE.recieveMessage,
133
- SQS_RESOURCE.sendMessage
132
+ SQS_RESOURCE.receiveMessage,
133
+ SQS_RESOURCE.sendMessage,
134
+ SQS_RESOURCE.deleteMessageBatch,
135
+ SQS_RESOURCE.getQueueUrl
134
136
  ]
135
137
  }, [
136
138
  resourceNames(RESOURCE_CLASSES.sqs, functionName + upperCase(HANDLER.hdrDsq)),
@@ -145,13 +147,13 @@ function createParamForCreateSource(objectSchema, action, srcPath) {
145
147
  templatePath: templatePath,
146
148
  templateData: {
147
149
  functionName: functionName,
148
- resourceLocation: SOURCE_PATH.resourceLocation,
149
- handlerType: "HdrDsq",
150
+ resourceLocation: SOURCE_PATH.resourceLocationPerAction,
151
+ handlerType: HANDLER.hdrDsq,
150
152
  additionalResourcePermission
151
153
  },
152
154
  setting: {
153
155
  savePath: path.join(srcPath, SOURCE_PATH.appYaml),
154
- saveFileName: `function`,
156
+ saveFileName: SAVE_FILE_NAME.functionPerActionYaml,
155
157
  fileExtension: '.yml',
156
158
  isAppend: true
157
159
  }
@@ -159,20 +161,4 @@ function createParamForCreateSource(objectSchema, action, srcPath) {
159
161
  }
160
162
 
161
163
 
162
-
163
-
164
- // [
165
- // {
166
- // templatePath: '/home/toughnut/BasProgram/empty-service-template/app/node_modules/@izara_project/izara-market-library-service-schemas/src/TemplateManager/src/MainResourcesYaml/TemplateAndData/DynamoDbMain/Template/DynamoDb.ejs',
167
- // templateData: { tableName: 'ObjectTypeSingle', attributes: [Array] },
168
- // setting: {
169
- // savePath: '/generatedCode/source/',
170
- // saveFileName: 'ObjectTypeGet',
171
- // fileExtension: '.js',
172
- // isAppend: false
173
- // }
174
- // }
175
- // ]
176
-
177
-
178
164
  module.exports = data;
@@ -21,8 +21,8 @@ const fs = require('fs');
21
21
 
22
22
  const { ACTIONS, HANDLER, STORAGE_TYPES } = require('@izara_project/izara-core-library-service-schemas/src/Consts')
23
23
 
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, SOURCE_PATH } = require("../../libs/Consts");
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, SOURCE_PATH, SAVE_FILE_NAME } = require('../../../libs/Consts');
26
26
 
27
27
  const templatePath = path.join(__dirname, "./template.ejs")
28
28
 
@@ -66,10 +66,8 @@ function defaultIamRolePerAction() {
66
66
  function data(_izContext, objectSchema, srcPath) {
67
67
 
68
68
  // const shortNamePath = path.join(srcPath, "./schemas/ShortNameObjectType.js");
69
-
70
69
  // const shortName = fs.existsSync(shortNamePath) ? require(shortNamePath) : {};
71
-
72
- console.log("objectSchema in mainFunction: ", objectSchema)
70
+ // console.log("objectSchema in mainFunction: ", objectSchema)
73
71
 
74
72
 
75
73
  let createSourceArray = [];
@@ -136,13 +134,13 @@ function createParamForCreateSource(objectSchema, action, srcPath) {
136
134
  templatePath: templatePath,
137
135
  templateData: {
138
136
  functionName: functionName,
139
- resourceLocation: SOURCE_PATH.resourceLocation,
140
- handlerType: "HdrInv",
137
+ resourceLocation: SOURCE_PATH.resourceLocationPerAction,
138
+ handlerType: HANDLER.hdrInv,
141
139
  additionalResourcePermission
142
140
  },
143
141
  setting: {
144
142
  savePath: path.join(srcPath, SOURCE_PATH.appYaml),
145
- saveFileName: `function`,
143
+ saveFileName: SAVE_FILE_NAME.functionPerActionYaml,
146
144
  fileExtension: '.yml',
147
145
  isAppend: true
148
146
  }
@@ -151,19 +149,4 @@ function createParamForCreateSource(objectSchema, action, srcPath) {
151
149
 
152
150
 
153
151
 
154
-
155
- // [
156
- // {
157
- // templatePath: '/home/toughnut/BasProgram/empty-service-template/app/node_modules/@izara_project/izara-market-library-service-schemas/src/TemplateManager/src/MainResourcesYaml/TemplateAndData/DynamoDbMain/Template/DynamoDb.ejs',
158
- // templateData: { tableName: 'ObjectTypeSingle', attributes: [Array] },
159
- // setting: {
160
- // savePath: '/generatedCode/source/',
161
- // saveFileName: 'ObjectTypeGet',
162
- // fileExtension: '.js',
163
- // isAppend: false
164
- // }
165
- // }
166
- // ]
167
-
168
-
169
152
  module.exports = data;
@@ -21,8 +21,8 @@ const fs = require('fs');
21
21
 
22
22
  const { ACTIONS, HANDLER, STORAGE_TYPES } = require('@izara_project/izara-core-library-service-schemas/src/Consts')
23
23
 
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 } = require("../../libs/Consts");
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 } = require("../../../libs/Consts");
26
26
 
27
27
  const templatePath = path.join(__dirname, "./template.ejs")
28
28
 
@@ -129,56 +129,37 @@ function createParamForCreateSource(objectSchema, action, srcPath) {
129
129
  [
130
130
  SQS_RESOURCE.deleteMessage,
131
131
  SQS_RESOURCE.getQueueAttributes,
132
- SQS_RESOURCE.recieveMessage,
133
- SQS_RESOURCE.sendMessage
134
- ]
132
+ SQS_RESOURCE.receiveMessage,
133
+ SQS_RESOURCE.sendMessage,
134
+ SQS_RESOURCE.deleteMessageBatch,
135
+ SQS_RESOURCE.getQueueUrl
136
+ ], [RESOURCE_CLASSES.sns]: ["Publish", "Subscribe"]
135
137
  }, [
136
138
  resourceNames(RESOURCE_CLASSES.sqs, functionName + upperCase(HANDLER.hdrSqs)),
137
- resourceNames(RESOURCE_CLASSES.sqs, functionName + upperCase(HANDLER.hdrSqs) + "DLQ")
139
+ resourceNames(RESOURCE_CLASSES.sqs, functionName + upperCase(HANDLER.hdrSqs) + "DLQ"),
140
+ resourceNames(RESOURCE_CLASSES.sns, "In" + functionName),
141
+ resourceNames(RESOURCE_CLASSES.sns, "Out" + functionName)
138
142
  ]
139
143
  )
140
144
  )
141
145
 
142
- additionalResourcePermission.push(
143
- createIamRole({
144
- [RESOURCE_CLASSES.sns]: ["Publish", "Subscribe"]
145
- }, [resourceNames(RESOURCE_CLASSES.sns, functionName + upperCase(HANDLER.hdrSqs))])
146
- )
147
-
148
- console.log("additionalResourcePermissionBeforeReturn", additionalResourcePermission)
146
+ // console.log("additionalResourcePermissionBeforeReturn", additionalResourcePermission)
149
147
  return {
150
148
  templatePath: templatePath,
151
149
  templateData: {
152
150
  functionName: functionName,
153
151
  actionHandler: actionHandler,
154
- resourceLocation: SOURCE_PATH.resourceLocation,
155
- handlerType: "HdrSqs",
152
+ resourceLocation: SOURCE_PATH.resourceLocationPerAction,
153
+ handlerType: HANDLER.hdrSqs,
156
154
  additionalResourcePermission
157
155
  },
158
156
  setting: {
159
157
  savePath: path.join(srcPath, SOURCE_PATH.appYaml),
160
- saveFileName: `function`,
158
+ saveFileName: SAVE_FILE_NAME.functionPerActionYaml,
161
159
  fileExtension: '.yml',
162
160
  isAppend: true
163
161
  }
164
162
  }
165
163
  }
166
164
 
167
-
168
-
169
-
170
- // [
171
- // {
172
- // templatePath: '/home/toughnut/BasProgram/empty-service-template/app/node_modules/@izara_project/izara-market-library-service-schemas/src/TemplateManager/src/MainResourcesYaml/TemplateAndData/DynamoDbMain/Template/DynamoDb.ejs',
173
- // templateData: { tableName: 'ObjectTypeSingle', attributes: [Array] },
174
- // setting: {
175
- // savePath: '/generatedCode/source/',
176
- // saveFileName: 'ObjectTypeGet',
177
- // fileExtension: '.js',
178
- // isAppend: false
179
- // }
180
- // }
181
- // ]
182
-
183
-
184
165
  module.exports = data;