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

software.amazon.awssdk.services.fms.model.RemediationAction Maven / Gradle / Ivy

Go to download

The AWS Java SDK for FMS module holds the client classes that are used for communicating with FMS.

There is a newer version: 2.29.15
Show newest version
/*
 * Copyright 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 software.amazon.awssdk.services.fms.model;

import java.io.Serializable;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;
import java.util.Objects;
import java.util.Optional;
import java.util.function.BiConsumer;
import java.util.function.Consumer;
import java.util.function.Function;
import software.amazon.awssdk.annotations.Generated;
import software.amazon.awssdk.core.SdkField;
import software.amazon.awssdk.core.SdkPojo;
import software.amazon.awssdk.core.protocol.MarshallLocation;
import software.amazon.awssdk.core.protocol.MarshallingType;
import software.amazon.awssdk.core.traits.LocationTrait;
import software.amazon.awssdk.utils.ToString;
import software.amazon.awssdk.utils.builder.CopyableBuilder;
import software.amazon.awssdk.utils.builder.ToCopyableBuilder;

/**
 * 

* Information about an individual action you can take to remediate a violation. *

*/ @Generated("software.amazon.awssdk:codegen") public final class RemediationAction implements SdkPojo, Serializable, ToCopyableBuilder { private static final SdkField DESCRIPTION_FIELD = SdkField. builder(MarshallingType.STRING) .memberName("Description").getter(getter(RemediationAction::description)).setter(setter(Builder::description)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("Description").build()).build(); private static final SdkField EC2_CREATE_ROUTE_ACTION_FIELD = SdkField . builder(MarshallingType.SDK_POJO).memberName("EC2CreateRouteAction") .getter(getter(RemediationAction::ec2CreateRouteAction)).setter(setter(Builder::ec2CreateRouteAction)) .constructor(EC2CreateRouteAction::builder) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("EC2CreateRouteAction").build()) .build(); private static final SdkField EC2_REPLACE_ROUTE_ACTION_FIELD = SdkField . builder(MarshallingType.SDK_POJO).memberName("EC2ReplaceRouteAction") .getter(getter(RemediationAction::ec2ReplaceRouteAction)).setter(setter(Builder::ec2ReplaceRouteAction)) .constructor(EC2ReplaceRouteAction::builder) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("EC2ReplaceRouteAction").build()) .build(); private static final SdkField EC2_DELETE_ROUTE_ACTION_FIELD = SdkField . builder(MarshallingType.SDK_POJO).memberName("EC2DeleteRouteAction") .getter(getter(RemediationAction::ec2DeleteRouteAction)).setter(setter(Builder::ec2DeleteRouteAction)) .constructor(EC2DeleteRouteAction::builder) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("EC2DeleteRouteAction").build()) .build(); private static final SdkField EC2_COPY_ROUTE_TABLE_ACTION_FIELD = SdkField . builder(MarshallingType.SDK_POJO).memberName("EC2CopyRouteTableAction") .getter(getter(RemediationAction::ec2CopyRouteTableAction)).setter(setter(Builder::ec2CopyRouteTableAction)) .constructor(EC2CopyRouteTableAction::builder) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("EC2CopyRouteTableAction").build()) .build(); private static final SdkField EC2_REPLACE_ROUTE_TABLE_ASSOCIATION_ACTION_FIELD = SdkField . builder(MarshallingType.SDK_POJO) .memberName("EC2ReplaceRouteTableAssociationAction") .getter(getter(RemediationAction::ec2ReplaceRouteTableAssociationAction)) .setter(setter(Builder::ec2ReplaceRouteTableAssociationAction)) .constructor(EC2ReplaceRouteTableAssociationAction::builder) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD) .locationName("EC2ReplaceRouteTableAssociationAction").build()).build(); private static final SdkField EC2_ASSOCIATE_ROUTE_TABLE_ACTION_FIELD = SdkField . builder(MarshallingType.SDK_POJO) .memberName("EC2AssociateRouteTableAction") .getter(getter(RemediationAction::ec2AssociateRouteTableAction)) .setter(setter(Builder::ec2AssociateRouteTableAction)) .constructor(EC2AssociateRouteTableAction::builder) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("EC2AssociateRouteTableAction") .build()).build(); private static final SdkField EC2_CREATE_ROUTE_TABLE_ACTION_FIELD = SdkField . builder(MarshallingType.SDK_POJO).memberName("EC2CreateRouteTableAction") .getter(getter(RemediationAction::ec2CreateRouteTableAction)).setter(setter(Builder::ec2CreateRouteTableAction)) .constructor(EC2CreateRouteTableAction::builder) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("EC2CreateRouteTableAction").build()) .build(); private static final SdkField FMS_POLICY_UPDATE_FIREWALL_CREATION_CONFIG_ACTION_FIELD = SdkField . builder(MarshallingType.SDK_POJO) .memberName("FMSPolicyUpdateFirewallCreationConfigAction") .getter(getter(RemediationAction::fmsPolicyUpdateFirewallCreationConfigAction)) .setter(setter(Builder::fmsPolicyUpdateFirewallCreationConfigAction)) .constructor(FMSPolicyUpdateFirewallCreationConfigAction::builder) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD) .locationName("FMSPolicyUpdateFirewallCreationConfigAction").build()).build(); private static final SdkField CREATE_NETWORK_ACL_ACTION_FIELD = SdkField . builder(MarshallingType.SDK_POJO).memberName("CreateNetworkAclAction") .getter(getter(RemediationAction::createNetworkAclAction)).setter(setter(Builder::createNetworkAclAction)) .constructor(CreateNetworkAclAction::builder) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("CreateNetworkAclAction").build()) .build(); private static final SdkField REPLACE_NETWORK_ACL_ASSOCIATION_ACTION_FIELD = SdkField . builder(MarshallingType.SDK_POJO) .memberName("ReplaceNetworkAclAssociationAction") .getter(getter(RemediationAction::replaceNetworkAclAssociationAction)) .setter(setter(Builder::replaceNetworkAclAssociationAction)) .constructor(ReplaceNetworkAclAssociationAction::builder) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("ReplaceNetworkAclAssociationAction") .build()).build(); private static final SdkField CREATE_NETWORK_ACL_ENTRIES_ACTION_FIELD = SdkField . builder(MarshallingType.SDK_POJO) .memberName("CreateNetworkAclEntriesAction") .getter(getter(RemediationAction::createNetworkAclEntriesAction)) .setter(setter(Builder::createNetworkAclEntriesAction)) .constructor(CreateNetworkAclEntriesAction::builder) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("CreateNetworkAclEntriesAction") .build()).build(); private static final SdkField DELETE_NETWORK_ACL_ENTRIES_ACTION_FIELD = SdkField . builder(MarshallingType.SDK_POJO) .memberName("DeleteNetworkAclEntriesAction") .getter(getter(RemediationAction::deleteNetworkAclEntriesAction)) .setter(setter(Builder::deleteNetworkAclEntriesAction)) .constructor(DeleteNetworkAclEntriesAction::builder) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("DeleteNetworkAclEntriesAction") .build()).build(); private static final List> SDK_FIELDS = Collections.unmodifiableList(Arrays.asList(DESCRIPTION_FIELD, EC2_CREATE_ROUTE_ACTION_FIELD, EC2_REPLACE_ROUTE_ACTION_FIELD, EC2_DELETE_ROUTE_ACTION_FIELD, EC2_COPY_ROUTE_TABLE_ACTION_FIELD, EC2_REPLACE_ROUTE_TABLE_ASSOCIATION_ACTION_FIELD, EC2_ASSOCIATE_ROUTE_TABLE_ACTION_FIELD, EC2_CREATE_ROUTE_TABLE_ACTION_FIELD, FMS_POLICY_UPDATE_FIREWALL_CREATION_CONFIG_ACTION_FIELD, CREATE_NETWORK_ACL_ACTION_FIELD, REPLACE_NETWORK_ACL_ASSOCIATION_ACTION_FIELD, CREATE_NETWORK_ACL_ENTRIES_ACTION_FIELD, DELETE_NETWORK_ACL_ENTRIES_ACTION_FIELD)); private static final long serialVersionUID = 1L; private final String description; private final EC2CreateRouteAction ec2CreateRouteAction; private final EC2ReplaceRouteAction ec2ReplaceRouteAction; private final EC2DeleteRouteAction ec2DeleteRouteAction; private final EC2CopyRouteTableAction ec2CopyRouteTableAction; private final EC2ReplaceRouteTableAssociationAction ec2ReplaceRouteTableAssociationAction; private final EC2AssociateRouteTableAction ec2AssociateRouteTableAction; private final EC2CreateRouteTableAction ec2CreateRouteTableAction; private final FMSPolicyUpdateFirewallCreationConfigAction fmsPolicyUpdateFirewallCreationConfigAction; private final CreateNetworkAclAction createNetworkAclAction; private final ReplaceNetworkAclAssociationAction replaceNetworkAclAssociationAction; private final CreateNetworkAclEntriesAction createNetworkAclEntriesAction; private final DeleteNetworkAclEntriesAction deleteNetworkAclEntriesAction; private RemediationAction(BuilderImpl builder) { this.description = builder.description; this.ec2CreateRouteAction = builder.ec2CreateRouteAction; this.ec2ReplaceRouteAction = builder.ec2ReplaceRouteAction; this.ec2DeleteRouteAction = builder.ec2DeleteRouteAction; this.ec2CopyRouteTableAction = builder.ec2CopyRouteTableAction; this.ec2ReplaceRouteTableAssociationAction = builder.ec2ReplaceRouteTableAssociationAction; this.ec2AssociateRouteTableAction = builder.ec2AssociateRouteTableAction; this.ec2CreateRouteTableAction = builder.ec2CreateRouteTableAction; this.fmsPolicyUpdateFirewallCreationConfigAction = builder.fmsPolicyUpdateFirewallCreationConfigAction; this.createNetworkAclAction = builder.createNetworkAclAction; this.replaceNetworkAclAssociationAction = builder.replaceNetworkAclAssociationAction; this.createNetworkAclEntriesAction = builder.createNetworkAclEntriesAction; this.deleteNetworkAclEntriesAction = builder.deleteNetworkAclEntriesAction; } /** *

* A description of a remediation action. *

* * @return A description of a remediation action. */ public final String description() { return description; } /** *

* Information about the CreateRoute action in the Amazon EC2 API. *

* * @return Information about the CreateRoute action in the Amazon EC2 API. */ public final EC2CreateRouteAction ec2CreateRouteAction() { return ec2CreateRouteAction; } /** *

* Information about the ReplaceRoute action in the Amazon EC2 API. *

* * @return Information about the ReplaceRoute action in the Amazon EC2 API. */ public final EC2ReplaceRouteAction ec2ReplaceRouteAction() { return ec2ReplaceRouteAction; } /** *

* Information about the DeleteRoute action in the Amazon EC2 API. *

* * @return Information about the DeleteRoute action in the Amazon EC2 API. */ public final EC2DeleteRouteAction ec2DeleteRouteAction() { return ec2DeleteRouteAction; } /** *

* Information about the CopyRouteTable action in the Amazon EC2 API. *

* * @return Information about the CopyRouteTable action in the Amazon EC2 API. */ public final EC2CopyRouteTableAction ec2CopyRouteTableAction() { return ec2CopyRouteTableAction; } /** *

* Information about the ReplaceRouteTableAssociation action in the Amazon EC2 API. *

* * @return Information about the ReplaceRouteTableAssociation action in the Amazon EC2 API. */ public final EC2ReplaceRouteTableAssociationAction ec2ReplaceRouteTableAssociationAction() { return ec2ReplaceRouteTableAssociationAction; } /** *

* Information about the AssociateRouteTable action in the Amazon EC2 API. *

* * @return Information about the AssociateRouteTable action in the Amazon EC2 API. */ public final EC2AssociateRouteTableAction ec2AssociateRouteTableAction() { return ec2AssociateRouteTableAction; } /** *

* Information about the CreateRouteTable action in the Amazon EC2 API. *

* * @return Information about the CreateRouteTable action in the Amazon EC2 API. */ public final EC2CreateRouteTableAction ec2CreateRouteTableAction() { return ec2CreateRouteTableAction; } /** *

* The remedial action to take when updating a firewall configuration. *

* * @return The remedial action to take when updating a firewall configuration. */ public final FMSPolicyUpdateFirewallCreationConfigAction fmsPolicyUpdateFirewallCreationConfigAction() { return fmsPolicyUpdateFirewallCreationConfigAction; } /** *

* Information about the CreateNetworkAcl action in Amazon EC2. *

* * @return Information about the CreateNetworkAcl action in Amazon EC2. */ public final CreateNetworkAclAction createNetworkAclAction() { return createNetworkAclAction; } /** *

* Information about the ReplaceNetworkAclAssociation action in Amazon EC2. *

* * @return Information about the ReplaceNetworkAclAssociation action in Amazon EC2. */ public final ReplaceNetworkAclAssociationAction replaceNetworkAclAssociationAction() { return replaceNetworkAclAssociationAction; } /** *

* Information about the CreateNetworkAclEntries action in Amazon EC2. *

* * @return Information about the CreateNetworkAclEntries action in Amazon EC2. */ public final CreateNetworkAclEntriesAction createNetworkAclEntriesAction() { return createNetworkAclEntriesAction; } /** *

* Information about the DeleteNetworkAclEntries action in Amazon EC2. *

* * @return Information about the DeleteNetworkAclEntries action in Amazon EC2. */ public final DeleteNetworkAclEntriesAction deleteNetworkAclEntriesAction() { return deleteNetworkAclEntriesAction; } @Override public Builder toBuilder() { return new BuilderImpl(this); } public static Builder builder() { return new BuilderImpl(); } public static Class serializableBuilderClass() { return BuilderImpl.class; } @Override public final int hashCode() { int hashCode = 1; hashCode = 31 * hashCode + Objects.hashCode(description()); hashCode = 31 * hashCode + Objects.hashCode(ec2CreateRouteAction()); hashCode = 31 * hashCode + Objects.hashCode(ec2ReplaceRouteAction()); hashCode = 31 * hashCode + Objects.hashCode(ec2DeleteRouteAction()); hashCode = 31 * hashCode + Objects.hashCode(ec2CopyRouteTableAction()); hashCode = 31 * hashCode + Objects.hashCode(ec2ReplaceRouteTableAssociationAction()); hashCode = 31 * hashCode + Objects.hashCode(ec2AssociateRouteTableAction()); hashCode = 31 * hashCode + Objects.hashCode(ec2CreateRouteTableAction()); hashCode = 31 * hashCode + Objects.hashCode(fmsPolicyUpdateFirewallCreationConfigAction()); hashCode = 31 * hashCode + Objects.hashCode(createNetworkAclAction()); hashCode = 31 * hashCode + Objects.hashCode(replaceNetworkAclAssociationAction()); hashCode = 31 * hashCode + Objects.hashCode(createNetworkAclEntriesAction()); hashCode = 31 * hashCode + Objects.hashCode(deleteNetworkAclEntriesAction()); return hashCode; } @Override public final boolean equals(Object obj) { return equalsBySdkFields(obj); } @Override public final boolean equalsBySdkFields(Object obj) { if (this == obj) { return true; } if (obj == null) { return false; } if (!(obj instanceof RemediationAction)) { return false; } RemediationAction other = (RemediationAction) obj; return Objects.equals(description(), other.description()) && Objects.equals(ec2CreateRouteAction(), other.ec2CreateRouteAction()) && Objects.equals(ec2ReplaceRouteAction(), other.ec2ReplaceRouteAction()) && Objects.equals(ec2DeleteRouteAction(), other.ec2DeleteRouteAction()) && Objects.equals(ec2CopyRouteTableAction(), other.ec2CopyRouteTableAction()) && Objects.equals(ec2ReplaceRouteTableAssociationAction(), other.ec2ReplaceRouteTableAssociationAction()) && Objects.equals(ec2AssociateRouteTableAction(), other.ec2AssociateRouteTableAction()) && Objects.equals(ec2CreateRouteTableAction(), other.ec2CreateRouteTableAction()) && Objects.equals(fmsPolicyUpdateFirewallCreationConfigAction(), other.fmsPolicyUpdateFirewallCreationConfigAction()) && Objects.equals(createNetworkAclAction(), other.createNetworkAclAction()) && Objects.equals(replaceNetworkAclAssociationAction(), other.replaceNetworkAclAssociationAction()) && Objects.equals(createNetworkAclEntriesAction(), other.createNetworkAclEntriesAction()) && Objects.equals(deleteNetworkAclEntriesAction(), other.deleteNetworkAclEntriesAction()); } /** * Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be * redacted from this string using a placeholder value. */ @Override public final String toString() { return ToString.builder("RemediationAction").add("Description", description()) .add("EC2CreateRouteAction", ec2CreateRouteAction()).add("EC2ReplaceRouteAction", ec2ReplaceRouteAction()) .add("EC2DeleteRouteAction", ec2DeleteRouteAction()).add("EC2CopyRouteTableAction", ec2CopyRouteTableAction()) .add("EC2ReplaceRouteTableAssociationAction", ec2ReplaceRouteTableAssociationAction()) .add("EC2AssociateRouteTableAction", ec2AssociateRouteTableAction()) .add("EC2CreateRouteTableAction", ec2CreateRouteTableAction()) .add("FMSPolicyUpdateFirewallCreationConfigAction", fmsPolicyUpdateFirewallCreationConfigAction()) .add("CreateNetworkAclAction", createNetworkAclAction()) .add("ReplaceNetworkAclAssociationAction", replaceNetworkAclAssociationAction()) .add("CreateNetworkAclEntriesAction", createNetworkAclEntriesAction()) .add("DeleteNetworkAclEntriesAction", deleteNetworkAclEntriesAction()).build(); } public final Optional getValueForField(String fieldName, Class clazz) { switch (fieldName) { case "Description": return Optional.ofNullable(clazz.cast(description())); case "EC2CreateRouteAction": return Optional.ofNullable(clazz.cast(ec2CreateRouteAction())); case "EC2ReplaceRouteAction": return Optional.ofNullable(clazz.cast(ec2ReplaceRouteAction())); case "EC2DeleteRouteAction": return Optional.ofNullable(clazz.cast(ec2DeleteRouteAction())); case "EC2CopyRouteTableAction": return Optional.ofNullable(clazz.cast(ec2CopyRouteTableAction())); case "EC2ReplaceRouteTableAssociationAction": return Optional.ofNullable(clazz.cast(ec2ReplaceRouteTableAssociationAction())); case "EC2AssociateRouteTableAction": return Optional.ofNullable(clazz.cast(ec2AssociateRouteTableAction())); case "EC2CreateRouteTableAction": return Optional.ofNullable(clazz.cast(ec2CreateRouteTableAction())); case "FMSPolicyUpdateFirewallCreationConfigAction": return Optional.ofNullable(clazz.cast(fmsPolicyUpdateFirewallCreationConfigAction())); case "CreateNetworkAclAction": return Optional.ofNullable(clazz.cast(createNetworkAclAction())); case "ReplaceNetworkAclAssociationAction": return Optional.ofNullable(clazz.cast(replaceNetworkAclAssociationAction())); case "CreateNetworkAclEntriesAction": return Optional.ofNullable(clazz.cast(createNetworkAclEntriesAction())); case "DeleteNetworkAclEntriesAction": return Optional.ofNullable(clazz.cast(deleteNetworkAclEntriesAction())); default: return Optional.empty(); } } @Override public final List> sdkFields() { return SDK_FIELDS; } private static Function getter(Function g) { return obj -> g.apply((RemediationAction) obj); } private static BiConsumer setter(BiConsumer s) { return (obj, val) -> s.accept((Builder) obj, val); } public interface Builder extends SdkPojo, CopyableBuilder { /** *

* A description of a remediation action. *

* * @param description * A description of a remediation action. * @return Returns a reference to this object so that method calls can be chained together. */ Builder description(String description); /** *

* Information about the CreateRoute action in the Amazon EC2 API. *

* * @param ec2CreateRouteAction * Information about the CreateRoute action in the Amazon EC2 API. * @return Returns a reference to this object so that method calls can be chained together. */ Builder ec2CreateRouteAction(EC2CreateRouteAction ec2CreateRouteAction); /** *

* Information about the CreateRoute action in the Amazon EC2 API. *

* This is a convenience method that creates an instance of the {@link EC2CreateRouteAction.Builder} avoiding * the need to create one manually via {@link EC2CreateRouteAction#builder()}. * *

* When the {@link Consumer} completes, {@link EC2CreateRouteAction.Builder#build()} is called immediately and * its result is passed to {@link #ec2CreateRouteAction(EC2CreateRouteAction)}. * * @param ec2CreateRouteAction * a consumer that will call methods on {@link EC2CreateRouteAction.Builder} * @return Returns a reference to this object so that method calls can be chained together. * @see #ec2CreateRouteAction(EC2CreateRouteAction) */ default Builder ec2CreateRouteAction(Consumer ec2CreateRouteAction) { return ec2CreateRouteAction(EC2CreateRouteAction.builder().applyMutation(ec2CreateRouteAction).build()); } /** *

* Information about the ReplaceRoute action in the Amazon EC2 API. *

* * @param ec2ReplaceRouteAction * Information about the ReplaceRoute action in the Amazon EC2 API. * @return Returns a reference to this object so that method calls can be chained together. */ Builder ec2ReplaceRouteAction(EC2ReplaceRouteAction ec2ReplaceRouteAction); /** *

* Information about the ReplaceRoute action in the Amazon EC2 API. *

* This is a convenience method that creates an instance of the {@link EC2ReplaceRouteAction.Builder} avoiding * the need to create one manually via {@link EC2ReplaceRouteAction#builder()}. * *

* When the {@link Consumer} completes, {@link EC2ReplaceRouteAction.Builder#build()} is called immediately and * its result is passed to {@link #ec2ReplaceRouteAction(EC2ReplaceRouteAction)}. * * @param ec2ReplaceRouteAction * a consumer that will call methods on {@link EC2ReplaceRouteAction.Builder} * @return Returns a reference to this object so that method calls can be chained together. * @see #ec2ReplaceRouteAction(EC2ReplaceRouteAction) */ default Builder ec2ReplaceRouteAction(Consumer ec2ReplaceRouteAction) { return ec2ReplaceRouteAction(EC2ReplaceRouteAction.builder().applyMutation(ec2ReplaceRouteAction).build()); } /** *

* Information about the DeleteRoute action in the Amazon EC2 API. *

* * @param ec2DeleteRouteAction * Information about the DeleteRoute action in the Amazon EC2 API. * @return Returns a reference to this object so that method calls can be chained together. */ Builder ec2DeleteRouteAction(EC2DeleteRouteAction ec2DeleteRouteAction); /** *

* Information about the DeleteRoute action in the Amazon EC2 API. *

* This is a convenience method that creates an instance of the {@link EC2DeleteRouteAction.Builder} avoiding * the need to create one manually via {@link EC2DeleteRouteAction#builder()}. * *

* When the {@link Consumer} completes, {@link EC2DeleteRouteAction.Builder#build()} is called immediately and * its result is passed to {@link #ec2DeleteRouteAction(EC2DeleteRouteAction)}. * * @param ec2DeleteRouteAction * a consumer that will call methods on {@link EC2DeleteRouteAction.Builder} * @return Returns a reference to this object so that method calls can be chained together. * @see #ec2DeleteRouteAction(EC2DeleteRouteAction) */ default Builder ec2DeleteRouteAction(Consumer ec2DeleteRouteAction) { return ec2DeleteRouteAction(EC2DeleteRouteAction.builder().applyMutation(ec2DeleteRouteAction).build()); } /** *

* Information about the CopyRouteTable action in the Amazon EC2 API. *

* * @param ec2CopyRouteTableAction * Information about the CopyRouteTable action in the Amazon EC2 API. * @return Returns a reference to this object so that method calls can be chained together. */ Builder ec2CopyRouteTableAction(EC2CopyRouteTableAction ec2CopyRouteTableAction); /** *

* Information about the CopyRouteTable action in the Amazon EC2 API. *

* This is a convenience method that creates an instance of the {@link EC2CopyRouteTableAction.Builder} avoiding * the need to create one manually via {@link EC2CopyRouteTableAction#builder()}. * *

* When the {@link Consumer} completes, {@link EC2CopyRouteTableAction.Builder#build()} is called immediately * and its result is passed to {@link #ec2CopyRouteTableAction(EC2CopyRouteTableAction)}. * * @param ec2CopyRouteTableAction * a consumer that will call methods on {@link EC2CopyRouteTableAction.Builder} * @return Returns a reference to this object so that method calls can be chained together. * @see #ec2CopyRouteTableAction(EC2CopyRouteTableAction) */ default Builder ec2CopyRouteTableAction(Consumer ec2CopyRouteTableAction) { return ec2CopyRouteTableAction(EC2CopyRouteTableAction.builder().applyMutation(ec2CopyRouteTableAction).build()); } /** *

* Information about the ReplaceRouteTableAssociation action in the Amazon EC2 API. *

* * @param ec2ReplaceRouteTableAssociationAction * Information about the ReplaceRouteTableAssociation action in the Amazon EC2 API. * @return Returns a reference to this object so that method calls can be chained together. */ Builder ec2ReplaceRouteTableAssociationAction(EC2ReplaceRouteTableAssociationAction ec2ReplaceRouteTableAssociationAction); /** *

* Information about the ReplaceRouteTableAssociation action in the Amazon EC2 API. *

* This is a convenience method that creates an instance of the * {@link EC2ReplaceRouteTableAssociationAction.Builder} avoiding the need to create one manually via * {@link EC2ReplaceRouteTableAssociationAction#builder()}. * *

* When the {@link Consumer} completes, {@link EC2ReplaceRouteTableAssociationAction.Builder#build()} is called * immediately and its result is passed to * {@link #ec2ReplaceRouteTableAssociationAction(EC2ReplaceRouteTableAssociationAction)}. * * @param ec2ReplaceRouteTableAssociationAction * a consumer that will call methods on {@link EC2ReplaceRouteTableAssociationAction.Builder} * @return Returns a reference to this object so that method calls can be chained together. * @see #ec2ReplaceRouteTableAssociationAction(EC2ReplaceRouteTableAssociationAction) */ default Builder ec2ReplaceRouteTableAssociationAction( Consumer ec2ReplaceRouteTableAssociationAction) { return ec2ReplaceRouteTableAssociationAction(EC2ReplaceRouteTableAssociationAction.builder() .applyMutation(ec2ReplaceRouteTableAssociationAction).build()); } /** *

* Information about the AssociateRouteTable action in the Amazon EC2 API. *

* * @param ec2AssociateRouteTableAction * Information about the AssociateRouteTable action in the Amazon EC2 API. * @return Returns a reference to this object so that method calls can be chained together. */ Builder ec2AssociateRouteTableAction(EC2AssociateRouteTableAction ec2AssociateRouteTableAction); /** *

* Information about the AssociateRouteTable action in the Amazon EC2 API. *

* This is a convenience method that creates an instance of the {@link EC2AssociateRouteTableAction.Builder} * avoiding the need to create one manually via {@link EC2AssociateRouteTableAction#builder()}. * *

* When the {@link Consumer} completes, {@link EC2AssociateRouteTableAction.Builder#build()} is called * immediately and its result is passed to {@link #ec2AssociateRouteTableAction(EC2AssociateRouteTableAction)}. * * @param ec2AssociateRouteTableAction * a consumer that will call methods on {@link EC2AssociateRouteTableAction.Builder} * @return Returns a reference to this object so that method calls can be chained together. * @see #ec2AssociateRouteTableAction(EC2AssociateRouteTableAction) */ default Builder ec2AssociateRouteTableAction(Consumer ec2AssociateRouteTableAction) { return ec2AssociateRouteTableAction(EC2AssociateRouteTableAction.builder() .applyMutation(ec2AssociateRouteTableAction).build()); } /** *

* Information about the CreateRouteTable action in the Amazon EC2 API. *

* * @param ec2CreateRouteTableAction * Information about the CreateRouteTable action in the Amazon EC2 API. * @return Returns a reference to this object so that method calls can be chained together. */ Builder ec2CreateRouteTableAction(EC2CreateRouteTableAction ec2CreateRouteTableAction); /** *

* Information about the CreateRouteTable action in the Amazon EC2 API. *

* This is a convenience method that creates an instance of the {@link EC2CreateRouteTableAction.Builder} * avoiding the need to create one manually via {@link EC2CreateRouteTableAction#builder()}. * *

* When the {@link Consumer} completes, {@link EC2CreateRouteTableAction.Builder#build()} is called immediately * and its result is passed to {@link #ec2CreateRouteTableAction(EC2CreateRouteTableAction)}. * * @param ec2CreateRouteTableAction * a consumer that will call methods on {@link EC2CreateRouteTableAction.Builder} * @return Returns a reference to this object so that method calls can be chained together. * @see #ec2CreateRouteTableAction(EC2CreateRouteTableAction) */ default Builder ec2CreateRouteTableAction(Consumer ec2CreateRouteTableAction) { return ec2CreateRouteTableAction(EC2CreateRouteTableAction.builder().applyMutation(ec2CreateRouteTableAction).build()); } /** *

* The remedial action to take when updating a firewall configuration. *

* * @param fmsPolicyUpdateFirewallCreationConfigAction * The remedial action to take when updating a firewall configuration. * @return Returns a reference to this object so that method calls can be chained together. */ Builder fmsPolicyUpdateFirewallCreationConfigAction( FMSPolicyUpdateFirewallCreationConfigAction fmsPolicyUpdateFirewallCreationConfigAction); /** *

* The remedial action to take when updating a firewall configuration. *

* This is a convenience method that creates an instance of the * {@link FMSPolicyUpdateFirewallCreationConfigAction.Builder} avoiding the need to create one manually via * {@link FMSPolicyUpdateFirewallCreationConfigAction#builder()}. * *

* When the {@link Consumer} completes, {@link FMSPolicyUpdateFirewallCreationConfigAction.Builder#build()} is * called immediately and its result is passed to * {@link #fmsPolicyUpdateFirewallCreationConfigAction(FMSPolicyUpdateFirewallCreationConfigAction)}. * * @param fmsPolicyUpdateFirewallCreationConfigAction * a consumer that will call methods on {@link FMSPolicyUpdateFirewallCreationConfigAction.Builder} * @return Returns a reference to this object so that method calls can be chained together. * @see #fmsPolicyUpdateFirewallCreationConfigAction(FMSPolicyUpdateFirewallCreationConfigAction) */ default Builder fmsPolicyUpdateFirewallCreationConfigAction( Consumer fmsPolicyUpdateFirewallCreationConfigAction) { return fmsPolicyUpdateFirewallCreationConfigAction(FMSPolicyUpdateFirewallCreationConfigAction.builder() .applyMutation(fmsPolicyUpdateFirewallCreationConfigAction).build()); } /** *

* Information about the CreateNetworkAcl action in Amazon EC2. *

* * @param createNetworkAclAction * Information about the CreateNetworkAcl action in Amazon EC2. * @return Returns a reference to this object so that method calls can be chained together. */ Builder createNetworkAclAction(CreateNetworkAclAction createNetworkAclAction); /** *

* Information about the CreateNetworkAcl action in Amazon EC2. *

* This is a convenience method that creates an instance of the {@link CreateNetworkAclAction.Builder} avoiding * the need to create one manually via {@link CreateNetworkAclAction#builder()}. * *

* When the {@link Consumer} completes, {@link CreateNetworkAclAction.Builder#build()} is called immediately and * its result is passed to {@link #createNetworkAclAction(CreateNetworkAclAction)}. * * @param createNetworkAclAction * a consumer that will call methods on {@link CreateNetworkAclAction.Builder} * @return Returns a reference to this object so that method calls can be chained together. * @see #createNetworkAclAction(CreateNetworkAclAction) */ default Builder createNetworkAclAction(Consumer createNetworkAclAction) { return createNetworkAclAction(CreateNetworkAclAction.builder().applyMutation(createNetworkAclAction).build()); } /** *

* Information about the ReplaceNetworkAclAssociation action in Amazon EC2. *

* * @param replaceNetworkAclAssociationAction * Information about the ReplaceNetworkAclAssociation action in Amazon EC2. * @return Returns a reference to this object so that method calls can be chained together. */ Builder replaceNetworkAclAssociationAction(ReplaceNetworkAclAssociationAction replaceNetworkAclAssociationAction); /** *

* Information about the ReplaceNetworkAclAssociation action in Amazon EC2. *

* This is a convenience method that creates an instance of the * {@link ReplaceNetworkAclAssociationAction.Builder} avoiding the need to create one manually via * {@link ReplaceNetworkAclAssociationAction#builder()}. * *

* When the {@link Consumer} completes, {@link ReplaceNetworkAclAssociationAction.Builder#build()} is called * immediately and its result is passed to * {@link #replaceNetworkAclAssociationAction(ReplaceNetworkAclAssociationAction)}. * * @param replaceNetworkAclAssociationAction * a consumer that will call methods on {@link ReplaceNetworkAclAssociationAction.Builder} * @return Returns a reference to this object so that method calls can be chained together. * @see #replaceNetworkAclAssociationAction(ReplaceNetworkAclAssociationAction) */ default Builder replaceNetworkAclAssociationAction( Consumer replaceNetworkAclAssociationAction) { return replaceNetworkAclAssociationAction(ReplaceNetworkAclAssociationAction.builder() .applyMutation(replaceNetworkAclAssociationAction).build()); } /** *

* Information about the CreateNetworkAclEntries action in Amazon EC2. *

* * @param createNetworkAclEntriesAction * Information about the CreateNetworkAclEntries action in Amazon EC2. * @return Returns a reference to this object so that method calls can be chained together. */ Builder createNetworkAclEntriesAction(CreateNetworkAclEntriesAction createNetworkAclEntriesAction); /** *

* Information about the CreateNetworkAclEntries action in Amazon EC2. *

* This is a convenience method that creates an instance of the {@link CreateNetworkAclEntriesAction.Builder} * avoiding the need to create one manually via {@link CreateNetworkAclEntriesAction#builder()}. * *

* When the {@link Consumer} completes, {@link CreateNetworkAclEntriesAction.Builder#build()} is called * immediately and its result is passed to {@link #createNetworkAclEntriesAction(CreateNetworkAclEntriesAction)}. * * @param createNetworkAclEntriesAction * a consumer that will call methods on {@link CreateNetworkAclEntriesAction.Builder} * @return Returns a reference to this object so that method calls can be chained together. * @see #createNetworkAclEntriesAction(CreateNetworkAclEntriesAction) */ default Builder createNetworkAclEntriesAction( Consumer createNetworkAclEntriesAction) { return createNetworkAclEntriesAction(CreateNetworkAclEntriesAction.builder() .applyMutation(createNetworkAclEntriesAction).build()); } /** *

* Information about the DeleteNetworkAclEntries action in Amazon EC2. *

* * @param deleteNetworkAclEntriesAction * Information about the DeleteNetworkAclEntries action in Amazon EC2. * @return Returns a reference to this object so that method calls can be chained together. */ Builder deleteNetworkAclEntriesAction(DeleteNetworkAclEntriesAction deleteNetworkAclEntriesAction); /** *

* Information about the DeleteNetworkAclEntries action in Amazon EC2. *

* This is a convenience method that creates an instance of the {@link DeleteNetworkAclEntriesAction.Builder} * avoiding the need to create one manually via {@link DeleteNetworkAclEntriesAction#builder()}. * *

* When the {@link Consumer} completes, {@link DeleteNetworkAclEntriesAction.Builder#build()} is called * immediately and its result is passed to {@link #deleteNetworkAclEntriesAction(DeleteNetworkAclEntriesAction)}. * * @param deleteNetworkAclEntriesAction * a consumer that will call methods on {@link DeleteNetworkAclEntriesAction.Builder} * @return Returns a reference to this object so that method calls can be chained together. * @see #deleteNetworkAclEntriesAction(DeleteNetworkAclEntriesAction) */ default Builder deleteNetworkAclEntriesAction( Consumer deleteNetworkAclEntriesAction) { return deleteNetworkAclEntriesAction(DeleteNetworkAclEntriesAction.builder() .applyMutation(deleteNetworkAclEntriesAction).build()); } } static final class BuilderImpl implements Builder { private String description; private EC2CreateRouteAction ec2CreateRouteAction; private EC2ReplaceRouteAction ec2ReplaceRouteAction; private EC2DeleteRouteAction ec2DeleteRouteAction; private EC2CopyRouteTableAction ec2CopyRouteTableAction; private EC2ReplaceRouteTableAssociationAction ec2ReplaceRouteTableAssociationAction; private EC2AssociateRouteTableAction ec2AssociateRouteTableAction; private EC2CreateRouteTableAction ec2CreateRouteTableAction; private FMSPolicyUpdateFirewallCreationConfigAction fmsPolicyUpdateFirewallCreationConfigAction; private CreateNetworkAclAction createNetworkAclAction; private ReplaceNetworkAclAssociationAction replaceNetworkAclAssociationAction; private CreateNetworkAclEntriesAction createNetworkAclEntriesAction; private DeleteNetworkAclEntriesAction deleteNetworkAclEntriesAction; private BuilderImpl() { } private BuilderImpl(RemediationAction model) { description(model.description); ec2CreateRouteAction(model.ec2CreateRouteAction); ec2ReplaceRouteAction(model.ec2ReplaceRouteAction); ec2DeleteRouteAction(model.ec2DeleteRouteAction); ec2CopyRouteTableAction(model.ec2CopyRouteTableAction); ec2ReplaceRouteTableAssociationAction(model.ec2ReplaceRouteTableAssociationAction); ec2AssociateRouteTableAction(model.ec2AssociateRouteTableAction); ec2CreateRouteTableAction(model.ec2CreateRouteTableAction); fmsPolicyUpdateFirewallCreationConfigAction(model.fmsPolicyUpdateFirewallCreationConfigAction); createNetworkAclAction(model.createNetworkAclAction); replaceNetworkAclAssociationAction(model.replaceNetworkAclAssociationAction); createNetworkAclEntriesAction(model.createNetworkAclEntriesAction); deleteNetworkAclEntriesAction(model.deleteNetworkAclEntriesAction); } public final String getDescription() { return description; } public final void setDescription(String description) { this.description = description; } @Override public final Builder description(String description) { this.description = description; return this; } public final EC2CreateRouteAction.Builder getEc2CreateRouteAction() { return ec2CreateRouteAction != null ? ec2CreateRouteAction.toBuilder() : null; } public final void setEc2CreateRouteAction(EC2CreateRouteAction.BuilderImpl ec2CreateRouteAction) { this.ec2CreateRouteAction = ec2CreateRouteAction != null ? ec2CreateRouteAction.build() : null; } @Override public final Builder ec2CreateRouteAction(EC2CreateRouteAction ec2CreateRouteAction) { this.ec2CreateRouteAction = ec2CreateRouteAction; return this; } public final EC2ReplaceRouteAction.Builder getEc2ReplaceRouteAction() { return ec2ReplaceRouteAction != null ? ec2ReplaceRouteAction.toBuilder() : null; } public final void setEc2ReplaceRouteAction(EC2ReplaceRouteAction.BuilderImpl ec2ReplaceRouteAction) { this.ec2ReplaceRouteAction = ec2ReplaceRouteAction != null ? ec2ReplaceRouteAction.build() : null; } @Override public final Builder ec2ReplaceRouteAction(EC2ReplaceRouteAction ec2ReplaceRouteAction) { this.ec2ReplaceRouteAction = ec2ReplaceRouteAction; return this; } public final EC2DeleteRouteAction.Builder getEc2DeleteRouteAction() { return ec2DeleteRouteAction != null ? ec2DeleteRouteAction.toBuilder() : null; } public final void setEc2DeleteRouteAction(EC2DeleteRouteAction.BuilderImpl ec2DeleteRouteAction) { this.ec2DeleteRouteAction = ec2DeleteRouteAction != null ? ec2DeleteRouteAction.build() : null; } @Override public final Builder ec2DeleteRouteAction(EC2DeleteRouteAction ec2DeleteRouteAction) { this.ec2DeleteRouteAction = ec2DeleteRouteAction; return this; } public final EC2CopyRouteTableAction.Builder getEc2CopyRouteTableAction() { return ec2CopyRouteTableAction != null ? ec2CopyRouteTableAction.toBuilder() : null; } public final void setEc2CopyRouteTableAction(EC2CopyRouteTableAction.BuilderImpl ec2CopyRouteTableAction) { this.ec2CopyRouteTableAction = ec2CopyRouteTableAction != null ? ec2CopyRouteTableAction.build() : null; } @Override public final Builder ec2CopyRouteTableAction(EC2CopyRouteTableAction ec2CopyRouteTableAction) { this.ec2CopyRouteTableAction = ec2CopyRouteTableAction; return this; } public final EC2ReplaceRouteTableAssociationAction.Builder getEc2ReplaceRouteTableAssociationAction() { return ec2ReplaceRouteTableAssociationAction != null ? ec2ReplaceRouteTableAssociationAction.toBuilder() : null; } public final void setEc2ReplaceRouteTableAssociationAction( EC2ReplaceRouteTableAssociationAction.BuilderImpl ec2ReplaceRouteTableAssociationAction) { this.ec2ReplaceRouteTableAssociationAction = ec2ReplaceRouteTableAssociationAction != null ? ec2ReplaceRouteTableAssociationAction .build() : null; } @Override public final Builder ec2ReplaceRouteTableAssociationAction( EC2ReplaceRouteTableAssociationAction ec2ReplaceRouteTableAssociationAction) { this.ec2ReplaceRouteTableAssociationAction = ec2ReplaceRouteTableAssociationAction; return this; } public final EC2AssociateRouteTableAction.Builder getEc2AssociateRouteTableAction() { return ec2AssociateRouteTableAction != null ? ec2AssociateRouteTableAction.toBuilder() : null; } public final void setEc2AssociateRouteTableAction(EC2AssociateRouteTableAction.BuilderImpl ec2AssociateRouteTableAction) { this.ec2AssociateRouteTableAction = ec2AssociateRouteTableAction != null ? ec2AssociateRouteTableAction.build() : null; } @Override public final Builder ec2AssociateRouteTableAction(EC2AssociateRouteTableAction ec2AssociateRouteTableAction) { this.ec2AssociateRouteTableAction = ec2AssociateRouteTableAction; return this; } public final EC2CreateRouteTableAction.Builder getEc2CreateRouteTableAction() { return ec2CreateRouteTableAction != null ? ec2CreateRouteTableAction.toBuilder() : null; } public final void setEc2CreateRouteTableAction(EC2CreateRouteTableAction.BuilderImpl ec2CreateRouteTableAction) { this.ec2CreateRouteTableAction = ec2CreateRouteTableAction != null ? ec2CreateRouteTableAction.build() : null; } @Override public final Builder ec2CreateRouteTableAction(EC2CreateRouteTableAction ec2CreateRouteTableAction) { this.ec2CreateRouteTableAction = ec2CreateRouteTableAction; return this; } public final FMSPolicyUpdateFirewallCreationConfigAction.Builder getFmsPolicyUpdateFirewallCreationConfigAction() { return fmsPolicyUpdateFirewallCreationConfigAction != null ? fmsPolicyUpdateFirewallCreationConfigAction.toBuilder() : null; } public final void setFmsPolicyUpdateFirewallCreationConfigAction( FMSPolicyUpdateFirewallCreationConfigAction.BuilderImpl fmsPolicyUpdateFirewallCreationConfigAction) { this.fmsPolicyUpdateFirewallCreationConfigAction = fmsPolicyUpdateFirewallCreationConfigAction != null ? fmsPolicyUpdateFirewallCreationConfigAction .build() : null; } @Override public final Builder fmsPolicyUpdateFirewallCreationConfigAction( FMSPolicyUpdateFirewallCreationConfigAction fmsPolicyUpdateFirewallCreationConfigAction) { this.fmsPolicyUpdateFirewallCreationConfigAction = fmsPolicyUpdateFirewallCreationConfigAction; return this; } public final CreateNetworkAclAction.Builder getCreateNetworkAclAction() { return createNetworkAclAction != null ? createNetworkAclAction.toBuilder() : null; } public final void setCreateNetworkAclAction(CreateNetworkAclAction.BuilderImpl createNetworkAclAction) { this.createNetworkAclAction = createNetworkAclAction != null ? createNetworkAclAction.build() : null; } @Override public final Builder createNetworkAclAction(CreateNetworkAclAction createNetworkAclAction) { this.createNetworkAclAction = createNetworkAclAction; return this; } public final ReplaceNetworkAclAssociationAction.Builder getReplaceNetworkAclAssociationAction() { return replaceNetworkAclAssociationAction != null ? replaceNetworkAclAssociationAction.toBuilder() : null; } public final void setReplaceNetworkAclAssociationAction( ReplaceNetworkAclAssociationAction.BuilderImpl replaceNetworkAclAssociationAction) { this.replaceNetworkAclAssociationAction = replaceNetworkAclAssociationAction != null ? replaceNetworkAclAssociationAction .build() : null; } @Override public final Builder replaceNetworkAclAssociationAction( ReplaceNetworkAclAssociationAction replaceNetworkAclAssociationAction) { this.replaceNetworkAclAssociationAction = replaceNetworkAclAssociationAction; return this; } public final CreateNetworkAclEntriesAction.Builder getCreateNetworkAclEntriesAction() { return createNetworkAclEntriesAction != null ? createNetworkAclEntriesAction.toBuilder() : null; } public final void setCreateNetworkAclEntriesAction(CreateNetworkAclEntriesAction.BuilderImpl createNetworkAclEntriesAction) { this.createNetworkAclEntriesAction = createNetworkAclEntriesAction != null ? createNetworkAclEntriesAction.build() : null; } @Override public final Builder createNetworkAclEntriesAction(CreateNetworkAclEntriesAction createNetworkAclEntriesAction) { this.createNetworkAclEntriesAction = createNetworkAclEntriesAction; return this; } public final DeleteNetworkAclEntriesAction.Builder getDeleteNetworkAclEntriesAction() { return deleteNetworkAclEntriesAction != null ? deleteNetworkAclEntriesAction.toBuilder() : null; } public final void setDeleteNetworkAclEntriesAction(DeleteNetworkAclEntriesAction.BuilderImpl deleteNetworkAclEntriesAction) { this.deleteNetworkAclEntriesAction = deleteNetworkAclEntriesAction != null ? deleteNetworkAclEntriesAction.build() : null; } @Override public final Builder deleteNetworkAclEntriesAction(DeleteNetworkAclEntriesAction deleteNetworkAclEntriesAction) { this.deleteNetworkAclEntriesAction = deleteNetworkAclEntriesAction; return this; } @Override public RemediationAction build() { return new RemediationAction(this); } @Override public List> sdkFields() { return SDK_FIELDS; } } }





© 2015 - 2025 Weber Informatics LLC | Privacy Policy