/* * 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.applicationinsights.model; import java.io.Serializable; import javax.annotation.Generated; import com.amazonaws.protocol.StructuredPojo; import com.amazonaws.protocol.ProtocolMarshaller; /** *
* Describes the status of the application. *
* * @see AWS API Documentation */ @Generated("com.amazonaws:aws-java-sdk-code-generator") public class ApplicationInfo implements Serializable, Cloneable, StructuredPojo { /** ** The AWS account ID for the owner of the application. *
*/ private String accountId; /** ** The name of the resource group used for the application. *
*/ private String resourceGroupName; /** ** The lifecycle of the application. *
*/ private String lifeCycle; /** ** The SNS topic provided to Application Insights that is associated to the created opsItems to receive SNS * notifications for opsItem updates. *
*/ private String opsItemSNSTopicArn; /** ** Indicates whether Application Insights will create opsItems for any problem detected by Application Insights for * an application. *
*/ private Boolean opsCenterEnabled; /** *
* Indicates whether Application Insights can listen to CloudWatch events for the application resources, such as
* instance terminated
, failed deployment
, and others.
*
* The issues on the user side that block Application Insights from successfully monitoring an application. Example * remarks include: *
** “Configuring application, detected 1 Errors, 3 Warnings” *
** “Configuring application, detected 1 Unconfigured Components” *
** Indicates whether auto-configuration is turned on for this application. *
*/ private Boolean autoConfigEnabled; /** ** The method used by Application Insights to onboard your resources. *
*/ private String discoveryType; /** ** The AWS account ID for the owner of the application. *
* * @param accountId * The AWS account ID for the owner of the application. */ public void setAccountId(String accountId) { this.accountId = accountId; } /** ** The AWS account ID for the owner of the application. *
* * @return The AWS account ID for the owner of the application. */ public String getAccountId() { return this.accountId; } /** ** The AWS account ID for the owner of the application. *
* * @param accountId * The AWS account ID for the owner of the application. * @return Returns a reference to this object so that method calls can be chained together. */ public ApplicationInfo withAccountId(String accountId) { setAccountId(accountId); return this; } /** ** The name of the resource group used for the application. *
* * @param resourceGroupName * The name of the resource group used for the application. */ public void setResourceGroupName(String resourceGroupName) { this.resourceGroupName = resourceGroupName; } /** ** The name of the resource group used for the application. *
* * @return The name of the resource group used for the application. */ public String getResourceGroupName() { return this.resourceGroupName; } /** ** The name of the resource group used for the application. *
* * @param resourceGroupName * The name of the resource group used for the application. * @return Returns a reference to this object so that method calls can be chained together. */ public ApplicationInfo withResourceGroupName(String resourceGroupName) { setResourceGroupName(resourceGroupName); return this; } /** ** The lifecycle of the application. *
* * @param lifeCycle * The lifecycle of the application. */ public void setLifeCycle(String lifeCycle) { this.lifeCycle = lifeCycle; } /** ** The lifecycle of the application. *
* * @return The lifecycle of the application. */ public String getLifeCycle() { return this.lifeCycle; } /** ** The lifecycle of the application. *
* * @param lifeCycle * The lifecycle of the application. * @return Returns a reference to this object so that method calls can be chained together. */ public ApplicationInfo withLifeCycle(String lifeCycle) { setLifeCycle(lifeCycle); return this; } /** ** The SNS topic provided to Application Insights that is associated to the created opsItems to receive SNS * notifications for opsItem updates. *
* * @param opsItemSNSTopicArn * The SNS topic provided to Application Insights that is associated to the created opsItems to receive SNS * notifications for opsItem updates. */ public void setOpsItemSNSTopicArn(String opsItemSNSTopicArn) { this.opsItemSNSTopicArn = opsItemSNSTopicArn; } /** ** The SNS topic provided to Application Insights that is associated to the created opsItems to receive SNS * notifications for opsItem updates. *
* * @return The SNS topic provided to Application Insights that is associated to the created opsItems to receive SNS * notifications for opsItem updates. */ public String getOpsItemSNSTopicArn() { return this.opsItemSNSTopicArn; } /** ** The SNS topic provided to Application Insights that is associated to the created opsItems to receive SNS * notifications for opsItem updates. *
* * @param opsItemSNSTopicArn * The SNS topic provided to Application Insights that is associated to the created opsItems to receive SNS * notifications for opsItem updates. * @return Returns a reference to this object so that method calls can be chained together. */ public ApplicationInfo withOpsItemSNSTopicArn(String opsItemSNSTopicArn) { setOpsItemSNSTopicArn(opsItemSNSTopicArn); return this; } /** ** Indicates whether Application Insights will create opsItems for any problem detected by Application Insights for * an application. *
* * @param opsCenterEnabled * Indicates whether Application Insights will create opsItems for any problem detected by Application * Insights for an application. */ public void setOpsCenterEnabled(Boolean opsCenterEnabled) { this.opsCenterEnabled = opsCenterEnabled; } /** ** Indicates whether Application Insights will create opsItems for any problem detected by Application Insights for * an application. *
* * @return Indicates whether Application Insights will create opsItems for any problem detected by Application * Insights for an application. */ public Boolean getOpsCenterEnabled() { return this.opsCenterEnabled; } /** ** Indicates whether Application Insights will create opsItems for any problem detected by Application Insights for * an application. *
* * @param opsCenterEnabled * Indicates whether Application Insights will create opsItems for any problem detected by Application * Insights for an application. * @return Returns a reference to this object so that method calls can be chained together. */ public ApplicationInfo withOpsCenterEnabled(Boolean opsCenterEnabled) { setOpsCenterEnabled(opsCenterEnabled); return this; } /** ** Indicates whether Application Insights will create opsItems for any problem detected by Application Insights for * an application. *
* * @return Indicates whether Application Insights will create opsItems for any problem detected by Application * Insights for an application. */ public Boolean isOpsCenterEnabled() { return this.opsCenterEnabled; } /** *
* Indicates whether Application Insights can listen to CloudWatch events for the application resources, such as
* instance terminated
, failed deployment
, and others.
*
instance terminated
, failed deployment
, and others.
*/
public void setCWEMonitorEnabled(Boolean cWEMonitorEnabled) {
this.cWEMonitorEnabled = cWEMonitorEnabled;
}
/**
*
* Indicates whether Application Insights can listen to CloudWatch events for the application resources, such as
* instance terminated
, failed deployment
, and others.
*
instance terminated
, failed deployment
, and others.
*/
public Boolean getCWEMonitorEnabled() {
return this.cWEMonitorEnabled;
}
/**
*
* Indicates whether Application Insights can listen to CloudWatch events for the application resources, such as
* instance terminated
, failed deployment
, and others.
*
instance terminated
, failed deployment
, and others.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public ApplicationInfo withCWEMonitorEnabled(Boolean cWEMonitorEnabled) {
setCWEMonitorEnabled(cWEMonitorEnabled);
return this;
}
/**
*
* Indicates whether Application Insights can listen to CloudWatch events for the application resources, such as
* instance terminated
, failed deployment
, and others.
*
instance terminated
, failed deployment
, and others.
*/
public Boolean isCWEMonitorEnabled() {
return this.cWEMonitorEnabled;
}
/**
* * The issues on the user side that block Application Insights from successfully monitoring an application. Example * remarks include: *
** “Configuring application, detected 1 Errors, 3 Warnings” *
** “Configuring application, detected 1 Unconfigured Components” *
** “Configuring application, detected 1 Errors, 3 Warnings” *
** “Configuring application, detected 1 Unconfigured Components” *
** The issues on the user side that block Application Insights from successfully monitoring an application. Example * remarks include: *
** “Configuring application, detected 1 Errors, 3 Warnings” *
** “Configuring application, detected 1 Unconfigured Components” *
** “Configuring application, detected 1 Errors, 3 Warnings” *
** “Configuring application, detected 1 Unconfigured Components” *
** The issues on the user side that block Application Insights from successfully monitoring an application. Example * remarks include: *
** “Configuring application, detected 1 Errors, 3 Warnings” *
** “Configuring application, detected 1 Unconfigured Components” *
** “Configuring application, detected 1 Errors, 3 Warnings” *
** “Configuring application, detected 1 Unconfigured Components” *
** Indicates whether auto-configuration is turned on for this application. *
* * @param autoConfigEnabled * Indicates whether auto-configuration is turned on for this application. */ public void setAutoConfigEnabled(Boolean autoConfigEnabled) { this.autoConfigEnabled = autoConfigEnabled; } /** ** Indicates whether auto-configuration is turned on for this application. *
* * @return Indicates whether auto-configuration is turned on for this application. */ public Boolean getAutoConfigEnabled() { return this.autoConfigEnabled; } /** ** Indicates whether auto-configuration is turned on for this application. *
* * @param autoConfigEnabled * Indicates whether auto-configuration is turned on for this application. * @return Returns a reference to this object so that method calls can be chained together. */ public ApplicationInfo withAutoConfigEnabled(Boolean autoConfigEnabled) { setAutoConfigEnabled(autoConfigEnabled); return this; } /** ** Indicates whether auto-configuration is turned on for this application. *
* * @return Indicates whether auto-configuration is turned on for this application. */ public Boolean isAutoConfigEnabled() { return this.autoConfigEnabled; } /** ** The method used by Application Insights to onboard your resources. *
* * @param discoveryType * The method used by Application Insights to onboard your resources. * @see DiscoveryType */ public void setDiscoveryType(String discoveryType) { this.discoveryType = discoveryType; } /** ** The method used by Application Insights to onboard your resources. *
* * @return The method used by Application Insights to onboard your resources. * @see DiscoveryType */ public String getDiscoveryType() { return this.discoveryType; } /** ** The method used by Application Insights to onboard your resources. *
* * @param discoveryType * The method used by Application Insights to onboard your resources. * @return Returns a reference to this object so that method calls can be chained together. * @see DiscoveryType */ public ApplicationInfo withDiscoveryType(String discoveryType) { setDiscoveryType(discoveryType); return this; } /** ** The method used by Application Insights to onboard your resources. *
* * @param discoveryType * The method used by Application Insights to onboard your resources. * @return Returns a reference to this object so that method calls can be chained together. * @see DiscoveryType */ public ApplicationInfo withDiscoveryType(DiscoveryType discoveryType) { this.discoveryType = discoveryType.toString(); return this; } /** * 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. * * @return A string representation of this object. * * @see java.lang.Object#toString() */ @Override public String toString() { StringBuilder sb = new StringBuilder(); sb.append("{"); if (getAccountId() != null) sb.append("AccountId: ").append(getAccountId()).append(","); if (getResourceGroupName() != null) sb.append("ResourceGroupName: ").append(getResourceGroupName()).append(","); if (getLifeCycle() != null) sb.append("LifeCycle: ").append(getLifeCycle()).append(","); if (getOpsItemSNSTopicArn() != null) sb.append("OpsItemSNSTopicArn: ").append(getOpsItemSNSTopicArn()).append(","); if (getOpsCenterEnabled() != null) sb.append("OpsCenterEnabled: ").append(getOpsCenterEnabled()).append(","); if (getCWEMonitorEnabled() != null) sb.append("CWEMonitorEnabled: ").append(getCWEMonitorEnabled()).append(","); if (getRemarks() != null) sb.append("Remarks: ").append(getRemarks()).append(","); if (getAutoConfigEnabled() != null) sb.append("AutoConfigEnabled: ").append(getAutoConfigEnabled()).append(","); if (getDiscoveryType() != null) sb.append("DiscoveryType: ").append(getDiscoveryType()); sb.append("}"); return sb.toString(); } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (obj instanceof ApplicationInfo == false) return false; ApplicationInfo other = (ApplicationInfo) obj; if (other.getAccountId() == null ^ this.getAccountId() == null) return false; if (other.getAccountId() != null && other.getAccountId().equals(this.getAccountId()) == false) return false; if (other.getResourceGroupName() == null ^ this.getResourceGroupName() == null) return false; if (other.getResourceGroupName() != null && other.getResourceGroupName().equals(this.getResourceGroupName()) == false) return false; if (other.getLifeCycle() == null ^ this.getLifeCycle() == null) return false; if (other.getLifeCycle() != null && other.getLifeCycle().equals(this.getLifeCycle()) == false) return false; if (other.getOpsItemSNSTopicArn() == null ^ this.getOpsItemSNSTopicArn() == null) return false; if (other.getOpsItemSNSTopicArn() != null && other.getOpsItemSNSTopicArn().equals(this.getOpsItemSNSTopicArn()) == false) return false; if (other.getOpsCenterEnabled() == null ^ this.getOpsCenterEnabled() == null) return false; if (other.getOpsCenterEnabled() != null && other.getOpsCenterEnabled().equals(this.getOpsCenterEnabled()) == false) return false; if (other.getCWEMonitorEnabled() == null ^ this.getCWEMonitorEnabled() == null) return false; if (other.getCWEMonitorEnabled() != null && other.getCWEMonitorEnabled().equals(this.getCWEMonitorEnabled()) == false) return false; if (other.getRemarks() == null ^ this.getRemarks() == null) return false; if (other.getRemarks() != null && other.getRemarks().equals(this.getRemarks()) == false) return false; if (other.getAutoConfigEnabled() == null ^ this.getAutoConfigEnabled() == null) return false; if (other.getAutoConfigEnabled() != null && other.getAutoConfigEnabled().equals(this.getAutoConfigEnabled()) == false) return false; if (other.getDiscoveryType() == null ^ this.getDiscoveryType() == null) return false; if (other.getDiscoveryType() != null && other.getDiscoveryType().equals(this.getDiscoveryType()) == false) return false; return true; } @Override public int hashCode() { final int prime = 31; int hashCode = 1; hashCode = prime * hashCode + ((getAccountId() == null) ? 0 : getAccountId().hashCode()); hashCode = prime * hashCode + ((getResourceGroupName() == null) ? 0 : getResourceGroupName().hashCode()); hashCode = prime * hashCode + ((getLifeCycle() == null) ? 0 : getLifeCycle().hashCode()); hashCode = prime * hashCode + ((getOpsItemSNSTopicArn() == null) ? 0 : getOpsItemSNSTopicArn().hashCode()); hashCode = prime * hashCode + ((getOpsCenterEnabled() == null) ? 0 : getOpsCenterEnabled().hashCode()); hashCode = prime * hashCode + ((getCWEMonitorEnabled() == null) ? 0 : getCWEMonitorEnabled().hashCode()); hashCode = prime * hashCode + ((getRemarks() == null) ? 0 : getRemarks().hashCode()); hashCode = prime * hashCode + ((getAutoConfigEnabled() == null) ? 0 : getAutoConfigEnabled().hashCode()); hashCode = prime * hashCode + ((getDiscoveryType() == null) ? 0 : getDiscoveryType().hashCode()); return hashCode; } @Override public ApplicationInfo clone() { try { return (ApplicationInfo) super.clone(); } catch (CloneNotSupportedException e) { throw new IllegalStateException("Got a CloneNotSupportedException from Object.clone() " + "even though we're Cloneable!", e); } } @com.amazonaws.annotation.SdkInternalApi @Override public void marshall(ProtocolMarshaller protocolMarshaller) { com.amazonaws.services.applicationinsights.model.transform.ApplicationInfoMarshaller.getInstance().marshall(this, protocolMarshaller); } }