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

com.amazonaws.services.applicationinsights.model.Problem Maven / Gradle / Ivy

Go to download

The AWS Java SDK for Amazon CloudWatch Application Insights module holds the client classes that are used for communicating with Amazon CloudWatch Application Insights Service

The newest version!
/*
 * Copyright 2019-2024 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 a problem that is detected by correlating observations. *

* * @see AWS API * Documentation */ @Generated("com.amazonaws:aws-java-sdk-code-generator") public class Problem implements Serializable, Cloneable, StructuredPojo { /** *

* The ID of the problem. *

*/ private String id; /** *

* The name of the problem. *

*/ private String title; /** *

* A detailed analysis of the problem using machine learning. *

*/ private String insights; /** *

* The status of the problem. *

*/ private String status; /** *

* The resource affected by the problem. *

*/ private String affectedResource; /** *

* The time when the problem started, in epoch seconds. *

*/ private java.util.Date startTime; /** *

* The time when the problem ended, in epoch seconds. *

*/ private java.util.Date endTime; /** *

* A measure of the level of impact of the problem. *

*/ private String severityLevel; /** *

* The AWS account ID for the owner of the resource group affected by the problem. *

*/ private String accountId; /** *

* The name of the resource group affected by the problem. *

*/ private String resourceGroupName; /** *

* Feedback provided by the user about the problem. *

*/ private java.util.Map feedback; /** *

* The number of times that the same problem reoccurred after the first time it was resolved. *

*/ private Long recurringCount; /** *

* The last time that the problem reoccurred after its last resolution. *

*/ private java.util.Date lastRecurrenceTime; /** *

* Specifies whether or not you can view the problem. Updates to ignored problems do not generate notifications. *

*/ private String visibility; /** *

* Specifies how the problem was resolved. If the value is AUTOMATIC, the system resolved the problem. * If the value is MANUAL, the user resolved the problem. If the value is UNRESOLVED, then * the problem is not resolved. *

*/ private String resolutionMethod; /** *

* The ID of the problem. *

* * @param id * The ID of the problem. */ public void setId(String id) { this.id = id; } /** *

* The ID of the problem. *

* * @return The ID of the problem. */ public String getId() { return this.id; } /** *

* The ID of the problem. *

* * @param id * The ID of the problem. * @return Returns a reference to this object so that method calls can be chained together. */ public Problem withId(String id) { setId(id); return this; } /** *

* The name of the problem. *

* * @param title * The name of the problem. */ public void setTitle(String title) { this.title = title; } /** *

* The name of the problem. *

* * @return The name of the problem. */ public String getTitle() { return this.title; } /** *

* The name of the problem. *

* * @param title * The name of the problem. * @return Returns a reference to this object so that method calls can be chained together. */ public Problem withTitle(String title) { setTitle(title); return this; } /** *

* A detailed analysis of the problem using machine learning. *

* * @param insights * A detailed analysis of the problem using machine learning. */ public void setInsights(String insights) { this.insights = insights; } /** *

* A detailed analysis of the problem using machine learning. *

* * @return A detailed analysis of the problem using machine learning. */ public String getInsights() { return this.insights; } /** *

* A detailed analysis of the problem using machine learning. *

* * @param insights * A detailed analysis of the problem using machine learning. * @return Returns a reference to this object so that method calls can be chained together. */ public Problem withInsights(String insights) { setInsights(insights); return this; } /** *

* The status of the problem. *

* * @param status * The status of the problem. * @see Status */ public void setStatus(String status) { this.status = status; } /** *

* The status of the problem. *

* * @return The status of the problem. * @see Status */ public String getStatus() { return this.status; } /** *

* The status of the problem. *

* * @param status * The status of the problem. * @return Returns a reference to this object so that method calls can be chained together. * @see Status */ public Problem withStatus(String status) { setStatus(status); return this; } /** *

* The status of the problem. *

* * @param status * The status of the problem. * @return Returns a reference to this object so that method calls can be chained together. * @see Status */ public Problem withStatus(Status status) { this.status = status.toString(); return this; } /** *

* The resource affected by the problem. *

* * @param affectedResource * The resource affected by the problem. */ public void setAffectedResource(String affectedResource) { this.affectedResource = affectedResource; } /** *

* The resource affected by the problem. *

* * @return The resource affected by the problem. */ public String getAffectedResource() { return this.affectedResource; } /** *

* The resource affected by the problem. *

* * @param affectedResource * The resource affected by the problem. * @return Returns a reference to this object so that method calls can be chained together. */ public Problem withAffectedResource(String affectedResource) { setAffectedResource(affectedResource); return this; } /** *

* The time when the problem started, in epoch seconds. *

* * @param startTime * The time when the problem started, in epoch seconds. */ public void setStartTime(java.util.Date startTime) { this.startTime = startTime; } /** *

* The time when the problem started, in epoch seconds. *

* * @return The time when the problem started, in epoch seconds. */ public java.util.Date getStartTime() { return this.startTime; } /** *

* The time when the problem started, in epoch seconds. *

* * @param startTime * The time when the problem started, in epoch seconds. * @return Returns a reference to this object so that method calls can be chained together. */ public Problem withStartTime(java.util.Date startTime) { setStartTime(startTime); return this; } /** *

* The time when the problem ended, in epoch seconds. *

* * @param endTime * The time when the problem ended, in epoch seconds. */ public void setEndTime(java.util.Date endTime) { this.endTime = endTime; } /** *

* The time when the problem ended, in epoch seconds. *

* * @return The time when the problem ended, in epoch seconds. */ public java.util.Date getEndTime() { return this.endTime; } /** *

* The time when the problem ended, in epoch seconds. *

* * @param endTime * The time when the problem ended, in epoch seconds. * @return Returns a reference to this object so that method calls can be chained together. */ public Problem withEndTime(java.util.Date endTime) { setEndTime(endTime); return this; } /** *

* A measure of the level of impact of the problem. *

* * @param severityLevel * A measure of the level of impact of the problem. * @see SeverityLevel */ public void setSeverityLevel(String severityLevel) { this.severityLevel = severityLevel; } /** *

* A measure of the level of impact of the problem. *

* * @return A measure of the level of impact of the problem. * @see SeverityLevel */ public String getSeverityLevel() { return this.severityLevel; } /** *

* A measure of the level of impact of the problem. *

* * @param severityLevel * A measure of the level of impact of the problem. * @return Returns a reference to this object so that method calls can be chained together. * @see SeverityLevel */ public Problem withSeverityLevel(String severityLevel) { setSeverityLevel(severityLevel); return this; } /** *

* A measure of the level of impact of the problem. *

* * @param severityLevel * A measure of the level of impact of the problem. * @return Returns a reference to this object so that method calls can be chained together. * @see SeverityLevel */ public Problem withSeverityLevel(SeverityLevel severityLevel) { this.severityLevel = severityLevel.toString(); return this; } /** *

* The AWS account ID for the owner of the resource group affected by the problem. *

* * @param accountId * The AWS account ID for the owner of the resource group affected by the problem. */ public void setAccountId(String accountId) { this.accountId = accountId; } /** *

* The AWS account ID for the owner of the resource group affected by the problem. *

* * @return The AWS account ID for the owner of the resource group affected by the problem. */ public String getAccountId() { return this.accountId; } /** *

* The AWS account ID for the owner of the resource group affected by the problem. *

* * @param accountId * The AWS account ID for the owner of the resource group affected by the problem. * @return Returns a reference to this object so that method calls can be chained together. */ public Problem withAccountId(String accountId) { setAccountId(accountId); return this; } /** *

* The name of the resource group affected by the problem. *

* * @param resourceGroupName * The name of the resource group affected by the problem. */ public void setResourceGroupName(String resourceGroupName) { this.resourceGroupName = resourceGroupName; } /** *

* The name of the resource group affected by the problem. *

* * @return The name of the resource group affected by the problem. */ public String getResourceGroupName() { return this.resourceGroupName; } /** *

* The name of the resource group affected by the problem. *

* * @param resourceGroupName * The name of the resource group affected by the problem. * @return Returns a reference to this object so that method calls can be chained together. */ public Problem withResourceGroupName(String resourceGroupName) { setResourceGroupName(resourceGroupName); return this; } /** *

* Feedback provided by the user about the problem. *

* * @return Feedback provided by the user about the problem. */ public java.util.Map getFeedback() { return feedback; } /** *

* Feedback provided by the user about the problem. *

* * @param feedback * Feedback provided by the user about the problem. */ public void setFeedback(java.util.Map feedback) { this.feedback = feedback; } /** *

* Feedback provided by the user about the problem. *

* * @param feedback * Feedback provided by the user about the problem. * @return Returns a reference to this object so that method calls can be chained together. */ public Problem withFeedback(java.util.Map feedback) { setFeedback(feedback); return this; } /** * Add a single Feedback entry * * @see Problem#withFeedback * @returns a reference to this object so that method calls can be chained together. */ public Problem addFeedbackEntry(String key, String value) { if (null == this.feedback) { this.feedback = new java.util.HashMap(); } if (this.feedback.containsKey(key)) throw new IllegalArgumentException("Duplicated keys (" + key.toString() + ") are provided."); this.feedback.put(key, value); return this; } /** * Removes all the entries added into Feedback. * * @return Returns a reference to this object so that method calls can be chained together. */ public Problem clearFeedbackEntries() { this.feedback = null; return this; } /** *

* The number of times that the same problem reoccurred after the first time it was resolved. *

* * @param recurringCount * The number of times that the same problem reoccurred after the first time it was resolved. */ public void setRecurringCount(Long recurringCount) { this.recurringCount = recurringCount; } /** *

* The number of times that the same problem reoccurred after the first time it was resolved. *

* * @return The number of times that the same problem reoccurred after the first time it was resolved. */ public Long getRecurringCount() { return this.recurringCount; } /** *

* The number of times that the same problem reoccurred after the first time it was resolved. *

* * @param recurringCount * The number of times that the same problem reoccurred after the first time it was resolved. * @return Returns a reference to this object so that method calls can be chained together. */ public Problem withRecurringCount(Long recurringCount) { setRecurringCount(recurringCount); return this; } /** *

* The last time that the problem reoccurred after its last resolution. *

* * @param lastRecurrenceTime * The last time that the problem reoccurred after its last resolution. */ public void setLastRecurrenceTime(java.util.Date lastRecurrenceTime) { this.lastRecurrenceTime = lastRecurrenceTime; } /** *

* The last time that the problem reoccurred after its last resolution. *

* * @return The last time that the problem reoccurred after its last resolution. */ public java.util.Date getLastRecurrenceTime() { return this.lastRecurrenceTime; } /** *

* The last time that the problem reoccurred after its last resolution. *

* * @param lastRecurrenceTime * The last time that the problem reoccurred after its last resolution. * @return Returns a reference to this object so that method calls can be chained together. */ public Problem withLastRecurrenceTime(java.util.Date lastRecurrenceTime) { setLastRecurrenceTime(lastRecurrenceTime); return this; } /** *

* Specifies whether or not you can view the problem. Updates to ignored problems do not generate notifications. *

* * @param visibility * Specifies whether or not you can view the problem. Updates to ignored problems do not generate * notifications. * @see Visibility */ public void setVisibility(String visibility) { this.visibility = visibility; } /** *

* Specifies whether or not you can view the problem. Updates to ignored problems do not generate notifications. *

* * @return Specifies whether or not you can view the problem. Updates to ignored problems do not generate * notifications. * @see Visibility */ public String getVisibility() { return this.visibility; } /** *

* Specifies whether or not you can view the problem. Updates to ignored problems do not generate notifications. *

* * @param visibility * Specifies whether or not you can view the problem. Updates to ignored problems do not generate * notifications. * @return Returns a reference to this object so that method calls can be chained together. * @see Visibility */ public Problem withVisibility(String visibility) { setVisibility(visibility); return this; } /** *

* Specifies whether or not you can view the problem. Updates to ignored problems do not generate notifications. *

* * @param visibility * Specifies whether or not you can view the problem. Updates to ignored problems do not generate * notifications. * @return Returns a reference to this object so that method calls can be chained together. * @see Visibility */ public Problem withVisibility(Visibility visibility) { this.visibility = visibility.toString(); return this; } /** *

* Specifies how the problem was resolved. If the value is AUTOMATIC, the system resolved the problem. * If the value is MANUAL, the user resolved the problem. If the value is UNRESOLVED, then * the problem is not resolved. *

* * @param resolutionMethod * Specifies how the problem was resolved. If the value is AUTOMATIC, the system resolved the * problem. If the value is MANUAL, the user resolved the problem. If the value is * UNRESOLVED, then the problem is not resolved. * @see ResolutionMethod */ public void setResolutionMethod(String resolutionMethod) { this.resolutionMethod = resolutionMethod; } /** *

* Specifies how the problem was resolved. If the value is AUTOMATIC, the system resolved the problem. * If the value is MANUAL, the user resolved the problem. If the value is UNRESOLVED, then * the problem is not resolved. *

* * @return Specifies how the problem was resolved. If the value is AUTOMATIC, the system resolved the * problem. If the value is MANUAL, the user resolved the problem. If the value is * UNRESOLVED, then the problem is not resolved. * @see ResolutionMethod */ public String getResolutionMethod() { return this.resolutionMethod; } /** *

* Specifies how the problem was resolved. If the value is AUTOMATIC, the system resolved the problem. * If the value is MANUAL, the user resolved the problem. If the value is UNRESOLVED, then * the problem is not resolved. *

* * @param resolutionMethod * Specifies how the problem was resolved. If the value is AUTOMATIC, the system resolved the * problem. If the value is MANUAL, the user resolved the problem. If the value is * UNRESOLVED, then the problem is not resolved. * @return Returns a reference to this object so that method calls can be chained together. * @see ResolutionMethod */ public Problem withResolutionMethod(String resolutionMethod) { setResolutionMethod(resolutionMethod); return this; } /** *

* Specifies how the problem was resolved. If the value is AUTOMATIC, the system resolved the problem. * If the value is MANUAL, the user resolved the problem. If the value is UNRESOLVED, then * the problem is not resolved. *

* * @param resolutionMethod * Specifies how the problem was resolved. If the value is AUTOMATIC, the system resolved the * problem. If the value is MANUAL, the user resolved the problem. If the value is * UNRESOLVED, then the problem is not resolved. * @return Returns a reference to this object so that method calls can be chained together. * @see ResolutionMethod */ public Problem withResolutionMethod(ResolutionMethod resolutionMethod) { this.resolutionMethod = resolutionMethod.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 (getId() != null) sb.append("Id: ").append(getId()).append(","); if (getTitle() != null) sb.append("Title: ").append(getTitle()).append(","); if (getInsights() != null) sb.append("Insights: ").append(getInsights()).append(","); if (getStatus() != null) sb.append("Status: ").append(getStatus()).append(","); if (getAffectedResource() != null) sb.append("AffectedResource: ").append(getAffectedResource()).append(","); if (getStartTime() != null) sb.append("StartTime: ").append(getStartTime()).append(","); if (getEndTime() != null) sb.append("EndTime: ").append(getEndTime()).append(","); if (getSeverityLevel() != null) sb.append("SeverityLevel: ").append(getSeverityLevel()).append(","); if (getAccountId() != null) sb.append("AccountId: ").append(getAccountId()).append(","); if (getResourceGroupName() != null) sb.append("ResourceGroupName: ").append(getResourceGroupName()).append(","); if (getFeedback() != null) sb.append("Feedback: ").append(getFeedback()).append(","); if (getRecurringCount() != null) sb.append("RecurringCount: ").append(getRecurringCount()).append(","); if (getLastRecurrenceTime() != null) sb.append("LastRecurrenceTime: ").append(getLastRecurrenceTime()).append(","); if (getVisibility() != null) sb.append("Visibility: ").append(getVisibility()).append(","); if (getResolutionMethod() != null) sb.append("ResolutionMethod: ").append(getResolutionMethod()); sb.append("}"); return sb.toString(); } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (obj instanceof Problem == false) return false; Problem other = (Problem) obj; if (other.getId() == null ^ this.getId() == null) return false; if (other.getId() != null && other.getId().equals(this.getId()) == false) return false; if (other.getTitle() == null ^ this.getTitle() == null) return false; if (other.getTitle() != null && other.getTitle().equals(this.getTitle()) == false) return false; if (other.getInsights() == null ^ this.getInsights() == null) return false; if (other.getInsights() != null && other.getInsights().equals(this.getInsights()) == false) return false; if (other.getStatus() == null ^ this.getStatus() == null) return false; if (other.getStatus() != null && other.getStatus().equals(this.getStatus()) == false) return false; if (other.getAffectedResource() == null ^ this.getAffectedResource() == null) return false; if (other.getAffectedResource() != null && other.getAffectedResource().equals(this.getAffectedResource()) == false) return false; if (other.getStartTime() == null ^ this.getStartTime() == null) return false; if (other.getStartTime() != null && other.getStartTime().equals(this.getStartTime()) == false) return false; if (other.getEndTime() == null ^ this.getEndTime() == null) return false; if (other.getEndTime() != null && other.getEndTime().equals(this.getEndTime()) == false) return false; if (other.getSeverityLevel() == null ^ this.getSeverityLevel() == null) return false; if (other.getSeverityLevel() != null && other.getSeverityLevel().equals(this.getSeverityLevel()) == false) return false; 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.getFeedback() == null ^ this.getFeedback() == null) return false; if (other.getFeedback() != null && other.getFeedback().equals(this.getFeedback()) == false) return false; if (other.getRecurringCount() == null ^ this.getRecurringCount() == null) return false; if (other.getRecurringCount() != null && other.getRecurringCount().equals(this.getRecurringCount()) == false) return false; if (other.getLastRecurrenceTime() == null ^ this.getLastRecurrenceTime() == null) return false; if (other.getLastRecurrenceTime() != null && other.getLastRecurrenceTime().equals(this.getLastRecurrenceTime()) == false) return false; if (other.getVisibility() == null ^ this.getVisibility() == null) return false; if (other.getVisibility() != null && other.getVisibility().equals(this.getVisibility()) == false) return false; if (other.getResolutionMethod() == null ^ this.getResolutionMethod() == null) return false; if (other.getResolutionMethod() != null && other.getResolutionMethod().equals(this.getResolutionMethod()) == false) return false; return true; } @Override public int hashCode() { final int prime = 31; int hashCode = 1; hashCode = prime * hashCode + ((getId() == null) ? 0 : getId().hashCode()); hashCode = prime * hashCode + ((getTitle() == null) ? 0 : getTitle().hashCode()); hashCode = prime * hashCode + ((getInsights() == null) ? 0 : getInsights().hashCode()); hashCode = prime * hashCode + ((getStatus() == null) ? 0 : getStatus().hashCode()); hashCode = prime * hashCode + ((getAffectedResource() == null) ? 0 : getAffectedResource().hashCode()); hashCode = prime * hashCode + ((getStartTime() == null) ? 0 : getStartTime().hashCode()); hashCode = prime * hashCode + ((getEndTime() == null) ? 0 : getEndTime().hashCode()); hashCode = prime * hashCode + ((getSeverityLevel() == null) ? 0 : getSeverityLevel().hashCode()); hashCode = prime * hashCode + ((getAccountId() == null) ? 0 : getAccountId().hashCode()); hashCode = prime * hashCode + ((getResourceGroupName() == null) ? 0 : getResourceGroupName().hashCode()); hashCode = prime * hashCode + ((getFeedback() == null) ? 0 : getFeedback().hashCode()); hashCode = prime * hashCode + ((getRecurringCount() == null) ? 0 : getRecurringCount().hashCode()); hashCode = prime * hashCode + ((getLastRecurrenceTime() == null) ? 0 : getLastRecurrenceTime().hashCode()); hashCode = prime * hashCode + ((getVisibility() == null) ? 0 : getVisibility().hashCode()); hashCode = prime * hashCode + ((getResolutionMethod() == null) ? 0 : getResolutionMethod().hashCode()); return hashCode; } @Override public Problem clone() { try { return (Problem) 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.ProblemMarshaller.getInstance().marshall(this, protocolMarshaller); } }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy