/* * Copyright 2018-2023 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.ec2.model; import java.io.Serializable; import javax.annotation.Generated; /** *
* Describes a network insights analysis. *
* * @see AWS API * Documentation */ @Generated("com.amazonaws:aws-java-sdk-code-generator") public class NetworkInsightsAnalysis implements Serializable, Cloneable { /** ** The ID of the network insights analysis. *
*/ private String networkInsightsAnalysisId; /** ** The Amazon Resource Name (ARN) of the network insights analysis. *
*/ private String networkInsightsAnalysisArn; /** ** The ID of the path. *
*/ private String networkInsightsPathId; /** ** The member accounts that contain resources that the path can traverse. *
*/ private com.amazonaws.internal.SdkInternalList* The Amazon Resource Names (ARN) of the resources that the path must traverse. *
*/ private com.amazonaws.internal.SdkInternalList* The time the analysis started. *
*/ private java.util.Date startDate; /** ** The status of the network insights analysis. *
*/ private String status; /** *
* The status message, if the status is failed
.
*
* The warning message. *
*/ private String warningMessage; /** ** Indicates whether the destination is reachable from the source. *
*/ private Boolean networkPathFound; /** ** The components in the path from source to destination. *
*/ private com.amazonaws.internal.SdkInternalList* The components in the path from destination to source. *
*/ private com.amazonaws.internal.SdkInternalList* The explanations. For more information, see Reachability Analyzer * explanation codes. *
*/ private com.amazonaws.internal.SdkInternalList* Potential intermediate components. *
*/ private com.amazonaws.internal.SdkInternalList* Potential intermediate accounts. *
*/ private com.amazonaws.internal.SdkInternalList* The tags. *
*/ private com.amazonaws.internal.SdkInternalList* The ID of the network insights analysis. *
* * @param networkInsightsAnalysisId * The ID of the network insights analysis. */ public void setNetworkInsightsAnalysisId(String networkInsightsAnalysisId) { this.networkInsightsAnalysisId = networkInsightsAnalysisId; } /** ** The ID of the network insights analysis. *
* * @return The ID of the network insights analysis. */ public String getNetworkInsightsAnalysisId() { return this.networkInsightsAnalysisId; } /** ** The ID of the network insights analysis. *
* * @param networkInsightsAnalysisId * The ID of the network insights analysis. * @return Returns a reference to this object so that method calls can be chained together. */ public NetworkInsightsAnalysis withNetworkInsightsAnalysisId(String networkInsightsAnalysisId) { setNetworkInsightsAnalysisId(networkInsightsAnalysisId); return this; } /** ** The Amazon Resource Name (ARN) of the network insights analysis. *
* * @param networkInsightsAnalysisArn * The Amazon Resource Name (ARN) of the network insights analysis. */ public void setNetworkInsightsAnalysisArn(String networkInsightsAnalysisArn) { this.networkInsightsAnalysisArn = networkInsightsAnalysisArn; } /** ** The Amazon Resource Name (ARN) of the network insights analysis. *
* * @return The Amazon Resource Name (ARN) of the network insights analysis. */ public String getNetworkInsightsAnalysisArn() { return this.networkInsightsAnalysisArn; } /** ** The Amazon Resource Name (ARN) of the network insights analysis. *
* * @param networkInsightsAnalysisArn * The Amazon Resource Name (ARN) of the network insights analysis. * @return Returns a reference to this object so that method calls can be chained together. */ public NetworkInsightsAnalysis withNetworkInsightsAnalysisArn(String networkInsightsAnalysisArn) { setNetworkInsightsAnalysisArn(networkInsightsAnalysisArn); return this; } /** ** The ID of the path. *
* * @param networkInsightsPathId * The ID of the path. */ public void setNetworkInsightsPathId(String networkInsightsPathId) { this.networkInsightsPathId = networkInsightsPathId; } /** ** The ID of the path. *
* * @return The ID of the path. */ public String getNetworkInsightsPathId() { return this.networkInsightsPathId; } /** ** The ID of the path. *
* * @param networkInsightsPathId * The ID of the path. * @return Returns a reference to this object so that method calls can be chained together. */ public NetworkInsightsAnalysis withNetworkInsightsPathId(String networkInsightsPathId) { setNetworkInsightsPathId(networkInsightsPathId); return this; } /** ** The member accounts that contain resources that the path can traverse. *
* * @return The member accounts that contain resources that the path can traverse. */ public java.util.List* The member accounts that contain resources that the path can traverse. *
* * @param additionalAccounts * The member accounts that contain resources that the path can traverse. */ public void setAdditionalAccounts(java.util.Collection* The member accounts that contain resources that the path can traverse. *
** NOTE: This method appends the values to the existing list (if any). Use * {@link #setAdditionalAccounts(java.util.Collection)} or {@link #withAdditionalAccounts(java.util.Collection)} if * you want to override the existing values. *
* * @param additionalAccounts * The member accounts that contain resources that the path can traverse. * @return Returns a reference to this object so that method calls can be chained together. */ public NetworkInsightsAnalysis withAdditionalAccounts(String... additionalAccounts) { if (this.additionalAccounts == null) { setAdditionalAccounts(new com.amazonaws.internal.SdkInternalList* The member accounts that contain resources that the path can traverse. *
* * @param additionalAccounts * The member accounts that contain resources that the path can traverse. * @return Returns a reference to this object so that method calls can be chained together. */ public NetworkInsightsAnalysis withAdditionalAccounts(java.util.Collection* The Amazon Resource Names (ARN) of the resources that the path must traverse. *
* * @return The Amazon Resource Names (ARN) of the resources that the path must traverse. */ public java.util.List* The Amazon Resource Names (ARN) of the resources that the path must traverse. *
* * @param filterInArns * The Amazon Resource Names (ARN) of the resources that the path must traverse. */ public void setFilterInArns(java.util.Collection* The Amazon Resource Names (ARN) of the resources that the path must traverse. *
** NOTE: This method appends the values to the existing list (if any). Use * {@link #setFilterInArns(java.util.Collection)} or {@link #withFilterInArns(java.util.Collection)} if you want to * override the existing values. *
* * @param filterInArns * The Amazon Resource Names (ARN) of the resources that the path must traverse. * @return Returns a reference to this object so that method calls can be chained together. */ public NetworkInsightsAnalysis withFilterInArns(String... filterInArns) { if (this.filterInArns == null) { setFilterInArns(new com.amazonaws.internal.SdkInternalList* The Amazon Resource Names (ARN) of the resources that the path must traverse. *
* * @param filterInArns * The Amazon Resource Names (ARN) of the resources that the path must traverse. * @return Returns a reference to this object so that method calls can be chained together. */ public NetworkInsightsAnalysis withFilterInArns(java.util.Collection* The time the analysis started. *
* * @param startDate * The time the analysis started. */ public void setStartDate(java.util.Date startDate) { this.startDate = startDate; } /** ** The time the analysis started. *
* * @return The time the analysis started. */ public java.util.Date getStartDate() { return this.startDate; } /** ** The time the analysis started. *
* * @param startDate * The time the analysis started. * @return Returns a reference to this object so that method calls can be chained together. */ public NetworkInsightsAnalysis withStartDate(java.util.Date startDate) { setStartDate(startDate); return this; } /** ** The status of the network insights analysis. *
* * @param status * The status of the network insights analysis. * @see AnalysisStatus */ public void setStatus(String status) { this.status = status; } /** ** The status of the network insights analysis. *
* * @return The status of the network insights analysis. * @see AnalysisStatus */ public String getStatus() { return this.status; } /** ** The status of the network insights analysis. *
* * @param status * The status of the network insights analysis. * @return Returns a reference to this object so that method calls can be chained together. * @see AnalysisStatus */ public NetworkInsightsAnalysis withStatus(String status) { setStatus(status); return this; } /** ** The status of the network insights analysis. *
* * @param status * The status of the network insights analysis. * @return Returns a reference to this object so that method calls can be chained together. * @see AnalysisStatus */ public NetworkInsightsAnalysis withStatus(AnalysisStatus status) { this.status = status.toString(); return this; } /** *
* The status message, if the status is failed
.
*
failed
.
*/
public void setStatusMessage(String statusMessage) {
this.statusMessage = statusMessage;
}
/**
*
* The status message, if the status is failed
.
*
failed
.
*/
public String getStatusMessage() {
return this.statusMessage;
}
/**
*
* The status message, if the status is failed
.
*
failed
.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public NetworkInsightsAnalysis withStatusMessage(String statusMessage) {
setStatusMessage(statusMessage);
return this;
}
/**
* * The warning message. *
* * @param warningMessage * The warning message. */ public void setWarningMessage(String warningMessage) { this.warningMessage = warningMessage; } /** ** The warning message. *
* * @return The warning message. */ public String getWarningMessage() { return this.warningMessage; } /** ** The warning message. *
* * @param warningMessage * The warning message. * @return Returns a reference to this object so that method calls can be chained together. */ public NetworkInsightsAnalysis withWarningMessage(String warningMessage) { setWarningMessage(warningMessage); return this; } /** ** Indicates whether the destination is reachable from the source. *
* * @param networkPathFound * Indicates whether the destination is reachable from the source. */ public void setNetworkPathFound(Boolean networkPathFound) { this.networkPathFound = networkPathFound; } /** ** Indicates whether the destination is reachable from the source. *
* * @return Indicates whether the destination is reachable from the source. */ public Boolean getNetworkPathFound() { return this.networkPathFound; } /** ** Indicates whether the destination is reachable from the source. *
* * @param networkPathFound * Indicates whether the destination is reachable from the source. * @return Returns a reference to this object so that method calls can be chained together. */ public NetworkInsightsAnalysis withNetworkPathFound(Boolean networkPathFound) { setNetworkPathFound(networkPathFound); return this; } /** ** Indicates whether the destination is reachable from the source. *
* * @return Indicates whether the destination is reachable from the source. */ public Boolean isNetworkPathFound() { return this.networkPathFound; } /** ** The components in the path from source to destination. *
* * @return The components in the path from source to destination. */ public java.util.List* The components in the path from source to destination. *
* * @param forwardPathComponents * The components in the path from source to destination. */ public void setForwardPathComponents(java.util.Collection* The components in the path from source to destination. *
** NOTE: This method appends the values to the existing list (if any). Use * {@link #setForwardPathComponents(java.util.Collection)} or * {@link #withForwardPathComponents(java.util.Collection)} if you want to override the existing values. *
* * @param forwardPathComponents * The components in the path from source to destination. * @return Returns a reference to this object so that method calls can be chained together. */ public NetworkInsightsAnalysis withForwardPathComponents(PathComponent... forwardPathComponents) { if (this.forwardPathComponents == null) { setForwardPathComponents(new com.amazonaws.internal.SdkInternalList* The components in the path from source to destination. *
* * @param forwardPathComponents * The components in the path from source to destination. * @return Returns a reference to this object so that method calls can be chained together. */ public NetworkInsightsAnalysis withForwardPathComponents(java.util.Collection* The components in the path from destination to source. *
* * @return The components in the path from destination to source. */ public java.util.List* The components in the path from destination to source. *
* * @param returnPathComponents * The components in the path from destination to source. */ public void setReturnPathComponents(java.util.Collection* The components in the path from destination to source. *
** NOTE: This method appends the values to the existing list (if any). Use * {@link #setReturnPathComponents(java.util.Collection)} or {@link #withReturnPathComponents(java.util.Collection)} * if you want to override the existing values. *
* * @param returnPathComponents * The components in the path from destination to source. * @return Returns a reference to this object so that method calls can be chained together. */ public NetworkInsightsAnalysis withReturnPathComponents(PathComponent... returnPathComponents) { if (this.returnPathComponents == null) { setReturnPathComponents(new com.amazonaws.internal.SdkInternalList* The components in the path from destination to source. *
* * @param returnPathComponents * The components in the path from destination to source. * @return Returns a reference to this object so that method calls can be chained together. */ public NetworkInsightsAnalysis withReturnPathComponents(java.util.Collection* The explanations. For more information, see Reachability Analyzer * explanation codes. *
* * @return The explanations. For more information, see Reachability Analyzer * explanation codes. */ public java.util.List* The explanations. For more information, see Reachability Analyzer * explanation codes. *
* * @param explanations * The explanations. For more information, see Reachability Analyzer * explanation codes. */ public void setExplanations(java.util.Collection* The explanations. For more information, see Reachability Analyzer * explanation codes. *
** NOTE: This method appends the values to the existing list (if any). Use * {@link #setExplanations(java.util.Collection)} or {@link #withExplanations(java.util.Collection)} if you want to * override the existing values. *
* * @param explanations * The explanations. For more information, see Reachability Analyzer * explanation codes. * @return Returns a reference to this object so that method calls can be chained together. */ public NetworkInsightsAnalysis withExplanations(Explanation... explanations) { if (this.explanations == null) { setExplanations(new com.amazonaws.internal.SdkInternalList* The explanations. For more information, see Reachability Analyzer * explanation codes. *
* * @param explanations * The explanations. For more information, see Reachability Analyzer * explanation codes. * @return Returns a reference to this object so that method calls can be chained together. */ public NetworkInsightsAnalysis withExplanations(java.util.Collection* Potential intermediate components. *
* * @return Potential intermediate components. */ public java.util.List* Potential intermediate components. *
* * @param alternatePathHints * Potential intermediate components. */ public void setAlternatePathHints(java.util.Collection* Potential intermediate components. *
** NOTE: This method appends the values to the existing list (if any). Use * {@link #setAlternatePathHints(java.util.Collection)} or {@link #withAlternatePathHints(java.util.Collection)} if * you want to override the existing values. *
* * @param alternatePathHints * Potential intermediate components. * @return Returns a reference to this object so that method calls can be chained together. */ public NetworkInsightsAnalysis withAlternatePathHints(AlternatePathHint... alternatePathHints) { if (this.alternatePathHints == null) { setAlternatePathHints(new com.amazonaws.internal.SdkInternalList* Potential intermediate components. *
* * @param alternatePathHints * Potential intermediate components. * @return Returns a reference to this object so that method calls can be chained together. */ public NetworkInsightsAnalysis withAlternatePathHints(java.util.Collection* Potential intermediate accounts. *
* * @return Potential intermediate accounts. */ public java.util.List* Potential intermediate accounts. *
* * @param suggestedAccounts * Potential intermediate accounts. */ public void setSuggestedAccounts(java.util.Collection* Potential intermediate accounts. *
** NOTE: This method appends the values to the existing list (if any). Use * {@link #setSuggestedAccounts(java.util.Collection)} or {@link #withSuggestedAccounts(java.util.Collection)} if * you want to override the existing values. *
* * @param suggestedAccounts * Potential intermediate accounts. * @return Returns a reference to this object so that method calls can be chained together. */ public NetworkInsightsAnalysis withSuggestedAccounts(String... suggestedAccounts) { if (this.suggestedAccounts == null) { setSuggestedAccounts(new com.amazonaws.internal.SdkInternalList* Potential intermediate accounts. *
* * @param suggestedAccounts * Potential intermediate accounts. * @return Returns a reference to this object so that method calls can be chained together. */ public NetworkInsightsAnalysis withSuggestedAccounts(java.util.Collection* The tags. *
* * @return The tags. */ public java.util.List* The tags. *
* * @param tags * The tags. */ public void setTags(java.util.Collection* The tags. *
** NOTE: This method appends the values to the existing list (if any). Use * {@link #setTags(java.util.Collection)} or {@link #withTags(java.util.Collection)} if you want to override the * existing values. *
* * @param tags * The tags. * @return Returns a reference to this object so that method calls can be chained together. */ public NetworkInsightsAnalysis withTags(Tag... tags) { if (this.tags == null) { setTags(new com.amazonaws.internal.SdkInternalList* The tags. *
* * @param tags * The tags. * @return Returns a reference to this object so that method calls can be chained together. */ public NetworkInsightsAnalysis withTags(java.util.Collection