@izara_project/izara-market-library-service-schemas 1.0.28 → 1.0.30

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 (125) hide show
  1. package/package.json +1 -1
  2. package/src/GenerateCodeLibs/src/Consts.js +10 -9
  3. package/src/GenerateCodeLibs/src/GenerateCodeLibs.js +54 -21
  4. package/src/MainLibs/src/Consts.js +36 -18
  5. package/src/reStructure/GenerateCode.js +2 -1
  6. package/src/reStructure/TemplateConfig.js +5 -1
  7. package/src/reStructure/TemplateData/EndpointPerService/generateTemplateData.js +108 -0
  8. package/src/reStructure/TemplateData/EndpointPerService/handler/api/data.js +76 -0
  9. package/src/reStructure/TemplateData/EndpointPerService/handler/api/request.json +7 -0
  10. package/src/reStructure/TemplateData/EndpointPerService/handler/api/template.ejs +73 -0
  11. package/src/reStructure/TemplateData/EndpointPerService/handler/dsq/data.js +81 -0
  12. package/src/reStructure/TemplateData/EndpointPerService/handler/dsq/request.json +7 -0
  13. package/src/reStructure/TemplateData/EndpointPerService/handler/dsq/template.ejs +125 -0
  14. package/src/reStructure/TemplateData/EndpointPerService/handler/inv/data.js +70 -0
  15. package/src/reStructure/TemplateData/EndpointPerService/handler/inv/request.json +7 -0
  16. package/src/reStructure/TemplateData/EndpointPerService/handler/inv/template.ejs +73 -0
  17. package/src/reStructure/TemplateData/EndpointPerService/handler/sqs/data.js +79 -0
  18. package/src/reStructure/TemplateData/EndpointPerService/handler/sqs/request.json +7 -0
  19. package/src/reStructure/TemplateData/EndpointPerService/handler/sqs/template.ejs +126 -0
  20. package/src/reStructure/TemplateData/EndpointPerService/mainFunction/create/data.js +53 -0
  21. package/src/reStructure/TemplateData/EndpointPerService/mainFunction/create/template.ejs +624 -0
  22. package/src/reStructure/TemplateData/EndpointPerService/mainFunction/delete/data.js +52 -0
  23. package/src/reStructure/TemplateData/EndpointPerService/mainFunction/delete/template.ejs +177 -0
  24. package/src/reStructure/TemplateData/EndpointPerService/mainFunction/get/data.js +56 -0
  25. package/src/reStructure/TemplateData/EndpointPerService/mainFunction/get/template.ejs +234 -0
  26. package/src/reStructure/TemplateData/EndpointPerService/mainFunction/update/data.js +56 -0
  27. package/src/reStructure/TemplateData/EndpointPerService/mainFunction/update/template.ejs +330 -0
  28. package/src/reStructure/TemplateData/EndpointPerService/yaml/data.js +175 -0
  29. package/src/reStructure/TemplateData/EndpointPerService/yaml/template.ejs +26 -0
  30. package/src/reStructure/TemplateData/externalService/generateTemplateData.js +1 -1
  31. package/src/reStructure/TemplateData/externalService/lambdaRole/data.js +91 -249
  32. package/src/reStructure/TemplateData/externalService/lambdaRole/template.ejs +1 -1
  33. package/src/reStructure/TemplateData/externalService/snsTopicSubscriptions/data.js +10 -8
  34. package/src/reStructure/TemplateData/externalService/snsTopicSubscriptions/template.ejs +1 -1
  35. package/src/reStructure/TemplateData/findData/findDataYaml/data.js +2 -2
  36. package/src/reStructure/TemplateData/flowSchema/components/upload/confirmReserved/functionYaml/data.js +4 -3
  37. package/src/reStructure/TemplateData/flowSchema/components/upload/createObject/functionYaml/data.js +3 -29
  38. package/src/reStructure/TemplateData/flowSchema/components/upload/createObject/handler/data.js +3 -21
  39. package/src/reStructure/TemplateData/flowSchema/components/upload/createObject/handler/template.ejs +3 -31
  40. package/src/reStructure/TemplateData/flowSchema/components/upload/createObjectComplete/functionYaml/data.js +2 -2
  41. package/src/reStructure/TemplateData/flowSchema/components/upload/createObjectComplete/sns-sqs/data.js +1 -1
  42. package/src/reStructure/TemplateData/flowSchema/components/upload/createObjectComplete/sns-sqs/template.ejs +1 -1
  43. package/src/reStructure/TemplateData/flowSchema/components/upload/preSignUrl/{getSignUrls → createPresignUrl}/functionYaml/data.js +41 -10
  44. package/src/reStructure/TemplateData/flowSchema/components/upload/preSignUrl/{getSignUrls → createPresignUrl}/functionYaml/template.ejs +3 -0
  45. package/src/reStructure/TemplateData/flowSchema/components/upload/preSignUrl/{getSignUrls → createPresignUrl}/handler/data.js +2 -2
  46. package/src/reStructure/TemplateData/flowSchema/components/upload/{hook/handler/templateAsyncHandler.ejs → preSignUrl/createPresignUrl/handler/template.ejs} +26 -11
  47. package/src/reStructure/TemplateData/flowSchema/components/upload/preSignUrl/{getSignUrls → createPresignUrl}/mainFunction/data.js +10 -7
  48. package/src/reStructure/TemplateData/flowSchema/components/upload/preSignUrl/createPresignUrl/mainFunction/template.ejs +253 -0
  49. package/src/reStructure/TemplateData/flowSchema/components/upload/preSignUrl/{reservedLimit → createPresignUrl}/queue/data.js +1 -1
  50. package/src/reStructure/TemplateData/flowSchema/components/upload/preSignUrl/reservedLimit/functionYaml/data.js +10 -38
  51. package/src/reStructure/TemplateData/flowSchema/components/upload/preSignUrl/reservedLimit/functionYaml/template.ejs +0 -3
  52. package/src/reStructure/TemplateData/flowSchema/components/upload/preSignUrl/reservedLimit/handler/data.js +2 -2
  53. package/src/reStructure/TemplateData/flowSchema/components/upload/preSignUrl/reservedLimit/handler/template.ejs +40 -45
  54. package/src/reStructure/TemplateData/flowSchema/components/upload/preSignUrl/reservedLimit/mainFunction/data.js +7 -10
  55. package/src/reStructure/TemplateData/flowSchema/components/upload/preSignUrl/reservedLimit/mainFunction/template.ejs +100 -190
  56. package/src/reStructure/TemplateData/flowSchema/components/upload/preSignUrl/{getSignUrls → reservedLimit}/sqs/data.js +4 -4
  57. package/src/reStructure/TemplateData/flowSchema/components/upload/preSignUrl/{getSignUrls → reservedLimit}/sqs/template.ejs +2 -2
  58. package/src/reStructure/TemplateData/flowSchema/components/upload/processFile/functionYml/HdrS3/data.js +8 -6
  59. package/src/reStructure/TemplateData/flowSchema/components/upload/processFile/queue/s3Template.ejs +1 -1
  60. package/src/reStructure/TemplateData/flowSchema/components/upload/relate/S3/data.js +5 -2
  61. package/src/reStructure/TemplateData/flowSchema/generateTemplateData.js +41 -38
  62. package/src/reStructure/TemplateData/flowSchema/legacy/hookCode-old/queue/snsTemplate.ejs +1 -1
  63. package/src/reStructure/TemplateData/generateRole/createSharedResource.js +11 -1
  64. package/src/reStructure/TemplateData/perActionComplete/create/mainFunction/template.ejs +35 -44
  65. package/src/reStructure/TemplateData/perActionComplete/create/sns-out/template.ejs +1 -1
  66. package/src/reStructure/TemplateData/perActionComplete/create/yaml/data.js +4 -5
  67. package/src/reStructure/TemplateData/perActionComplete/delete/yaml/data.js +5 -4
  68. package/src/reStructure/TemplateData/perActionComplete/generateTemplateData.js +15 -2
  69. package/src/reStructure/TemplateData/perActionComplete/get/yaml/data.js +7 -4
  70. package/src/reStructure/TemplateData/perActionComplete/update/sns-out/data.js +1 -1
  71. package/src/reStructure/TemplateData/perActionComplete/update/yaml/data.js +5 -4
  72. package/src/reStructure/TemplateData/processLogical/yaml/data.js +3 -3
  73. package/src/reStructure/TemplateData/processLogicalPagination/yaml/dsq/data.js +1 -1
  74. package/src/reStructure/TemplateData/processLogicalPagination/yaml/sqs/data.js +2 -2
  75. package/src/reStructure/TemplateData/relationshipPerAction/create/action/functionYaml/api/data.js +16 -14
  76. package/src/reStructure/TemplateData/relationshipPerAction/create/action/functionYaml/dsq/data.js +16 -14
  77. package/src/reStructure/TemplateData/relationshipPerAction/create/action/functionYaml/inv/data.js +16 -15
  78. package/src/reStructure/TemplateData/relationshipPerAction/create/action/functionYaml/sqs/data.js +18 -16
  79. package/src/reStructure/TemplateData/relationshipPerAction/create/action/sns-in-sqs/snsTemplate.ejs +1 -1
  80. package/src/reStructure/TemplateData/relationshipPerAction/create/complete/functionYaml/data.js +2 -2
  81. package/src/reStructure/TemplateData/relationshipPerAction/create/complete/mainFunction/data.js +1 -1
  82. package/src/reStructure/TemplateData/relationshipPerAction/create/complete/sns-in-sqs/template.ejs +0 -1
  83. package/src/reStructure/TemplateData/relationshipPerAction/create/complete/sns-out/template.ejs +1 -1
  84. package/src/reStructure/TemplateData/relationshipPerAction/delete/action/functionYaml/api/data.js +16 -14
  85. package/src/reStructure/TemplateData/relationshipPerAction/delete/action/functionYaml/dsq/data.js +16 -15
  86. package/src/reStructure/TemplateData/relationshipPerAction/delete/action/functionYaml/inv/data.js +17 -14
  87. package/src/reStructure/TemplateData/relationshipPerAction/delete/action/functionYaml/sqs/data.js +18 -16
  88. package/src/reStructure/TemplateData/relationshipPerAction/delete/action/sns-in-sqs/snsTemplate.ejs +1 -1
  89. package/src/reStructure/TemplateData/relationshipPerAction/delete/complete/functionYaml/data.js +2 -2
  90. package/src/reStructure/TemplateData/relationshipPerAction/delete/complete/sns-out/template.ejs +1 -1
  91. package/src/reStructure/TemplateData/relationshipPerAction/get/action/functionYaml/api/data.js +16 -14
  92. package/src/reStructure/TemplateData/relationshipPerAction/get/action/functionYaml/dsq/data.js +17 -14
  93. package/src/reStructure/TemplateData/relationshipPerAction/get/action/functionYaml/inv/data.js +16 -14
  94. package/src/reStructure/TemplateData/relationshipPerAction/get/action/functionYaml/sqs/data.js +20 -17
  95. package/src/reStructure/TemplateData/relationshipPerAction/get/action/sns-in-sqs/snsTemplate.ejs +1 -1
  96. package/src/reStructure/TemplateData/relationshipPerAction/get/complete/functionYaml/data.js +2 -2
  97. package/src/reStructure/TemplateData/relationshipPerAction/get/complete/sns-out/template.ejs +1 -1
  98. package/src/reStructure/TemplateData/relationshipPerAction/update/action/functionYaml/api/data.js +16 -14
  99. package/src/reStructure/TemplateData/relationshipPerAction/update/action/functionYaml/dsq/data.js +16 -14
  100. package/src/reStructure/TemplateData/relationshipPerAction/update/action/functionYaml/inv/data.js +16 -14
  101. package/src/reStructure/TemplateData/relationshipPerAction/update/action/functionYaml/sqs/data.js +19 -18
  102. package/src/reStructure/TemplateData/relationshipPerAction/update/action/sns-in-sqs/snsTemplate.ejs +1 -1
  103. package/src/reStructure/TemplateData/relationshipPerAction/update/complete/functionYaml/data.js +2 -2
  104. package/src/reStructure/TemplateData/relationshipPerAction/update/complete/sns-out/template.ejs +1 -1
  105. package/src/reStructure/TemplateData/resourceYaml/dynamodb/defaultDynamoDbTable.js +1 -1
  106. package/src/reStructure/TemplateData/resourceYaml/dynamodb/generateDynamoPerLink.js +40 -38
  107. package/src/reStructure/TemplateData/resourceYaml/dynamodb/mainResourcePerObjectSchemaData.js +1 -1
  108. package/src/reStructure/TemplateData/resourceYaml/generateTemplateData.js +6 -12
  109. package/src/reStructure/TemplateData/resourceYaml/sns-in-sqs/defaultSnsInSqsForFindDataAndProcessLogical.js +1 -1
  110. package/src/reStructure/TemplateData/resourceYaml/sns-in-sqs/snsAndSqsPerActionData.js +22 -49
  111. package/src/reStructure/TemplateData/resourceYaml/sns-in-sqs/snsTemplate.ejs +1 -1
  112. package/src/reStructure/TemplateData/resourceYaml/sns-out/data.js +8 -24
  113. package/src/reStructure/TemplateData/resourceYaml/sns-out/template.ejs +1 -1
  114. package/src/reStructure/TemplateData/testTemplate/template.ejs +0 -5
  115. package/src/reStructure/TemplateData/flowSchema/components/upload/hook/handler/data.js +0 -93
  116. package/src/reStructure/TemplateData/flowSchema/components/upload/hook/handler/templateSyncHandler.ejs +0 -49
  117. package/src/reStructure/TemplateData/flowSchema/components/upload/hook/hookLogic/data.js +0 -43
  118. package/src/reStructure/TemplateData/flowSchema/components/upload/hook/mainFunction/data.js +0 -65
  119. package/src/reStructure/TemplateData/flowSchema/components/upload/hook/mainFunction/template.ejs +0 -7
  120. package/src/reStructure/TemplateData/flowSchema/components/upload/hook/queue/data.js +0 -72
  121. package/src/reStructure/TemplateData/flowSchema/components/upload/hook/queue/snsTemplate.ejs +0 -59
  122. package/src/reStructure/TemplateData/flowSchema/components/upload/hook/queue/sqsTemplate.ejs +0 -43
  123. package/src/reStructure/TemplateData/flowSchema/components/upload/preSignUrl/getSignUrls/handler/template.ejs +0 -120
  124. package/src/reStructure/TemplateData/flowSchema/components/upload/preSignUrl/getSignUrls/mainFunction/template.ejs +0 -163
  125. /package/src/reStructure/TemplateData/flowSchema/components/upload/preSignUrl/{reservedLimit → createPresignUrl}/queue/template.ejs +0 -0
