All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.amazonaws.services.fms.AWSFMSClient Maven / Gradle / Ivy

/*
 * Copyright 2017-2022 Amazon.com, Inc. or its affiliates. All Rights Reserved.
 * 
 * Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance with
 * the License. A copy of the License is located at
 * 
 * http://aws.amazon.com/apache2.0
 * 
 * or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
 * CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions
 * and limitations under the License.
 */
package com.amazonaws.services.fms;

import org.w3c.dom.*;

import java.net.*;
import java.util.*;

import javax.annotation.Generated;

import org.apache.commons.logging.*;

import com.amazonaws.*;
import com.amazonaws.annotation.SdkInternalApi;
import com.amazonaws.auth.*;

import com.amazonaws.handlers.*;
import com.amazonaws.http.*;
import com.amazonaws.internal.*;
import com.amazonaws.internal.auth.*;
import com.amazonaws.metrics.*;
import com.amazonaws.regions.*;
import com.amazonaws.transform.*;
import com.amazonaws.util.*;
import com.amazonaws.protocol.json.*;
import com.amazonaws.util.AWSRequestMetrics.Field;
import com.amazonaws.annotation.ThreadSafe;
import com.amazonaws.client.AwsSyncClientParams;
import com.amazonaws.client.builder.AdvancedConfig;

import com.amazonaws.services.fms.AWSFMSClientBuilder;

import com.amazonaws.AmazonServiceException;

import com.amazonaws.services.fms.model.*;
import com.amazonaws.services.fms.model.transform.*;

