@kensio/yulin 1.20.4 → 1.20.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 (203) hide show
  1. package/dist/service/cloudformation/resource/cfn/logs/sim-logs-cfn-value-adapter.d.ts.map +1 -1
  2. package/dist/service/cloudformation/resource/cfn/logs/sim-logs-cfn-value-adapter.js +22 -3
  3. package/dist/service/cloudformation/resource/cfn/logs/sim-logs-cfn-value-adapter.js.map +1 -1
  4. package/dist/service/cloudformation/resource/cfn/logs/sim-logs-delivery-cfn.d.ts +31 -0
  5. package/dist/service/cloudformation/resource/cfn/logs/sim-logs-delivery-cfn.d.ts.map +1 -0
  6. package/dist/service/cloudformation/resource/cfn/logs/sim-logs-delivery-cfn.js +43 -0
  7. package/dist/service/cloudformation/resource/cfn/logs/sim-logs-delivery-cfn.js.map +1 -0
  8. package/dist/service/cloudformation/resource/cfn/logs/sim-logs-delivery-destination-cfn.d.ts +32 -0
  9. package/dist/service/cloudformation/resource/cfn/logs/sim-logs-delivery-destination-cfn.d.ts.map +1 -0
  10. package/dist/service/cloudformation/resource/cfn/logs/sim-logs-delivery-destination-cfn.js +34 -0
  11. package/dist/service/cloudformation/resource/cfn/logs/sim-logs-delivery-destination-cfn.js.map +1 -0
  12. package/dist/service/cloudformation/resource/cfn/logs/sim-logs-delivery-source-cfn.d.ts +27 -0
  13. package/dist/service/cloudformation/resource/cfn/logs/sim-logs-delivery-source-cfn.d.ts.map +1 -0
  14. package/dist/service/cloudformation/resource/cfn/logs/sim-logs-delivery-source-cfn.js +39 -0
  15. package/dist/service/cloudformation/resource/cfn/logs/sim-logs-delivery-source-cfn.js.map +1 -0
  16. package/dist/service/cloudfront/cfn/distro/sim-cfn-cf-distro-creator.d.ts +6 -5
  17. package/dist/service/cloudfront/cfn/distro/sim-cfn-cf-distro-creator.d.ts.map +1 -1
  18. package/dist/service/cloudfront/cfn/distro/sim-cfn-cf-distro-creator.js +10 -8
  19. package/dist/service/cloudfront/cfn/distro/sim-cfn-cf-distro-creator.js.map +1 -1
  20. package/dist/service/cloudfront/cfn/distro/sim-cfn-cf-distro-response-headers-policy.d.ts +24 -0
  21. package/dist/service/cloudfront/cfn/distro/sim-cfn-cf-distro-response-headers-policy.d.ts.map +1 -0
  22. package/dist/service/cloudfront/cfn/distro/sim-cfn-cf-distro-response-headers-policy.js +94 -0
  23. package/dist/service/cloudfront/cfn/distro/sim-cfn-cf-distro-response-headers-policy.js.map +1 -0
  24. package/dist/service/cloudfront/controller/response-headers/sim-cf-response-headers-applicator.d.ts.map +1 -1
  25. package/dist/service/cloudfront/controller/response-headers/sim-cf-response-headers-applicator.js +4 -4
  26. package/dist/service/cloudfront/controller/response-headers/sim-cf-response-headers-applicator.js.map +1 -1
  27. package/dist/service/cloudfront/distribution/configurator/sim-cf-behavior-response-headers-policy.d.ts.map +1 -1
  28. package/dist/service/cloudfront/distribution/configurator/sim-cf-behavior-response-headers-policy.js +3 -4
  29. package/dist/service/cloudfront/distribution/configurator/sim-cf-behavior-response-headers-policy.js.map +1 -1
  30. package/dist/service/cloudfront/response-headers-policy/sim-cf-managed-response-headers-policies.d.ts +27 -0
  31. package/dist/service/cloudfront/response-headers-policy/sim-cf-managed-response-headers-policies.d.ts.map +1 -0
  32. package/dist/service/cloudfront/response-headers-policy/sim-cf-managed-response-headers-policies.js +119 -0
  33. package/dist/service/cloudfront/response-headers-policy/sim-cf-managed-response-headers-policies.js.map +1 -0
  34. package/dist/service/cloudfront/response-headers-policy/sim-cf-response-headers-policy-cors.d.ts +18 -3
  35. package/dist/service/cloudfront/response-headers-policy/sim-cf-response-headers-policy-cors.d.ts.map +1 -1
  36. package/dist/service/cloudfront/response-headers-policy/sim-cf-response-headers-policy-cors.js +28 -5
  37. package/dist/service/cloudfront/response-headers-policy/sim-cf-response-headers-policy-cors.js.map +1 -1
  38. package/dist/service/cloudfront/response-headers-policy/sim-cf-response-headers-policy-registry.d.ts +14 -4
  39. package/dist/service/cloudfront/response-headers-policy/sim-cf-response-headers-policy-registry.d.ts.map +1 -1
  40. package/dist/service/cloudfront/response-headers-policy/sim-cf-response-headers-policy-registry.js +17 -5
  41. package/dist/service/cloudfront/response-headers-policy/sim-cf-response-headers-policy-registry.js.map +1 -1
  42. package/dist/service/cloudfront/response-headers-policy/sim-cf-response-headers-policy.d.ts +6 -2
  43. package/dist/service/cloudfront/response-headers-policy/sim-cf-response-headers-policy.d.ts.map +1 -1
  44. package/dist/service/cloudfront/response-headers-policy/sim-cf-response-headers-policy.js +7 -3
  45. package/dist/service/cloudfront/response-headers-policy/sim-cf-response-headers-policy.js.map +1 -1
  46. package/dist/service/logs/cfn/delivery/sim-cfn-delivery-creator.d.ts +28 -0
  47. package/dist/service/logs/cfn/delivery/sim-cfn-delivery-creator.d.ts.map +1 -0
  48. package/dist/service/logs/cfn/delivery/sim-cfn-delivery-creator.js +52 -0
  49. package/dist/service/logs/cfn/delivery/sim-cfn-delivery-creator.js.map +1 -0
  50. package/dist/service/logs/cfn/delivery/sim-cfn-delivery-destination-creator.d.ts +30 -0
  51. package/dist/service/logs/cfn/delivery/sim-cfn-delivery-destination-creator.d.ts.map +1 -0
  52. package/dist/service/logs/cfn/delivery/sim-cfn-delivery-destination-creator.js +59 -0
  53. package/dist/service/logs/cfn/delivery/sim-cfn-delivery-destination-creator.js.map +1 -0
  54. package/dist/service/logs/cfn/delivery/sim-cfn-delivery-input.d.ts +12 -0
  55. package/dist/service/logs/cfn/delivery/sim-cfn-delivery-input.d.ts.map +1 -0
  56. package/dist/service/logs/cfn/delivery/sim-cfn-delivery-input.js +23 -0
  57. package/dist/service/logs/cfn/delivery/sim-cfn-delivery-input.js.map +1 -0
  58. package/dist/service/logs/cfn/delivery/sim-cfn-delivery-properties.d.ts +50 -0
  59. package/dist/service/logs/cfn/delivery/sim-cfn-delivery-properties.d.ts.map +1 -0
  60. package/dist/service/logs/cfn/delivery/sim-cfn-delivery-properties.js +107 -0
  61. package/dist/service/logs/cfn/delivery/sim-cfn-delivery-properties.js.map +1 -0
  62. package/dist/service/logs/cfn/delivery/sim-cfn-delivery-source-creator.d.ts +29 -0
  63. package/dist/service/logs/cfn/delivery/sim-cfn-delivery-source-creator.d.ts.map +1 -0
  64. package/dist/service/logs/cfn/delivery/sim-cfn-delivery-source-creator.js +50 -0
  65. package/dist/service/logs/cfn/delivery/sim-cfn-delivery-source-creator.js.map +1 -0
  66. package/dist/service/logs/cfn/delivery/sim-cfn-delivery-unsimulated-properties.d.ts +16 -0
  67. package/dist/service/logs/cfn/delivery/sim-cfn-delivery-unsimulated-properties.d.ts.map +1 -0
  68. package/dist/service/logs/cfn/delivery/sim-cfn-delivery-unsimulated-properties.js +39 -0
  69. package/dist/service/logs/cfn/delivery/sim-cfn-delivery-unsimulated-properties.js.map +1 -0
  70. package/dist/service/logs/cfn/sim-logs-cfn-resource-deleter.d.ts +27 -0
  71. package/dist/service/logs/cfn/sim-logs-cfn-resource-deleter.d.ts.map +1 -0
  72. package/dist/service/logs/cfn/sim-logs-cfn-resource-deleter.js +49 -0
  73. package/dist/service/logs/cfn/sim-logs-cfn-resource-deleter.js.map +1 -0
  74. package/dist/service/logs/cfn/sim-logs-cfn-resource-factory.d.ts +8 -3
  75. package/dist/service/logs/cfn/sim-logs-cfn-resource-factory.d.ts.map +1 -1
  76. package/dist/service/logs/cfn/sim-logs-cfn-resource-factory.js +48 -23
  77. package/dist/service/logs/cfn/sim-logs-cfn-resource-factory.js.map +1 -1
  78. package/dist/service/logs/cfn/sim-logs-cfn-unsupported-resource.d.ts +10 -0
  79. package/dist/service/logs/cfn/sim-logs-cfn-unsupported-resource.d.ts.map +1 -0
  80. package/dist/service/logs/cfn/sim-logs-cfn-unsupported-resource.js +13 -0
  81. package/dist/service/logs/cfn/sim-logs-cfn-unsupported-resource.js.map +1 -0
  82. package/dist/service/logs/command/authorize/sim-logs-authorizer.d.ts +9 -1
  83. package/dist/service/logs/command/authorize/sim-logs-authorizer.d.ts.map +1 -1
  84. package/dist/service/logs/command/authorize/sim-logs-authorizer.js +8 -0
  85. package/dist/service/logs/command/authorize/sim-logs-authorizer.js.map +1 -1
  86. package/dist/service/logs/command/delivery/delivery-destination.command.d.ts +67 -0
  87. package/dist/service/logs/command/delivery/delivery-destination.command.d.ts.map +1 -0
  88. package/dist/service/logs/command/delivery/delivery-destination.command.js +2 -0
  89. package/dist/service/logs/command/delivery/delivery-destination.command.js.map +1 -0
  90. package/dist/service/logs/command/delivery/delivery-source.command.d.ts +61 -0
  91. package/dist/service/logs/command/delivery/delivery-source.command.d.ts.map +1 -0
  92. package/dist/service/logs/command/delivery/delivery-source.command.js +2 -0
  93. package/dist/service/logs/command/delivery/delivery-source.command.js.map +1 -0
  94. package/dist/service/logs/command/delivery/delivery.command.d.ts +73 -0
  95. package/dist/service/logs/command/delivery/delivery.command.d.ts.map +1 -0
  96. package/dist/service/logs/command/delivery/delivery.command.js +2 -0
  97. package/dist/service/logs/command/delivery/delivery.command.js.map +1 -0
  98. package/dist/service/logs/command/delivery/sim-logs-created-delivery.d.ts +21 -0
  99. package/dist/service/logs/command/delivery/sim-logs-created-delivery.d.ts.map +1 -0
  100. package/dist/service/logs/command/delivery/sim-logs-created-delivery.js +41 -0
  101. package/dist/service/logs/command/delivery/sim-logs-created-delivery.js.map +1 -0
  102. package/dist/service/logs/command/delivery/sim-logs-delivery-commands.d.ts +38 -0
  103. package/dist/service/logs/command/delivery/sim-logs-delivery-commands.d.ts.map +1 -0
  104. package/dist/service/logs/command/delivery/sim-logs-delivery-commands.js +77 -0
  105. package/dist/service/logs/command/delivery/sim-logs-delivery-commands.js.map +1 -0
  106. package/dist/service/logs/command/delivery/sim-logs-delivery-destination-commands.d.ts +38 -0
  107. package/dist/service/logs/command/delivery/sim-logs-delivery-destination-commands.d.ts.map +1 -0
  108. package/dist/service/logs/command/delivery/sim-logs-delivery-destination-commands.js +82 -0
  109. package/dist/service/logs/command/delivery/sim-logs-delivery-destination-commands.js.map +1 -0
  110. package/dist/service/logs/command/delivery/sim-logs-delivery-detail.d.ts +19 -0
  111. package/dist/service/logs/command/delivery/sim-logs-delivery-detail.d.ts.map +1 -0
  112. package/dist/service/logs/command/delivery/sim-logs-delivery-detail.js +57 -0
  113. package/dist/service/logs/command/delivery/sim-logs-delivery-detail.js.map +1 -0
  114. package/dist/service/logs/command/delivery/sim-logs-delivery-in-use.d.ts +15 -0
  115. package/dist/service/logs/command/delivery/sim-logs-delivery-in-use.d.ts.map +1 -0
  116. package/dist/service/logs/command/delivery/sim-logs-delivery-in-use.js +26 -0
  117. package/dist/service/logs/command/delivery/sim-logs-delivery-in-use.js.map +1 -0
  118. package/dist/service/logs/command/delivery/sim-logs-delivery-input.d.ts +16 -0
  119. package/dist/service/logs/command/delivery/sim-logs-delivery-input.d.ts.map +1 -0
  120. package/dist/service/logs/command/delivery/sim-logs-delivery-input.js +28 -0
  121. package/dist/service/logs/command/delivery/sim-logs-delivery-input.js.map +1 -0
  122. package/dist/service/logs/command/delivery/sim-logs-delivery-source-commands.d.ts +37 -0
  123. package/dist/service/logs/command/delivery/sim-logs-delivery-source-commands.d.ts.map +1 -0
  124. package/dist/service/logs/command/delivery/sim-logs-delivery-source-commands.js +86 -0
  125. package/dist/service/logs/command/delivery/sim-logs-delivery-source-commands.js.map +1 -0
  126. package/dist/service/logs/command/sim-logs-command.types.d.ts +3 -0
  127. package/dist/service/logs/command/sim-logs-command.types.d.ts.map +1 -1
  128. package/dist/service/logs/delivery/sim-logs-delivery-arn.d.ts +30 -0
  129. package/dist/service/logs/delivery/sim-logs-delivery-arn.d.ts.map +1 -0
  130. package/dist/service/logs/delivery/sim-logs-delivery-arn.js +42 -0
  131. package/dist/service/logs/delivery/sim-logs-delivery-arn.js.map +1 -0
  132. package/dist/service/logs/delivery/sim-logs-delivery-destination-store.d.ts +41 -0
  133. package/dist/service/logs/delivery/sim-logs-delivery-destination-store.d.ts.map +1 -0
  134. package/dist/service/logs/delivery/sim-logs-delivery-destination-store.js +69 -0
  135. package/dist/service/logs/delivery/sim-logs-delivery-destination-store.js.map +1 -0
  136. package/dist/service/logs/delivery/sim-logs-delivery-destination-type.d.ts +16 -0
  137. package/dist/service/logs/delivery/sim-logs-delivery-destination-type.d.ts.map +1 -0
  138. package/dist/service/logs/delivery/sim-logs-delivery-destination-type.js +48 -0
  139. package/dist/service/logs/delivery/sim-logs-delivery-destination-type.js.map +1 -0
  140. package/dist/service/logs/delivery/sim-logs-delivery-destination.d.ts +27 -0
  141. package/dist/service/logs/delivery/sim-logs-delivery-destination.d.ts.map +1 -0
  142. package/dist/service/logs/delivery/sim-logs-delivery-destination.js +23 -0
  143. package/dist/service/logs/delivery/sim-logs-delivery-destination.js.map +1 -0
  144. package/dist/service/logs/delivery/sim-logs-delivery-ids.d.ts +16 -0
  145. package/dist/service/logs/delivery/sim-logs-delivery-ids.d.ts.map +1 -0
  146. package/dist/service/logs/delivery/sim-logs-delivery-ids.js +20 -0
  147. package/dist/service/logs/delivery/sim-logs-delivery-ids.js.map +1 -0
  148. package/dist/service/logs/delivery/sim-logs-delivery-output-format.d.ts +24 -0
  149. package/dist/service/logs/delivery/sim-logs-delivery-output-format.d.ts.map +1 -0
  150. package/dist/service/logs/delivery/sim-logs-delivery-output-format.js +36 -0
  151. package/dist/service/logs/delivery/sim-logs-delivery-output-format.js.map +1 -0
  152. package/dist/service/logs/delivery/sim-logs-delivery-s3-configuration.d.ts +35 -0
  153. package/dist/service/logs/delivery/sim-logs-delivery-s3-configuration.d.ts.map +1 -0
  154. package/dist/service/logs/delivery/sim-logs-delivery-s3-configuration.js +66 -0
  155. package/dist/service/logs/delivery/sim-logs-delivery-s3-configuration.js.map +1 -0
  156. package/dist/service/logs/delivery/sim-logs-delivery-source-service.d.ts +48 -0
  157. package/dist/service/logs/delivery/sim-logs-delivery-source-service.d.ts.map +1 -0
  158. package/dist/service/logs/delivery/sim-logs-delivery-source-service.js +71 -0
  159. package/dist/service/logs/delivery/sim-logs-delivery-source-service.js.map +1 -0
  160. package/dist/service/logs/delivery/sim-logs-delivery-source-store.d.ts +42 -0
  161. package/dist/service/logs/delivery/sim-logs-delivery-source-store.d.ts.map +1 -0
  162. package/dist/service/logs/delivery/sim-logs-delivery-source-store.js +64 -0
  163. package/dist/service/logs/delivery/sim-logs-delivery-source-store.js.map +1 -0
  164. package/dist/service/logs/delivery/sim-logs-delivery-source.d.ts +29 -0
  165. package/dist/service/logs/delivery/sim-logs-delivery-source.d.ts.map +1 -0
  166. package/dist/service/logs/delivery/sim-logs-delivery-source.js +29 -0
  167. package/dist/service/logs/delivery/sim-logs-delivery-source.js.map +1 -0
  168. package/dist/service/logs/delivery/sim-logs-delivery-store.d.ts +32 -0
  169. package/dist/service/logs/delivery/sim-logs-delivery-store.d.ts.map +1 -0
  170. package/dist/service/logs/delivery/sim-logs-delivery-store.js +53 -0
  171. package/dist/service/logs/delivery/sim-logs-delivery-store.js.map +1 -0
  172. package/dist/service/logs/delivery/sim-logs-delivery.d.ts +33 -0
  173. package/dist/service/logs/delivery/sim-logs-delivery.d.ts.map +1 -0
  174. package/dist/service/logs/delivery/sim-logs-delivery.js +34 -0
  175. package/dist/service/logs/delivery/sim-logs-delivery.js.map +1 -0
  176. package/dist/service/logs/error/sim-logs.error.d.ts +23 -0
  177. package/dist/service/logs/error/sim-logs.error.d.ts.map +1 -1
  178. package/dist/service/logs/error/sim-logs.error.js +27 -0
  179. package/dist/service/logs/error/sim-logs.error.js.map +1 -1
  180. package/dist/service/logs/index.d.ts +10 -1
  181. package/dist/service/logs/index.d.ts.map +1 -1
  182. package/dist/service/logs/index.js +9 -1
  183. package/dist/service/logs/index.js.map +1 -1
  184. package/dist/service/logs/sdk/sim-logs-sdk-command-router.d.ts.map +1 -1
  185. package/dist/service/logs/sdk/sim-logs-sdk-command-router.js +36 -0
  186. package/dist/service/logs/sdk/sim-logs-sdk-command-router.js.map +1 -1
  187. package/dist/service/logs/sim-logs-commands.d.ts +12 -0
  188. package/dist/service/logs/sim-logs-commands.d.ts.map +1 -1
  189. package/dist/service/logs/sim-logs-commands.js +37 -0
  190. package/dist/service/logs/sim-logs-commands.js.map +1 -1
  191. package/dist/service/logs/sim-logs-delivery-inspection.d.ts +28 -0
  192. package/dist/service/logs/sim-logs-delivery-inspection.d.ts.map +1 -0
  193. package/dist/service/logs/sim-logs-delivery-inspection.js +35 -0
  194. package/dist/service/logs/sim-logs-delivery-inspection.js.map +1 -0
  195. package/dist/service/logs/sim-logs-delivery-operations.d.ts +35 -0
  196. package/dist/service/logs/sim-logs-delivery-operations.d.ts.map +1 -0
  197. package/dist/service/logs/sim-logs-delivery-operations.js +58 -0
  198. package/dist/service/logs/sim-logs-delivery-operations.js.map +1 -0
  199. package/dist/service/logs/sim-logs.d.ts +8 -2
  200. package/dist/service/logs/sim-logs.d.ts.map +1 -1
  201. package/dist/service/logs/sim-logs.js +39 -33
  202. package/dist/service/logs/sim-logs.js.map +1 -1
  203. package/package.json +1 -1