@@ -84,29 +84,31 @@ function createParamForCreateSource(allObjectRelationships, srcPath) {
84
84
  [
85
85
  resourceNames(RESOURCE_CLASSES.sqs, upperCase(functionName) + upperCase(HANDLER.hdrSqs)),
86
86
  resourceNames(RESOURCE_CLASSES.sqs, upperCase(functionName) + upperCase(HANDLER.hdrSqs) + "DLQ"),
87
- resourceNames(RESOURCE_CLASSES.sns, "In" + upperCase(functionName) + upperCase(HANDLER.hdrSqs)),
88
- resourceNames(RESOURCE_CLASSES.sns, "Out" + upperCase(functionName) + upperCase(HANDLER.hdrSqs)),
89
- resourceNames(RESOURCE_CLASSES.sns, "Out" + upperCase(FUNCTION_NAME.createRelComplete))
87
+ resourceNames(RESOURCE_CLASSES.sns, upperCase(functionName) + "_In"),
88
+ resourceNames(RESOURCE_CLASSES.sns, upperCase(functionName) + "_Out"),
89
+ resourceNames(RESOURCE_CLASSES.sns, upperCase(FUNCTION_NAME.createRelComplete) + "_Out")
90
90
  ]
91
91
  ),
92
92
  )
93
93
  additionalResourcePermission.push(awaitingMultipleStepsRole())
