@aws-sdk/client-rbin 3.215.0 → 3.217.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (32) hide show
  1. package/dist-cjs/Rbin.js +30 -0
  2. package/dist-cjs/commands/LockRuleCommand.js +46 -0
  3. package/dist-cjs/commands/UnlockRuleCommand.js +46 -0
  4. package/dist-cjs/commands/index.js +2 -0
  5. package/dist-cjs/endpoint/ruleset.js +1 -1
  6. package/dist-cjs/models/models_0.js +54 -1
  7. package/dist-cjs/protocols/Aws_restJson1.js +242 -1
  8. package/dist-es/Rbin.js +30 -0
  9. package/dist-es/commands/LockRuleCommand.js +42 -0
  10. package/dist-es/commands/UnlockRuleCommand.js +42 -0
  11. package/dist-es/commands/index.js +2 -0
  12. package/dist-es/endpoint/ruleset.js +1 -1
  13. package/dist-es/models/models_0.js +46 -0
  14. package/dist-es/protocols/Aws_restJson1.js +239 -2
  15. package/dist-types/Rbin.d.ts +18 -1
  16. package/dist-types/RbinClient.d.ts +4 -2
  17. package/dist-types/commands/LockRuleCommand.d.ts +37 -0
  18. package/dist-types/commands/UnlockRuleCommand.d.ts +38 -0
  19. package/dist-types/commands/UpdateRuleCommand.d.ts +3 -1
  20. package/dist-types/commands/index.d.ts +2 -0
  21. package/dist-types/endpoint/EndpointParameters.d.ts +1 -1
  22. package/dist-types/models/models_0.d.ts +358 -3
  23. package/dist-types/protocols/Aws_restJson1.d.ts +6 -0
  24. package/dist-types/ts3.4/Rbin.d.ts +34 -0
  25. package/dist-types/ts3.4/RbinClient.d.ts +12 -0
  26. package/dist-types/ts3.4/commands/LockRuleCommand.d.ts +34 -0
  27. package/dist-types/ts3.4/commands/UnlockRuleCommand.d.ts +34 -0
  28. package/dist-types/ts3.4/commands/index.d.ts +2 -0
  29. package/dist-types/ts3.4/endpoint/EndpointParameters.d.ts +1 -1
  30. package/dist-types/ts3.4/models/models_0.d.ts +79 -0
  31. package/dist-types/ts3.4/protocols/Aws_restJson1.d.ts +24 -0
  32. package/package.json +4 -4
package/dist-cjs/Rbin.js CHANGED
@@ -6,7 +6,9 @@ const DeleteRuleCommand_1 = require("./commands/DeleteRuleCommand");
6
6
  const GetRuleCommand_1 = require("./commands/GetRuleCommand");
7
7
  const ListRulesCommand_1 = require("./commands/ListRulesCommand");
8
8
  const ListTagsForResourceCommand_1 = require("./commands/ListTagsForResourceCommand");
9
+ const LockRuleCommand_1 = require("./commands/LockRuleCommand");
9
10
  const TagResourceCommand_1 = require("./commands/TagResourceCommand");
11
+ const UnlockRuleCommand_1 = require("./commands/UnlockRuleCommand");
10
12
  const UntagResourceCommand_1 = require("./commands/UntagResourceCommand");
11
13
  const UpdateRuleCommand_1 = require("./commands/UpdateRuleCommand");
12
14
  const RbinClient_1 = require("./RbinClient");
@@ -81,6 +83,20 @@ class Rbin extends RbinClient_1.RbinClient {
81
83
  return this.send(command, optionsOrCb);
82
84
  }
83
85
  }