@@ -0,0 +1,23 @@
1
+ /**
2
+ * The CreateDelivery request an AWS::Logs::Delivery Resource asks for.
3
+ *
4
+ * The template carries the S3 layout as two flat properties, and the API takes
5
+ * them nested. Neither is passed on unless the template set one of them, so a
6
+ * delivery to a log group or a Firehose stream is created without the S3
7
+ * configuration the API would refuse.
8
+ */
9
+ export function simCfnDeliveryInput(reader) {
10
+ const suffixPath = reader.optionalString("S3SuffixPath");
11
+ const enableHiveCompatiblePath = reader.optionalBoolean("S3EnableHiveCompatiblePath");
12
+ const laidOut = suffixPath !== undefined || enableHiveCompatiblePath !== undefined;
13
+ return {
14
+ deliverySourceName: reader.requiredString("DeliverySourceName"),
15
+ deliveryDestinationArn: reader.requiredString("DeliveryDestinationArn"),
16
+ recordFields: reader.optionalStringList("RecordFields"),
17
+ fieldDelimiter: reader.optionalString("FieldDelimiter"),
18
+ s3DeliveryConfiguration: laidOut
19
+ ? { suffixPath, enableHiveCompatiblePath }
20
+ : undefined,
21
+ };
22
+ }
23
+ //# sourceMappingURL=sim-cfn-delivery-input.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-cfn-delivery-input.js","sourceRoot":"","sources":["../../../../../src/service/logs/cfn/delivery/sim-cfn-delivery-input.ts"],"names":[],"mappings":"AAGA;;;;;;;GAOG;AACH,MAAM,UAAU,mBAAmB,CACjC,MAAgC;IAEhC,MAAM,UAAU,GAAG,MAAM,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC;IACzD,MAAM,wBAAwB,GAAG,MAAM,CAAC,eAAe,CACrD,4BAA4B,CAC7B,CAAC;IACF,MAAM,OAAO,GACX,UAAU,KAAK,SAAS,IAAI,wBAAwB,KAAK,SAAS,CAAC;IAErE,OAAO;QACL,kBAAkB,EAAE,MAAM,CAAC,cAAc,CAAC,oBAAoB,CAAC;QAC/D,sBAAsB,EAAE,MAAM,CAAC,cAAc,CAAC,wBAAwB,CAAC;QACvE,YAAY,EAAE,MAAM,CAAC,kBAAkB,CAAC,cAAc,CAAC;QACvD,cAAc,EAAE,MAAM,CAAC,cAAc,CAAC,gBAAgB,CAAC;QACvD,uBAAuB,EAAE,OAAO;YAC9B,CAAC,CAAC,EAAE,UAAU,EAAE,wBAAwB,EAAE;YAC1C,CAAC,CAAC,SAAS;KACd,CAAC;AACJ,CAAC"}
@@ -0,0 +1,50 @@
1
+ import type { SimCfnResource } from "../../../cloudformation/resource/sim-cfn-resource.js";
2
+ import type { SimCfnTemplateValueRecord } from "../../../cloudformation/template/value/sim-cfn-template-value.js";
3
+ /**
4
+ * A refusal naming the Resource whose properties could not be read.
5
+ */
6
+ export declare function deliveryPropertyError(logicalId: string, reason: string): Error;
7
+ interface SimCfnDeliveryPropertiesProperties {
8
+ readonly resource: SimCfnResource;
9
+ readonly properties: SimCfnTemplateValueRecord;
10
+ readonly resourceType: string;
11
+ /** The properties this Resource type is actually created from. */
12
+ readonly actedOnProperties: ReadonlySet<string>;
13
+ /** The real properties this simulation has nothing to act on, and why. */
14
+ readonly unsimulatedReasons: ReadonlyMap<string, string>;
15
+ }
16
+ /**
17
+ * Reads the CloudFormation properties of a delivery Resource.
18
+ *
19
+ * The three delivery Resource types read a handful of strings, a boolean and a
20
+ * list of strings between them, so one reader serves all three rather than
21
+ * each carrying a near identical copy. What differs between them is which
22
+ * property names it acts on, and that is passed in.
23
+ */
24
+ export declare class SimCfnDeliveryProperties {
25
+ #private;
26
+ constructor(properties: SimCfnDeliveryPropertiesProperties);
27
+ /**
28
+ * A property the Resource cannot be created without.
29
+ */
30
+ requiredString(name: string): string;
31
+ /**
32
+ * A string property, or undefined where the template leaves it out.
33
+ */
34
+ optionalString(name: string): string | undefined;
35
+ /**
36
+ * A boolean property, or undefined where the template leaves it out.
37
+ */
38
+ optionalBoolean(name: string): boolean | undefined;
39
+ /**
40
+ * A list of strings property, or undefined where the template leaves it out.
41
+ */
42
+ optionalStringList(name: string): readonly string[] | undefined;
43
+ /**
44
+ * Record every property the Resource is created without acting on.
45
+ */
46
+ recordIgnoredProperties(): void;
47
+ private recordIgnoredProperty;
48
+ }
49
+ export {};
50
+ //# sourceMappingURL=sim-cfn-delivery-properties.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-cfn-delivery-properties.d.ts","sourceRoot":"","sources":["../../../../../src/service/logs/cfn/delivery/sim-cfn-delivery-properties.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sDAAsD,CAAC;AAC3F,OAAO,KAAK,EAEV,yBAAyB,EAC1B,MAAM,kEAAkE,CAAC;AAE1E;;GAEG;AACH,wBAAgB,qBAAqB,CACnC,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,GACb,KAAK,CAIP;AAED,UAAU,kCAAkC;IAC1C,QAAQ,CAAC,QAAQ,EAAE,cAAc,CAAC;IAClC,QAAQ,CAAC,UAAU,EAAE,yBAAyB,CAAC;IAC/C,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAE9B,kEAAkE;IAClE,QAAQ,CAAC,iBAAiB,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAEhD,0EAA0E;IAC1E,QAAQ,CAAC,kBAAkB,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC1D;AAED;;;;;;;GAOG;AACH,qBAAa,wBAAwB;;IAenC,YAAY,UAAU,EAAE,kCAAkC,EAMzD;IAED;;OAEG;IACH,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAWnC;IAED;;OAEG;IACH,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAe/C;IAED;;OAEG;IACH,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS,CAejD;IAED;;OAEG;IACH,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,MAAM,EAAE,GAAG,SAAS,CAkB9D;IAED;;OAEG;IACH,uBAAuB,IAAI,IAAI,CAI9B;IAED,OAAO,CAAC,qBAAqB;CAuB9B"}
@@ -0,0 +1,107 @@
1
+ /**
2
+ * A refusal naming the Resource whose properties could not be read.
3
+ */
4
+ export function deliveryPropertyError(logicalId, reason) {
5
+ return new Error(`Invalid sim CloudWatch Logs CloudFormation Resource ${logicalId}: ${reason}`);
6
+ }
7
+ /**
8
+ * Reads the CloudFormation properties of a delivery Resource.
9
+ *
10
+ * The three delivery Resource types read a handful of strings, a boolean and a
11
+ * list of strings between them, so one reader serves all three rather than
12
+ * each carrying a near identical copy. What differs between them is which
13
+ * property names it acts on, and that is passed in.
14
+ */
15
+ export class SimCfnDeliveryProperties {
16
+ #resource;
17
+ #resourceType;
18
+ #actedOnProperties;
19
+ #unsimulatedReasons;
20
+ /**
21
+ * The template's properties, keyed for reading by name.
22
+ *
23
+ * A map rather than the record they arrived in, because every read here
24
+ * names a property the Resource type decided on and a template's keys are
25
+ * whatever it happened to carry.
26
+ */
27
+ #values;
28
+ constructor(properties) {
29
+ this.#resource = properties.resource;
30
+ this.#resourceType = properties.resourceType;
31
+ this.#actedOnProperties = properties.actedOnProperties;
32
+ this.#unsimulatedReasons = properties.unsimulatedReasons;
33
+ this.#values = new Map(Object.entries(properties.properties));
34
+ }
35
+ /**
36
+ * A property the Resource cannot be created without.
37
+ */
38
+ requiredString(name) {
39
+ const value = this.optionalString(name);
40
+ if (value === undefined) {
41
+ throw deliveryPropertyError(this.#resource.logicalId, `${name} is required on ${this.#resourceType}`);
42
+ }
43
+ return value;
44
+ }
45
+ /**
46
+ * A string property, or undefined where the template leaves it out.
47
+ */
48
+ optionalString(name) {
49
+ const value = this.#values.get(name);
50
+ if (value === undefined) {
51
+ return undefined;
52
+ }
53
+ if (typeof value !== "string") {
54
+ throw deliveryPropertyError(this.#resource.logicalId, `${name} must be a string`);
55
+ }
56
+ return value;
57
+ }
58
+ /**
59
+ * A boolean property, or undefined where the template leaves it out.
60
+ */
61
+ optionalBoolean(name) {
62
+ const value = this.#values.get(name);
63
+ if (value === undefined) {
64
+ return undefined;
65
+ }
66
+ if (typeof value !== "boolean") {
67
+ throw deliveryPropertyError(this.#resource.logicalId, `${name} must be a boolean`);
68
+ }
69
+ return value;
70
+ }
71
+ /**
72
+ * A list of strings property, or undefined where the template leaves it out.
73
+ */
74
+ optionalStringList(name) {
75
+ const value = this.#values.get(name);
76
+ if (value === undefined) {
77
+ return undefined;
78
+ }
79
+ if (!Array.isArray(value) ||
80
+ value.some((entry) => typeof entry !== "string")) {
81
+ throw deliveryPropertyError(this.#resource.logicalId, `${name} must be a list of strings`);
82
+ }
83
+ return value;
84
+ }
85
+ /**
86
+ * Record every property the Resource is created without acting on.
87
+ */
88
+ recordIgnoredProperties() {
89
+ for (const name of this.#values.keys()) {
90
+ this.recordIgnoredProperty(name);
91
+ }
92
+ }
93
+ recordIgnoredProperty(name) {
94
+ if (this.#actedOnProperties.has(name)) {
95
+ return;
96
+ }
97
+ const unsimulatedReason = this.#unsimulatedReasons.get(name);
98
+ if (unsimulatedReason === undefined) {
99
+ this.#resource.ignoreProperty(name, `${name} is not a property simulated CloudWatch Logs knows about, ` +
100
+ `so the Resource is created without it`);
101
+ return;
102
+ }
103
+ this.#resource.ignoreProperty(name, `${name} is a real ${this.#resourceType} property simulated CloudWatch ` +
104
+ `Logs does not act on: ${unsimulatedReason}`);
105
+ }
106
+ }
107
+ //# sourceMappingURL=sim-cfn-delivery-properties.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-cfn-delivery-properties.js","sourceRoot":"","sources":["../../../../../src/service/logs/cfn/delivery/sim-cfn-delivery-properties.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,29 @@
1
+ import type { SimCfnResource } from "../../../cloudformation/resource/sim-cfn-resource.js";
2
+ import type { SimCfnTemplateValueRecord } from "../../../cloudformation/template/value/sim-cfn-template-value.js";
3
+ import type { SimLogsDeliverySource } from "../../delivery/sim-logs-delivery-source.js";
4
+ import type { SimLogs } from "../../sim-logs.js";
5
+ interface SimCfnDeliverySourceCreatorProperties {
6
+ readonly logs: SimLogs;
7
+ }
8
+ /**
9
+ * Creates simulated delivery sources from AWS::Logs::DeliverySource Resources.
10
+ *
11
+ * Creation goes through the ordinary command rather than straight to the
12
+ * store, so a template hits the same refusals an SDK caller would: a
13
+ * distribution that already has a delivery source, and a CloudFront source
14
+ * declared in a stack outside us-east-1.
15
+ */
16
+ export declare class SimCfnDeliverySourceCreator {
17
+ #private;
18
+ constructor(properties: SimCfnDeliverySourceCreatorProperties);
19
+ /**
20
+ * Create a delivery source from an AWS::Logs::DeliverySource Resource.
21
+ */
22
+ create(resource: SimCfnResource, properties: SimCfnTemplateValueRecord): Promise<SimLogsDeliverySource>;
23
+ /**
24
+ * Delete a delivery source created from a CloudFormation Resource.
25
+ */
26
+ delete(source: SimLogsDeliverySource): Promise<void>;
27
+ }
28
+ export {};
29
+ //# sourceMappingURL=sim-cfn-delivery-source-creator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-cfn-delivery-source-creator.d.ts","sourceRoot":"","sources":["../../../../../src/service/logs/cfn/delivery/sim-cfn-delivery-source-creator.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sDAAsD,CAAC;AAC3F,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,kEAAkE,CAAC;AAClH,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,4CAA4C,CAAC;AACxF,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAOjD,UAAU,qCAAqC;IAC7C,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;CACxB;AAED;;;;;;;GAOG;AACH,qBAAa,2BAA2B;;IAGtC,YAAY,UAAU,EAAE,qCAAqC,EAE5D;IAED;;OAEG;IACG,MAAM,CACV,QAAQ,EAAE,cAAc,EACxB,UAAU,EAAE,yBAAyB,GACpC,OAAO,CAAC,qBAAqB,CAAC,CA4BhC;IAED;;OAEG;IACG,MAAM,CAAC,MAAM,EAAE,qBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC,CAEzD;CACF"}
@@ -0,0 +1,50 @@
1
+ import { assertDefined } from "../../../../util/type-guard/defined.js";
2
+ import { SimCfnDeliveryProperties } from "./sim-cfn-delivery-properties.js";
3
+ import { deliverySourceUnsimulatedReasons } from "./sim-cfn-delivery-unsimulated-properties.js";
4
+ const resourceType = "AWS::Logs::DeliverySource";
5
+ const actedOnProperties = new Set(["Name", "ResourceArn", "LogType"]);
6
+ /**
7
+ * Creates simulated delivery sources from AWS::Logs::DeliverySource Resources.
8
+ *
9
+ * Creation goes through the ordinary command rather than straight to the
10
+ * store, so a template hits the same refusals an SDK caller would: a
11
+ * distribution that already has a delivery source, and a CloudFront source
12
+ * declared in a stack outside us-east-1.
13
+ */
14
+ export class SimCfnDeliverySourceCreator {
15
+ #logs;
16
+ constructor(properties) {
17
+ this.#logs = properties.logs;
18
+ }
19
+ /**
20
+ * Create a delivery source from an AWS::Logs::DeliverySource Resource.
21
+ */
22
+ async create(resource, properties) {
23
+ const reader = new SimCfnDeliveryProperties({
24
+ resource,
25
+ properties,
26
+ resourceType,
27
+ actedOnProperties,
28
+ unsimulatedReasons: deliverySourceUnsimulatedReasons,
29
+ });
30
+ const name = reader.requiredString("Name");
31
+ reader.recordIgnoredProperties();
32
+ await this.#logs.putDeliverySource({
33
+ input: {
34
+ name,
35
+ resourceArn: reader.requiredString("ResourceArn"),
36
+ logType: reader.requiredString("LogType"),
37
+ },
38
+ });
39
+ const source = this.#logs.findDeliverySource(name);
40
+ assertDefined(source, `sim CloudWatch Logs delivery source for CloudFormation Resource ${resource.logicalId}`);
41
+ return source;
42
+ }
43
+ /**
44
+ * Delete a delivery source created from a CloudFormation Resource.
45
+ */
46
+ async delete(source) {
47
+ await this.#logs.deleteDeliverySource({ input: { name: source.name } });
48
+ }
49
+ }
50
+ //# sourceMappingURL=sim-cfn-delivery-source-creator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-cfn-delivery-source-creator.js","sourceRoot":"","sources":["../../../../../src/service/logs/cfn/delivery/sim-cfn-delivery-source-creator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,wCAAwC,CAAC;AAKvE,OAAO,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAC;AAC5E,OAAO,EAAE,gCAAgC,EAAE,MAAM,8CAA8C,CAAC;AAEhG,MAAM,YAAY,GAAG,2BAA2B,CAAC;AACjD,MAAM,iBAAiB,GAAG,IAAI,GAAG,CAAC,CAAC,MAAM,EAAE,aAAa,EAAE,SAAS,CAAC,CAAC,CAAC;AAMtE;;;;;;;GAOG;AACH,MAAM,OAAO,2BAA2B;IAC7B,KAAK,CAAU;IAExB,YAAY,UAAiD;QAC3D,IAAI,CAAC,KAAK,GAAG,UAAU,CAAC,IAAI,CAAC;IAC/B,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,MAAM,CACV,QAAwB,EACxB,UAAqC;QAErC,MAAM,MAAM,GAAG,IAAI,wBAAwB,CAAC;YAC1C,QAAQ;YACR,UAAU;YACV,YAAY;YACZ,iBAAiB;YACjB,kBAAkB,EAAE,gCAAgC;SACrD,CAAC,CAAC;QACH,MAAM,IAAI,GAAG,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;QAE3C,MAAM,CAAC,uBAAuB,EAAE,CAAC;QAEjC,MAAM,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC;YACjC,KAAK,EAAE;gBACL,IAAI;gBACJ,WAAW,EAAE,MAAM,CAAC,cAAc,CAAC,aAAa,CAAC;gBACjD,OAAO,EAAE,MAAM,CAAC,cAAc,CAAC,SAAS,CAAC;aAC1C;SACF,CAAC,CAAC;QAEH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;QAEnD,aAAa,CACX,MAAM,EACN,mEAAmE,QAAQ,CAAC,SAAS,EAAE,CACxF,CAAC;QAEF,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,MAAM,CAAC,MAA6B;QACxC,MAAM,IAAI,CAAC,KAAK,CAAC,oBAAoB,CAAC,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;IAC1E,CAAC;CACF"}
@@ -0,0 +1,16 @@
1
+ /**
2
+ * The AWS::Logs::DeliverySource properties this simulation has nothing to act
3
+ * on, and why.
4
+ */
5
+ export declare const deliverySourceUnsimulatedReasons: ReadonlyMap<string, string>;
6
+ /**
7
+ * The AWS::Logs::DeliveryDestination properties this simulation has nothing to
8
+ * act on, and why.
9
+ */
10
+ export declare const deliveryDestinationUnsimulatedReasons: ReadonlyMap<string, string>;
11
+ /**
12
+ * The AWS::Logs::Delivery properties this simulation has nothing to act on,
13
+ * and why.
14
+ */
15
+ export declare const deliveryUnsimulatedReasons: ReadonlyMap<string, string>;
16
+ //# sourceMappingURL=sim-cfn-delivery-unsimulated-properties.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-cfn-delivery-unsimulated-properties.d.ts","sourceRoot":"","sources":["../../../../../src/service/logs/cfn/delivery/sim-cfn-delivery-unsimulated-properties.ts"],"names":[],"mappings":"AAIA;;;GAGG;AACH,eAAO,MAAM,gCAAgC,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAQrE,CAAC;AAEL;;;GAGG;AACH,eAAO,MAAM,qCAAqC,EAAE,WAAW,CAC7D,MAAM,EACN,MAAM,CAaN,CAAC;AAEH;;;GAGG;AACH,eAAO,MAAM,0BAA0B,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAEjE,CAAC"}
@@ -0,0 +1,39 @@
1
+ const tagsReason = "delivery resource tags are not simulated, so nothing reads them back and " +
2
+ "nothing is billed or grouped by them";
3
+ /**
4
+ * The AWS::Logs::DeliverySource properties this simulation has nothing to act
5
+ * on, and why.
6
+ */
7
+ export const deliverySourceUnsimulatedReasons = new Map([
8
+ ["Tags", tagsReason],
9
+ [
10
+ "DeliverySourceConfiguration",
11
+ "the configuration map only matters to the services whose delivery " +
12
+ "takes one, and CloudFront is the only source modelled here",
13
+ ],
14
+ ]);
15
+ /**
16
+ * The AWS::Logs::DeliveryDestination properties this simulation has nothing to
17
+ * act on, and why.
18
+ */
19
+ export const deliveryDestinationUnsimulatedReasons = new Map([
20
+ ["Tags", tagsReason],
21
+ [
22
+ "DeliveryDestinationType",
23
+ "the kind of destination is read off DestinationResourceArn here, as " +
24
+ "CloudWatch Logs reads it, so a declared one would be ignored or wrong",
25
+ ],
26
+ [
27
+ "DeliveryDestinationPolicy",
28
+ "the policy only decides which other accounts may deliver here, and " +
29
+ "cross-account delivery is not simulated",
30
+ ],
31
+ ]);
32
+ /**
33
+ * The AWS::Logs::Delivery properties this simulation has nothing to act on,
34
+ * and why.
35
+ */
36
+ export const deliveryUnsimulatedReasons = new Map([
37
+ ["Tags", tagsReason],
38
+ ]);
39
+ //# sourceMappingURL=sim-cfn-delivery-unsimulated-properties.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-cfn-delivery-unsimulated-properties.js","sourceRoot":"","sources":["../../../../../src/service/logs/cfn/delivery/sim-cfn-delivery-unsimulated-properties.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,GACd,2EAA2E;IAC3E,sCAAsC,CAAC;AAEzC;;;GAGG;AACH,MAAM,CAAC,MAAM,gCAAgC,GAC3C,IAAI,GAAG,CAAC;IACN,CAAC,MAAM,EAAE,UAAU,CAAC;IACpB;QACE,6BAA6B;QAC7B,oEAAoE;YAClE,4DAA4D;KAC/D;CACF,CAAC,CAAC;AAEL;;;GAGG;AACH,MAAM,CAAC,MAAM,qCAAqC,GAG9C,IAAI,GAAG,CAAC;IACV,CAAC,MAAM,EAAE,UAAU,CAAC;IACpB;QACE,yBAAyB;QACzB,sEAAsE;YACpE,uEAAuE;KAC1E;IACD;QACE,2BAA2B;QAC3B,qEAAqE;YACnE,yCAAyC;KAC5C;CACF,CAAC,CAAC;AAEH;;;GAGG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAgC,IAAI,GAAG,CAAC;IAC7E,CAAC,MAAM,EAAE,UAAU,CAAC;CACrB,CAAC,CAAC"}
@@ -0,0 +1,27 @@
1
+ import type { SimCfnResource } from "../../cloudformation/resource/sim-cfn-resource.js";
2
+ import type { SimCfnDeliveryCreator } from "./delivery/sim-cfn-delivery-creator.js";
3
+ import type { SimCfnDeliveryDestinationCreator } from "./delivery/sim-cfn-delivery-destination-creator.js";
4
+ import type { SimCfnDeliverySourceCreator } from "./delivery/sim-cfn-delivery-source-creator.js";
5
+ import type { SimCfnLogGroupCreator } from "./group/sim-cfn-log-group-creator.js";
6
+ interface SimLogsCfnResourceDeleterProperties {
7
+ readonly logGroups: SimCfnLogGroupCreator;
8
+ readonly deliverySources: SimCfnDeliverySourceCreator;
9
+ readonly deliveryDestinations: SimCfnDeliveryDestinationCreator;
10
+ readonly deliveries: SimCfnDeliveryCreator;
11
+ }
12
+ /**
13
+ * Removes the simulated CloudWatch Logs resources a Stack created.
14
+ *
15
+ * Each Resource type is given back to whatever created it. A deletion
16
+ * therefore goes through the same command a caller would have used.
17
+ */
18
+ export declare class SimLogsCfnResourceDeleter {
19
+ #private;
20
+ constructor(properties: SimLogsCfnResourceDeleterProperties);
21
+ /**
22
+ * Delete the resource a CloudFormation Resource created.
23
+ */
24
+ delete(resourceTypeName: string, resource: SimCfnResource): Promise<void>;
25
+ }
26
+ export {};
27
+ //# sourceMappingURL=sim-logs-cfn-resource-deleter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-logs-cfn-resource-deleter.d.ts","sourceRoot":"","sources":["../../../../src/service/logs/cfn/sim-logs-cfn-resource-deleter.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mDAAmD,CAAC;AAKxF,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,wCAAwC,CAAC;AACpF,OAAO,KAAK,EAAE,gCAAgC,EAAE,MAAM,oDAAoD,CAAC;AAC3G,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,+CAA+C,CAAC;AACjG,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAC;AAGlF,UAAU,mCAAmC;IAC3C,QAAQ,CAAC,SAAS,EAAE,qBAAqB,CAAC;IAC1C,QAAQ,CAAC,eAAe,EAAE,2BAA2B,CAAC;IACtD,QAAQ,CAAC,oBAAoB,EAAE,gCAAgC,CAAC;IAChE,QAAQ,CAAC,UAAU,EAAE,qBAAqB,CAAC;CAC5C;AAED;;;;;GAKG;AACH,qBAAa,yBAAyB;;IAGpC,YAAY,UAAU,EAAE,mCAAmC,EAE1D;IAED;;OAEG;IACG,MAAM,CACV,gBAAgB,EAAE,MAAM,EACxB,QAAQ,EAAE,cAAc,GACvB,OAAO,CAAC,IAAI,CAAC,CAgCf;CACF"}
@@ -0,0 +1,49 @@
1
+ import { assertDefined } from "../../../util/type-guard/defined.js";
2
+ import { unsupportedSimLogsResourceType } from "./sim-logs-cfn-unsupported-resource.js";
3
+ /**
4
+ * Removes the simulated CloudWatch Logs resources a Stack created.
5
+ *
6
+ * Each Resource type is given back to whatever created it. A deletion
7
+ * therefore goes through the same command a caller would have used.
8
+ */
9
+ export class SimLogsCfnResourceDeleter {
10
+ #creators;
11
+ constructor(properties) {
12
+ this.#creators = properties;
13
+ }
14
+ /**
15
+ * Delete the resource a CloudFormation Resource created.
16
+ */
17
+ async delete(resourceTypeName, resource) {
18
+ switch (resourceTypeName) {
19
+ case "LogGroup": {
20
+ this.#creators.logGroups.delete(created(resource));
21
+ return;
22
+ }
23
+ case "DeliverySource": {
24
+ await this.#creators.deliverySources.delete(created(resource));
25
+ return;
26
+ }
27
+ case "DeliveryDestination": {
28
+ await this.#creators.deliveryDestinations.delete(created(resource));
29
+ return;
30
+ }
31
+ case "Delivery": {
32
+ await this.#creators.deliveries.delete(created(resource));
33
+ return;
34
+ }
35
+ default: {
36
+ throw unsupportedSimLogsResourceType(resourceTypeName, " deletion");
37
+ }
38
+ }
39
+ }
40
+ }
41
+ /**
42
+ * The simulated resource a CloudFormation Resource was created as.
43
+ */
44
+ function created(resource) {
45
+ const simResource = resource.simResource;
46
+ assertDefined(simResource, `sim CloudWatch Logs resource for CloudFormation Resource ${resource.logicalId}`);
47
+ return simResource;
48
+ }
49
+ //# sourceMappingURL=sim-logs-cfn-resource-deleter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-logs-cfn-resource-deleter.js","sourceRoot":"","sources":["../../../../src/service/logs/cfn/sim-logs-cfn-resource-deleter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,qCAAqC,CAAC;AAUpE,OAAO,EAAE,8BAA8B,EAAE,MAAM,wCAAwC,CAAC;AASxF;;;;;GAKG;AACH,MAAM,OAAO,yBAAyB;IAC3B,SAAS,CAAsC;IAExD,YAAY,UAA+C;QACzD,IAAI,CAAC,SAAS,GAAG,UAAU,CAAC;IAC9B,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,MAAM,CACV,gBAAwB,EACxB,QAAwB;QAExB,QAAQ,gBAAgB,EAAE,CAAC;YACzB,KAAK,UAAU,EAAE,CAAC;gBAChB,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,CAAkB,QAAQ,CAAC,CAAC,CAAC;gBAEpE,OAAO;YACT,CAAC;YACD,KAAK,gBAAgB,EAAE,CAAC;gBACtB,MAAM,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC,MAAM,CACzC,OAAO,CAAwB,QAAQ,CAAC,CACzC,CAAC;gBAEF,OAAO;YACT,CAAC;YACD,KAAK,qBAAqB,EAAE,CAAC;gBAC3B,MAAM,IAAI,CAAC,SAAS,CAAC,oBAAoB,CAAC,MAAM,CAC9C,OAAO,CAA6B,QAAQ,CAAC,CAC9C,CAAC;gBAEF,OAAO;YACT,CAAC;YACD,KAAK,UAAU,EAAE,CAAC;gBAChB,MAAM,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,MAAM,CACpC,OAAO,CAAkB,QAAQ,CAAC,CACnC,CAAC;gBAEF,OAAO;YACT,CAAC;YACD,SAAS,CAAC;gBACR,MAAM,8BAA8B,CAAC,gBAAgB,EAAE,WAAW,CAAC,CAAC;YACtE,CAAC;QACH,CAAC;IACH,CAAC;CACF;AAED;;GAEG;AACH,SAAS,OAAO,CAAI,QAAwB;IAC1C,MAAM,WAAW,GAAG,QAAQ,CAAC,WAA4B,CAAC;IAE1D,aAAa,CACX,WAAW,EACX,4DAA4D,QAAQ,CAAC,SAAS,EAAE,CACjF,CAAC;IAEF,OAAO,WAAW,CAAC;AACrB,CAAC"}
@@ -7,9 +7,14 @@ interface SimLogsCfnResourceFactoryProperties {
7
7
  /**
8
8
  * CloudFormation Resource factory for simulated CloudWatch Logs resources.
9
9
  *
10
- * AWS::Logs::LogGroup is the only Resource type here so far. The others,
11
- * subscription filters and metric filters most of all, need machinery this
12
- * simulation does not have yet.
10
+ * Log groups and the three delivery Resource types. Delivery is the whole of
11
+ * CloudFront standard logging v2 in a template. A distribution carries no
12
+ * logging property of its own, and a stack that turns logging on is made of
13
+ * those three Resources and nothing else.
14
+ *
15
+ * Subscription filters and metric filters are not created here. Both need
16
+ * machinery this simulation does not have yet, and a stack declaring one
17
+ * records it as a skip.
13
18
  */
14
19
  export declare class SimLogsCfnResourceFactory implements SimCfnServiceResourceFactory {
15
20
  #private;
@@ -1 +1 @@
1
- {"version":3,"file":"sim-logs-cfn-resource-factory.d.ts","sourceRoot":"","sources":["../../../../src/service/logs/cfn/sim-logs-cfn-resource-factory.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,wEAAwE,CAAC;AAC3H,OAAO,KAAK,EACV,cAAc,EACd,sCAAsC,EACvC,MAAM,mDAAmD,CAAC;AAE3D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAK9C,UAAU,mCAAmC;IAC3C,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;CACxB;AAED;;;;;;GAMG;AACH,qBAAa,yBAA0B,YAAW,4BAA4B;;IAG5E,YAAY,UAAU,EAAE,mCAAmC,EAI1D;IAED;;;OAGG;IACH,MAAM,CACJ,gBAAgB,EAAE,MAAM,EACxB,QAAQ,EAAE,cAAc,EACxB,OAAO,EAAE,sCAAsC,GAC9C,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAS7B;IAED;;;OAGG;IACH,MAAM,CAAC,gBAAgB,EAAE,MAAM,EAAE,QAAQ,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAaxE;CACF"}
1
+ {"version":3,"file":"sim-logs-cfn-resource-factory.d.ts","sourceRoot":"","sources":["../../../../src/service/logs/cfn/sim-logs-cfn-resource-factory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,wEAAwE,CAAC;AAC3H,OAAO,KAAK,EACV,cAAc,EACd,sCAAsC,EACvC,MAAM,mDAAmD,CAAC;AAC3D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAQ9C,UAAU,mCAAmC;IAC3C,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;CACxB;AAED;;;;;;;;;;;GAWG;AACH,qBAAa,yBAA0B,YAAW,4BAA4B;;IAO5E,YAAY,UAAU,EAAE,mCAAmC,EAa1D;IAED;;;OAGG;IACG,MAAM,CACV,gBAAgB,EAAE,MAAM,EACxB,QAAQ,EAAE,cAAc,EACxB,OAAO,EAAE,sCAAsC,GAC9C,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAoB7B;IAED;;;OAGG;IACG,MAAM,CACV,gBAAgB,EAAE,MAAM,EACxB,QAAQ,EAAE,cAAc,GACvB,OAAO,CAAC,IAAI,CAAC,CAEf;CACF"}
@@ -1,44 +1,69 @@
1
- import { assertDefined } from "../../../util/type-guard/defined.js";
1
+ import { SimCfnDeliveryCreator } from "./delivery/sim-cfn-delivery-creator.js";
2
+ import { SimCfnDeliveryDestinationCreator } from "./delivery/sim-cfn-delivery-destination-creator.js";
3
+ import { SimCfnDeliverySourceCreator } from "./delivery/sim-cfn-delivery-source-creator.js";
2
4
  import { SimCfnLogGroupCreator } from "./group/sim-cfn-log-group-creator.js";
3
- const logGroupResourceTypeName = "LogGroup";
5
+ import { SimLogsCfnResourceDeleter } from "./sim-logs-cfn-resource-deleter.js";
6
+ import { unsupportedSimLogsResourceType } from "./sim-logs-cfn-unsupported-resource.js";
4
7
  /**
5
8
  * CloudFormation Resource factory for simulated CloudWatch Logs resources.
6
9
  *
7
- * AWS::Logs::LogGroup is the only Resource type here so far. The others,
8
- * subscription filters and metric filters most of all, need machinery this
9
- * simulation does not have yet.
10
+ * Log groups and the three delivery Resource types. Delivery is the whole of
11
+ * CloudFront standard logging v2 in a template. A distribution carries no
12
+ * logging property of its own, and a stack that turns logging on is made of
13
+ * those three Resources and nothing else.
14
+ *
15
+ * Subscription filters and metric filters are not created here. Both need
16
+ * machinery this simulation does not have yet, and a stack declaring one
17
+ * records it as a skip.
10
18
  */
11
19
  export class SimLogsCfnResourceFactory {
12
- #logGroupCreator;
20
+ #logGroups;
21
+ #deliverySources;
22
+ #deliveryDestinations;
23
+ #deliveries;
24
+ #deleter;
13
25
  constructor(properties) {
14
- this.#logGroupCreator = new SimCfnLogGroupCreator({
15
- logs: properties.logs,
26
+ this.#logGroups = new SimCfnLogGroupCreator(properties);
27
+ this.#deliverySources = new SimCfnDeliverySourceCreator(properties);
28
+ this.#deliveryDestinations = new SimCfnDeliveryDestinationCreator(properties);
29
+ this.#deliveries = new SimCfnDeliveryCreator(properties);
30
+ this.#deleter = new SimLogsCfnResourceDeleter({
31
+ logGroups: this.#logGroups,
32
+ deliverySources: this.#deliverySources,
33
+ deliveryDestinations: this.#deliveryDestinations,
34
+ deliveries: this.#deliveries,
16
35
  });
17
36
  }
18
37
  /**
19
38
  * Create a simulated CloudWatch Logs resource from a CloudFormation
20
39
  * Resource.
21
40
  */
22
- create(resourceTypeName, resource, context) {
23
- requireLogGroupResourceType(resourceTypeName, "");
24
- return Promise.resolve(this.#logGroupCreator.create(resource, context.resolvedProperties ?? resource.properties));
41
+ async create(resourceTypeName, resource, context) {
42
+ const values = context.resolvedProperties ?? resource.properties;
43
+ switch (resourceTypeName) {
44
+ case "LogGroup": {
45
+ return this.#logGroups.create(resource, values);
46
+ }
47
+ case "DeliverySource": {
48
+ return await this.#deliverySources.create(resource, values);
49
+ }
50
+ case "DeliveryDestination": {
51
+ return await this.#deliveryDestinations.create(resource, values);
52
+ }
53
+ case "Delivery": {
54
+ return await this.#deliveries.create(resource, values);
55
+ }
56
+ default: {
57
+ throw unsupportedSimLogsResourceType(resourceTypeName, "");
58
+ }
59
+ }
25
60
  }
26
61
  /**
27
62
  * Delete a simulated CloudWatch Logs resource created from a CloudFormation
28
63
  * Resource.
29
64
  */
30
- delete(resourceTypeName, resource) {
31
- requireLogGroupResourceType(resourceTypeName, " deletion");
32
- const group = resource.simResource;
33
- assertDefined(group, `sim CloudWatch Logs log group for CloudFormation Resource ${resource.logicalId}`);
34
- this.#logGroupCreator.delete(group);
35
- return Promise.resolve();
36
- }
37
- }
38
- function requireLogGroupResourceType(resourceTypeName, operationSuffix) {
39
- if (resourceTypeName !== logGroupResourceTypeName) {
40
- throw new Error(`Unsupported sim CloudWatch Logs CloudFormation Resource ` +
41
- `${resourceTypeName}${operationSuffix}`);
65
+ async delete(resourceTypeName, resource) {
66
+ await this.#deleter.delete(resourceTypeName, resource);
42
67
  }
43
68
  }
44
69
  //# sourceMappingURL=sim-logs-cfn-resource-factory.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sim-logs-cfn-resource-factory.js","sourceRoot":"","sources":["../../../../src/service/logs/cfn/sim-logs-cfn-resource-factory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,qCAAqC,CAAC;AAQpE,OAAO,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAC;AAE7E,MAAM,wBAAwB,GAAG,UAAU,CAAC;AAM5C;;;;;;GAMG;AACH,MAAM,OAAO,yBAAyB;IAC3B,gBAAgB,CAAwB;IAEjD,YAAY,UAA+C;QACzD,IAAI,CAAC,gBAAgB,GAAG,IAAI,qBAAqB,CAAC;YAChD,IAAI,EAAE,UAAU,CAAC,IAAI;SACtB,CAAC,CAAC;IACL,CAAC;IAED;;;OAGG;IACH,MAAM,CACJ,gBAAwB,EACxB,QAAwB,EACxB,OAA+C;QAE/C,2BAA2B,CAAC,gBAAgB,EAAE,EAAE,CAAC,CAAC;QAElD,OAAO,OAAO,CAAC,OAAO,CACpB,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAC1B,QAAQ,EACR,OAAO,CAAC,kBAAkB,IAAI,QAAQ,CAAC,UAAU,CAClD,CACF,CAAC;IACJ,CAAC;IAED;;;OAGG;IACH,MAAM,CAAC,gBAAwB,EAAE,QAAwB;QACvD,2BAA2B,CAAC,gBAAgB,EAAE,WAAW,CAAC,CAAC;QAE3D,MAAM,KAAK,GAAG,QAAQ,CAAC,WAA0C,CAAC;QAElE,aAAa,CACX,KAAK,EACL,6DAA6D,QAAQ,CAAC,SAAS,EAAE,CAClF,CAAC;QAEF,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAEpC,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC3B,CAAC;CACF;AAED,SAAS,2BAA2B,CAClC,gBAAwB,EACxB,eAAuB;IAEvB,IAAI,gBAAgB,KAAK,wBAAwB,EAAE,CAAC;QAClD,MAAM,IAAI,KAAK,CACb,0DAA0D;YACxD,GAAG,gBAAgB,GAAG,eAAe,EAAE,CAC1C,CAAC;IACJ,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"sim-logs-cfn-resource-factory.js","sourceRoot":"","sources":["../../../../src/service/logs/cfn/sim-logs-cfn-resource-factory.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,qBAAqB,EAAE,MAAM,wCAAwC,CAAC;AAC/E,OAAO,EAAE,gCAAgC,EAAE,MAAM,oDAAoD,CAAC;AACtG,OAAO,EAAE,2BAA2B,EAAE,MAAM,+CAA+C,CAAC;AAC5F,OAAO,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAC;AAC7E,OAAO,EAAE,yBAAyB,EAAE,MAAM,oCAAoC,CAAC;AAC/E,OAAO,EAAE,8BAA8B,EAAE,MAAM,wCAAwC,CAAC;AAMxF;;;;;;;;;;;GAWG;AACH,MAAM,OAAO,yBAAyB;IAC3B,UAAU,CAAwB;IAClC,gBAAgB,CAA8B;IAC9C,qBAAqB,CAAmC;IACxD,WAAW,CAAwB;IACnC,QAAQ,CAA4B;IAE7C,YAAY,UAA+C;QACzD,IAAI,CAAC,UAAU,GAAG,IAAI,qBAAqB,CAAC,UAAU,CAAC,CAAC;QACxD,IAAI,CAAC,gBAAgB,GAAG,IAAI,2BAA2B,CAAC,UAAU,CAAC,CAAC;QACpE,IAAI,CAAC,qBAAqB,GAAG,IAAI,gCAAgC,CAC/D,UAAU,CACX,CAAC;QACF,IAAI,CAAC,WAAW,GAAG,IAAI,qBAAqB,CAAC,UAAU,CAAC,CAAC;QACzD,IAAI,CAAC,QAAQ,GAAG,IAAI,yBAAyB,CAAC;YAC5C,SAAS,EAAE,IAAI,CAAC,UAAU;YAC1B,eAAe,EAAE,IAAI,CAAC,gBAAgB;YACtC,oBAAoB,EAAE,IAAI,CAAC,qBAAqB;YAChD,UAAU,EAAE,IAAI,CAAC,WAAW;SAC7B,CAAC,CAAC;IACL,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,MAAM,CACV,gBAAwB,EACxB,QAAwB,EACxB,OAA+C;QAE/C,MAAM,MAAM,GAAG,OAAO,CAAC,kBAAkB,IAAI,QAAQ,CAAC,UAAU,CAAC;QAEjE,QAAQ,gBAAgB,EAAE,CAAC;YACzB,KAAK,UAAU,EAAE,CAAC;gBAChB,OAAO,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;YAClD,CAAC;YACD,KAAK,gBAAgB,EAAE,CAAC;gBACtB,OAAO,MAAM,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;YAC9D,CAAC;YACD,KAAK,qBAAqB,EAAE,CAAC;gBAC3B,OAAO,MAAM,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;YACnE,CAAC;YACD,KAAK,UAAU,EAAE,CAAC;gBAChB,OAAO,MAAM,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;YACzD,CAAC;YACD,SAAS,CAAC;gBACR,MAAM,8BAA8B,CAAC,gBAAgB,EAAE,EAAE,CAAC,CAAC;YAC7D,CAAC;QACH,CAAC;IACH,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,MAAM,CACV,gBAAwB,EACxB,QAAwB;QAExB,MAAM,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,gBAAgB,EAAE,QAAQ,CAAC,CAAC;IACzD,CAAC;CACF"}
@@ -0,0 +1,10 @@
1
+ /**
2
+ * A refusal for a CloudWatch Logs Resource type this simulation has no
3
+ * implementation for.
4
+ *
5
+ * The Stack lifecycle reads this differently from an ordinary failure. The
6
+ * Resource is recorded as a skip and stepped over, and the rest of the Stack
7
+ * still deploys and still tears down.
8
+ */
9
+ export declare function unsupportedSimLogsResourceType(resourceTypeName: string, operationSuffix: string): Error;
10
+ //# sourceMappingURL=sim-logs-cfn-unsupported-resource.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-logs-cfn-unsupported-resource.d.ts","sourceRoot":"","sources":["../../../../src/service/logs/cfn/sim-logs-cfn-unsupported-resource.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,wBAAgB,8BAA8B,CAC5C,gBAAgB,EAAE,MAAM,EACxB,eAAe,EAAE,MAAM,GACtB,KAAK,CAKP"}
@@ -0,0 +1,13 @@
1
+ /**
2
+ * A refusal for a CloudWatch Logs Resource type this simulation has no
3
+ * implementation for.
4
+ *
5
+ * The Stack lifecycle reads this differently from an ordinary failure. The
6
+ * Resource is recorded as a skip and stepped over, and the rest of the Stack
7
+ * still deploys and still tears down.
8
+ */
9
+ export function unsupportedSimLogsResourceType(resourceTypeName, operationSuffix) {
10
+ return new Error(`Unsupported sim CloudWatch Logs CloudFormation Resource ` +
11
+ `${resourceTypeName}${operationSuffix}`);
12
+ }
13
+ //# sourceMappingURL=sim-logs-cfn-unsupported-resource.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-logs-cfn-unsupported-resource.js","sourceRoot":"","sources":["../../../../src/service/logs/cfn/sim-logs-cfn-unsupported-resource.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,MAAM,UAAU,8BAA8B,CAC5C,gBAAwB,EACxB,eAAuB;IAEvB,OAAO,IAAI,KAAK,CACd,0DAA0D;QACxD,GAAG,gBAAgB,GAAG,eAAe,EAAE,CAC1C,CAAC;AACJ,CAAC"}
@@ -37,7 +37,15 @@ export declare class SimLogsAuthorizer {
37
37
  * cover it, and one written against `*` or the log group wildcard does.
38
38
  */
39
39
  authorizeAnyLogGroup(action: string, caller?: SimAwsCaller): SimAwsResolvedCaller;
40
- private authorizeResource;
40
+ /**
41
+ * Ensure the caller may perform an action on a named resource ARN.
42
+ *
43
+ * The delivery operations authorize through this rather than through a
44
+ * method of their own. Each of the three delivery resource types has its own
45
+ * ARN form, and adding a pair of methods per type would make this class
46
+ * mostly ARN building.
47
+ */
48
+ authorizeResource(action: string, resource: string, caller: SimAwsCaller | undefined): SimAwsResolvedCaller;
41
49
  }
42
50
  export {};
43
51
  //# sourceMappingURL=sim-logs-authorizer.d.ts.map