94
94
 
95
95
  for (const relationship of allObjectRelationships) {
96
- let [relationshipTag, links] = checkDynamoTypeRelationship(relationship)
97
- for (const link of links) {
98
- let dynamoComponent = createDynamoDbComponentByLinks(link, relationshipTag)
99
- additionalResourcePermission.push(
100
- createIamRole(
101
- {
102
- [RESOURCE_CLASSES.dynamoDbTable]: [DYNAMO_RESOURCE.updateItem]
103
- },
104
- [
105
- resourceNames(RESOURCE_CLASSES.dynamoDbTable, upperCase(dynamoComponent.tableNameFrom)),
106
- resourceNames(RESOURCE_CLASSES.dynamoDbTable, upperCase(dynamoComponent.tableNameTo))
107
- ]
96
+ let [storageType, relationshipTag, links] = checkDynamoTypeRelationship(relationship)
97
+ if (storageType === STORAGE_TYPES.dynamoDB) {
98
+ for (const link of links) {
99
+ let dynamoComponent = createDynamoDbComponentByLinks(link, relationshipTag)
100
+ additionalResourcePermission.push(
101
+ createIamRole(
102
+ {
103
+ [RESOURCE_CLASSES.dynamoDbTable]: [DYNAMO_RESOURCE.updateItem]
104
+ },
105
+ [
106
+ resourceNames(RESOURCE_CLASSES.dynamoDbTable, upperCase(dynamoComponent.tableNameFrom)),
107
+ resourceNames(RESOURCE_CLASSES.dynamoDbTable, upperCase(dynamoComponent.tableNameTo))
108
+ ]
109
+ )
108
110
  )
109
- )
111
+ }
110
112
  }
111
113
  }
112
114
 
@@ -3,7 +3,7 @@
3
3
  Type: AWS::SNS::Topic
4
4
  Properties:
5
5
  DisplayName: "SNS Message in"
6
- TopicName: ${self:custom.iz_resourcePrefix}In<%- queueName %>
6
+ TopicName: ${self:custom.iz_serviceTag}_${self:custom.iz_stage}_<%- queueName %>_In
7
7
  ##===== SNS Subscription
8
8
  ##===== [Topic In]
9
9
  SubscriptionIn<%- queueName %>:
@@ -80,8 +80,8 @@ function createParamForCreateSource(srcPath) {
80
80
  [
81
81
  resourceNames(RESOURCE_CLASSES.sqs, upperCase(functionName)),
82
82
  resourceNames(RESOURCE_CLASSES.sqs, upperCase(functionName) + "DLQ"),
83
- resourceNames(RESOURCE_CLASSES.sns, "In" + upperCase(functionName)),
84
- resourceNames(RESOURCE_CLASSES.sns, "Out" + upperCase(functionName))
83
+ resourceNames(RESOURCE_CLASSES.sns, upperCase(functionName) + "_In"),
84
+ resourceNames(RESOURCE_CLASSES.sns, upperCase(functionName) + "_Out")
85
85
  ],
86
86
  ))
87
87
  additionalResourcePermission.push(awaitingMultipleStepsRole())
@@ -21,7 +21,7 @@ const path = require('path');
21
21
  const { ACTIONS, HANDLER } = require('@izara_project/izara-core-library-service-schemas/src/Consts')
22
22
 
23
23
  const { firstLetterLowerCase: lowerCase, firstLetterUpperCase: upperCase, firstLetterUpperCase } = require("../../../../../../MainLibs/index.js").utils;
24
- const { SOURCE_PATH, FUNCTION_NAME } = require("../../../../../../MainLibs/index.js").consts;
24
+ const { SOURCE_PATH, FUNCTION_NAME } = require("../../../../../../MainLibs/src/Consts.js");
25
25
 
26
26
  const templatePath = path.join(__dirname, "./template.ejs")
27
27
 
@@ -44,4 +44,3 @@
44
44
  <%_ function firstLetterLowerCase(str) {
45
45
  return str.charAt(0).toLowerCase() + str.slice(1)
46
46
  } _%>
47
-
@@ -3,7 +3,7 @@
3
3
  Type: AWS::SNS::Topic
4
4
  Properties:
5
5
  DisplayName: "SNS Message out"
6
- TopicName: ${self:custom.iz_resourcePrefix}Out<%- firstLetterUpperCase(queueName) %>
6
+ TopicName: ${self:custom.iz_serviceTag}_${self:custom.iz_stage}_<%- firstLetterUpperCase(queueName) %>_Out
7
7
 
8
8
  <%_ function firstLetterUpperCase(text) {
9
9
  return text.charAt(0).toUpperCase() + text.slice(1)
@@ -73,26 +73,28 @@ function createParamForCreateSource(allObjectRelationships, srcPath) {
73
73
  [RESOURCE_CLASSES.sns]: [SNS_RESOURCE.publish]
74
74
  },
75
75
  [
76
- resourceNames(RESOURCE_CLASSES.sns, "Out" + upperCase(FUNCTION_NAME.deleteRelComplete))
76
+ resourceNames(RESOURCE_CLASSES.sns, upperCase(FUNCTION_NAME.deleteRelComplete) + "_Out")
77
77
  ]
78
78
  )
79
79
  )