86
+ lockRule(args, optionsOrCb, cb) {
87
+ const command = new LockRuleCommand_1.LockRuleCommand(args);
88
+ if (typeof optionsOrCb === "function") {
89
+ this.send(command, optionsOrCb);
90
+ }
91
+ else if (typeof cb === "function") {
92
+ if (typeof optionsOrCb !== "object")
93
+ throw new Error(`Expect http options but get ${typeof optionsOrCb}`);
94
+ this.send(command, optionsOrCb || {}, cb);
95
+ }
96
+ else {
97
+ return this.send(command, optionsOrCb);
98
+ }
99
+ }
84
100
  tagResource(args, optionsOrCb, cb) {
85
101
  const command = new TagResourceCommand_1.TagResourceCommand(args);
86
102
  if (typeof optionsOrCb === "function") {
@@ -95,6 +111,20 @@ class Rbin extends RbinClient_1.RbinClient {
95
111
  return this.send(command, optionsOrCb);
96
112
  }
97
113
  }
114
+ unlockRule(args, optionsOrCb, cb) {
115
+ const command = new UnlockRuleCommand_1.UnlockRuleCommand(args);
116
+ if (typeof optionsOrCb === "function") {
117
+ this.send(command, optionsOrCb);
118
+ }
119
+ else if (typeof cb === "function") {
120
+ if (typeof optionsOrCb !== "object")
121
+ throw new Error(`Expect http options but get ${typeof optionsOrCb}`);
122
+ this.send(command, optionsOrCb || {}, cb);
123
+ }
124
+ else {
125
+ return this.send(command, optionsOrCb);
126
+ }
127
+ }
98
128
  untagResource(args, optionsOrCb, cb) {
99
129
  const command = new UntagResourceCommand_1.UntagResourceCommand(args);
100
130
  if (typeof optionsOrCb === "function") {
@@ -0,0 +1,46 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.LockRuleCommand = void 0;
4
+ const middleware_endpoint_1 = require("@aws-sdk/middleware-endpoint");
5
+ const middleware_serde_1 = require("@aws-sdk/middleware-serde");
6
+ const smithy_client_1 = require("@aws-sdk/smithy-client");
7
+ const models_0_1 = require("../models/models_0");
8
+ const Aws_restJson1_1 = require("../protocols/Aws_restJson1");
9
+ class LockRuleCommand extends smithy_client_1.Command {
10
+ constructor(input) {
11
+ super();
12
+ this.input = input;
13
+ }
14
+ static getEndpointParameterInstructions() {
15
+ return {
16
+ UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
17
+ Endpoint: { type: "builtInParams", name: "endpoint" },
18
+ Region: { type: "builtInParams", name: "region" },
19
+ UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
20
+ };
21
+ }
22
+ resolveMiddleware(clientStack, configuration, options) {
23
+ this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize));
24
+ this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, LockRuleCommand.getEndpointParameterInstructions()));
25
+ const stack = clientStack.concat(this.middlewareStack);
26
+ const { logger } = configuration;
27
+ const clientName = "RbinClient";
28
+ const commandName = "LockRuleCommand";
29
+ const handlerExecutionContext = {
30
+ logger,
31
+ clientName,
32
+ commandName,
33
+ inputFilterSensitiveLog: models_0_1.LockRuleRequestFilterSensitiveLog,
34
+ outputFilterSensitiveLog: models_0_1.LockRuleResponseFilterSensitiveLog,
35
+ };
36
+ const { requestHandler } = configuration;
37
+ return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext);
38
+ }
39
+ serialize(input, context) {
40
+ return (0, Aws_restJson1_1.serializeAws_restJson1LockRuleCommand)(input, context);
41
+ }
42
+ deserialize(output, context) {
43
+ return (0, Aws_restJson1_1.deserializeAws_restJson1LockRuleCommand)(output, context);
44
+ }
45
+ }
46
+ exports.LockRuleCommand = LockRuleCommand;
@@ -0,0 +1,46 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.UnlockRuleCommand = void 0;
4
+ const middleware_endpoint_1 = require("@aws-sdk/middleware-endpoint");
5
+ const middleware_serde_1 = require("@aws-sdk/middleware-serde");
6
+ const smithy_client_1 = require("@aws-sdk/smithy-client");
7
+ const models_0_1 = require("../models/models_0");
8
+ const Aws_restJson1_1 = require("../protocols/Aws_restJson1");
9
+ class UnlockRuleCommand extends smithy_client_1.Command {
10
+ constructor(input) {
11
+ super();
12
+ this.input = input;
13
+ }
14
+ static getEndpointParameterInstructions() {
15
+ return {
16
+ UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
17
+ Endpoint: { type: "builtInParams", name: "endpoint" },
18
+ Region: { type: "builtInParams", name: "region" },
19
+ UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
20
+ };
21
+ }
22
+ resolveMiddleware(clientStack, configuration, options) {
23
+ this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize));
24
+ this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, UnlockRuleCommand.getEndpointParameterInstructions()));
25
+ const stack = clientStack.concat(this.middlewareStack);
26
+ const { logger } = configuration;
27
+ const clientName = "RbinClient";
28
+ const commandName = "UnlockRuleCommand";
29
+ const handlerExecutionContext = {
30
+ logger,
31
+ clientName,
32
+ commandName,
33
+ inputFilterSensitiveLog: models_0_1.UnlockRuleRequestFilterSensitiveLog,
34
+ outputFilterSensitiveLog: models_0_1.UnlockRuleResponseFilterSensitiveLog,
35
+ };
36
+ const { requestHandler } = configuration;
37
+ return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext);
38
+ }
39
+ serialize(input, context) {
40
+ return (0, Aws_restJson1_1.serializeAws_restJson1UnlockRuleCommand)(input, context);
41
+ }
42
+ deserialize(output, context) {
43
+ return (0, Aws_restJson1_1.deserializeAws_restJson1UnlockRuleCommand)(output, context);
44
+ }
45
+ }
46
+ exports.UnlockRuleCommand = UnlockRuleCommand;
@@ -6,6 +6,8 @@ tslib_1.__exportStar(require("./DeleteRuleCommand"), exports);
6
6
  tslib_1.__exportStar(require("./GetRuleCommand"), exports);
7
7
  tslib_1.__exportStar(require("./ListRulesCommand"), exports);
8
8
  tslib_1.__exportStar(require("./ListTagsForResourceCommand"), exports);
9
+ tslib_1.__exportStar(require("./LockRuleCommand"), exports);
9
10
  tslib_1.__exportStar(require("./TagResourceCommand"), exports);
