/* * Copyright 2010-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.connect.model; import java.io.Serializable; /** *
* Information about the property value used in automation of a numeric * questions. Label values are associated with minimum and maximum values for * the numeric question. *
** Sentiment scores have a minimum value of -5 and maximum value of 5. *
*
* Duration labels, such as NON_TALK_TIME
,
* CONTACT_DURATION
, AGENT_INTERACTION_DURATION
,
* CUSTOMER_HOLD_TIME
have a minimum value of 0 and maximum value
* of 28800.
*
* Percentages have a minimum value of 0 and maximum value of 100. *
*
* NUMBER_OF_INTERRUPTIONS
has a minimum value of 0 and maximum
* value of 1000.
*
* The property label of the automation. *
*
* Constraints:
* Allowed Values: OVERALL_CUSTOMER_SENTIMENT_SCORE,
* OVERALL_AGENT_SENTIMENT_SCORE, NON_TALK_TIME, NON_TALK_TIME_PERCENTAGE,
* NUMBER_OF_INTERRUPTIONS, CONTACT_DURATION, AGENT_INTERACTION_DURATION,
* CUSTOMER_HOLD_TIME
*/
private String label;
/**
*
* The property label of the automation. *
*
* Constraints:
* Allowed Values: OVERALL_CUSTOMER_SENTIMENT_SCORE,
* OVERALL_AGENT_SENTIMENT_SCORE, NON_TALK_TIME, NON_TALK_TIME_PERCENTAGE,
* NUMBER_OF_INTERRUPTIONS, CONTACT_DURATION, AGENT_INTERACTION_DURATION,
* CUSTOMER_HOLD_TIME
*
* @return
* The property label of the automation. *
* @see NumericQuestionPropertyAutomationLabel */ public String getLabel() { return label; } /** ** The property label of the automation. *
*
* Constraints:
* Allowed Values: OVERALL_CUSTOMER_SENTIMENT_SCORE,
* OVERALL_AGENT_SENTIMENT_SCORE, NON_TALK_TIME, NON_TALK_TIME_PERCENTAGE,
* NUMBER_OF_INTERRUPTIONS, CONTACT_DURATION, AGENT_INTERACTION_DURATION,
* CUSTOMER_HOLD_TIME
*
* @param label
* The property label of the automation. *
* @see NumericQuestionPropertyAutomationLabel */ public void setLabel(String label) { this.label = label; } /** ** The property label of the automation. *
** Returns a reference to this object so that method calls can be chained * together. *
* Constraints:
* Allowed Values: OVERALL_CUSTOMER_SENTIMENT_SCORE,
* OVERALL_AGENT_SENTIMENT_SCORE, NON_TALK_TIME, NON_TALK_TIME_PERCENTAGE,
* NUMBER_OF_INTERRUPTIONS, CONTACT_DURATION, AGENT_INTERACTION_DURATION,
* CUSTOMER_HOLD_TIME
*
* @param label
* The property label of the automation. *
* @return A reference to this updated object so that method calls can be * chained together. * @see NumericQuestionPropertyAutomationLabel */ public NumericQuestionPropertyValueAutomation withLabel(String label) { this.label = label; return this; } /** ** The property label of the automation. *
*
* Constraints:
* Allowed Values: OVERALL_CUSTOMER_SENTIMENT_SCORE,
* OVERALL_AGENT_SENTIMENT_SCORE, NON_TALK_TIME, NON_TALK_TIME_PERCENTAGE,
* NUMBER_OF_INTERRUPTIONS, CONTACT_DURATION, AGENT_INTERACTION_DURATION,
* CUSTOMER_HOLD_TIME
*
* @param label
* The property label of the automation. *
* @see NumericQuestionPropertyAutomationLabel */ public void setLabel(NumericQuestionPropertyAutomationLabel label) { this.label = label.toString(); } /** ** The property label of the automation. *
** Returns a reference to this object so that method calls can be chained * together. *
* Constraints:
* Allowed Values: OVERALL_CUSTOMER_SENTIMENT_SCORE,
* OVERALL_AGENT_SENTIMENT_SCORE, NON_TALK_TIME, NON_TALK_TIME_PERCENTAGE,
* NUMBER_OF_INTERRUPTIONS, CONTACT_DURATION, AGENT_INTERACTION_DURATION,
* CUSTOMER_HOLD_TIME
*
* @param label
* The property label of the automation. *
* @return A reference to this updated object so that method calls can be * chained together. * @see NumericQuestionPropertyAutomationLabel */ public NumericQuestionPropertyValueAutomation withLabel( NumericQuestionPropertyAutomationLabel label) { this.label = label.toString(); return this; } /** * Returns a string representation of this object; useful for testing and * debugging. * * @return A string representation of this object. * @see java.lang.Object#toString() */ @Override public String toString() { StringBuilder sb = new StringBuilder(); sb.append("{"); if (getLabel() != null) sb.append("Label: " + getLabel()); sb.append("}"); return sb.toString(); } @Override public int hashCode() { final int prime = 31; int hashCode = 1; hashCode = prime * hashCode + ((getLabel() == null) ? 0 : getLabel().hashCode()); return hashCode; } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (obj instanceof NumericQuestionPropertyValueAutomation == false) return false; NumericQuestionPropertyValueAutomation other = (NumericQuestionPropertyValueAutomation) obj; if (other.getLabel() == null ^ this.getLabel() == null) return false; if (other.getLabel() != null && other.getLabel().equals(this.getLabel()) == false) return false; return true; } }