80
80
 
81
81
  for (const relationship of allObjectRelationships) {
82
- let [relationshipTag, links] = checkDynamoTypeRelationship(relationship)
83
- for (const link of links) {
84
- let dynamoComponent = createDynamoDbComponentByLinks(link, relationshipTag)
85
- additionalResourcePermission.push(
86
- createIamRole(
87
- {
88
- [RESOURCE_CLASSES.dynamoDbTable]: [DYNAMO_RESOURCE.updateItem]
89
- },
90
- [
91
- resourceNames(RESOURCE_CLASSES.dynamoDbTable, upperCase(dynamoComponent.tableNameFrom)),
92
- resourceNames(RESOURCE_CLASSES.dynamoDbTable, upperCase(dynamoComponent.tableNameTo))
93
- ]
82
+ let [storageType, relationshipTag, links] = checkDynamoTypeRelationship(relationship)
83
+ if (storageType === STORAGE_TYPES.dynamoDB) {
84
+ for (const link of links) {
85
+ let dynamoComponent = createDynamoDbComponentByLinks(link, relationshipTag)
86
+ additionalResourcePermission.push(
87
+ createIamRole(
88
+ {
89
+ [RESOURCE_CLASSES.dynamoDbTable]: [DYNAMO_RESOURCE.updateItem]
90
+ },
91
+ [
92
+ resourceNames(RESOURCE_CLASSES.dynamoDbTable, upperCase(dynamoComponent.tableNameFrom)),
93
+ resourceNames(RESOURCE_CLASSES.dynamoDbTable, upperCase(dynamoComponent.tableNameTo))
94
+ ]
95
+ )
94
96
  )
95
- )
97
+ }
96
98
  }
97
99
  }
98
100
 
@@ -85,7 +85,7 @@ function createParamForCreateSource(allObjectRelationships, srcPath) {
85
85
  [
86
86
  resourceNames(RESOURCE_CLASSES.sqs, upperCase(functionName) + upperCase(HANDLER.hdrDsq)),
87
87
  resourceNames(RESOURCE_CLASSES.sqs, upperCase(functionName) + upperCase(HANDLER.hdrDsq) + "DLQ"),
88
- resourceNames(RESOURCE_CLASSES.sns, "Out" + upperCase(FUNCTION_NAME.deleteRelComplete))
88
+ resourceNames(RESOURCE_CLASSES.sns, upperCase(FUNCTION_NAME.deleteRelComplete) + "_Out")
89
89
  ]
90
90
  )
91
91
  )
@@ -93,23 +93,24 @@ function createParamForCreateSource(allObjectRelationships, srcPath) {
93
93
  additionalResourcePermission.push(awaitingMultipleStepsRole())
94
94
 
95
95
  for (const relationship of allObjectRelationships) {
96
- let [relationshipTag, links] = checkDynamoTypeRelationship(relationship)
97
- for (const link of links) {
98
- let dynamoComponent = createDynamoDbComponentByLinks(link, relationshipTag)
99
- additionalResourcePermission.push(
100
- createIamRole(
101
- {
102
- [RESOURCE_CLASSES.dynamoDbTable]: [DYNAMO_RESOURCE.updateItem]
103
- },
104
- [
105
- resourceNames(RESOURCE_CLASSES.dynamoDbTable, upperCase(dynamoComponent.tableNameFrom)),
106
- resourceNames(RESOURCE_CLASSES.dynamoDbTable, upperCase(dynamoComponent.tableNameTo))
107
- ]
96
+ let [storageType, relationshipTag, links] = checkDynamoTypeRelationship(relationship)
97
+ if (storageType === STORAGE_TYPES.dynamoDB) {
98
+ for (const link of links) {
99
+ let dynamoComponent = createDynamoDbComponentByLinks(link, relationshipTag)
100
+ additionalResourcePermission.push(
101
+ createIamRole(
102
+ {
103
+ [RESOURCE_CLASSES.dynamoDbTable]: [DYNAMO_RESOURCE.updateItem]
104
+ },
105
+ [
106
+ resourceNames(RESOURCE_CLASSES.dynamoDbTable, upperCase(dynamoComponent.tableNameFrom)),
107
+ resourceNames(RESOURCE_CLASSES.dynamoDbTable, upperCase(dynamoComponent.tableNameTo))
108
+ ]
109
+ )
108
110
  )
109
- )
111
+ }
110
112
  }
111
113
  }
112
-
113
114
  return {
114
115
  templatePath: templatePath,
115
116
  templateData: {
@@ -72,28 +72,31 @@ function createParamForCreateSource(allObjectRelationships, srcPath) {
72
72
  [RESOURCE_CLASSES.sns]: [SNS_RESOURCE.publish]
73
73
  },
74
74
  [
75
- resourceNames(RESOURCE_CLASSES.sns, "Out" + upperCase(FUNCTION_NAME.deleteRelComplete))
75
+ resourceNames(RESOURCE_CLASSES.sns, upperCase(FUNCTION_NAME.deleteRelComplete) + "_Out")
76
76
  ]
77
77
  )
78
78
  )
79
79
 
80
80
  for (const relationship of allObjectRelationships) {
81
- let [relationshipTag, links] = checkDynamoTypeRelationship(relationship)
82
- for (const link of links) {
83
- let dynamoComponent = createDynamoDbComponentByLinks(link, relationshipTag)
84
- additionalResourcePermission.push(
85
- createIamRole(
86
- {
87
- [RESOURCE_CLASSES.dynamoDbTable]: [DYNAMO_RESOURCE.updateItem]
88
- },
89
- [
90
- resourceNames(RESOURCE_CLASSES.dynamoDbTable, upperCase(dynamoComponent.tableNameFrom)),
91
- resourceNames(RESOURCE_CLASSES.dynamoDbTable, upperCase(dynamoComponent.tableNameTo))
92
- ]
81
+ let [storageType, relationshipTag, links] = checkDynamoTypeRelationship(relationship)
82
+ if (storageType === STORAGE_TYPES.dynamoDB) {
83
+ for (const link of links) {
84
+ let dynamoComponent = createDynamoDbComponentByLinks(link, relationshipTag)
85
+ additionalResourcePermission.push(
86
+ createIamRole(
87
+ {
88
+ [RESOURCE_CLASSES.dynamoDbTable]: [DYNAMO_RESOURCE.updateItem]
89
+ },
90
+ [
91
+ resourceNames(RESOURCE_CLASSES.dynamoDbTable, upperCase(dynamoComponent.tableNameFrom)),
92
+ resourceNames(RESOURCE_CLASSES.dynamoDbTable, upperCase(dynamoComponent.tableNameTo))
93
+ ]
94
+ )
93
95
  )
94
- )
96
+ }
95
97
  }
96
98
  }
99
+
97
100
  return {
98
101
  templatePath: templatePath,
99
102
  templateData: {
@@ -84,29 +84,31 @@ function createParamForCreateSource(allObjectRelationships, srcPath) {
84
84
  [
85
85
  resourceNames(RESOURCE_CLASSES.sqs, upperCase(functionName) + upperCase(HANDLER.hdrSqs)),
86
86
  resourceNames(RESOURCE_CLASSES.sqs, upperCase(functionName) + upperCase(HANDLER.hdrSqs) + "DLQ"),
87
- resourceNames(RESOURCE_CLASSES.sns, "In" + upperCase(functionName) + upperCase(HANDLER.hdrSqs)),
88
- resourceNames(RESOURCE_CLASSES.sns, "Out" + upperCase(functionName) + upperCase(HANDLER.hdrSqs)),
89
- resourceNames(RESOURCE_CLASSES.sns, "Out" + upperCase(FUNCTION_NAME.deleteRelComplete))
87
+ resourceNames(RESOURCE_CLASSES.sns, upperCase(functionName) + "_In"),
88
+ resourceNames(RESOURCE_CLASSES.sns, upperCase(functionName) + "_Out"),
89
+ resourceNames(RESOURCE_CLASSES.sns, upperCase(FUNCTION_NAME.createRelComplete) + "_Out")
90
90
  ]
91
91
  ),
92
92
  )
93
93
  additionalResourcePermission.push(awaitingMultipleStepsRole())
94
94
 
95
95
  for (const relationship of allObjectRelationships) {
96
- let [relationshipTag, links] = checkDynamoTypeRelationship(relationship)
97
- for (const link of links) {
98
- let dynamoComponent = createDynamoDbComponentByLinks(link, relationshipTag)
99
- additionalResourcePermission.push(
100
- createIamRole(
101
- {
102
- [RESOURCE_CLASSES.dynamoDbTable]: [DYNAMO_RESOURCE.updateItem]
103
- },
104
- [
105
- resourceNames(RESOURCE_CLASSES.dynamoDbTable, upperCase(dynamoComponent.tableNameFrom)),
106
- resourceNames(RESOURCE_CLASSES.dynamoDbTable, upperCase(dynamoComponent.tableNameTo))
107
- ]
96
+ let [storageType, relationshipTag, links] = checkDynamoTypeRelationship(relationship)
97
+ if (storageType === STORAGE_TYPES.dynamoDB) {
98
+ for (const link of links) {
99
+ let dynamoComponent = createDynamoDbComponentByLinks(link, relationshipTag)
100
+ additionalResourcePermission.push(
101
+ createIamRole(
102
+ {
103
+ [RESOURCE_CLASSES.dynamoDbTable]: [DYNAMO_RESOURCE.updateItem]
104
+ },
105
+ [
106
+ resourceNames(RESOURCE_CLASSES.dynamoDbTable, upperCase(dynamoComponent.tableNameFrom)),
107
+ resourceNames(RESOURCE_CLASSES.dynamoDbTable, upperCase(dynamoComponent.tableNameTo))
108
+ ]
109
+ )
108
110
  )
109
- )
111
+ }
110
112
  }
111
113
  }
112
114
 
@@ -3,7 +3,7 @@
3
3
  Type: AWS::SNS::Topic
4
4
  Properties:
5
5
  DisplayName: "SNS Message in"
6
- TopicName: ${self:custom.iz_resourcePrefix}In<%- queueName %>
6
+ TopicName: ${self:custom.iz_serviceTag}_${self:custom.iz_stage}_<%- queueName %>_In
7
7
  ##===== SNS Subscription
8
8
  ##===== [Topic In]
9
9
  SubscriptionIn<%- queueName %>:
@@ -80,8 +80,8 @@ function createParamForCreateSource(srcPath) {
80
80
  [
81
81
  resourceNames(RESOURCE_CLASSES.sqs, upperCase(functionName)),
82
82
  resourceNames(RESOURCE_CLASSES.sqs, upperCase(functionName) + "DLQ"),
83
- resourceNames(RESOURCE_CLASSES.sns, "In" + upperCase(functionName)),
84
- resourceNames(RESOURCE_CLASSES.sns, "Out" + upperCase(functionName))
83
+ resourceNames(RESOURCE_CLASSES.sns, upperCase(functionName) + "_In"),
84
+ resourceNames(RESOURCE_CLASSES.sns, upperCase(functionName) + "_Out")
85
85
  ],
86
86
  ))
87
87
  additionalResourcePermission.push(awaitingMultipleStepsRole())
@@ -3,7 +3,7 @@
3
3
  Type: AWS::SNS::Topic
4
4
  Properties:
5
5
  DisplayName: "SNS Message out"
6
- TopicName: ${self:custom.iz_resourcePrefix}Out<%- firstLetterUpperCase(queueName) %>
6
+ TopicName: ${self:custom.iz_serviceTag}_${self:custom.iz_stage}_<%- firstLetterUpperCase(queueName) %>_Out
7
7
 
8
8
  <%_ function firstLetterUpperCase(text) {
9
9
  return text.charAt(0).toUpperCase() + text.slice(1)
@@ -73,26 +73,28 @@ function createParamForCreateSource(allObjectRelationships, srcPath) {
73
73
  [RESOURCE_CLASSES.sns]: [SNS_RESOURCE.publish]
74
74
  },
75
75
  [
76
- resourceNames(RESOURCE_CLASSES.sns, "Out" + upperCase(FUNCTION_NAME.getRelComplete))
76
+ resourceNames(RESOURCE_CLASSES.sns, upperCase(FUNCTION_NAME.getRelComplete) + "_Out")
77
77
  ]
78
78
  )
79
79
  )
80
80
 
81
81
  for (const relationship of allObjectRelationships) {
82
- let [relationshipTag, links] = checkDynamoTypeRelationship(relationship)
83
- for (const link of links) {
84
- let dynamoComponent = createDynamoDbComponentByLinks(link, relationshipTag)
85
- additionalResourcePermission.push(
86
- createIamRole(
87
- {
88
- [RESOURCE_CLASSES.dynamoDbTable]: [DYNAMO_RESOURCE.updateItem]
89
- },
90
- [
91
- resourceNames(RESOURCE_CLASSES.dynamoDbTable, upperCase(dynamoComponent.tableNameFrom)),
92
- resourceNames(RESOURCE_CLASSES.dynamoDbTable, upperCase(dynamoComponent.tableNameTo))
93
- ]
82
+ let [storageType, relationshipTag, links] = checkDynamoTypeRelationship(relationship)
83
+ if (storageType === STORAGE_TYPES.dynamoDB) {
84
+ for (const link of links) {
85
+ let dynamoComponent = createDynamoDbComponentByLinks(link, relationshipTag)
86
+ additionalResourcePermission.push(
87
+ createIamRole(
88
+ {
89
+ [RESOURCE_CLASSES.dynamoDbTable]: [DYNAMO_RESOURCE.updateItem]
90
+ },
91
+ [
92
+ resourceNames(RESOURCE_CLASSES.dynamoDbTable, upperCase(dynamoComponent.tableNameFrom)),
93
+ resourceNames(RESOURCE_CLASSES.dynamoDbTable, upperCase(dynamoComponent.tableNameTo))
94
+ ]
95
+ )
94
96
  )
95
- )
97
+ }
96
98
  }
97
99
  }
98
100
 
@@ -85,7 +85,7 @@ function createParamForCreateSource(allObjectRelationships, srcPath) {
85
85
  [
86
86
  resourceNames(RESOURCE_CLASSES.sqs, upperCase(functionName) + upperCase(HANDLER.hdrDsq)),
87
87
  resourceNames(RESOURCE_CLASSES.sqs, upperCase(functionName) + upperCase(HANDLER.hdrDsq) + "DLQ"),
88
- resourceNames(RESOURCE_CLASSES.sns, "Out" + upperCase(FUNCTION_NAME.getRelComplete)),
88
+ resourceNames(RESOURCE_CLASSES.sns, upperCase(FUNCTION_NAME.getRelComplete) + "_Out")
89
89
  ]
90
90
  )
91
91
  )
@@ -93,22 +93,25 @@ function createParamForCreateSource(allObjectRelationships, srcPath) {
93
93
  additionalResourcePermission.push(awaitingMultipleStepsRole())
94
94
 
95
95
  for (const relationship of allObjectRelationships) {
96
- let [relationshipTag, links] = checkDynamoTypeRelationship(relationship)
97
- for (const link of links) {
98
- let dynamoComponent = createDynamoDbComponentByLinks(link, relationshipTag)
99
- additionalResourcePermission.push(
100
- createIamRole(
101
- {
102
- [RESOURCE_CLASSES.dynamoDbTable]: [DYNAMO_RESOURCE.updateItem]
103
- },
104
- [
105
- resourceNames(RESOURCE_CLASSES.dynamoDbTable, upperCase(dynamoComponent.tableNameFrom)),
106
- resourceNames(RESOURCE_CLASSES.dynamoDbTable, upperCase(dynamoComponent.tableNameTo))
107
- ]
96
+ let [storageType, relationshipTag, links] = checkDynamoTypeRelationship(relationship)
97
+ if (storageType === STORAGE_TYPES.dynamoDB) {
98
+ for (const link of links) {
99
+ let dynamoComponent = createDynamoDbComponentByLinks(link, relationshipTag)
100
+ additionalResourcePermission.push(
101
+ createIamRole(
102
+ {
103
+ [RESOURCE_CLASSES.dynamoDbTable]: [DYNAMO_RESOURCE.updateItem]
104
+ },
105
+ [
106
+ resourceNames(RESOURCE_CLASSES.dynamoDbTable, upperCase(dynamoComponent.tableNameFrom)),
107
+ resourceNames(RESOURCE_CLASSES.dynamoDbTable, upperCase(dynamoComponent.tableNameTo))
108
+ ]
109
+ )
108
110
  )
109
- )
111
+ }
110
112
  }
111
113
  }
114
+
112
115
  return {
113
116
  templatePath: templatePath,
114
117
  templateData: {
@@ -72,26 +72,28 @@ function createParamForCreateSource(allObjectRelationships, srcPath) {
72
72
  [RESOURCE_CLASSES.sns]: [SNS_RESOURCE.publish]
73
73
  },
74
74
  [
75
- resourceNames(RESOURCE_CLASSES.sns, "Out" + upperCase(FUNCTION_NAME.getRelComplete)),
75
+ resourceNames(RESOURCE_CLASSES.sns, upperCase(FUNCTION_NAME.getRelComplete) + "_Out")
76
76
  ]
77
77
  )
78
78
  )
79
79
 
80
80
  for (const relationship of allObjectRelationships) {
81
- let [relationshipTag, links] = checkDynamoTypeRelationship(relationship)
82
- for (const link of links) {
83
- let dynamoComponent = createDynamoDbComponentByLinks(link, relationshipTag)
84
- additionalResourcePermission.push(
85
- createIamRole(
86
- {
87
- [RESOURCE_CLASSES.dynamoDbTable]: [DYNAMO_RESOURCE.updateItem]
88
- },
89
- [
90
- resourceNames(RESOURCE_CLASSES.dynamoDbTable, upperCase(dynamoComponent.tableNameFrom)),
91
- resourceNames(RESOURCE_CLASSES.dynamoDbTable, upperCase(dynamoComponent.tableNameTo))
92
- ]
81
+ let [storageType, relationshipTag, links] = checkDynamoTypeRelationship(relationship)
82
+ if (storageType === STORAGE_TYPES.dynamoDB) {
83
+ for (const link of links) {
84
+ let dynamoComponent = createDynamoDbComponentByLinks(link, relationshipTag)
85
+ additionalResourcePermission.push(
86
+ createIamRole(
87
+ {
88
+ [RESOURCE_CLASSES.dynamoDbTable]: [DYNAMO_RESOURCE.updateItem]
89
+ },
90
+ [
91
+ resourceNames(RESOURCE_CLASSES.dynamoDbTable, upperCase(dynamoComponent.tableNameFrom)),
92
+ resourceNames(RESOURCE_CLASSES.dynamoDbTable, upperCase(dynamoComponent.tableNameTo))
93
+ ]
94
+ )
93
95
  )
94
- )
96
+ }
95
97
  }
96
98
  }
97
99
 
@@ -38,7 +38,7 @@ const {
38
38
  checkDynamoTypeRelationship,
39
39
  createDynamoDbComponentByLinks,
40
40
  DYNAMO_RESOURCE
41
- } = require("../../../../../../../MainLibs/index.js").consts;
41
+ } = require("../../../../../../../MainLibs/src/Consts.js");
42
42
 
43
43
  const templatePath = path.join(__dirname, './template.ejs')
44
44
 
@@ -84,31 +84,34 @@ function createParamForCreateSource(allObjectRelationships, srcPath) {
84
84
  [
85
85
  resourceNames(RESOURCE_CLASSES.sqs, upperCase(functionName) + upperCase(HANDLER.hdrSqs)),
86
86
  resourceNames(RESOURCE_CLASSES.sqs, upperCase(functionName) + upperCase(HANDLER.hdrSqs) + "DLQ"),
87
- resourceNames(RESOURCE_CLASSES.sns, "In" + upperCase(functionName) + upperCase(HANDLER.hdrSqs)),
88
- resourceNames(RESOURCE_CLASSES.sns, "Out" + upperCase(functionName) + upperCase(HANDLER.hdrSqs)),
89
- resourceNames(RESOURCE_CLASSES.sns, "Out" + upperCase(FUNCTION_NAME.getRelComplete))
87
+ resourceNames(RESOURCE_CLASSES.sns, upperCase(functionName) + "_In"),
88
+ resourceNames(RESOURCE_CLASSES.sns, upperCase(functionName) + "_Out"),
89
+ resourceNames(RESOURCE_CLASSES.sns, upperCase(FUNCTION_NAME.getRelComplete) + "_Out")
90
90
  ]
91
91
  ),
92
92
  )
93
93
  additionalResourcePermission.push(awaitingMultipleStepsRole())
94
94
 
95
95
  for (const relationship of allObjectRelationships) {
96
- let [relationshipTag, links] = checkDynamoTypeRelationship(relationship)
97
- for (const link of links) {
98
- let dynamoComponent = createDynamoDbComponentByLinks(link, relationshipTag)
99
- additionalResourcePermission.push(
100
- createIamRole(
101
- {
102
- [RESOURCE_CLASSES.dynamoDbTable]: [DYNAMO_RESOURCE.updateItem]
103
- },
104
- [
105
- resourceNames(RESOURCE_CLASSES.dynamoDbTable, upperCase(dynamoComponent.tableNameFrom)),
106
- resourceNames(RESOURCE_CLASSES.dynamoDbTable, upperCase(dynamoComponent.tableNameTo))
107
- ]
96
+ let [storageType, relationshipTag, links] = checkDynamoTypeRelationship(relationship)
97
+ if (storageType === STORAGE_TYPES.dynamoDB) {
98
+ for (const link of links) {
99
+ let dynamoComponent = createDynamoDbComponentByLinks(link, relationshipTag)
100
+ additionalResourcePermission.push(
101
+ createIamRole(
102
+ {
103
+ [RESOURCE_CLASSES.dynamoDbTable]: [DYNAMO_RESOURCE.updateItem]
104
+ },
105
+ [
106
+ resourceNames(RESOURCE_CLASSES.dynamoDbTable, upperCase(dynamoComponent.tableNameFrom)),
107
+ resourceNames(RESOURCE_CLASSES.dynamoDbTable, upperCase(dynamoComponent.tableNameTo))
108
+ ]
109
+ )
108
110
  )
109
- )
111
+ }
110
112
  }
111
113
  }
114
+
112
115
  return {
113
116
  templatePath: templatePath,
114
117
  templateData: {
@@ -3,7 +3,7 @@
3
3
  Type: AWS::SNS::Topic
4
4
  Properties:
5
5
  DisplayName: "SNS Message in"
6
- TopicName: ${self:custom.iz_resourcePrefix}In<%- queueName %>
6
+ TopicName: ${self:custom.iz_serviceTag}_${self:custom.iz_stage}_<%- queueName %>_In
7
7
  ##===== SNS Subscription
8
8
  ##===== [Topic In]
9
9
  SubscriptionIn<%- queueName %>:
@@ -80,8 +80,8 @@ function createParamForCreateSource(srcPath) {
80
80
  [
81
81
  resourceNames(RESOURCE_CLASSES.sqs, upperCase(functionName)),
82
82
  resourceNames(RESOURCE_CLASSES.sqs, upperCase(functionName) + "DLQ"),
83
- resourceNames(RESOURCE_CLASSES.sns, "In" + upperCase(functionName)),
84
- resourceNames(RESOURCE_CLASSES.sns, "Out" + upperCase(functionName))
83
+ resourceNames(RESOURCE_CLASSES.sns, upperCase(functionName) + "_In"),
84
+ resourceNames(RESOURCE_CLASSES.sns, upperCase(functionName) + "_Out")
85
85
  ],
86
86
  ))
87
87
  additionalResourcePermission.push(awaitingMultipleStepsRole())
@@ -3,7 +3,7 @@
3
3
  Type: AWS::SNS::Topic
4
4
  Properties:
5
5
  DisplayName: "SNS Message out"
6
- TopicName: ${self:custom.iz_resourcePrefix}Out<%- firstLetterUpperCase(queueName) %>
6
+ TopicName: ${self:custom.iz_serviceTag}_${self:custom.iz_stage}_<%- firstLetterUpperCase(queueName) %>_Out
7
7
 
8
8
  <%_ function firstLetterUpperCase(text) {
9
9
  return text.charAt(0).toUpperCase() + text.slice(1)
@@ -75,26 +75,28 @@ function createParamForCreateSource(allObjectRelationships, srcPath) {
75
75
  createIamRole(
76
76
  { [RESOURCE_CLASSES.sns]: [SNS_RESOURCE.publish] },
77
77
  [
78
- resourceNames(RESOURCE_CLASSES.sns, "Out" + upperCase(FUNCTION_NAME.updateRelComplete))
78
+ resourceNames(RESOURCE_CLASSES.sns, upperCase(FUNCTION_NAME.updateRelComplete) + "_Out")
79
79
  ]
80
80
  )
81
81
  )
82
82
 
83
83
  for (const relationship of allObjectRelationships) {
84
- let [relationshipTag, links] = checkDynamoTypeRelationship(relationship)
85
- for (const link of links) {
86
- let dynamoComponent = createDynamoDbComponentByLinks(link, relationshipTag)
87
- additionalResourcePermission.push(
88
- createIamRole(
89
- {
90
- [RESOURCE_CLASSES.dynamoDbTable]: [DYNAMO_RESOURCE.updateItem]
91
- },
92
- [
93
- resourceNames(RESOURCE_CLASSES.dynamoDbTable, upperCase(dynamoComponent.tableNameFrom)),
94
- resourceNames(RESOURCE_CLASSES.dynamoDbTable, upperCase(dynamoComponent.tableNameTo))
95
- ]
84
+ let [storageType, relationshipTag, links] = checkDynamoTypeRelationship(relationship)
85
+ if (storageType === STORAGE_TYPES.dynamoDB) {
86
+ for (const link of links) {
87
+ let dynamoComponent = createDynamoDbComponentByLinks(link, relationshipTag)
88
+ additionalResourcePermission.push(
89
+ createIamRole(
90
+ {
91
+ [RESOURCE_CLASSES.dynamoDbTable]: [DYNAMO_RESOURCE.updateItem]
92
+ },
93
+ [
94
+ resourceNames(RESOURCE_CLASSES.dynamoDbTable, upperCase(dynamoComponent.tableNameFrom)),
95
+ resourceNames(RESOURCE_CLASSES.dynamoDbTable, upperCase(dynamoComponent.tableNameTo))
96
+ ]
97
+ )
96
98
  )
97
- )
99
+ }
98
100
  }
99
101
  }
100
102