11
+ tslib_1.__exportStar(require("./UnlockRuleCommand"), exports);
10
12
  tslib_1.__exportStar(require("./UntagResourceCommand"), exports);
11
13
  tslib_1.__exportStar(require("./UpdateRuleCommand"), exports);
@@ -6,7 +6,7 @@ exports.ruleSet = {
6
6
  parameters: {
7
7
  Region: {
8
8
  builtIn: "AWS::Region",
9
- required: false,
9
+ required: true,
10
10
  documentation: "The AWS region used to dispatch the request.",
11
11
  type: "String",
12
12
  },
@@ -1,7 +1,11 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.UpdateRuleResponseFilterSensitiveLog = exports.UpdateRuleRequestFilterSensitiveLog = exports.UntagResourceResponseFilterSensitiveLog = exports.UntagResourceRequestFilterSensitiveLog = exports.TagResourceResponseFilterSensitiveLog = exports.TagResourceRequestFilterSensitiveLog = exports.ListTagsForResourceResponseFilterSensitiveLog = exports.ListTagsForResourceRequestFilterSensitiveLog = exports.ListRulesResponseFilterSensitiveLog = exports.RuleSummaryFilterSensitiveLog = exports.ListRulesRequestFilterSensitiveLog = exports.GetRuleResponseFilterSensitiveLog = exports.GetRuleRequestFilterSensitiveLog = exports.DeleteRuleResponseFilterSensitiveLog = exports.DeleteRuleRequestFilterSensitiveLog = exports.CreateRuleResponseFilterSensitiveLog = exports.CreateRuleRequestFilterSensitiveLog = exports.TagFilterSensitiveLog = exports.RetentionPeriodFilterSensitiveLog = exports.ResourceTagFilterSensitiveLog = exports.ResourceNotFoundException = exports.ResourceNotFoundExceptionReason = exports.ValidationException = exports.ValidationExceptionReason = exports.ServiceQuotaExceededException = exports.ServiceQuotaExceededExceptionReason = exports.InternalServerException = exports.RuleStatus = exports.RetentionPeriodUnit = exports.ResourceType = void 0;
3
+ exports.UpdateRuleResponseFilterSensitiveLog = exports.UpdateRuleRequestFilterSensitiveLog = exports.UntagResourceResponseFilterSensitiveLog = exports.UntagResourceRequestFilterSensitiveLog = exports.UnlockRuleResponseFilterSensitiveLog = exports.UnlockRuleRequestFilterSensitiveLog = exports.TagResourceResponseFilterSensitiveLog = exports.TagResourceRequestFilterSensitiveLog = exports.LockRuleResponseFilterSensitiveLog = exports.LockRuleRequestFilterSensitiveLog = exports.ListTagsForResourceResponseFilterSensitiveLog = exports.ListTagsForResourceRequestFilterSensitiveLog = exports.ListRulesResponseFilterSensitiveLog = exports.RuleSummaryFilterSensitiveLog = exports.ListRulesRequestFilterSensitiveLog = exports.GetRuleResponseFilterSensitiveLog = exports.GetRuleRequestFilterSensitiveLog = exports.DeleteRuleResponseFilterSensitiveLog = exports.DeleteRuleRequestFilterSensitiveLog = exports.CreateRuleResponseFilterSensitiveLog = exports.CreateRuleRequestFilterSensitiveLog = exports.TagFilterSensitiveLog = exports.RetentionPeriodFilterSensitiveLog = exports.ResourceTagFilterSensitiveLog = exports.LockConfigurationFilterSensitiveLog = exports.UnlockDelayFilterSensitiveLog = exports.ResourceNotFoundException = exports.ResourceNotFoundExceptionReason = exports.ConflictException = exports.ConflictExceptionReason = exports.ValidationException = exports.ValidationExceptionReason = exports.ServiceQuotaExceededException = exports.ServiceQuotaExceededExceptionReason = exports.InternalServerException = exports.RuleStatus = exports.LockState = exports.RetentionPeriodUnit = exports.ResourceType = exports.UnlockDelayUnit = void 0;
4
4
  const RbinServiceException_1 = require("./RbinServiceException");
5
+ var UnlockDelayUnit;
6
+ (function (UnlockDelayUnit) {
7
+ UnlockDelayUnit["DAYS"] = "DAYS";
8
+ })(UnlockDelayUnit = exports.UnlockDelayUnit || (exports.UnlockDelayUnit = {}));
5
9
  var ResourceType;
6
10
  (function (ResourceType) {
7
11
  ResourceType["EBS_SNAPSHOT"] = "EBS_SNAPSHOT";
@@ -11,6 +15,12 @@ var RetentionPeriodUnit;
11
15
  (function (RetentionPeriodUnit) {
12
16
  RetentionPeriodUnit["DAYS"] = "DAYS";
13
17
  })(RetentionPeriodUnit = exports.RetentionPeriodUnit || (exports.RetentionPeriodUnit = {}));
18
+ var LockState;
19
+ (function (LockState) {
20
+ LockState["LOCKED"] = "locked";
21
+ LockState["PENDING_UNLOCK"] = "pending_unlock";
22
+ LockState["UNLOCKED"] = "unlocked";
23
+ })(LockState = exports.LockState || (exports.LockState = {}));
14
24
  var RuleStatus;
15
25
  (function (RuleStatus) {
16
26
  RuleStatus["AVAILABLE"] = "available";
@@ -69,6 +79,25 @@ class ValidationException extends RbinServiceException_1.RbinServiceException {
69
79
  }
70
80
  }
71
81
  exports.ValidationException = ValidationException;
82
+ var ConflictExceptionReason;
83
+ (function (ConflictExceptionReason) {
84
+ ConflictExceptionReason["INVALID_RULE_STATE"] = "INVALID_RULE_STATE";
85
+ })(ConflictExceptionReason = exports.ConflictExceptionReason || (exports.ConflictExceptionReason = {}));
86
+ class ConflictException extends RbinServiceException_1.RbinServiceException {
87
+ constructor(opts) {
88
+ super({
89
+ name: "ConflictException",
90
+ $fault: "client",
91
+ ...opts,
92
+ });
93
+ this.name = "ConflictException";
94
+ this.$fault = "client";
95
+ Object.setPrototypeOf(this, ConflictException.prototype);
96
+ this.Message = opts.Message;
97
+ this.Reason = opts.Reason;
98
+ }
99
+ }
100
+ exports.ConflictException = ConflictException;
72
101
  var ResourceNotFoundExceptionReason;
73
102
  (function (ResourceNotFoundExceptionReason) {
74
103
  ResourceNotFoundExceptionReason["RULE_NOT_FOUND"] = "RULE_NOT_FOUND";
@@ -88,6 +117,14 @@ class ResourceNotFoundException extends RbinServiceException_1.RbinServiceExcept
88
117
  }
89
118
  }
90
119
  exports.ResourceNotFoundException = ResourceNotFoundException;
120
+ const UnlockDelayFilterSensitiveLog = (obj) => ({
121
+ ...obj,
122
+ });
123
+ exports.UnlockDelayFilterSensitiveLog = UnlockDelayFilterSensitiveLog;
124
+ const LockConfigurationFilterSensitiveLog = (obj) => ({
125
+ ...obj,
126
+ });
127
+ exports.LockConfigurationFilterSensitiveLog = LockConfigurationFilterSensitiveLog;
91
128
  const ResourceTagFilterSensitiveLog = (obj) => ({
92
129
  ...obj,
93
130
  });
@@ -144,6 +181,14 @@ const ListTagsForResourceResponseFilterSensitiveLog = (obj) => ({
144
181
  ...obj,
145
182
  });
146
183
  exports.ListTagsForResourceResponseFilterSensitiveLog = ListTagsForResourceResponseFilterSensitiveLog;
184
+ const LockRuleRequestFilterSensitiveLog = (obj) => ({
185
+ ...obj,
186
+ });
187
+ exports.LockRuleRequestFilterSensitiveLog = LockRuleRequestFilterSensitiveLog;
188
+ const LockRuleResponseFilterSensitiveLog = (obj) => ({
189
+ ...obj,
190
+ });
191
+ exports.LockRuleResponseFilterSensitiveLog = LockRuleResponseFilterSensitiveLog;
147
192
  const TagResourceRequestFilterSensitiveLog = (obj) => ({
148
193
  ...obj,
149
194
  });
@@ -152,6 +197,14 @@ const TagResourceResponseFilterSensitiveLog = (obj) => ({
152
197
  ...obj,
153
198
  });
154
199
  exports.TagResourceResponseFilterSensitiveLog = TagResourceResponseFilterSensitiveLog;
200
+ const UnlockRuleRequestFilterSensitiveLog = (obj) => ({
201
+ ...obj,
202
+ });
203
+ exports.UnlockRuleRequestFilterSensitiveLog = UnlockRuleRequestFilterSensitiveLog;
204
+ const UnlockRuleResponseFilterSensitiveLog = (obj) => ({
205
+ ...obj,
206
+ });
207
+ exports.UnlockRuleResponseFilterSensitiveLog = UnlockRuleResponseFilterSensitiveLog;
155
208
  const UntagResourceRequestFilterSensitiveLog = (obj) => ({
156
209
  ...obj,
157
210
  });
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.deserializeAws_restJson1UpdateRuleCommand = exports.deserializeAws_restJson1UntagResourceCommand = exports.deserializeAws_restJson1TagResourceCommand = exports.deserializeAws_restJson1ListTagsForResourceCommand = exports.deserializeAws_restJson1ListRulesCommand = exports.deserializeAws_restJson1GetRuleCommand = exports.deserializeAws_restJson1DeleteRuleCommand = exports.deserializeAws_restJson1CreateRuleCommand = exports.serializeAws_restJson1UpdateRuleCommand = exports.serializeAws_restJson1UntagResourceCommand = exports.serializeAws_restJson1TagResourceCommand = exports.serializeAws_restJson1ListTagsForResourceCommand = exports.serializeAws_restJson1ListRulesCommand = exports.serializeAws_restJson1GetRuleCommand = exports.serializeAws_restJson1DeleteRuleCommand = exports.serializeAws_restJson1CreateRuleCommand = void 0;
3
+ exports.deserializeAws_restJson1UpdateRuleCommand = exports.deserializeAws_restJson1UntagResourceCommand = exports.deserializeAws_restJson1UnlockRuleCommand = exports.deserializeAws_restJson1TagResourceCommand = exports.deserializeAws_restJson1LockRuleCommand = exports.deserializeAws_restJson1ListTagsForResourceCommand = exports.deserializeAws_restJson1ListRulesCommand = exports.deserializeAws_restJson1GetRuleCommand = exports.deserializeAws_restJson1DeleteRuleCommand = exports.deserializeAws_restJson1CreateRuleCommand = exports.serializeAws_restJson1UpdateRuleCommand = exports.serializeAws_restJson1UntagResourceCommand = exports.serializeAws_restJson1UnlockRuleCommand = exports.serializeAws_restJson1TagResourceCommand = exports.serializeAws_restJson1LockRuleCommand = exports.serializeAws_restJson1ListTagsForResourceCommand = exports.serializeAws_restJson1ListRulesCommand = exports.serializeAws_restJson1GetRuleCommand = exports.serializeAws_restJson1DeleteRuleCommand = exports.serializeAws_restJson1CreateRuleCommand = void 0;
4
4
  const protocol_http_1 = require("@aws-sdk/protocol-http");
5
5
  const smithy_client_1 = require("@aws-sdk/smithy-client");
6
6
  const models_0_1 = require("../models/models_0");
@@ -14,6 +14,9 @@ const serializeAws_restJson1CreateRuleCommand = async (input, context) => {
14
14
  let body;
15
15
  body = JSON.stringify({
16
16
  ...(input.Description != null && { Description: input.Description }),
17
+ ...(input.LockConfiguration != null && {
18
+ LockConfiguration: serializeAws_restJson1LockConfiguration(input.LockConfiguration, context),
19
+ }),
17
20
  ...(input.ResourceTags != null && {
18
21
  ResourceTags: serializeAws_restJson1ResourceTags(input.ResourceTags, context),
19
22
  }),
@@ -76,6 +79,7 @@ const serializeAws_restJson1ListRulesCommand = async (input, context) => {
76
79
  const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/list-rules";
77
80
  let body;
78
81
  body = JSON.stringify({
82
+ ...(input.LockState != null && { LockState: input.LockState }),
79
83
  ...(input.MaxResults != null && { MaxResults: input.MaxResults }),
80
84
  ...(input.NextToken != null && { NextToken: input.NextToken }),
81
85
  ...(input.ResourceTags != null && {
@@ -111,6 +115,30 @@ const serializeAws_restJson1ListTagsForResourceCommand = async (input, context)
111
115
  });
112
116
  };
113
117
  exports.serializeAws_restJson1ListTagsForResourceCommand = serializeAws_restJson1ListTagsForResourceCommand;
118
+ const serializeAws_restJson1LockRuleCommand = async (input, context) => {
119
+ const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
120
+ const headers = {
121
+ "content-type": "application/json",
122
+ };
123
+ let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/rules/{Identifier}/lock";
124
+ resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Identifier", () => input.Identifier, "{Identifier}", false);
125
+ let body;
126
+ body = JSON.stringify({
127
+ ...(input.LockConfiguration != null && {
128
+ LockConfiguration: serializeAws_restJson1LockConfiguration(input.LockConfiguration, context),
129
+ }),
130
+ });
131
+ return new protocol_http_1.HttpRequest({
132
+ protocol,
133
+ hostname,
134
+ port,
135
+ method: "PATCH",
136
+ headers,
137
+ path: resolvedPath,
138
+ body,
139
+ });
140
+ };
141
+ exports.serializeAws_restJson1LockRuleCommand = serializeAws_restJson1LockRuleCommand;
114
142
  const serializeAws_restJson1TagResourceCommand = async (input, context) => {
115
143
  const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
116
144
  const headers = {
@@ -133,6 +161,23 @@ const serializeAws_restJson1TagResourceCommand = async (input, context) => {
133
161
  });
134
162
  };
135
163
  exports.serializeAws_restJson1TagResourceCommand = serializeAws_restJson1TagResourceCommand;
164
+ const serializeAws_restJson1UnlockRuleCommand = async (input, context) => {
165
+ const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
166
+ const headers = {};
167
+ let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/rules/{Identifier}/unlock";
168
+ resolvedPath = (0, smithy_client_1.resolvedPath)(resolvedPath, input, "Identifier", () => input.Identifier, "{Identifier}", false);
169
+ let body;
170
+ return new protocol_http_1.HttpRequest({
171
+ protocol,
172
+ hostname,
173
+ port,
174
+ method: "PATCH",
175
+ headers,
176
+ path: resolvedPath,
177
+ body,
178
+ });
179
+ };
180
+ exports.serializeAws_restJson1UnlockRuleCommand = serializeAws_restJson1UnlockRuleCommand;
136
181
  const serializeAws_restJson1UntagResourceCommand = async (input, context) => {
137
182
  const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
138
183
  const headers = {};
@@ -197,6 +242,12 @@ const deserializeAws_restJson1CreateRuleCommand = async (output, context) => {
197
242
  if (data.Identifier != null) {
198
243
  contents.Identifier = (0, smithy_client_1.expectString)(data.Identifier);
199
244
  }
245
+ if (data.LockConfiguration != null) {
246
+ contents.LockConfiguration = deserializeAws_restJson1LockConfiguration(data.LockConfiguration, context);
247
+ }
248
+ if (data.LockState != null) {
249
+ contents.LockState = (0, smithy_client_1.expectString)(data.LockState);
250
+ }
200
251
  if (data.ResourceTags != null) {
201
252
  contents.ResourceTags = deserializeAws_restJson1ResourceTags(data.ResourceTags, context);
202
253
  }
@@ -259,6 +310,9 @@ const deserializeAws_restJson1DeleteRuleCommandError = async (output, context) =
259
310
  };
260
311
  const errorCode = loadRestJsonErrorCode(output, parsedOutput.body);
261
312
  switch (errorCode) {
313
+ case "ConflictException":
314
+ case "com.amazonaws.rbin#ConflictException":
315
+ throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context);
262
316
  case "InternalServerException":
263
317
  case "com.amazonaws.rbin#InternalServerException":
264
318
  throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context);
@@ -292,6 +346,15 @@ const deserializeAws_restJson1GetRuleCommand = async (output, context) => {
292
346
  if (data.Identifier != null) {
293
347
  contents.Identifier = (0, smithy_client_1.expectString)(data.Identifier);
294
348
  }
349
+ if (data.LockConfiguration != null) {
350
+ contents.LockConfiguration = deserializeAws_restJson1LockConfiguration(data.LockConfiguration, context);
351
+ }
352
+ if (data.LockEndTime != null) {
353
+ contents.LockEndTime = (0, smithy_client_1.expectNonNull)((0, smithy_client_1.parseEpochTimestamp)((0, smithy_client_1.expectNumber)(data.LockEndTime)));
354
+ }
355
+ if (data.LockState != null) {
356
+ contents.LockState = (0, smithy_client_1.expectString)(data.LockState);
357
+ }
295
358
  if (data.ResourceTags != null) {
296
359
  contents.ResourceTags = deserializeAws_restJson1ResourceTags(data.ResourceTags, context);
297
360
  }
@@ -413,6 +476,70 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async (output, c
413
476
  });
414
477
  }
415
478
  };
479
+ const deserializeAws_restJson1LockRuleCommand = async (output, context) => {
480
+ if (output.statusCode !== 200 && output.statusCode >= 300) {
481
+ return deserializeAws_restJson1LockRuleCommandError(output, context);
482
+ }
483
+ const contents = map({
484
+ $metadata: deserializeMetadata(output),
485
+ });
486
+ const data = (0, smithy_client_1.expectNonNull)((0, smithy_client_1.expectObject)(await parseBody(output.body, context)), "body");
487
+ if (data.Description != null) {
488
+ contents.Description = (0, smithy_client_1.expectString)(data.Description);
489
+ }
490
+ if (data.Identifier != null) {
491
+ contents.Identifier = (0, smithy_client_1.expectString)(data.Identifier);
492
+ }
493
+ if (data.LockConfiguration != null) {
494
+ contents.LockConfiguration = deserializeAws_restJson1LockConfiguration(data.LockConfiguration, context);
495
+ }
496
+ if (data.LockState != null) {
497
+ contents.LockState = (0, smithy_client_1.expectString)(data.LockState);
498
+ }
499
+ if (data.ResourceTags != null) {
500
+ contents.ResourceTags = deserializeAws_restJson1ResourceTags(data.ResourceTags, context);
501
+ }
502
+ if (data.ResourceType != null) {
503
+ contents.ResourceType = (0, smithy_client_1.expectString)(data.ResourceType);
504
+ }
505
+ if (data.RetentionPeriod != null) {
506
+ contents.RetentionPeriod = deserializeAws_restJson1RetentionPeriod(data.RetentionPeriod, context);
507
+ }
508
+ if (data.Status != null) {
509
+ contents.Status = (0, smithy_client_1.expectString)(data.Status);
510
+ }
511
+ return contents;
512
+ };
513
+ exports.deserializeAws_restJson1LockRuleCommand = deserializeAws_restJson1LockRuleCommand;
514
+ const deserializeAws_restJson1LockRuleCommandError = async (output, context) => {
515
+ const parsedOutput = {
516
+ ...output,
517
+ body: await parseErrorBody(output.body, context),
518
+ };
519
+ const errorCode = loadRestJsonErrorCode(output, parsedOutput.body);
520
+ switch (errorCode) {
521
+ case "ConflictException":
522
+ case "com.amazonaws.rbin#ConflictException":
523
+ throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context);
524
+ case "InternalServerException":
525
+ case "com.amazonaws.rbin#InternalServerException":
526
+ throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context);
527
+ case "ResourceNotFoundException":
528
+ case "com.amazonaws.rbin#ResourceNotFoundException":
529
+ throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context);
530
+ case "ValidationException":
531
+ case "com.amazonaws.rbin#ValidationException":
532
+ throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context);
533
+ default:
534
+ const parsedBody = parsedOutput.body;
535
+ (0, smithy_client_1.throwDefaultError)({
536
+ output,
537
+ parsedBody,
538
+ exceptionCtor: RbinServiceException_1.RbinServiceException,
539
+ errorCode,
540
+ });
541
+ }
542
+ };
416
543
  const deserializeAws_restJson1TagResourceCommand = async (output, context) => {
417
544
  if (output.statusCode !== 201 && output.statusCode >= 300) {
418
545
  return deserializeAws_restJson1TagResourceCommandError(output, context);
@@ -453,6 +580,73 @@ const deserializeAws_restJson1TagResourceCommandError = async (output, context)
453
580
  });
454
581
  }
455
582
  };
583
+ const deserializeAws_restJson1UnlockRuleCommand = async (output, context) => {
584
+ if (output.statusCode !== 200 && output.statusCode >= 300) {
585
+ return deserializeAws_restJson1UnlockRuleCommandError(output, context);
586
+ }
587
+ const contents = map({
588
+ $metadata: deserializeMetadata(output),
589
+ });
590
+ const data = (0, smithy_client_1.expectNonNull)((0, smithy_client_1.expectObject)(await parseBody(output.body, context)), "body");
591
+ if (data.Description != null) {
592
+ contents.Description = (0, smithy_client_1.expectString)(data.Description);
593
+ }
594
+ if (data.Identifier != null) {
595
+ contents.Identifier = (0, smithy_client_1.expectString)(data.Identifier);
596
+ }
597
+ if (data.LockConfiguration != null) {
598
+ contents.LockConfiguration = deserializeAws_restJson1LockConfiguration(data.LockConfiguration, context);
599
+ }
600
+ if (data.LockEndTime != null) {
601
+ contents.LockEndTime = (0, smithy_client_1.expectNonNull)((0, smithy_client_1.parseEpochTimestamp)((0, smithy_client_1.expectNumber)(data.LockEndTime)));
602
+ }
603
+ if (data.LockState != null) {
604
+ contents.LockState = (0, smithy_client_1.expectString)(data.LockState);
605
+ }
606
+ if (data.ResourceTags != null) {
607
+ contents.ResourceTags = deserializeAws_restJson1ResourceTags(data.ResourceTags, context);
608
+ }
609
+ if (data.ResourceType != null) {
610
+ contents.ResourceType = (0, smithy_client_1.expectString)(data.ResourceType);
611
+ }
612
+ if (data.RetentionPeriod != null) {
613
+ contents.RetentionPeriod = deserializeAws_restJson1RetentionPeriod(data.RetentionPeriod, context);
614
+ }
615
+ if (data.Status != null) {
616
+ contents.Status = (0, smithy_client_1.expectString)(data.Status);
617
+ }
618
+ return contents;
619
+ };
620
+ exports.deserializeAws_restJson1UnlockRuleCommand = deserializeAws_restJson1UnlockRuleCommand;
621
+ const deserializeAws_restJson1UnlockRuleCommandError = async (output, context) => {
622
+ const parsedOutput = {
623
+ ...output,
624
+ body: await parseErrorBody(output.body, context),
625
+ };
626
+ const errorCode = loadRestJsonErrorCode(output, parsedOutput.body);
627
+ switch (errorCode) {
628
+ case "ConflictException":
629
+ case "com.amazonaws.rbin#ConflictException":
630
+ throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context);
631
+ case "InternalServerException":
632
+ case "com.amazonaws.rbin#InternalServerException":
633
+ throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context);
634
+ case "ResourceNotFoundException":
635
+ case "com.amazonaws.rbin#ResourceNotFoundException":
636
+ throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context);
637
+ case "ValidationException":
638
+ case "com.amazonaws.rbin#ValidationException":
639
+ throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context);
640
+ default:
641
+ const parsedBody = parsedOutput.body;
642
+ (0, smithy_client_1.throwDefaultError)({
643
+ output,
644
+ parsedBody,
645
+ exceptionCtor: RbinServiceException_1.RbinServiceException,
646
+ errorCode,
647
+ });
648
+ }
649
+ };
456
650
  const deserializeAws_restJson1UntagResourceCommand = async (output, context) => {
457
651
  if (output.statusCode !== 204 && output.statusCode >= 300) {
458
652
  return deserializeAws_restJson1UntagResourceCommandError(output, context);
@@ -504,6 +698,12 @@ const deserializeAws_restJson1UpdateRuleCommand = async (output, context) => {
504
698
  if (data.Identifier != null) {
505
699
  contents.Identifier = (0, smithy_client_1.expectString)(data.Identifier);
506
700
  }
701
+ if (data.LockEndTime != null) {
702
+ contents.LockEndTime = (0, smithy_client_1.expectNonNull)((0, smithy_client_1.parseEpochTimestamp)((0, smithy_client_1.expectNumber)(data.LockEndTime)));
703
+ }
704
+ if (data.LockState != null) {
705
+ contents.LockState = (0, smithy_client_1.expectString)(data.LockState);
706
+ }
507
707
  if (data.ResourceTags != null) {
508
708
  contents.ResourceTags = deserializeAws_restJson1ResourceTags(data.ResourceTags, context);
509
709
  }
@@ -526,6 +726,9 @@ const deserializeAws_restJson1UpdateRuleCommandError = async (output, context) =
526
726
  };
527
727
  const errorCode = loadRestJsonErrorCode(output, parsedOutput.body);
528
728
  switch (errorCode) {
729
+ case "ConflictException":
730
+ case "com.amazonaws.rbin#ConflictException":
731
+ throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context);
529
732
  case "InternalServerException":
530
733
  case "com.amazonaws.rbin#InternalServerException":
531
734
  throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context);
@@ -546,6 +749,21 @@ const deserializeAws_restJson1UpdateRuleCommandError = async (output, context) =
546
749
  }
