/* * 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.lookoutequipment.model; import java.io.Serializable; import javax.annotation.Generated; import com.amazonaws.protocol.StructuredPojo; import com.amazonaws.protocol.ProtocolMarshaller; /** *
* Summary of ingestion statistics like whether data exists, number of missing values, number of invalid values and so * on related to the particular sensor. *
* * @see AWS API Documentation */ @Generated("com.amazonaws:aws-java-sdk-code-generator") public class SensorStatisticsSummary implements Serializable, Cloneable, StructuredPojo { /** ** Name of the component to which the particular sensor belongs for which the statistics belong to. *
*/ private String componentName; /** ** Name of the sensor that the statistics belong to. *
*/ private String sensorName; /** ** Parameter that indicates whether data exists for the sensor that the statistics belong to. *
*/ private Boolean dataExists; /** ** Parameter that describes the total number of, and percentage of, values that are missing for the sensor that the * statistics belong to. *
*/ private CountPercent missingValues; /** ** Parameter that describes the total number of, and percentage of, values that are invalid for the sensor that the * statistics belong to. *
*/ private CountPercent invalidValues; /** ** Parameter that describes the total number of invalid date entries associated with the sensor that the statistics * belong to. *
*/ private CountPercent invalidDateEntries; /** ** Parameter that describes the total number of duplicate timestamp records associated with the sensor that the * statistics belong to. *
*/ private CountPercent duplicateTimestamps; /** ** Parameter that describes potential risk about whether data associated with the sensor is categorical. *
*/ private CategoricalValues categoricalValues; /** ** Parameter that describes potential risk about whether data associated with the sensor has more than one operating * mode. *
*/ private MultipleOperatingModes multipleOperatingModes; /** ** Parameter that describes potential risk about whether data associated with the sensor contains one or more large * gaps between consecutive timestamps. *
*/ private LargeTimestampGaps largeTimestampGaps; /** ** Parameter that describes potential risk about whether data associated with the sensor is mostly monotonic. *
*/ private MonotonicValues monotonicValues; /** ** Indicates the time reference to indicate the beginning of valid data associated with the sensor that the * statistics belong to. *
*/ private java.util.Date dataStartTime; /** ** Indicates the time reference to indicate the end of valid data associated with the sensor that the statistics * belong to. *
*/ private java.util.Date dataEndTime; /** ** Name of the component to which the particular sensor belongs for which the statistics belong to. *
* * @param componentName * Name of the component to which the particular sensor belongs for which the statistics belong to. */ public void setComponentName(String componentName) { this.componentName = componentName; } /** ** Name of the component to which the particular sensor belongs for which the statistics belong to. *
* * @return Name of the component to which the particular sensor belongs for which the statistics belong to. */ public String getComponentName() { return this.componentName; } /** ** Name of the component to which the particular sensor belongs for which the statistics belong to. *
* * @param componentName * Name of the component to which the particular sensor belongs for which the statistics belong to. * @return Returns a reference to this object so that method calls can be chained together. */ public SensorStatisticsSummary withComponentName(String componentName) { setComponentName(componentName); return this; } /** ** Name of the sensor that the statistics belong to. *
* * @param sensorName * Name of the sensor that the statistics belong to. */ public void setSensorName(String sensorName) { this.sensorName = sensorName; } /** ** Name of the sensor that the statistics belong to. *
* * @return Name of the sensor that the statistics belong to. */ public String getSensorName() { return this.sensorName; } /** ** Name of the sensor that the statistics belong to. *
* * @param sensorName * Name of the sensor that the statistics belong to. * @return Returns a reference to this object so that method calls can be chained together. */ public SensorStatisticsSummary withSensorName(String sensorName) { setSensorName(sensorName); return this; } /** ** Parameter that indicates whether data exists for the sensor that the statistics belong to. *
* * @param dataExists * Parameter that indicates whether data exists for the sensor that the statistics belong to. */ public void setDataExists(Boolean dataExists) { this.dataExists = dataExists; } /** ** Parameter that indicates whether data exists for the sensor that the statistics belong to. *
* * @return Parameter that indicates whether data exists for the sensor that the statistics belong to. */ public Boolean getDataExists() { return this.dataExists; } /** ** Parameter that indicates whether data exists for the sensor that the statistics belong to. *
* * @param dataExists * Parameter that indicates whether data exists for the sensor that the statistics belong to. * @return Returns a reference to this object so that method calls can be chained together. */ public SensorStatisticsSummary withDataExists(Boolean dataExists) { setDataExists(dataExists); return this; } /** ** Parameter that indicates whether data exists for the sensor that the statistics belong to. *
* * @return Parameter that indicates whether data exists for the sensor that the statistics belong to. */ public Boolean isDataExists() { return this.dataExists; } /** ** Parameter that describes the total number of, and percentage of, values that are missing for the sensor that the * statistics belong to. *
* * @param missingValues * Parameter that describes the total number of, and percentage of, values that are missing for the sensor * that the statistics belong to. */ public void setMissingValues(CountPercent missingValues) { this.missingValues = missingValues; } /** ** Parameter that describes the total number of, and percentage of, values that are missing for the sensor that the * statistics belong to. *
* * @return Parameter that describes the total number of, and percentage of, values that are missing for the sensor * that the statistics belong to. */ public CountPercent getMissingValues() { return this.missingValues; } /** ** Parameter that describes the total number of, and percentage of, values that are missing for the sensor that the * statistics belong to. *
* * @param missingValues * Parameter that describes the total number of, and percentage of, values that are missing for the sensor * that the statistics belong to. * @return Returns a reference to this object so that method calls can be chained together. */ public SensorStatisticsSummary withMissingValues(CountPercent missingValues) { setMissingValues(missingValues); return this; } /** ** Parameter that describes the total number of, and percentage of, values that are invalid for the sensor that the * statistics belong to. *
* * @param invalidValues * Parameter that describes the total number of, and percentage of, values that are invalid for the sensor * that the statistics belong to. */ public void setInvalidValues(CountPercent invalidValues) { this.invalidValues = invalidValues; } /** ** Parameter that describes the total number of, and percentage of, values that are invalid for the sensor that the * statistics belong to. *
* * @return Parameter that describes the total number of, and percentage of, values that are invalid for the sensor * that the statistics belong to. */ public CountPercent getInvalidValues() { return this.invalidValues; } /** ** Parameter that describes the total number of, and percentage of, values that are invalid for the sensor that the * statistics belong to. *
* * @param invalidValues * Parameter that describes the total number of, and percentage of, values that are invalid for the sensor * that the statistics belong to. * @return Returns a reference to this object so that method calls can be chained together. */ public SensorStatisticsSummary withInvalidValues(CountPercent invalidValues) { setInvalidValues(invalidValues); return this; } /** ** Parameter that describes the total number of invalid date entries associated with the sensor that the statistics * belong to. *
* * @param invalidDateEntries * Parameter that describes the total number of invalid date entries associated with the sensor that the * statistics belong to. */ public void setInvalidDateEntries(CountPercent invalidDateEntries) { this.invalidDateEntries = invalidDateEntries; } /** ** Parameter that describes the total number of invalid date entries associated with the sensor that the statistics * belong to. *
* * @return Parameter that describes the total number of invalid date entries associated with the sensor that the * statistics belong to. */ public CountPercent getInvalidDateEntries() { return this.invalidDateEntries; } /** ** Parameter that describes the total number of invalid date entries associated with the sensor that the statistics * belong to. *
* * @param invalidDateEntries * Parameter that describes the total number of invalid date entries associated with the sensor that the * statistics belong to. * @return Returns a reference to this object so that method calls can be chained together. */ public SensorStatisticsSummary withInvalidDateEntries(CountPercent invalidDateEntries) { setInvalidDateEntries(invalidDateEntries); return this; } /** ** Parameter that describes the total number of duplicate timestamp records associated with the sensor that the * statistics belong to. *
* * @param duplicateTimestamps * Parameter that describes the total number of duplicate timestamp records associated with the sensor that * the statistics belong to. */ public void setDuplicateTimestamps(CountPercent duplicateTimestamps) { this.duplicateTimestamps = duplicateTimestamps; } /** ** Parameter that describes the total number of duplicate timestamp records associated with the sensor that the * statistics belong to. *
* * @return Parameter that describes the total number of duplicate timestamp records associated with the sensor that * the statistics belong to. */ public CountPercent getDuplicateTimestamps() { return this.duplicateTimestamps; } /** ** Parameter that describes the total number of duplicate timestamp records associated with the sensor that the * statistics belong to. *
* * @param duplicateTimestamps * Parameter that describes the total number of duplicate timestamp records associated with the sensor that * the statistics belong to. * @return Returns a reference to this object so that method calls can be chained together. */ public SensorStatisticsSummary withDuplicateTimestamps(CountPercent duplicateTimestamps) { setDuplicateTimestamps(duplicateTimestamps); return this; } /** ** Parameter that describes potential risk about whether data associated with the sensor is categorical. *
* * @param categoricalValues * Parameter that describes potential risk about whether data associated with the sensor is categorical. */ public void setCategoricalValues(CategoricalValues categoricalValues) { this.categoricalValues = categoricalValues; } /** ** Parameter that describes potential risk about whether data associated with the sensor is categorical. *
* * @return Parameter that describes potential risk about whether data associated with the sensor is categorical. */ public CategoricalValues getCategoricalValues() { return this.categoricalValues; } /** ** Parameter that describes potential risk about whether data associated with the sensor is categorical. *
* * @param categoricalValues * Parameter that describes potential risk about whether data associated with the sensor is categorical. * @return Returns a reference to this object so that method calls can be chained together. */ public SensorStatisticsSummary withCategoricalValues(CategoricalValues categoricalValues) { setCategoricalValues(categoricalValues); return this; } /** ** Parameter that describes potential risk about whether data associated with the sensor has more than one operating * mode. *
* * @param multipleOperatingModes * Parameter that describes potential risk about whether data associated with the sensor has more than one * operating mode. */ public void setMultipleOperatingModes(MultipleOperatingModes multipleOperatingModes) { this.multipleOperatingModes = multipleOperatingModes; } /** ** Parameter that describes potential risk about whether data associated with the sensor has more than one operating * mode. *
* * @return Parameter that describes potential risk about whether data associated with the sensor has more than one * operating mode. */ public MultipleOperatingModes getMultipleOperatingModes() { return this.multipleOperatingModes; } /** ** Parameter that describes potential risk about whether data associated with the sensor has more than one operating * mode. *
* * @param multipleOperatingModes * Parameter that describes potential risk about whether data associated with the sensor has more than one * operating mode. * @return Returns a reference to this object so that method calls can be chained together. */ public SensorStatisticsSummary withMultipleOperatingModes(MultipleOperatingModes multipleOperatingModes) { setMultipleOperatingModes(multipleOperatingModes); return this; } /** ** Parameter that describes potential risk about whether data associated with the sensor contains one or more large * gaps between consecutive timestamps. *
* * @param largeTimestampGaps * Parameter that describes potential risk about whether data associated with the sensor contains one or more * large gaps between consecutive timestamps. */ public void setLargeTimestampGaps(LargeTimestampGaps largeTimestampGaps) { this.largeTimestampGaps = largeTimestampGaps; } /** ** Parameter that describes potential risk about whether data associated with the sensor contains one or more large * gaps between consecutive timestamps. *
* * @return Parameter that describes potential risk about whether data associated with the sensor contains one or * more large gaps between consecutive timestamps. */ public LargeTimestampGaps getLargeTimestampGaps() { return this.largeTimestampGaps; } /** ** Parameter that describes potential risk about whether data associated with the sensor contains one or more large * gaps between consecutive timestamps. *
* * @param largeTimestampGaps * Parameter that describes potential risk about whether data associated with the sensor contains one or more * large gaps between consecutive timestamps. * @return Returns a reference to this object so that method calls can be chained together. */ public SensorStatisticsSummary withLargeTimestampGaps(LargeTimestampGaps largeTimestampGaps) { setLargeTimestampGaps(largeTimestampGaps); return this; } /** ** Parameter that describes potential risk about whether data associated with the sensor is mostly monotonic. *
* * @param monotonicValues * Parameter that describes potential risk about whether data associated with the sensor is mostly monotonic. */ public void setMonotonicValues(MonotonicValues monotonicValues) { this.monotonicValues = monotonicValues; } /** ** Parameter that describes potential risk about whether data associated with the sensor is mostly monotonic. *
* * @return Parameter that describes potential risk about whether data associated with the sensor is mostly * monotonic. */ public MonotonicValues getMonotonicValues() { return this.monotonicValues; } /** ** Parameter that describes potential risk about whether data associated with the sensor is mostly monotonic. *
* * @param monotonicValues * Parameter that describes potential risk about whether data associated with the sensor is mostly monotonic. * @return Returns a reference to this object so that method calls can be chained together. */ public SensorStatisticsSummary withMonotonicValues(MonotonicValues monotonicValues) { setMonotonicValues(monotonicValues); return this; } /** ** Indicates the time reference to indicate the beginning of valid data associated with the sensor that the * statistics belong to. *
* * @param dataStartTime * Indicates the time reference to indicate the beginning of valid data associated with the sensor that the * statistics belong to. */ public void setDataStartTime(java.util.Date dataStartTime) { this.dataStartTime = dataStartTime; } /** ** Indicates the time reference to indicate the beginning of valid data associated with the sensor that the * statistics belong to. *
* * @return Indicates the time reference to indicate the beginning of valid data associated with the sensor that the * statistics belong to. */ public java.util.Date getDataStartTime() { return this.dataStartTime; } /** ** Indicates the time reference to indicate the beginning of valid data associated with the sensor that the * statistics belong to. *
* * @param dataStartTime * Indicates the time reference to indicate the beginning of valid data associated with the sensor that the * statistics belong to. * @return Returns a reference to this object so that method calls can be chained together. */ public SensorStatisticsSummary withDataStartTime(java.util.Date dataStartTime) { setDataStartTime(dataStartTime); return this; } /** ** Indicates the time reference to indicate the end of valid data associated with the sensor that the statistics * belong to. *
* * @param dataEndTime * Indicates the time reference to indicate the end of valid data associated with the sensor that the * statistics belong to. */ public void setDataEndTime(java.util.Date dataEndTime) { this.dataEndTime = dataEndTime; } /** ** Indicates the time reference to indicate the end of valid data associated with the sensor that the statistics * belong to. *
* * @return Indicates the time reference to indicate the end of valid data associated with the sensor that the * statistics belong to. */ public java.util.Date getDataEndTime() { return this.dataEndTime; } /** ** Indicates the time reference to indicate the end of valid data associated with the sensor that the statistics * belong to. *
* * @param dataEndTime * Indicates the time reference to indicate the end of valid data associated with the sensor that the * statistics belong to. * @return Returns a reference to this object so that method calls can be chained together. */ public SensorStatisticsSummary withDataEndTime(java.util.Date dataEndTime) { setDataEndTime(dataEndTime); 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 (getComponentName() != null) sb.append("ComponentName: ").append(getComponentName()).append(","); if (getSensorName() != null) sb.append("SensorName: ").append(getSensorName()).append(","); if (getDataExists() != null) sb.append("DataExists: ").append(getDataExists()).append(","); if (getMissingValues() != null) sb.append("MissingValues: ").append(getMissingValues()).append(","); if (getInvalidValues() != null) sb.append("InvalidValues: ").append(getInvalidValues()).append(","); if (getInvalidDateEntries() != null) sb.append("InvalidDateEntries: ").append(getInvalidDateEntries()).append(","); if (getDuplicateTimestamps() != null) sb.append("DuplicateTimestamps: ").append(getDuplicateTimestamps()).append(","); if (getCategoricalValues() != null) sb.append("CategoricalValues: ").append(getCategoricalValues()).append(","); if (getMultipleOperatingModes() != null) sb.append("MultipleOperatingModes: ").append(getMultipleOperatingModes()).append(","); if (getLargeTimestampGaps() != null) sb.append("LargeTimestampGaps: ").append(getLargeTimestampGaps()).append(","); if (getMonotonicValues() != null) sb.append("MonotonicValues: ").append(getMonotonicValues()).append(","); if (getDataStartTime() != null) sb.append("DataStartTime: ").append(getDataStartTime()).append(","); if (getDataEndTime() != null) sb.append("DataEndTime: ").append(getDataEndTime()); sb.append("}"); return sb.toString(); } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (obj instanceof SensorStatisticsSummary == false) return false; SensorStatisticsSummary other = (SensorStatisticsSummary) obj; if (other.getComponentName() == null ^ this.getComponentName() == null) return false; if (other.getComponentName() != null && other.getComponentName().equals(this.getComponentName()) == false) return false; if (other.getSensorName() == null ^ this.getSensorName() == null) return false; if (other.getSensorName() != null && other.getSensorName().equals(this.getSensorName()) == false) return false; if (other.getDataExists() == null ^ this.getDataExists() == null) return false; if (other.getDataExists() != null && other.getDataExists().equals(this.getDataExists()) == false) return false; if (other.getMissingValues() == null ^ this.getMissingValues() == null) return false; if (other.getMissingValues() != null && other.getMissingValues().equals(this.getMissingValues()) == false) return false; if (other.getInvalidValues() == null ^ this.getInvalidValues() == null) return false; if (other.getInvalidValues() != null && other.getInvalidValues().equals(this.getInvalidValues()) == false) return false; if (other.getInvalidDateEntries() == null ^ this.getInvalidDateEntries() == null) return false; if (other.getInvalidDateEntries() != null && other.getInvalidDateEntries().equals(this.getInvalidDateEntries()) == false) return false; if (other.getDuplicateTimestamps() == null ^ this.getDuplicateTimestamps() == null) return false; if (other.getDuplicateTimestamps() != null && other.getDuplicateTimestamps().equals(this.getDuplicateTimestamps()) == false) return false; if (other.getCategoricalValues() == null ^ this.getCategoricalValues() == null) return false; if (other.getCategoricalValues() != null && other.getCategoricalValues().equals(this.getCategoricalValues()) == false) return false; if (other.getMultipleOperatingModes() == null ^ this.getMultipleOperatingModes() == null) return false; if (other.getMultipleOperatingModes() != null && other.getMultipleOperatingModes().equals(this.getMultipleOperatingModes()) == false) return false; if (other.getLargeTimestampGaps() == null ^ this.getLargeTimestampGaps() == null) return false; if (other.getLargeTimestampGaps() != null && other.getLargeTimestampGaps().equals(this.getLargeTimestampGaps()) == false) return false; if (other.getMonotonicValues() == null ^ this.getMonotonicValues() == null) return false; if (other.getMonotonicValues() != null && other.getMonotonicValues().equals(this.getMonotonicValues()) == false) return false; if (other.getDataStartTime() == null ^ this.getDataStartTime() == null) return false; if (other.getDataStartTime() != null && other.getDataStartTime().equals(this.getDataStartTime()) == false) return false; if (other.getDataEndTime() == null ^ this.getDataEndTime() == null) return false; if (other.getDataEndTime() != null && other.getDataEndTime().equals(this.getDataEndTime()) == false) return false; return true; } @Override public int hashCode() { final int prime = 31; int hashCode = 1; hashCode = prime * hashCode + ((getComponentName() == null) ? 0 : getComponentName().hashCode()); hashCode = prime * hashCode + ((getSensorName() == null) ? 0 : getSensorName().hashCode()); hashCode = prime * hashCode + ((getDataExists() == null) ? 0 : getDataExists().hashCode()); hashCode = prime * hashCode + ((getMissingValues() == null) ? 0 : getMissingValues().hashCode()); hashCode = prime * hashCode + ((getInvalidValues() == null) ? 0 : getInvalidValues().hashCode()); hashCode = prime * hashCode + ((getInvalidDateEntries() == null) ? 0 : getInvalidDateEntries().hashCode()); hashCode = prime * hashCode + ((getDuplicateTimestamps() == null) ? 0 : getDuplicateTimestamps().hashCode()); hashCode = prime * hashCode + ((getCategoricalValues() == null) ? 0 : getCategoricalValues().hashCode()); hashCode = prime * hashCode + ((getMultipleOperatingModes() == null) ? 0 : getMultipleOperatingModes().hashCode()); hashCode = prime * hashCode + ((getLargeTimestampGaps() == null) ? 0 : getLargeTimestampGaps().hashCode()); hashCode = prime * hashCode + ((getMonotonicValues() == null) ? 0 : getMonotonicValues().hashCode()); hashCode = prime * hashCode + ((getDataStartTime() == null) ? 0 : getDataStartTime().hashCode()); hashCode = prime * hashCode + ((getDataEndTime() == null) ? 0 : getDataEndTime().hashCode()); return hashCode; } @Override public SensorStatisticsSummary clone() { try { return (SensorStatisticsSummary) 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.lookoutequipment.model.transform.SensorStatisticsSummaryMarshaller.getInstance().marshall(this, protocolMarshaller); } }