-
Notifications
You must be signed in to change notification settings - Fork 572
/
CheckIfPhoneNumberIsOptedOutCommand.ts
143 lines (132 loc) · 5.7 KB
/
CheckIfPhoneNumberIsOptedOutCommand.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
// smithy-typescript generated code
import { EndpointParameterInstructions, getEndpointPlugin } from "@aws-sdk/middleware-endpoint";
import { getSerdePlugin } from "@aws-sdk/middleware-serde";
import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http";
import { Command as $Command } from "@aws-sdk/smithy-client";
import {
FinalizeHandlerArguments,
Handler,
HandlerExecutionContext,
HttpHandlerOptions as __HttpHandlerOptions,
MetadataBearer as __MetadataBearer,
MiddlewareStack,
SerdeContext as __SerdeContext,
} from "@aws-sdk/types";
import {
CheckIfPhoneNumberIsOptedOutInput,
CheckIfPhoneNumberIsOptedOutInputFilterSensitiveLog,
CheckIfPhoneNumberIsOptedOutResponse,
CheckIfPhoneNumberIsOptedOutResponseFilterSensitiveLog,
} from "../models/models_0";
import {
deserializeAws_queryCheckIfPhoneNumberIsOptedOutCommand,
serializeAws_queryCheckIfPhoneNumberIsOptedOutCommand,
} from "../protocols/Aws_query";
import { ServiceInputTypes, ServiceOutputTypes, SNSClientResolvedConfig } from "../SNSClient";
/**
* The input for {@link CheckIfPhoneNumberIsOptedOutCommand}.
*/
export interface CheckIfPhoneNumberIsOptedOutCommandInput extends CheckIfPhoneNumberIsOptedOutInput {}
/**
* The output of {@link CheckIfPhoneNumberIsOptedOutCommand}.
*/
export interface CheckIfPhoneNumberIsOptedOutCommandOutput
extends CheckIfPhoneNumberIsOptedOutResponse,
__MetadataBearer {}
/**
* <p>Accepts a phone number and indicates whether the phone holder has opted out of
* receiving SMS messages from your Amazon Web Services account. You cannot send SMS messages to a number
* that is opted out.</p>
* <p>To resume sending messages, you can opt in the number by using the
* <code>OptInPhoneNumber</code> action.</p>
* @example
* Use a bare-bones client and the command you need to make an API call.
* ```javascript
* import { SNSClient, CheckIfPhoneNumberIsOptedOutCommand } from "@aws-sdk/client-sns"; // ES Modules import
* // const { SNSClient, CheckIfPhoneNumberIsOptedOutCommand } = require("@aws-sdk/client-sns"); // CommonJS import
* const client = new SNSClient(config);
* const command = new CheckIfPhoneNumberIsOptedOutCommand(input);
* const response = await client.send(command);
* ```
*
* @see {@link CheckIfPhoneNumberIsOptedOutCommandInput} for command's `input` shape.
* @see {@link CheckIfPhoneNumberIsOptedOutCommandOutput} for command's `response` shape.
* @see {@link SNSClientResolvedConfig | config} for SNSClient's `config` shape.
*
* @throws {@link AuthorizationErrorException} (client fault)
* <p>Indicates that the user has been denied access to the requested resource.</p>
*
* @throws {@link InternalErrorException} (server fault)
* <p>Indicates an internal service error.</p>
*
* @throws {@link InvalidParameterException} (client fault)
* <p>Indicates that a request parameter does not comply with the associated
* constraints.</p>
*
* @throws {@link ThrottledException} (client fault)
* <p>Indicates that the rate at which requests have been submitted for this action exceeds the limit for your Amazon Web Services account.</p>
*
*
*/
export class CheckIfPhoneNumberIsOptedOutCommand extends $Command<
CheckIfPhoneNumberIsOptedOutCommandInput,
CheckIfPhoneNumberIsOptedOutCommandOutput,
SNSClientResolvedConfig
> {
// Start section: command_properties
// End section: command_properties
public static getEndpointParameterInstructions(): EndpointParameterInstructions {
return {
UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
Endpoint: { type: "builtInParams", name: "endpoint" },
Region: { type: "builtInParams", name: "region" },
UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
};
}
constructor(readonly input: CheckIfPhoneNumberIsOptedOutCommandInput) {
// Start section: command_constructor
super();
// End section: command_constructor
}
/**
* @internal
*/
resolveMiddleware(
clientStack: MiddlewareStack<ServiceInputTypes, ServiceOutputTypes>,
configuration: SNSClientResolvedConfig,
options?: __HttpHandlerOptions
): Handler<CheckIfPhoneNumberIsOptedOutCommandInput, CheckIfPhoneNumberIsOptedOutCommandOutput> {
this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));
this.middlewareStack.use(
getEndpointPlugin(configuration, CheckIfPhoneNumberIsOptedOutCommand.getEndpointParameterInstructions())
);
const stack = clientStack.concat(this.middlewareStack);
const { logger } = configuration;
const clientName = "SNSClient";
const commandName = "CheckIfPhoneNumberIsOptedOutCommand";
const handlerExecutionContext: HandlerExecutionContext = {
logger,
clientName,
commandName,
inputFilterSensitiveLog: CheckIfPhoneNumberIsOptedOutInputFilterSensitiveLog,
outputFilterSensitiveLog: CheckIfPhoneNumberIsOptedOutResponseFilterSensitiveLog,
};
const { requestHandler } = configuration;
return stack.resolve(
(request: FinalizeHandlerArguments<any>) =>
requestHandler.handle(request.request as __HttpRequest, options || {}),
handlerExecutionContext
);
}
private serialize(input: CheckIfPhoneNumberIsOptedOutCommandInput, context: __SerdeContext): Promise<__HttpRequest> {
return serializeAws_queryCheckIfPhoneNumberIsOptedOutCommand(input, context);
}
private deserialize(
output: __HttpResponse,
context: __SerdeContext
): Promise<CheckIfPhoneNumberIsOptedOutCommandOutput> {
return deserializeAws_queryCheckIfPhoneNumberIsOptedOutCommand(output, context);
}
// Start section: command_body_extra
// End section: command_body_extra
}