/**
 * Client for accessing FMS. All service calls made using this client are blocking, and will not return until the
 * service call completes.
 * 

*

* This is the Firewall Manager API Reference. This guide is for developers who need detailed information about * the Firewall Manager API actions, data types, and errors. For detailed information about Firewall Manager features, * see the Firewall Manager Developer * Guide. *

*

* Some API actions require explicit resource permissions. For information, see the developer guide topic Firewall Manager required * permissions for API actions. *

*/ @ThreadSafe @Generated("com.amazonaws:aws-java-sdk-code-generator") public class AWSFMSClient extends AmazonWebServiceClient implements AWSFMS { /** Provider for AWS credentials. */ private final AWSCredentialsProvider awsCredentialsProvider; private static final Log log = LogFactory.getLog(AWSFMS.class); /** Default signing name for the service. */ private static final String DEFAULT_SIGNING_NAME = "fms"; /** Client configuration factory providing ClientConfigurations tailored to this client */ protected static final ClientConfigurationFactory configFactory = new ClientConfigurationFactory(); private final AdvancedConfig advancedConfig; private static final com.amazonaws.protocol.json.SdkJsonProtocolFactory protocolFactory = new com.amazonaws.protocol.json.SdkJsonProtocolFactory( new JsonClientMetadata() .withProtocolVersion("1.1") .withSupportsCbor(false) .withSupportsIon(false) .addErrorMetadata( new JsonErrorShapeMetadata().withErrorCode("InvalidOperationException").withExceptionUnmarshaller( com.amazonaws.services.fms.model.transform.InvalidOperationExceptionUnmarshaller.getInstance())) .addErrorMetadata( new JsonErrorShapeMetadata().withErrorCode("InternalErrorException").withExceptionUnmarshaller( com.amazonaws.services.fms.model.transform.InternalErrorExceptionUnmarshaller.getInstance())) .addErrorMetadata( new JsonErrorShapeMetadata().withErrorCode("LimitExceededException").withExceptionUnmarshaller( com.amazonaws.services.fms.model.transform.LimitExceededExceptionUnmarshaller.getInstance())) .addErrorMetadata( new JsonErrorShapeMetadata().withErrorCode("InvalidTypeException").withExceptionUnmarshaller( com.amazonaws.services.fms.model.transform.InvalidTypeExceptionUnmarshaller.getInstance())) .addErrorMetadata( new JsonErrorShapeMetadata().withErrorCode("ResourceNotFoundException").withExceptionUnmarshaller( com.amazonaws.services.fms.model.transform.ResourceNotFoundExceptionUnmarshaller.getInstance())) .addErrorMetadata( new JsonErrorShapeMetadata().withErrorCode("InvalidInputException").withExceptionUnmarshaller( com.amazonaws.services.fms.model.transform.InvalidInputExceptionUnmarshaller.getInstance())) .withBaseServiceExceptionClass(com.amazonaws.services.fms.model.AWSFMSException.class)); public static AWSFMSClientBuilder builder() { return AWSFMSClientBuilder.standard(); } /** * Constructs a new client to invoke service methods on FMS using the specified parameters. * *

* All service calls made using this new client object are blocking, and will not return until the service call * completes. * * @param clientParams * Object providing client parameters. */ AWSFMSClient(AwsSyncClientParams clientParams) { this(clientParams, false); } /** * Constructs a new client to invoke service methods on FMS using the specified parameters. * *

* All service calls made using this new client object are blocking, and will not return until the service call * completes. * * @param clientParams * Object providing client parameters. */ AWSFMSClient(AwsSyncClientParams clientParams, boolean endpointDiscoveryEnabled) { super(clientParams); this.awsCredentialsProvider = clientParams.getCredentialsProvider(); this.advancedConfig = clientParams.getAdvancedConfig(); init(); } private void init() { setServiceNameIntern(DEFAULT_SIGNING_NAME); setEndpointPrefix(ENDPOINT_PREFIX); // calling this.setEndPoint(...) will also modify the signer accordingly setEndpoint("fms.us-east-1.amazonaws.com"); HandlerChainFactory chainFactory = new HandlerChainFactory(); requestHandler2s.addAll(chainFactory.newRequestHandlerChain("/com/amazonaws/services/fms/request.handlers")); requestHandler2s.addAll(chainFactory.newRequestHandler2Chain("/com/amazonaws/services/fms/request.handler2s")); requestHandler2s.addAll(chainFactory.getGlobalHandlers()); } /** *

* Sets the Firewall Manager administrator account. The account must be a member of the organization in * Organizations whose resources you want to protect. Firewall Manager sets the permissions that allow the account * to administer your Firewall Manager policies. *

*

* The account that you associate with Firewall Manager is called the Firewall Manager administrator account. *

* * @param associateAdminAccountRequest * @return Result of the AssociateAdminAccount operation returned by the service. * @throws InvalidOperationException * The operation failed because there was nothing to do or the operation wasn't possible. For example, you * might have submitted an AssociateAdminAccount request for an account ID that was already set * as the Firewall Manager administrator. Or you might have tried to access a Region that's disabled by * default, and that you need to enable for the Firewall Manager administrator account and for Organizations * before you can access it. * @throws InvalidInputException * The parameters of the request were invalid. * @throws ResourceNotFoundException * The specified resource was not found. * @throws InternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws LimitExceededException * The operation exceeds a resource limit, for example, the maximum number of policy objects * that you can create for an Amazon Web Services account. For more information, see Firewall Manager Limits * in the WAF Developer Guide. * @sample AWSFMS.AssociateAdminAccount * @see AWS API * Documentation */ @Override public AssociateAdminAccountResult associateAdminAccount(AssociateAdminAccountRequest request) { request = beforeClientExecution(request); return executeAssociateAdminAccount(request); } @SdkInternalApi final AssociateAdminAccountResult executeAssociateAdminAccount(AssociateAdminAccountRequest associateAdminAccountRequest) { ExecutionContext executionContext = createExecutionContext(associateAdminAccountRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new AssociateAdminAccountRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(associateAdminAccountRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "FMS"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "AssociateAdminAccount"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory .createResponseHandler(new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new AssociateAdminAccountResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Sets the Firewall Manager policy administrator as a tenant administrator of a third-party firewall service. A * tenant is an instance of the third-party firewall service that's associated with your Amazon Web Services * customer account. *

* * @param associateThirdPartyFirewallRequest * @return Result of the AssociateThirdPartyFirewall operation returned by the service. * @throws InvalidOperationException * The operation failed because there was nothing to do or the operation wasn't possible. For example, you * might have submitted an AssociateAdminAccount request for an account ID that was already set * as the Firewall Manager administrator. Or you might have tried to access a Region that's disabled by * default, and that you need to enable for the Firewall Manager administrator account and for Organizations * before you can access it. * @throws InvalidInputException * The parameters of the request were invalid. * @throws ResourceNotFoundException * The specified resource was not found. * @throws InternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @sample AWSFMS.AssociateThirdPartyFirewall * @see AWS API Documentation */ @Override public AssociateThirdPartyFirewallResult associateThirdPartyFirewall(AssociateThirdPartyFirewallRequest request) { request = beforeClientExecution(request); return executeAssociateThirdPartyFirewall(request); } @SdkInternalApi final AssociateThirdPartyFirewallResult executeAssociateThirdPartyFirewall(AssociateThirdPartyFirewallRequest associateThirdPartyFirewallRequest) { ExecutionContext executionContext = createExecutionContext(associateThirdPartyFirewallRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new AssociateThirdPartyFirewallRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(associateThirdPartyFirewallRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "FMS"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "AssociateThirdPartyFirewall"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new AssociateThirdPartyFirewallResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Permanently deletes an Firewall Manager applications list. *

* * @param deleteAppsListRequest * @return Result of the DeleteAppsList operation returned by the service. * @throws ResourceNotFoundException * The specified resource was not found. * @throws InvalidOperationException * The operation failed because there was nothing to do or the operation wasn't possible. For example, you * might have submitted an AssociateAdminAccount request for an account ID that was already set * as the Firewall Manager administrator. Or you might have tried to access a Region that's disabled by * default, and that you need to enable for the Firewall Manager administrator account and for Organizations * before you can access it. * @throws InternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @sample AWSFMS.DeleteAppsList * @see AWS API * Documentation */ @Override public DeleteAppsListResult deleteAppsList(DeleteAppsListRequest request) { request = beforeClientExecution(request); return executeDeleteAppsList(request); } @SdkInternalApi final DeleteAppsListResult executeDeleteAppsList(DeleteAppsListRequest deleteAppsListRequest) { ExecutionContext executionContext = createExecutionContext(deleteAppsListRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeleteAppsListRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(deleteAppsListRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "FMS"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeleteAppsList"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new DeleteAppsListResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Deletes an Firewall Manager association with the IAM role and the Amazon Simple Notification Service (SNS) topic * that is used to record Firewall Manager SNS logs. *

* * @param deleteNotificationChannelRequest * @return Result of the DeleteNotificationChannel operation returned by the service. * @throws ResourceNotFoundException * The specified resource was not found. * @throws InvalidOperationException * The operation failed because there was nothing to do or the operation wasn't possible. For example, you * might have submitted an AssociateAdminAccount request for an account ID that was already set * as the Firewall Manager administrator. Or you might have tried to access a Region that's disabled by * default, and that you need to enable for the Firewall Manager administrator account and for Organizations * before you can access it. * @throws InternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @sample AWSFMS.DeleteNotificationChannel * @see AWS * API Documentation */ @Override public DeleteNotificationChannelResult deleteNotificationChannel(DeleteNotificationChannelRequest request) { request = beforeClientExecution(request); return executeDeleteNotificationChannel(request); } @SdkInternalApi final DeleteNotificationChannelResult executeDeleteNotificationChannel(DeleteNotificationChannelRequest deleteNotificationChannelRequest) { ExecutionContext executionContext = createExecutionContext(deleteNotificationChannelRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeleteNotificationChannelRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(deleteNotificationChannelRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "FMS"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeleteNotificationChannel"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new DeleteNotificationChannelResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Permanently deletes an Firewall Manager policy. *

* * @param deletePolicyRequest * @return Result of the DeletePolicy operation returned by the service. * @throws ResourceNotFoundException * The specified resource was not found. * @throws InvalidOperationException * The operation failed because there was nothing to do or the operation wasn't possible. For example, you * might have submitted an AssociateAdminAccount request for an account ID that was already set * as the Firewall Manager administrator. Or you might have tried to access a Region that's disabled by * default, and that you need to enable for the Firewall Manager administrator account and for Organizations * before you can access it. * @throws InternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws InvalidInputException * The parameters of the request were invalid. * @throws LimitExceededException * The operation exceeds a resource limit, for example, the maximum number of policy objects * that you can create for an Amazon Web Services account. For more information, see Firewall Manager Limits * in the WAF Developer Guide. * @sample AWSFMS.DeletePolicy * @see AWS API * Documentation */ @Override public DeletePolicyResult deletePolicy(DeletePolicyRequest request) { request = beforeClientExecution(request); return executeDeletePolicy(request); } @SdkInternalApi final DeletePolicyResult executeDeletePolicy(DeletePolicyRequest deletePolicyRequest) { ExecutionContext executionContext = createExecutionContext(deletePolicyRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeletePolicyRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(deletePolicyRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "FMS"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeletePolicy"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new DeletePolicyResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Permanently deletes an Firewall Manager protocols list. *

* * @param deleteProtocolsListRequest * @return Result of the DeleteProtocolsList operation returned by the service. * @throws ResourceNotFoundException * The specified resource was not found. * @throws InvalidOperationException * The operation failed because there was nothing to do or the operation wasn't possible. For example, you * might have submitted an AssociateAdminAccount request for an account ID that was already set * as the Firewall Manager administrator. Or you might have tried to access a Region that's disabled by * default, and that you need to enable for the Firewall Manager administrator account and for Organizations * before you can access it. * @throws InternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @sample AWSFMS.DeleteProtocolsList * @see AWS API * Documentation */ @Override public DeleteProtocolsListResult deleteProtocolsList(DeleteProtocolsListRequest request) { request = beforeClientExecution(request); return executeDeleteProtocolsList(request); } @SdkInternalApi final DeleteProtocolsListResult executeDeleteProtocolsList(DeleteProtocolsListRequest deleteProtocolsListRequest) { ExecutionContext executionContext = createExecutionContext(deleteProtocolsListRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeleteProtocolsListRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(deleteProtocolsListRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "FMS"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeleteProtocolsList"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new DeleteProtocolsListResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Disassociates the account that has been set as the Firewall Manager administrator account. To set a different * account as the administrator account, you must submit an AssociateAdminAccount request. *

* * @param disassociateAdminAccountRequest * @return Result of the DisassociateAdminAccount operation returned by the service. * @throws InvalidOperationException * The operation failed because there was nothing to do or the operation wasn't possible. For example, you * might have submitted an AssociateAdminAccount request for an account ID that was already set * as the Firewall Manager administrator. Or you might have tried to access a Region that's disabled by * default, and that you need to enable for the Firewall Manager administrator account and for Organizations * before you can access it. * @throws ResourceNotFoundException * The specified resource was not found. * @throws InternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @sample AWSFMS.DisassociateAdminAccount * @see AWS * API Documentation */ @Override public DisassociateAdminAccountResult disassociateAdminAccount(DisassociateAdminAccountRequest request) { request = beforeClientExecution(request); return executeDisassociateAdminAccount(request); } @SdkInternalApi final DisassociateAdminAccountResult executeDisassociateAdminAccount(DisassociateAdminAccountRequest disassociateAdminAccountRequest) { ExecutionContext executionContext = createExecutionContext(disassociateAdminAccountRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DisassociateAdminAccountRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(disassociateAdminAccountRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "FMS"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DisassociateAdminAccount"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new DisassociateAdminAccountResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Disassociates a Firewall Manager policy administrator from a third-party firewall tenant. When you call * DisassociateThirdPartyFirewall, the third-party firewall vendor deletes all of the firewalls that * are associated with the account. *

* * @param disassociateThirdPartyFirewallRequest * @return Result of the DisassociateThirdPartyFirewall operation returned by the service. * @throws InvalidOperationException * The operation failed because there was nothing to do or the operation wasn't possible. For example, you * might have submitted an AssociateAdminAccount request for an account ID that was already set * as the Firewall Manager administrator. Or you might have tried to access a Region that's disabled by * default, and that you need to enable for the Firewall Manager administrator account and for Organizations * before you can access it. * @throws InvalidInputException * The parameters of the request were invalid. * @throws ResourceNotFoundException * The specified resource was not found. * @throws InternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @sample AWSFMS.DisassociateThirdPartyFirewall * @see AWS API Documentation */ @Override public DisassociateThirdPartyFirewallResult disassociateThirdPartyFirewall(DisassociateThirdPartyFirewallRequest request) { request = beforeClientExecution(request); return executeDisassociateThirdPartyFirewall(request); } @SdkInternalApi final DisassociateThirdPartyFirewallResult executeDisassociateThirdPartyFirewall(DisassociateThirdPartyFirewallRequest disassociateThirdPartyFirewallRequest) { ExecutionContext executionContext = createExecutionContext(disassociateThirdPartyFirewallRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DisassociateThirdPartyFirewallRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(disassociateThirdPartyFirewallRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "FMS"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DisassociateThirdPartyFirewall"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new DisassociateThirdPartyFirewallResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Returns the Organizations account that is associated with Firewall Manager as the Firewall Manager administrator. *

* * @param getAdminAccountRequest * @return Result of the GetAdminAccount operation returned by the service. * @throws InvalidOperationException * The operation failed because there was nothing to do or the operation wasn't possible. For example, you * might have submitted an AssociateAdminAccount request for an account ID that was already set * as the Firewall Manager administrator. Or you might have tried to access a Region that's disabled by * default, and that you need to enable for the Firewall Manager administrator account and for Organizations * before you can access it. * @throws ResourceNotFoundException * The specified resource was not found. * @throws InternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @sample AWSFMS.GetAdminAccount * @see AWS API * Documentation */ @Override public GetAdminAccountResult getAdminAccount(GetAdminAccountRequest request) { request = beforeClientExecution(request); return executeGetAdminAccount(request); } @SdkInternalApi final GetAdminAccountResult executeGetAdminAccount(GetAdminAccountRequest getAdminAccountRequest) { ExecutionContext executionContext = createExecutionContext(getAdminAccountRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new GetAdminAccountRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(getAdminAccountRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "FMS"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "GetAdminAccount"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new GetAdminAccountResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Returns information about the specified Firewall Manager applications list. *

* * @param getAppsListRequest * @return Result of the GetAppsList operation returned by the service. * @throws ResourceNotFoundException * The specified resource was not found. * @throws InvalidOperationException * The operation failed because there was nothing to do or the operation wasn't possible. For example, you * might have submitted an AssociateAdminAccount request for an account ID that was already set * as the Firewall Manager administrator. Or you might have tried to access a Region that's disabled by * default, and that you need to enable for the Firewall Manager administrator account and for Organizations * before you can access it. * @throws InternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @sample AWSFMS.GetAppsList * @see AWS API * Documentation */ @Override public GetAppsListResult getAppsList(GetAppsListRequest request) { request = beforeClientExecution(request); return executeGetAppsList(request); } @SdkInternalApi final GetAppsListResult executeGetAppsList(GetAppsListRequest getAppsListRequest) { ExecutionContext executionContext = createExecutionContext(getAppsListRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new GetAppsListRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(getAppsListRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "FMS"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "GetAppsList"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new GetAppsListResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Returns detailed compliance information about the specified member account. Details include resources that are in * and out of compliance with the specified policy. *

*
    *
  • *

    * Resources are considered noncompliant for WAF and Shield Advanced policies if the specified policy has not been * applied to them. *

    *
  • *
  • *

    * Resources are considered noncompliant for security group policies if they are in scope of the policy, they * violate one or more of the policy rules, and remediation is disabled or not possible. *

    *
  • *
  • *

    * Resources are considered noncompliant for Network Firewall policies if a firewall is missing in the VPC, if the * firewall endpoint isn't set up in an expected Availability Zone and subnet, if a subnet created by the Firewall * Manager doesn't have the expected route table, and for modifications to a firewall policy that violate the * Firewall Manager policy's rules. *

    *
  • *
  • *

    * Resources are considered noncompliant for DNS Firewall policies if a DNS Firewall rule group is missing from the * rule group associations for the VPC. *

    *
  • *
* * @param getComplianceDetailRequest * @return Result of the GetComplianceDetail operation returned by the service. * @throws ResourceNotFoundException * The specified resource was not found. * @throws InternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws InvalidInputException * The parameters of the request were invalid. * @throws InvalidOperationException * The operation failed because there was nothing to do or the operation wasn't possible. For example, you * might have submitted an AssociateAdminAccount request for an account ID that was already set * as the Firewall Manager administrator. Or you might have tried to access a Region that's disabled by * default, and that you need to enable for the Firewall Manager administrator account and for Organizations * before you can access it. * @sample AWSFMS.GetComplianceDetail * @see AWS API * Documentation */ @Override public GetComplianceDetailResult getComplianceDetail(GetComplianceDetailRequest request) { request = beforeClientExecution(request); return executeGetComplianceDetail(request); } @SdkInternalApi final GetComplianceDetailResult executeGetComplianceDetail(GetComplianceDetailRequest getComplianceDetailRequest) { ExecutionContext executionContext = createExecutionContext(getComplianceDetailRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new GetComplianceDetailRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(getComplianceDetailRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "FMS"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "GetComplianceDetail"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new GetComplianceDetailResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Information about the Amazon Simple Notification Service (SNS) topic that is used to record Firewall Manager SNS * logs. *

* * @param getNotificationChannelRequest * @return Result of the GetNotificationChannel operation returned by the service. * @throws ResourceNotFoundException * The specified resource was not found. * @throws InvalidOperationException * The operation failed because there was nothing to do or the operation wasn't possible. For example, you * might have submitted an AssociateAdminAccount request for an account ID that was already set * as the Firewall Manager administrator. Or you might have tried to access a Region that's disabled by * default, and that you need to enable for the Firewall Manager administrator account and for Organizations * before you can access it. * @throws InternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @sample AWSFMS.GetNotificationChannel * @see AWS API * Documentation */ @Override public GetNotificationChannelResult getNotificationChannel(GetNotificationChannelRequest request) { request = beforeClientExecution(request); return executeGetNotificationChannel(request); } @SdkInternalApi final GetNotificationChannelResult executeGetNotificationChannel(GetNotificationChannelRequest getNotificationChannelRequest) { ExecutionContext executionContext = createExecutionContext(getNotificationChannelRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new GetNotificationChannelRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(getNotificationChannelRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "FMS"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "GetNotificationChannel"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new GetNotificationChannelResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Returns information about the specified Firewall Manager policy. *

* * @param getPolicyRequest * @return Result of the GetPolicy operation returned by the service. * @throws ResourceNotFoundException * The specified resource was not found. * @throws InvalidOperationException * The operation failed because there was nothing to do or the operation wasn't possible. For example, you * might have submitted an AssociateAdminAccount request for an account ID that was already set * as the Firewall Manager administrator. Or you might have tried to access a Region that's disabled by * default, and that you need to enable for the Firewall Manager administrator account and for Organizations * before you can access it. * @throws InternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws InvalidTypeException * The value of the Type parameter is invalid. * @sample AWSFMS.GetPolicy * @see AWS API * Documentation */ @Override public GetPolicyResult getPolicy(GetPolicyRequest request) { request = beforeClientExecution(request); return executeGetPolicy(request); } @SdkInternalApi final GetPolicyResult executeGetPolicy(GetPolicyRequest getPolicyRequest) { ExecutionContext executionContext = createExecutionContext(getPolicyRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new GetPolicyRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(getPolicyRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "FMS"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "GetPolicy"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler(new JsonOperationMetadata() .withPayloadJson(true).withHasStreamingSuccessResponse(false), new GetPolicyResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* If you created a Shield Advanced policy, returns policy-level attack summary information in the event of a * potential DDoS attack. Other policy types are currently unsupported. *

* * @param getProtectionStatusRequest * @return Result of the GetProtectionStatus operation returned by the service. * @throws InvalidInputException * The parameters of the request were invalid. * @throws ResourceNotFoundException * The specified resource was not found. * @throws InternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @sample AWSFMS.GetProtectionStatus * @see AWS API * Documentation */ @Override public GetProtectionStatusResult getProtectionStatus(GetProtectionStatusRequest request) { request = beforeClientExecution(request); return executeGetProtectionStatus(request); } @SdkInternalApi final GetProtectionStatusResult executeGetProtectionStatus(GetProtectionStatusRequest getProtectionStatusRequest) { ExecutionContext executionContext = createExecutionContext(getProtectionStatusRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new GetProtectionStatusRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(getProtectionStatusRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "FMS"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "GetProtectionStatus"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new GetProtectionStatusResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Returns information about the specified Firewall Manager protocols list. *

* * @param getProtocolsListRequest * @return Result of the GetProtocolsList operation returned by the service. * @throws ResourceNotFoundException * The specified resource was not found. * @throws InvalidOperationException * The operation failed because there was nothing to do or the operation wasn't possible. For example, you * might have submitted an AssociateAdminAccount request for an account ID that was already set * as the Firewall Manager administrator. Or you might have tried to access a Region that's disabled by * default, and that you need to enable for the Firewall Manager administrator account and for Organizations * before you can access it. * @throws InternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @sample AWSFMS.GetProtocolsList * @see AWS API * Documentation */ @Override public GetProtocolsListResult getProtocolsList(GetProtocolsListRequest request) { request = beforeClientExecution(request); return executeGetProtocolsList(request); } @SdkInternalApi final GetProtocolsListResult executeGetProtocolsList(GetProtocolsListRequest getProtocolsListRequest) { ExecutionContext executionContext = createExecutionContext(getProtocolsListRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new GetProtocolsListRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(getProtocolsListRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "FMS"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "GetProtocolsList"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new GetProtocolsListResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* The onboarding status of a Firewall Manager admin account to third-party firewall vendor tenant. *

* * @param getThirdPartyFirewallAssociationStatusRequest * @return Result of the GetThirdPartyFirewallAssociationStatus operation returned by the service. * @throws InvalidOperationException * The operation failed because there was nothing to do or the operation wasn't possible. For example, you * might have submitted an AssociateAdminAccount request for an account ID that was already set * as the Firewall Manager administrator. Or you might have tried to access a Region that's disabled by * default, and that you need to enable for the Firewall Manager administrator account and for Organizations * before you can access it. * @throws InvalidInputException * The parameters of the request were invalid. * @throws ResourceNotFoundException * The specified resource was not found. * @throws InternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @sample AWSFMS.GetThirdPartyFirewallAssociationStatus * @see AWS API Documentation */ @Override public GetThirdPartyFirewallAssociationStatusResult getThirdPartyFirewallAssociationStatus(GetThirdPartyFirewallAssociationStatusRequest request) { request = beforeClientExecution(request); return executeGetThirdPartyFirewallAssociationStatus(request); } @SdkInternalApi final GetThirdPartyFirewallAssociationStatusResult executeGetThirdPartyFirewallAssociationStatus( GetThirdPartyFirewallAssociationStatusRequest getThirdPartyFirewallAssociationStatusRequest) { ExecutionContext executionContext = createExecutionContext(getThirdPartyFirewallAssociationStatusRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new GetThirdPartyFirewallAssociationStatusRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(getThirdPartyFirewallAssociationStatusRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "FMS"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "GetThirdPartyFirewallAssociationStatus"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory .createResponseHandler(new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new GetThirdPartyFirewallAssociationStatusResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Retrieves violations for a resource based on the specified Firewall Manager policy and Amazon Web Services * account. *

* * @param getViolationDetailsRequest * @return Result of the GetViolationDetails operation returned by the service. * @throws ResourceNotFoundException * The specified resource was not found. * @throws InvalidInputException * The parameters of the request were invalid. * @throws InternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @sample AWSFMS.GetViolationDetails * @see AWS API * Documentation */ @Override public GetViolationDetailsResult getViolationDetails(GetViolationDetailsRequest request) { request = beforeClientExecution(request); return executeGetViolationDetails(request); } @SdkInternalApi final GetViolationDetailsResult executeGetViolationDetails(GetViolationDetailsRequest getViolationDetailsRequest) { ExecutionContext executionContext = createExecutionContext(getViolationDetailsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new GetViolationDetailsRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(getViolationDetailsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "FMS"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "GetViolationDetails"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new GetViolationDetailsResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Returns an array of AppsListDataSummary objects. *

* * @param listAppsListsRequest * @return Result of the ListAppsLists operation returned by the service. * @throws ResourceNotFoundException * The specified resource was not found. * @throws InvalidOperationException * The operation failed because there was nothing to do or the operation wasn't possible. For example, you * might have submitted an AssociateAdminAccount request for an account ID that was already set * as the Firewall Manager administrator. Or you might have tried to access a Region that's disabled by * default, and that you need to enable for the Firewall Manager administrator account and for Organizations * before you can access it. * @throws LimitExceededException * The operation exceeds a resource limit, for example, the maximum number of policy objects * that you can create for an Amazon Web Services account. For more information, see Firewall Manager Limits * in the WAF Developer Guide. * @throws InternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @sample AWSFMS.ListAppsLists * @see AWS API * Documentation */ @Override public ListAppsListsResult listAppsLists(ListAppsListsRequest request) { request = beforeClientExecution(request); return executeListAppsLists(request); } @SdkInternalApi final ListAppsListsResult executeListAppsLists(ListAppsListsRequest listAppsListsRequest) { ExecutionContext executionContext = createExecutionContext(listAppsListsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ListAppsListsRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(listAppsListsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "FMS"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ListAppsLists"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new ListAppsListsResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Returns an array of PolicyComplianceStatus objects. Use PolicyComplianceStatus to get a * summary of which member accounts are protected by the specified policy. *

* * @param listComplianceStatusRequest * @return Result of the ListComplianceStatus operation returned by the service. * @throws ResourceNotFoundException * The specified resource was not found. * @throws InternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @sample AWSFMS.ListComplianceStatus * @see AWS API * Documentation */ @Override public ListComplianceStatusResult listComplianceStatus(ListComplianceStatusRequest request) { request = beforeClientExecution(request); return executeListComplianceStatus(request); } @SdkInternalApi final ListComplianceStatusResult executeListComplianceStatus(ListComplianceStatusRequest listComplianceStatusRequest) { ExecutionContext executionContext = createExecutionContext(listComplianceStatusRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ListComplianceStatusRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(listComplianceStatusRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "FMS"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ListComplianceStatus"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new ListComplianceStatusResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Returns a MemberAccounts object that lists the member accounts in the administrator's Amazon Web * Services organization. *

*

* The ListMemberAccounts must be submitted by the account that is set as the Firewall Manager * administrator. *

* * @param listMemberAccountsRequest * @return Result of the ListMemberAccounts operation returned by the service. * @throws ResourceNotFoundException * The specified resource was not found. * @throws InternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @sample AWSFMS.ListMemberAccounts * @see AWS API * Documentation */ @Override public ListMemberAccountsResult listMemberAccounts(ListMemberAccountsRequest request) { request = beforeClientExecution(request); return executeListMemberAccounts(request); } @SdkInternalApi final ListMemberAccountsResult executeListMemberAccounts(ListMemberAccountsRequest listMemberAccountsRequest) { ExecutionContext executionContext = createExecutionContext(listMemberAccountsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ListMemberAccountsRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(listMemberAccountsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "FMS"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ListMemberAccounts"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new ListMemberAccountsResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Returns an array of PolicySummary objects. *

* * @param listPoliciesRequest * @return Result of the ListPolicies operation returned by the service. * @throws ResourceNotFoundException * The specified resource was not found. * @throws InvalidOperationException * The operation failed because there was nothing to do or the operation wasn't possible. For example, you * might have submitted an AssociateAdminAccount request for an account ID that was already set * as the Firewall Manager administrator. Or you might have tried to access a Region that's disabled by * default, and that you need to enable for the Firewall Manager administrator account and for Organizations * before you can access it. * @throws LimitExceededException * The operation exceeds a resource limit, for example, the maximum number of policy objects * that you can create for an Amazon Web Services account. For more information, see Firewall Manager Limits * in the WAF Developer Guide. * @throws InternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @sample AWSFMS.ListPolicies * @see AWS API * Documentation */ @Override public ListPoliciesResult listPolicies(ListPoliciesRequest request) { request = beforeClientExecution(request); return executeListPolicies(request); } @SdkInternalApi final ListPoliciesResult executeListPolicies(ListPoliciesRequest listPoliciesRequest) { ExecutionContext executionContext = createExecutionContext(listPoliciesRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ListPoliciesRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(listPoliciesRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "FMS"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ListPolicies"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new ListPoliciesResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Returns an array of ProtocolsListDataSummary objects. *

* * @param listProtocolsListsRequest * @return Result of the ListProtocolsLists operation returned by the service. * @throws ResourceNotFoundException * The specified resource was not found. * @throws InvalidOperationException * The operation failed because there was nothing to do or the operation wasn't possible. For example, you * might have submitted an AssociateAdminAccount request for an account ID that was already set * as the Firewall Manager administrator. Or you might have tried to access a Region that's disabled by * default, and that you need to enable for the Firewall Manager administrator account and for Organizations * before you can access it. * @throws InternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @sample AWSFMS.ListProtocolsLists * @see AWS API * Documentation */ @Override public ListProtocolsListsResult listProtocolsLists(ListProtocolsListsRequest request) { request = beforeClientExecution(request); return executeListProtocolsLists(request); } @SdkInternalApi final ListProtocolsListsResult executeListProtocolsLists(ListProtocolsListsRequest listProtocolsListsRequest) { ExecutionContext executionContext = createExecutionContext(listProtocolsListsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ListProtocolsListsRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(listProtocolsListsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "FMS"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ListProtocolsLists"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new ListProtocolsListsResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Retrieves the list of tags for the specified Amazon Web Services resource. *

* * @param listTagsForResourceRequest * @return Result of the ListTagsForResource operation returned by the service. * @throws ResourceNotFoundException * The specified resource was not found. * @throws InvalidOperationException * The operation failed because there was nothing to do or the operation wasn't possible. For example, you * might have submitted an AssociateAdminAccount request for an account ID that was already set * as the Firewall Manager administrator. Or you might have tried to access a Region that's disabled by * default, and that you need to enable for the Firewall Manager administrator account and for Organizations * before you can access it. * @throws InternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws InvalidInputException * The parameters of the request were invalid. * @sample AWSFMS.ListTagsForResource * @see AWS API * Documentation */ @Override public ListTagsForResourceResult listTagsForResource(ListTagsForResourceRequest request) { request = beforeClientExecution(request); return executeListTagsForResource(request); } @SdkInternalApi final ListTagsForResourceResult executeListTagsForResource(ListTagsForResourceRequest listTagsForResourceRequest) { ExecutionContext executionContext = createExecutionContext(listTagsForResourceRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ListTagsForResourceRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(listTagsForResourceRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "FMS"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ListTagsForResource"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new ListTagsForResourceResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Retrieves a list of all of the third-party firewall policies that are associated with the third-party firewall * administrator's account. *

* * @param listThirdPartyFirewallFirewallPoliciesRequest * @return Result of the ListThirdPartyFirewallFirewallPolicies operation returned by the service. * @throws InvalidOperationException * The operation failed because there was nothing to do or the operation wasn't possible. For example, you * might have submitted an AssociateAdminAccount request for an account ID that was already set * as the Firewall Manager administrator. Or you might have tried to access a Region that's disabled by * default, and that you need to enable for the Firewall Manager administrator account and for Organizations * before you can access it. * @throws InvalidInputException * The parameters of the request were invalid. * @throws ResourceNotFoundException * The specified resource was not found. * @throws InternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @sample AWSFMS.ListThirdPartyFirewallFirewallPolicies * @see AWS API Documentation */ @Override public ListThirdPartyFirewallFirewallPoliciesResult listThirdPartyFirewallFirewallPolicies(ListThirdPartyFirewallFirewallPoliciesRequest request) { request = beforeClientExecution(request); return executeListThirdPartyFirewallFirewallPolicies(request); } @SdkInternalApi final ListThirdPartyFirewallFirewallPoliciesResult executeListThirdPartyFirewallFirewallPolicies( ListThirdPartyFirewallFirewallPoliciesRequest listThirdPartyFirewallFirewallPoliciesRequest) { ExecutionContext executionContext = createExecutionContext(listThirdPartyFirewallFirewallPoliciesRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ListThirdPartyFirewallFirewallPoliciesRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(listThirdPartyFirewallFirewallPoliciesRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "FMS"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ListThirdPartyFirewallFirewallPolicies"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory .createResponseHandler(new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new ListThirdPartyFirewallFirewallPoliciesResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Creates an Firewall Manager applications list. *

* * @param putAppsListRequest * @return Result of the PutAppsList operation returned by the service. * @throws ResourceNotFoundException * The specified resource was not found. * @throws InvalidOperationException * The operation failed because there was nothing to do or the operation wasn't possible. For example, you * might have submitted an AssociateAdminAccount request for an account ID that was already set * as the Firewall Manager administrator. Or you might have tried to access a Region that's disabled by * default, and that you need to enable for the Firewall Manager administrator account and for Organizations * before you can access it. * @throws InvalidInputException * The parameters of the request were invalid. * @throws LimitExceededException * The operation exceeds a resource limit, for example, the maximum number of policy objects * that you can create for an Amazon Web Services account. For more information, see Firewall Manager Limits * in the WAF Developer Guide. * @throws InternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @sample AWSFMS.PutAppsList * @see AWS API * Documentation */ @Override public PutAppsListResult putAppsList(PutAppsListRequest request) { request = beforeClientExecution(request); return executePutAppsList(request); } @SdkInternalApi final PutAppsListResult executePutAppsList(PutAppsListRequest putAppsListRequest) { ExecutionContext executionContext = createExecutionContext(putAppsListRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new PutAppsListRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(putAppsListRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "FMS"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "PutAppsList"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new PutAppsListResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Designates the IAM role and Amazon Simple Notification Service (SNS) topic that Firewall Manager uses to record * SNS logs. *

*

* To perform this action outside of the console, you must configure the SNS topic to allow the Firewall Manager * role AWSServiceRoleForFMS to publish SNS logs. For more information, see Firewall Manager * required permissions for API actions in the Firewall Manager Developer Guide. *

* * @param putNotificationChannelRequest * @return Result of the PutNotificationChannel operation returned by the service. * @throws ResourceNotFoundException * The specified resource was not found. * @throws InvalidOperationException * The operation failed because there was nothing to do or the operation wasn't possible. For example, you * might have submitted an AssociateAdminAccount request for an account ID that was already set * as the Firewall Manager administrator. Or you might have tried to access a Region that's disabled by * default, and that you need to enable for the Firewall Manager administrator account and for Organizations * before you can access it. * @throws InternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @sample AWSFMS.PutNotificationChannel * @see AWS API * Documentation */ @Override public PutNotificationChannelResult putNotificationChannel(PutNotificationChannelRequest request) { request = beforeClientExecution(request); return executePutNotificationChannel(request); } @SdkInternalApi final PutNotificationChannelResult executePutNotificationChannel(PutNotificationChannelRequest putNotificationChannelRequest) { ExecutionContext executionContext = createExecutionContext(putNotificationChannelRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new PutNotificationChannelRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(putNotificationChannelRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "FMS"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "PutNotificationChannel"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new PutNotificationChannelResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Creates an Firewall Manager policy. *

*

* Firewall Manager provides the following types of policies: *

*
    *
  • *

    * An WAF policy (type WAFV2), which defines rule groups to run first in the corresponding WAF web ACL and rule * groups to run last in the web ACL. *

    *
  • *
  • *

    * An WAF Classic policy (type WAF), which defines a rule group. *

    *
  • *
  • *

    * A Shield Advanced policy, which applies Shield Advanced protection to specified accounts and resources. *

    *
  • *
  • *

    * A security group policy, which manages VPC security groups across your Amazon Web Services organization. *

    *
  • *
  • *

    * An Network Firewall policy, which provides firewall rules to filter network traffic in specified Amazon VPCs. *

    *
  • *
  • *

    * A DNS Firewall policy, which provides Route 53 Resolver DNS Firewall rules to filter DNS queries for specified * VPCs. *

    *
  • *
*

* Each policy is specific to one of the types. If you want to enforce more than one policy type across accounts, * create multiple policies. You can create multiple policies for each type. *

*

* You must be subscribed to Shield Advanced to create a Shield Advanced policy. For more information about * subscribing to Shield Advanced, see CreateSubscription. *

* * @param putPolicyRequest * @return Result of the PutPolicy operation returned by the service. * @throws ResourceNotFoundException * The specified resource was not found. * @throws InvalidOperationException * The operation failed because there was nothing to do or the operation wasn't possible. For example, you * might have submitted an AssociateAdminAccount request for an account ID that was already set * as the Firewall Manager administrator. Or you might have tried to access a Region that's disabled by * default, and that you need to enable for the Firewall Manager administrator account and for Organizations * before you can access it. * @throws InvalidInputException * The parameters of the request were invalid. * @throws LimitExceededException * The operation exceeds a resource limit, for example, the maximum number of policy objects * that you can create for an Amazon Web Services account. For more information, see Firewall Manager Limits * in the WAF Developer Guide. * @throws InternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws InvalidTypeException * The value of the Type parameter is invalid. * @sample AWSFMS.PutPolicy * @see AWS API * Documentation */ @Override public PutPolicyResult putPolicy(PutPolicyRequest request) { request = beforeClientExecution(request); return executePutPolicy(request); } @SdkInternalApi final PutPolicyResult executePutPolicy(PutPolicyRequest putPolicyRequest) { ExecutionContext executionContext = createExecutionContext(putPolicyRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new PutPolicyRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(putPolicyRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "FMS"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "PutPolicy"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler(new JsonOperationMetadata() .withPayloadJson(true).withHasStreamingSuccessResponse(false), new PutPolicyResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Creates an Firewall Manager protocols list. *

* * @param putProtocolsListRequest * @return Result of the PutProtocolsList operation returned by the service. * @throws ResourceNotFoundException * The specified resource was not found. * @throws InvalidOperationException * The operation failed because there was nothing to do or the operation wasn't possible. For example, you * might have submitted an AssociateAdminAccount request for an account ID that was already set * as the Firewall Manager administrator. Or you might have tried to access a Region that's disabled by * default, and that you need to enable for the Firewall Manager administrator account and for Organizations * before you can access it. * @throws InvalidInputException * The parameters of the request were invalid. * @throws LimitExceededException * The operation exceeds a resource limit, for example, the maximum number of policy objects * that you can create for an Amazon Web Services account. For more information, see Firewall Manager Limits * in the WAF Developer Guide. * @throws InternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @sample AWSFMS.PutProtocolsList * @see AWS API * Documentation */ @Override public PutProtocolsListResult putProtocolsList(PutProtocolsListRequest request) { request = beforeClientExecution(request); return executePutProtocolsList(request); } @SdkInternalApi final PutProtocolsListResult executePutProtocolsList(PutProtocolsListRequest putProtocolsListRequest) { ExecutionContext executionContext = createExecutionContext(putProtocolsListRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new PutProtocolsListRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(putProtocolsListRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "FMS"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "PutProtocolsList"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new PutProtocolsListResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Adds one or more tags to an Amazon Web Services resource. *

* * @param tagResourceRequest * @return Result of the TagResource operation returned by the service. * @throws ResourceNotFoundException * The specified resource was not found. * @throws InvalidOperationException * The operation failed because there was nothing to do or the operation wasn't possible. For example, you * might have submitted an AssociateAdminAccount request for an account ID that was already set * as the Firewall Manager administrator. Or you might have tried to access a Region that's disabled by * default, and that you need to enable for the Firewall Manager administrator account and for Organizations * before you can access it. * @throws InternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws InvalidInputException * The parameters of the request were invalid. * @throws LimitExceededException * The operation exceeds a resource limit, for example, the maximum number of policy objects * that you can create for an Amazon Web Services account. For more information, see Firewall Manager Limits * in the WAF Developer Guide. * @sample AWSFMS.TagResource * @see AWS API * Documentation */ @Override public TagResourceResult tagResource(TagResourceRequest request) { request = beforeClientExecution(request); return executeTagResource(request); } @SdkInternalApi final TagResourceResult executeTagResource(TagResourceRequest tagResourceRequest) { ExecutionContext executionContext = createExecutionContext(tagResourceRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new TagResourceRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(tagResourceRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "FMS"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "TagResource"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new TagResourceResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Removes one or more tags from an Amazon Web Services resource. *

* * @param untagResourceRequest * @return Result of the UntagResource operation returned by the service. * @throws ResourceNotFoundException * The specified resource was not found. * @throws InvalidOperationException * The operation failed because there was nothing to do or the operation wasn't possible. For example, you * might have submitted an AssociateAdminAccount request for an account ID that was already set * as the Firewall Manager administrator. Or you might have tried to access a Region that's disabled by * default, and that you need to enable for the Firewall Manager administrator account and for Organizations * before you can access it. * @throws InternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws InvalidInputException * The parameters of the request were invalid. * @sample AWSFMS.UntagResource * @see AWS API * Documentation */ @Override public UntagResourceResult untagResource(UntagResourceRequest request) { request = beforeClientExecution(request); return executeUntagResource(request); } @SdkInternalApi final UntagResourceResult executeUntagResource(UntagResourceRequest untagResourceRequest) { ExecutionContext executionContext = createExecutionContext(untagResourceRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new UntagResourceRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(untagResourceRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint); request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden()); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "FMS"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "UntagResource"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new UntagResourceResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** * Returns additional metadata for a previously executed successful, request, typically used for debugging issues * where a service isn't acting as expected. This data isn't considered part of the result data returned by an * operation, so it's available through this separate, diagnostic interface. *

* Response metadata is only cached for a limited period of time, so if you need to access this extra diagnostic * information for an executed request, you should use this method to retrieve it as soon as possible after * executing the request. * * @param request * The originally executed request * * @return The response metadata for the specified request, or null if none is available. */ public ResponseMetadata getCachedResponseMetadata(AmazonWebServiceRequest request) { return client.getResponseMetadataForRequest(request); } /** * Normal invoke with authentication. Credentials are required and may be overriden at the request level. **/ private Response invoke(Request request, HttpResponseHandler> responseHandler, ExecutionContext executionContext) { return invoke(request, responseHandler, executionContext, null, null); } /** * Normal invoke with authentication. Credentials are required and may be overriden at the request level. **/ private Response invoke(Request request, HttpResponseHandler> responseHandler, ExecutionContext executionContext, URI cachedEndpoint, URI uriFromEndpointTrait) { executionContext.setCredentialsProvider(CredentialUtils.getCredentialsProvider(request.getOriginalRequest(), awsCredentialsProvider)); return doInvoke(request, responseHandler, executionContext, cachedEndpoint, uriFromEndpointTrait); } /** * Invoke with no authentication. Credentials are not required and any credentials set on the client or request will * be ignored for this operation. **/ private Response anonymousInvoke(Request request, HttpResponseHandler> responseHandler, ExecutionContext executionContext) { return doInvoke(request, responseHandler, executionContext, null, null); } /** * Invoke the request using the http client. Assumes credentials (or lack thereof) have been configured in the * ExecutionContext beforehand. **/ private Response doInvoke(Request request, HttpResponseHandler> responseHandler, ExecutionContext executionContext, URI discoveredEndpoint, URI uriFromEndpointTrait) { if (discoveredEndpoint != null) { request.setEndpoint(discoveredEndpoint); request.getOriginalRequest().getRequestClientOptions().appendUserAgent("endpoint-discovery"); } else if (uriFromEndpointTrait != null) { request.setEndpoint(uriFromEndpointTrait); } else { request.setEndpoint(endpoint); } request.setTimeOffset(timeOffset); HttpResponseHandler errorResponseHandler = protocolFactory.createErrorResponseHandler(new JsonErrorResponseMetadata()); return client.execute(request, responseHandler, errorResponseHandler, executionContext); } @com.amazonaws.annotation.SdkInternalApi static com.amazonaws.protocol.json.SdkJsonProtocolFactory getProtocolFactory() { return protocolFactory; } @Override public void shutdown() { super.shutdown(); } }





© 2015 - 2025 Weber Informatics LLC | Privacy Policy