Class WebSocketApi
- All Implemented Interfaces:
IResource
,IApi
,IWebSocketApi
,software.amazon.jsii.JsiiSerializable
,software.constructs.IConstruct
,software.constructs.IDependable
Example:
import software.amazon.awscdk.aws_apigatewayv2_integrations.WebSocketLambdaIntegration; Function messageHandler; WebSocketApi webSocketApi = new WebSocketApi(this, "mywsapi"); WebSocketStage.Builder.create(this, "mystage") .webSocketApi(webSocketApi) .stageName("dev") .autoDeploy(true) .build(); webSocketApi.addRoute("sendMessage", WebSocketRouteOptions.builder() .integration(new WebSocketLambdaIntegration("SendMessageIntegration", messageHandler)) .build());
-
Nested Class Summary
Nested ClassesNested classes/interfaces inherited from class software.amazon.jsii.JsiiObject
software.amazon.jsii.JsiiObject.InitializationMode
Nested classes/interfaces inherited from interface software.amazon.awscdk.services.apigatewayv2.IApi
IApi.Jsii$Default, IApi.Jsii$Proxy
Nested classes/interfaces inherited from interface software.constructs.IConstruct
software.constructs.IConstruct.Jsii$Default
Nested classes/interfaces inherited from interface software.amazon.awscdk.IResource
IResource.Jsii$Default
Nested classes/interfaces inherited from interface software.amazon.awscdk.services.apigatewayv2.IWebSocketApi
IWebSocketApi.Jsii$Default, IWebSocketApi.Jsii$Proxy
-
Constructor Summary
ConstructorsModifierConstructorDescriptionprotected
WebSocketApi
(software.amazon.jsii.JsiiObject.InitializationMode initializationMode) protected
WebSocketApi
(software.amazon.jsii.JsiiObjectRef objRef) WebSocketApi
(software.constructs.Construct scope, String id) WebSocketApi
(software.constructs.Construct scope, String id, WebSocketApiProps props) -
Method Summary
Modifier and TypeMethodDescriptionaddRoute
(String routeKey, WebSocketRouteOptions options) Add a new route.Get the "execute-api" ARN.arnForExecuteApi
(String method) Get the "execute-api" ARN.arnForExecuteApi
(String method, String path) Get the "execute-api" ARN.arnForExecuteApi
(String method, String path, String stage) Get the "execute-api" ARN.static IWebSocketApi
fromWebSocketApiAttributes
(software.constructs.Construct scope, String id, WebSocketApiAttributes attrs) Import an existing WebSocket API into this CDK app.The default endpoint for an API.getApiId()
The identifier of this API Gateway API.A human friendly name for this WebSocket API.grantManageConnections
(IGrantable identity) Grant access to the API Gateway management API for this WebSocket API to an IAM principal (Role/Group/User).Return the given named metric for this Api Gateway.metric
(String metricName, MetricOptions props) Return the given named metric for this Api Gateway.Methods inherited from class software.amazon.awscdk.Resource
applyRemovalPolicy, generatePhysicalName, getEnv, getPhysicalName, getResourceArnAttribute, getResourceNameAttribute, getStack, isOwnedResource, isResource
Methods inherited from class software.constructs.Construct
getNode, isConstruct, toString
Methods inherited from class software.amazon.jsii.JsiiObject
jsiiAsyncCall, jsiiAsyncCall, jsiiCall, jsiiCall, jsiiGet, jsiiGet, jsiiSet, jsiiStaticCall, jsiiStaticCall, jsiiStaticGet, jsiiStaticGet, jsiiStaticSet, jsiiStaticSet
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface software.constructs.IConstruct
getNode
Methods inherited from interface software.amazon.awscdk.IResource
applyRemovalPolicy, getEnv, getStack
Methods inherited from interface software.amazon.jsii.JsiiSerializable
$jsii$toJson
-
Constructor Details
-
WebSocketApi
protected WebSocketApi(software.amazon.jsii.JsiiObjectRef objRef) -
WebSocketApi
protected WebSocketApi(software.amazon.jsii.JsiiObject.InitializationMode initializationMode) -
WebSocketApi
@Stability(Stable) public WebSocketApi(@NotNull software.constructs.Construct scope, @NotNull String id, @Nullable WebSocketApiProps props) - Parameters:
scope
- This parameter is required.id
- This parameter is required.props
-
-
WebSocketApi
@Stability(Stable) public WebSocketApi(@NotNull software.constructs.Construct scope, @NotNull String id) - Parameters:
scope
- This parameter is required.id
- This parameter is required.
-
-
Method Details
-
fromWebSocketApiAttributes
@Stability(Stable) @NotNull public static IWebSocketApi fromWebSocketApiAttributes(@NotNull software.constructs.Construct scope, @NotNull String id, @NotNull WebSocketApiAttributes attrs) Import an existing WebSocket API into this CDK app.- Parameters:
scope
- This parameter is required.id
- This parameter is required.attrs
- This parameter is required.
-
addRoute
@Stability(Stable) @NotNull public WebSocketRoute addRoute(@NotNull String routeKey, @NotNull WebSocketRouteOptions options) Add a new route.- Parameters:
routeKey
- This parameter is required.options
- This parameter is required.
-
arnForExecuteApi
@Stability(Stable) @NotNull public String arnForExecuteApi(@Nullable String method, @Nullable String path, @Nullable String stage) Get the "execute-api" ARN.When 'ANY' is passed to the method, an ARN with the method set to '*' is obtained.
Default: - The default behavior applies when no specific method, path, or stage is provided. In this case, the ARN will cover all methods, all resources, and all stages of this API. Specifically, if 'method' is not specified, it defaults to '*', representing all methods. If 'path' is not specified, it defaults to '/*', representing all paths. If 'stage' is not specified, it also defaults to '*', representing all stages.
- Parameters:
method
-path
-stage
-
-
arnForExecuteApi
@Stability(Stable) @NotNull public String arnForExecuteApi(@Nullable String method, @Nullable String path) Get the "execute-api" ARN.When 'ANY' is passed to the method, an ARN with the method set to '*' is obtained.
Default: - The default behavior applies when no specific method, path, or stage is provided. In this case, the ARN will cover all methods, all resources, and all stages of this API. Specifically, if 'method' is not specified, it defaults to '*', representing all methods. If 'path' is not specified, it defaults to '/*', representing all paths. If 'stage' is not specified, it also defaults to '*', representing all stages.
- Parameters:
method
-path
-
-
arnForExecuteApi
Get the "execute-api" ARN.When 'ANY' is passed to the method, an ARN with the method set to '*' is obtained.
Default: - The default behavior applies when no specific method, path, or stage is provided. In this case, the ARN will cover all methods, all resources, and all stages of this API. Specifically, if 'method' is not specified, it defaults to '*', representing all methods. If 'path' is not specified, it defaults to '/*', representing all paths. If 'stage' is not specified, it also defaults to '*', representing all stages.
- Parameters:
method
-
-
arnForExecuteApi
Get the "execute-api" ARN.When 'ANY' is passed to the method, an ARN with the method set to '*' is obtained.
Default: - The default behavior applies when no specific method, path, or stage is provided. In this case, the ARN will cover all methods, all resources, and all stages of this API. Specifically, if 'method' is not specified, it defaults to '*', representing all methods. If 'path' is not specified, it defaults to '/*', representing all paths. If 'stage' is not specified, it also defaults to '*', representing all stages.
-
grantManageConnections
Grant access to the API Gateway management API for this WebSocket API to an IAM principal (Role/Group/User).- Parameters:
identity
- The principal. This parameter is required.
-
metric
@Stability(Stable) @NotNull public Metric metric(@NotNull String metricName, @Nullable MetricOptions props) Return the given named metric for this Api Gateway. -
metric
Return the given named metric for this Api Gateway. -
getApiEndpoint
The default endpoint for an API.- Specified by:
getApiEndpoint
in interfaceIApi
-
getApiId
The identifier of this API Gateway API. -
getWebSocketApiName
A human friendly name for this WebSocket API.Note that this is different from
webSocketApiId
.
-