547
750
  };
548
751
  const map = smithy_client_1.map;
752
+ const deserializeAws_restJson1ConflictExceptionResponse = async (parsedOutput, context) => {
753
+ const contents = map({});
754
+ const data = parsedOutput.body;
755
+ if (data.Message != null) {
756
+ contents.Message = (0, smithy_client_1.expectString)(data.Message);
757
+ }
758
+ if (data.Reason != null) {
759
+ contents.Reason = (0, smithy_client_1.expectString)(data.Reason);
760
+ }
761
+ const exception = new models_0_1.ConflictException({
762
+ $metadata: deserializeMetadata(parsedOutput),
763
+ ...contents,
764
+ });
765
+ return (0, smithy_client_1.decorateServiceException)(exception, parsedOutput.body);
766
+ };
549
767
  const deserializeAws_restJson1InternalServerExceptionResponse = async (parsedOutput, context) => {
550
768
  const contents = map({});
551
769
  const data = parsedOutput.body;
@@ -603,6 +821,11 @@ const deserializeAws_restJson1ValidationExceptionResponse = async (parsedOutput,
603
821
  });
604
822
  return (0, smithy_client_1.decorateServiceException)(exception, parsedOutput.body);
605
823
  };
824
+ const serializeAws_restJson1LockConfiguration = (input, context) => {
825
+ return {
826
+ ...(input.UnlockDelay != null && { UnlockDelay: serializeAws_restJson1UnlockDelay(input.UnlockDelay, context) }),
827
+ };
828
+ };
606
829
  const serializeAws_restJson1ResourceTag = (input, context) => {
607
830
  return {
608
831
  ...(input.ResourceTagKey != null && { ResourceTagKey: input.ResourceTagKey }),
@@ -635,6 +858,17 @@ const serializeAws_restJson1TagList = (input, context) => {
635
858
  return serializeAws_restJson1Tag(entry, context);
636
859
  });
637
860
  };
861
+ const serializeAws_restJson1UnlockDelay = (input, context) => {
862
+ return {
863
+ ...(input.UnlockDelayUnit != null && { UnlockDelayUnit: input.UnlockDelayUnit }),
864
+ ...(input.UnlockDelayValue != null && { UnlockDelayValue: input.UnlockDelayValue }),
865
+ };
866
+ };
867
+ const deserializeAws_restJson1LockConfiguration = (output, context) => {
868
+ return {
869
+ UnlockDelay: output.UnlockDelay != null ? deserializeAws_restJson1UnlockDelay(output.UnlockDelay, context) : undefined,
870
+ };
871
+ };
638
872
  const deserializeAws_restJson1ResourceTag = (output, context) => {
639
873
  return {
640
874
  ResourceTagKey: (0, smithy_client_1.expectString)(output.ResourceTagKey),
@@ -662,6 +896,7 @@ const deserializeAws_restJson1RuleSummary = (output, context) => {
662
896
  return {
663
897
  Description: (0, smithy_client_1.expectString)(output.Description),
664
898
  Identifier: (0, smithy_client_1.expectString)(output.Identifier),
899
+ LockState: (0, smithy_client_1.expectString)(output.LockState),
665
900
  RetentionPeriod: output.RetentionPeriod != null
666
901
  ? deserializeAws_restJson1RetentionPeriod(output.RetentionPeriod, context)
667
902
  : undefined,
@@ -695,6 +930,12 @@ const deserializeAws_restJson1TagList = (output, context) => {
695
930
  });
696
931
  return retVal;
697
932
  };
933
+ const deserializeAws_restJson1UnlockDelay = (output, context) => {
934
+ return {
935
+ UnlockDelayUnit: (0, smithy_client_1.expectString)(output.UnlockDelayUnit),
936
+ UnlockDelayValue: (0, smithy_client_1.expectInt32)(output.UnlockDelayValue),
937
+ };
938
+ };
698
939
  const deserializeMetadata = (output) => ({
699
940
  httpStatusCode: output.statusCode,
700
941
  requestId: output.headers["x-amzn-requestid"] ?? output.headers["x-amzn-request-id"] ?? output.headers["x-amz-request-id"],