/* * 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.kafka.model; import java.io.Serializable; import javax.annotation.Generated; import com.amazonaws.protocol.StructuredPojo; import com.amazonaws.protocol.ProtocolMarshaller; /** *
* Returns information about a cluster. *
* * @see AWS API * Documentation */ @Generated("com.amazonaws:aws-java-sdk-code-generator") public class ClusterInfo implements Serializable, Cloneable, StructuredPojo { /** ** Arn of active cluster operation. *
*/ private String activeOperationArn; /** ** Information about the broker nodes. *
*/ private BrokerNodeGroupInfo brokerNodeGroupInfo; /** ** Includes all client authentication information. *
*/ private ClientAuthentication clientAuthentication; /** ** The Amazon Resource Name (ARN) that uniquely identifies the cluster. *
*/ private String clusterArn; /** ** The name of the cluster. *
*/ private String clusterName; /** ** The time when the cluster was created. *
*/ private java.util.Date creationTime; /** ** Information about the version of software currently deployed on the Apache Kafka brokers in the cluster. *
*/ private BrokerSoftwareInfo currentBrokerSoftwareInfo; /** ** The current version of the MSK cluster. *
*/ private String currentVersion; /** ** Includes all encryption-related information. *
*/ private EncryptionInfo encryptionInfo; /** ** Specifies which metrics are gathered for the MSK cluster. This property has the following possible values: * DEFAULT, PER_BROKER, PER_TOPIC_PER_BROKER, and PER_TOPIC_PER_PARTITION. For a list of the metrics associated with * each of these levels of monitoring, see Monitoring. *
*/ private String enhancedMonitoring; /** ** Settings for open monitoring using Prometheus. *
*/ private OpenMonitoring openMonitoring; private LoggingInfo loggingInfo; /** ** The number of broker nodes in the cluster. *
*/ private Integer numberOfBrokerNodes; /** ** The state of the cluster. The possible states are ACTIVE, CREATING, DELETING, FAILED, HEALING, MAINTENANCE, * REBOOTING_BROKER, and UPDATING. *
*/ private String state; private StateInfo stateInfo; /** ** Tags attached to the cluster. *
*/ private java.util.Map* The connection string to use to connect to the Apache ZooKeeper cluster. *
*/ private String zookeeperConnectString; /** ** The connection string to use to connect to zookeeper cluster on Tls port. *
*/ private String zookeeperConnectStringTls; /** ** This controls storage mode for supported storage tiers. *
*/ private String storageMode; /** ** Arn of active cluster operation. *
* * @param activeOperationArn ** Arn of active cluster operation. *
*/ public void setActiveOperationArn(String activeOperationArn) { this.activeOperationArn = activeOperationArn; } /** ** Arn of active cluster operation. *
* * @return* Arn of active cluster operation. *
*/ public String getActiveOperationArn() { return this.activeOperationArn; } /** ** Arn of active cluster operation. *
* * @param activeOperationArn ** Arn of active cluster operation. *
* @return Returns a reference to this object so that method calls can be chained together. */ public ClusterInfo withActiveOperationArn(String activeOperationArn) { setActiveOperationArn(activeOperationArn); return this; } /** ** Information about the broker nodes. *
* * @param brokerNodeGroupInfo ** Information about the broker nodes. *
*/ public void setBrokerNodeGroupInfo(BrokerNodeGroupInfo brokerNodeGroupInfo) { this.brokerNodeGroupInfo = brokerNodeGroupInfo; } /** ** Information about the broker nodes. *
* * @return* Information about the broker nodes. *
*/ public BrokerNodeGroupInfo getBrokerNodeGroupInfo() { return this.brokerNodeGroupInfo; } /** ** Information about the broker nodes. *
* * @param brokerNodeGroupInfo ** Information about the broker nodes. *
* @return Returns a reference to this object so that method calls can be chained together. */ public ClusterInfo withBrokerNodeGroupInfo(BrokerNodeGroupInfo brokerNodeGroupInfo) { setBrokerNodeGroupInfo(brokerNodeGroupInfo); return this; } /** ** Includes all client authentication information. *
* * @param clientAuthentication ** Includes all client authentication information. *
*/ public void setClientAuthentication(ClientAuthentication clientAuthentication) { this.clientAuthentication = clientAuthentication; } /** ** Includes all client authentication information. *
* * @return* Includes all client authentication information. *
*/ public ClientAuthentication getClientAuthentication() { return this.clientAuthentication; } /** ** Includes all client authentication information. *
* * @param clientAuthentication ** Includes all client authentication information. *
* @return Returns a reference to this object so that method calls can be chained together. */ public ClusterInfo withClientAuthentication(ClientAuthentication clientAuthentication) { setClientAuthentication(clientAuthentication); return this; } /** ** The Amazon Resource Name (ARN) that uniquely identifies the cluster. *
* * @param clusterArn ** The Amazon Resource Name (ARN) that uniquely identifies the cluster. *
*/ public void setClusterArn(String clusterArn) { this.clusterArn = clusterArn; } /** ** The Amazon Resource Name (ARN) that uniquely identifies the cluster. *
* * @return* The Amazon Resource Name (ARN) that uniquely identifies the cluster. *
*/ public String getClusterArn() { return this.clusterArn; } /** ** The Amazon Resource Name (ARN) that uniquely identifies the cluster. *
* * @param clusterArn ** The Amazon Resource Name (ARN) that uniquely identifies the cluster. *
* @return Returns a reference to this object so that method calls can be chained together. */ public ClusterInfo withClusterArn(String clusterArn) { setClusterArn(clusterArn); return this; } /** ** The name of the cluster. *
* * @param clusterName ** The name of the cluster. *
*/ public void setClusterName(String clusterName) { this.clusterName = clusterName; } /** ** The name of the cluster. *
* * @return* The name of the cluster. *
*/ public String getClusterName() { return this.clusterName; } /** ** The name of the cluster. *
* * @param clusterName ** The name of the cluster. *
* @return Returns a reference to this object so that method calls can be chained together. */ public ClusterInfo withClusterName(String clusterName) { setClusterName(clusterName); return this; } /** ** The time when the cluster was created. *
* * @param creationTime ** The time when the cluster was created. *
*/ public void setCreationTime(java.util.Date creationTime) { this.creationTime = creationTime; } /** ** The time when the cluster was created. *
* * @return* The time when the cluster was created. *
*/ public java.util.Date getCreationTime() { return this.creationTime; } /** ** The time when the cluster was created. *
* * @param creationTime ** The time when the cluster was created. *
* @return Returns a reference to this object so that method calls can be chained together. */ public ClusterInfo withCreationTime(java.util.Date creationTime) { setCreationTime(creationTime); return this; } /** ** Information about the version of software currently deployed on the Apache Kafka brokers in the cluster. *
* * @param currentBrokerSoftwareInfo ** Information about the version of software currently deployed on the Apache Kafka brokers in the cluster. *
*/ public void setCurrentBrokerSoftwareInfo(BrokerSoftwareInfo currentBrokerSoftwareInfo) { this.currentBrokerSoftwareInfo = currentBrokerSoftwareInfo; } /** ** Information about the version of software currently deployed on the Apache Kafka brokers in the cluster. *
* * @return* Information about the version of software currently deployed on the Apache Kafka brokers in the cluster. *
*/ public BrokerSoftwareInfo getCurrentBrokerSoftwareInfo() { return this.currentBrokerSoftwareInfo; } /** ** Information about the version of software currently deployed on the Apache Kafka brokers in the cluster. *
* * @param currentBrokerSoftwareInfo ** Information about the version of software currently deployed on the Apache Kafka brokers in the cluster. *
* @return Returns a reference to this object so that method calls can be chained together. */ public ClusterInfo withCurrentBrokerSoftwareInfo(BrokerSoftwareInfo currentBrokerSoftwareInfo) { setCurrentBrokerSoftwareInfo(currentBrokerSoftwareInfo); return this; } /** ** The current version of the MSK cluster. *
* * @param currentVersion ** The current version of the MSK cluster. *
*/ public void setCurrentVersion(String currentVersion) { this.currentVersion = currentVersion; } /** ** The current version of the MSK cluster. *
* * @return* The current version of the MSK cluster. *
*/ public String getCurrentVersion() { return this.currentVersion; } /** ** The current version of the MSK cluster. *
* * @param currentVersion ** The current version of the MSK cluster. *
* @return Returns a reference to this object so that method calls can be chained together. */ public ClusterInfo withCurrentVersion(String currentVersion) { setCurrentVersion(currentVersion); return this; } /** ** Includes all encryption-related information. *
* * @param encryptionInfo ** Includes all encryption-related information. *
*/ public void setEncryptionInfo(EncryptionInfo encryptionInfo) { this.encryptionInfo = encryptionInfo; } /** ** Includes all encryption-related information. *
* * @return* Includes all encryption-related information. *
*/ public EncryptionInfo getEncryptionInfo() { return this.encryptionInfo; } /** ** Includes all encryption-related information. *
* * @param encryptionInfo ** Includes all encryption-related information. *
* @return Returns a reference to this object so that method calls can be chained together. */ public ClusterInfo withEncryptionInfo(EncryptionInfo encryptionInfo) { setEncryptionInfo(encryptionInfo); return this; } /** ** Specifies which metrics are gathered for the MSK cluster. This property has the following possible values: * DEFAULT, PER_BROKER, PER_TOPIC_PER_BROKER, and PER_TOPIC_PER_PARTITION. For a list of the metrics associated with * each of these levels of monitoring, see Monitoring. *
* * @param enhancedMonitoring ** Specifies which metrics are gathered for the MSK cluster. This property has the following possible values: * DEFAULT, PER_BROKER, PER_TOPIC_PER_BROKER, and PER_TOPIC_PER_PARTITION. For a list of the metrics * associated with each of these levels of monitoring, see Monitoring. *
* @see EnhancedMonitoring */ public void setEnhancedMonitoring(String enhancedMonitoring) { this.enhancedMonitoring = enhancedMonitoring; } /** ** Specifies which metrics are gathered for the MSK cluster. This property has the following possible values: * DEFAULT, PER_BROKER, PER_TOPIC_PER_BROKER, and PER_TOPIC_PER_PARTITION. For a list of the metrics associated with * each of these levels of monitoring, see Monitoring. *
* * @return* Specifies which metrics are gathered for the MSK cluster. This property has the following possible * values: DEFAULT, PER_BROKER, PER_TOPIC_PER_BROKER, and PER_TOPIC_PER_PARTITION. For a list of the metrics * associated with each of these levels of monitoring, see Monitoring. *
* @see EnhancedMonitoring */ public String getEnhancedMonitoring() { return this.enhancedMonitoring; } /** ** Specifies which metrics are gathered for the MSK cluster. This property has the following possible values: * DEFAULT, PER_BROKER, PER_TOPIC_PER_BROKER, and PER_TOPIC_PER_PARTITION. For a list of the metrics associated with * each of these levels of monitoring, see Monitoring. *
* * @param enhancedMonitoring ** Specifies which metrics are gathered for the MSK cluster. This property has the following possible values: * DEFAULT, PER_BROKER, PER_TOPIC_PER_BROKER, and PER_TOPIC_PER_PARTITION. For a list of the metrics * associated with each of these levels of monitoring, see Monitoring. *
* @return Returns a reference to this object so that method calls can be chained together. * @see EnhancedMonitoring */ public ClusterInfo withEnhancedMonitoring(String enhancedMonitoring) { setEnhancedMonitoring(enhancedMonitoring); return this; } /** ** Specifies which metrics are gathered for the MSK cluster. This property has the following possible values: * DEFAULT, PER_BROKER, PER_TOPIC_PER_BROKER, and PER_TOPIC_PER_PARTITION. For a list of the metrics associated with * each of these levels of monitoring, see Monitoring. *
* * @param enhancedMonitoring ** Specifies which metrics are gathered for the MSK cluster. This property has the following possible values: * DEFAULT, PER_BROKER, PER_TOPIC_PER_BROKER, and PER_TOPIC_PER_PARTITION. For a list of the metrics * associated with each of these levels of monitoring, see Monitoring. *
* @return Returns a reference to this object so that method calls can be chained together. * @see EnhancedMonitoring */ public ClusterInfo withEnhancedMonitoring(EnhancedMonitoring enhancedMonitoring) { this.enhancedMonitoring = enhancedMonitoring.toString(); return this; } /** ** Settings for open monitoring using Prometheus. *
* * @param openMonitoring ** Settings for open monitoring using Prometheus. *
*/ public void setOpenMonitoring(OpenMonitoring openMonitoring) { this.openMonitoring = openMonitoring; } /** ** Settings for open monitoring using Prometheus. *
* * @return* Settings for open monitoring using Prometheus. *
*/ public OpenMonitoring getOpenMonitoring() { return this.openMonitoring; } /** ** Settings for open monitoring using Prometheus. *
* * @param openMonitoring ** Settings for open monitoring using Prometheus. *
* @return Returns a reference to this object so that method calls can be chained together. */ public ClusterInfo withOpenMonitoring(OpenMonitoring openMonitoring) { setOpenMonitoring(openMonitoring); return this; } /** * @param loggingInfo */ public void setLoggingInfo(LoggingInfo loggingInfo) { this.loggingInfo = loggingInfo; } /** * @return */ public LoggingInfo getLoggingInfo() { return this.loggingInfo; } /** * @param loggingInfo * @return Returns a reference to this object so that method calls can be chained together. */ public ClusterInfo withLoggingInfo(LoggingInfo loggingInfo) { setLoggingInfo(loggingInfo); return this; } /** ** The number of broker nodes in the cluster. *
* * @param numberOfBrokerNodes ** The number of broker nodes in the cluster. *
*/ public void setNumberOfBrokerNodes(Integer numberOfBrokerNodes) { this.numberOfBrokerNodes = numberOfBrokerNodes; } /** ** The number of broker nodes in the cluster. *
* * @return* The number of broker nodes in the cluster. *
*/ public Integer getNumberOfBrokerNodes() { return this.numberOfBrokerNodes; } /** ** The number of broker nodes in the cluster. *
* * @param numberOfBrokerNodes ** The number of broker nodes in the cluster. *
* @return Returns a reference to this object so that method calls can be chained together. */ public ClusterInfo withNumberOfBrokerNodes(Integer numberOfBrokerNodes) { setNumberOfBrokerNodes(numberOfBrokerNodes); return this; } /** ** The state of the cluster. The possible states are ACTIVE, CREATING, DELETING, FAILED, HEALING, MAINTENANCE, * REBOOTING_BROKER, and UPDATING. *
* * @param state ** The state of the cluster. The possible states are ACTIVE, CREATING, DELETING, FAILED, HEALING, * MAINTENANCE, REBOOTING_BROKER, and UPDATING. *
* @see ClusterState */ public void setState(String state) { this.state = state; } /** ** The state of the cluster. The possible states are ACTIVE, CREATING, DELETING, FAILED, HEALING, MAINTENANCE, * REBOOTING_BROKER, and UPDATING. *
* * @return* The state of the cluster. The possible states are ACTIVE, CREATING, DELETING, FAILED, HEALING, * MAINTENANCE, REBOOTING_BROKER, and UPDATING. *
* @see ClusterState */ public String getState() { return this.state; } /** ** The state of the cluster. The possible states are ACTIVE, CREATING, DELETING, FAILED, HEALING, MAINTENANCE, * REBOOTING_BROKER, and UPDATING. *
* * @param state ** The state of the cluster. The possible states are ACTIVE, CREATING, DELETING, FAILED, HEALING, * MAINTENANCE, REBOOTING_BROKER, and UPDATING. *
* @return Returns a reference to this object so that method calls can be chained together. * @see ClusterState */ public ClusterInfo withState(String state) { setState(state); return this; } /** ** The state of the cluster. The possible states are ACTIVE, CREATING, DELETING, FAILED, HEALING, MAINTENANCE, * REBOOTING_BROKER, and UPDATING. *
* * @param state ** The state of the cluster. The possible states are ACTIVE, CREATING, DELETING, FAILED, HEALING, * MAINTENANCE, REBOOTING_BROKER, and UPDATING. *
* @return Returns a reference to this object so that method calls can be chained together. * @see ClusterState */ public ClusterInfo withState(ClusterState state) { this.state = state.toString(); return this; } /** * @param stateInfo */ public void setStateInfo(StateInfo stateInfo) { this.stateInfo = stateInfo; } /** * @return */ public StateInfo getStateInfo() { return this.stateInfo; } /** * @param stateInfo * @return Returns a reference to this object so that method calls can be chained together. */ public ClusterInfo withStateInfo(StateInfo stateInfo) { setStateInfo(stateInfo); return this; } /** ** Tags attached to the cluster. *
* * @return* Tags attached to the cluster. *
*/ public java.util.Map* Tags attached to the cluster. *
* * @param tags ** Tags attached to the cluster. *
*/ public void setTags(java.util.Map* Tags attached to the cluster. *
* * @param tags ** Tags attached to the cluster. *
* @return Returns a reference to this object so that method calls can be chained together. */ public ClusterInfo withTags(java.util.Map* The connection string to use to connect to the Apache ZooKeeper cluster. *
* * @param zookeeperConnectString ** The connection string to use to connect to the Apache ZooKeeper cluster. *
*/ public void setZookeeperConnectString(String zookeeperConnectString) { this.zookeeperConnectString = zookeeperConnectString; } /** ** The connection string to use to connect to the Apache ZooKeeper cluster. *
* * @return* The connection string to use to connect to the Apache ZooKeeper cluster. *
*/ public String getZookeeperConnectString() { return this.zookeeperConnectString; } /** ** The connection string to use to connect to the Apache ZooKeeper cluster. *
* * @param zookeeperConnectString ** The connection string to use to connect to the Apache ZooKeeper cluster. *
* @return Returns a reference to this object so that method calls can be chained together. */ public ClusterInfo withZookeeperConnectString(String zookeeperConnectString) { setZookeeperConnectString(zookeeperConnectString); return this; } /** ** The connection string to use to connect to zookeeper cluster on Tls port. *
* * @param zookeeperConnectStringTls ** The connection string to use to connect to zookeeper cluster on Tls port. *
*/ public void setZookeeperConnectStringTls(String zookeeperConnectStringTls) { this.zookeeperConnectStringTls = zookeeperConnectStringTls; } /** ** The connection string to use to connect to zookeeper cluster on Tls port. *
* * @return* The connection string to use to connect to zookeeper cluster on Tls port. *
*/ public String getZookeeperConnectStringTls() { return this.zookeeperConnectStringTls; } /** ** The connection string to use to connect to zookeeper cluster on Tls port. *
* * @param zookeeperConnectStringTls ** The connection string to use to connect to zookeeper cluster on Tls port. *
* @return Returns a reference to this object so that method calls can be chained together. */ public ClusterInfo withZookeeperConnectStringTls(String zookeeperConnectStringTls) { setZookeeperConnectStringTls(zookeeperConnectStringTls); return this; } /** ** This controls storage mode for supported storage tiers. *
* * @param storageMode ** This controls storage mode for supported storage tiers. *
* @see StorageMode */ public void setStorageMode(String storageMode) { this.storageMode = storageMode; } /** ** This controls storage mode for supported storage tiers. *
* * @return* This controls storage mode for supported storage tiers. *
* @see StorageMode */ public String getStorageMode() { return this.storageMode; } /** ** This controls storage mode for supported storage tiers. *
* * @param storageMode ** This controls storage mode for supported storage tiers. *
* @return Returns a reference to this object so that method calls can be chained together. * @see StorageMode */ public ClusterInfo withStorageMode(String storageMode) { setStorageMode(storageMode); return this; } /** ** This controls storage mode for supported storage tiers. *
* * @param storageMode ** This controls storage mode for supported storage tiers. *
* @return Returns a reference to this object so that method calls can be chained together. * @see StorageMode */ public ClusterInfo withStorageMode(StorageMode storageMode) { this.storageMode = storageMode.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 (getActiveOperationArn() != null) sb.append("ActiveOperationArn: ").append(getActiveOperationArn()).append(","); if (getBrokerNodeGroupInfo() != null) sb.append("BrokerNodeGroupInfo: ").append(getBrokerNodeGroupInfo()).append(","); if (getClientAuthentication() != null) sb.append("ClientAuthentication: ").append(getClientAuthentication()).append(","); if (getClusterArn() != null) sb.append("ClusterArn: ").append(getClusterArn()).append(","); if (getClusterName() != null) sb.append("ClusterName: ").append(getClusterName()).append(","); if (getCreationTime() != null) sb.append("CreationTime: ").append(getCreationTime()).append(","); if (getCurrentBrokerSoftwareInfo() != null) sb.append("CurrentBrokerSoftwareInfo: ").append(getCurrentBrokerSoftwareInfo()).append(","); if (getCurrentVersion() != null) sb.append("CurrentVersion: ").append(getCurrentVersion()).append(","); if (getEncryptionInfo() != null) sb.append("EncryptionInfo: ").append(getEncryptionInfo()).append(","); if (getEnhancedMonitoring() != null) sb.append("EnhancedMonitoring: ").append(getEnhancedMonitoring()).append(","); if (getOpenMonitoring() != null) sb.append("OpenMonitoring: ").append(getOpenMonitoring()).append(","); if (getLoggingInfo() != null) sb.append("LoggingInfo: ").append(getLoggingInfo()).append(","); if (getNumberOfBrokerNodes() != null) sb.append("NumberOfBrokerNodes: ").append(getNumberOfBrokerNodes()).append(","); if (getState() != null) sb.append("State: ").append(getState()).append(","); if (getStateInfo() != null) sb.append("StateInfo: ").append(getStateInfo()).append(","); if (getTags() != null) sb.append("Tags: ").append(getTags()).append(","); if (getZookeeperConnectString() != null) sb.append("ZookeeperConnectString: ").append(getZookeeperConnectString()).append(","); if (getZookeeperConnectStringTls() != null) sb.append("ZookeeperConnectStringTls: ").append(getZookeeperConnectStringTls()).append(","); if (getStorageMode() != null) sb.append("StorageMode: ").append(getStorageMode()); sb.append("}"); return sb.toString(); } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (obj instanceof ClusterInfo == false) return false; ClusterInfo other = (ClusterInfo) obj; if (other.getActiveOperationArn() == null ^ this.getActiveOperationArn() == null) return false; if (other.getActiveOperationArn() != null && other.getActiveOperationArn().equals(this.getActiveOperationArn()) == false) return false; if (other.getBrokerNodeGroupInfo() == null ^ this.getBrokerNodeGroupInfo() == null) return false; if (other.getBrokerNodeGroupInfo() != null && other.getBrokerNodeGroupInfo().equals(this.getBrokerNodeGroupInfo()) == false) return false; if (other.getClientAuthentication() == null ^ this.getClientAuthentication() == null) return false; if (other.getClientAuthentication() != null && other.getClientAuthentication().equals(this.getClientAuthentication()) == false) return false; if (other.getClusterArn() == null ^ this.getClusterArn() == null) return false; if (other.getClusterArn() != null && other.getClusterArn().equals(this.getClusterArn()) == false) return false; if (other.getClusterName() == null ^ this.getClusterName() == null) return false; if (other.getClusterName() != null && other.getClusterName().equals(this.getClusterName()) == false) return false; if (other.getCreationTime() == null ^ this.getCreationTime() == null) return false; if (other.getCreationTime() != null && other.getCreationTime().equals(this.getCreationTime()) == false) return false; if (other.getCurrentBrokerSoftwareInfo() == null ^ this.getCurrentBrokerSoftwareInfo() == null) return false; if (other.getCurrentBrokerSoftwareInfo() != null && other.getCurrentBrokerSoftwareInfo().equals(this.getCurrentBrokerSoftwareInfo()) == false) return false; if (other.getCurrentVersion() == null ^ this.getCurrentVersion() == null) return false; if (other.getCurrentVersion() != null && other.getCurrentVersion().equals(this.getCurrentVersion()) == false) return false; if (other.getEncryptionInfo() == null ^ this.getEncryptionInfo() == null) return false; if (other.getEncryptionInfo() != null && other.getEncryptionInfo().equals(this.getEncryptionInfo()) == false) return false; if (other.getEnhancedMonitoring() == null ^ this.getEnhancedMonitoring() == null) return false; if (other.getEnhancedMonitoring() != null && other.getEnhancedMonitoring().equals(this.getEnhancedMonitoring()) == false) return false; if (other.getOpenMonitoring() == null ^ this.getOpenMonitoring() == null) return false; if (other.getOpenMonitoring() != null && other.getOpenMonitoring().equals(this.getOpenMonitoring()) == false) return false; if (other.getLoggingInfo() == null ^ this.getLoggingInfo() == null) return false; if (other.getLoggingInfo() != null && other.getLoggingInfo().equals(this.getLoggingInfo()) == false) return false; if (other.getNumberOfBrokerNodes() == null ^ this.getNumberOfBrokerNodes() == null) return false; if (other.getNumberOfBrokerNodes() != null && other.getNumberOfBrokerNodes().equals(this.getNumberOfBrokerNodes()) == false) return false; if (other.getState() == null ^ this.getState() == null) return false; if (other.getState() != null && other.getState().equals(this.getState()) == false) return false; if (other.getStateInfo() == null ^ this.getStateInfo() == null) return false; if (other.getStateInfo() != null && other.getStateInfo().equals(this.getStateInfo()) == false) return false; if (other.getTags() == null ^ this.getTags() == null) return false; if (other.getTags() != null && other.getTags().equals(this.getTags()) == false) return false; if (other.getZookeeperConnectString() == null ^ this.getZookeeperConnectString() == null) return false; if (other.getZookeeperConnectString() != null && other.getZookeeperConnectString().equals(this.getZookeeperConnectString()) == false) return false; if (other.getZookeeperConnectStringTls() == null ^ this.getZookeeperConnectStringTls() == null) return false; if (other.getZookeeperConnectStringTls() != null && other.getZookeeperConnectStringTls().equals(this.getZookeeperConnectStringTls()) == false) return false; if (other.getStorageMode() == null ^ this.getStorageMode() == null) return false; if (other.getStorageMode() != null && other.getStorageMode().equals(this.getStorageMode()) == false) return false; return true; } @Override public int hashCode() { final int prime = 31; int hashCode = 1; hashCode = prime * hashCode + ((getActiveOperationArn() == null) ? 0 : getActiveOperationArn().hashCode()); hashCode = prime * hashCode + ((getBrokerNodeGroupInfo() == null) ? 0 : getBrokerNodeGroupInfo().hashCode()); hashCode = prime * hashCode + ((getClientAuthentication() == null) ? 0 : getClientAuthentication().hashCode()); hashCode = prime * hashCode + ((getClusterArn() == null) ? 0 : getClusterArn().hashCode()); hashCode = prime * hashCode + ((getClusterName() == null) ? 0 : getClusterName().hashCode()); hashCode = prime * hashCode + ((getCreationTime() == null) ? 0 : getCreationTime().hashCode()); hashCode = prime * hashCode + ((getCurrentBrokerSoftwareInfo() == null) ? 0 : getCurrentBrokerSoftwareInfo().hashCode()); hashCode = prime * hashCode + ((getCurrentVersion() == null) ? 0 : getCurrentVersion().hashCode()); hashCode = prime * hashCode + ((getEncryptionInfo() == null) ? 0 : getEncryptionInfo().hashCode()); hashCode = prime * hashCode + ((getEnhancedMonitoring() == null) ? 0 : getEnhancedMonitoring().hashCode()); hashCode = prime * hashCode + ((getOpenMonitoring() == null) ? 0 : getOpenMonitoring().hashCode()); hashCode = prime * hashCode + ((getLoggingInfo() == null) ? 0 : getLoggingInfo().hashCode()); hashCode = prime * hashCode + ((getNumberOfBrokerNodes() == null) ? 0 : getNumberOfBrokerNodes().hashCode()); hashCode = prime * hashCode + ((getState() == null) ? 0 : getState().hashCode()); hashCode = prime * hashCode + ((getStateInfo() == null) ? 0 : getStateInfo().hashCode()); hashCode = prime * hashCode + ((getTags() == null) ? 0 : getTags().hashCode()); hashCode = prime * hashCode + ((getZookeeperConnectString() == null) ? 0 : getZookeeperConnectString().hashCode()); hashCode = prime * hashCode + ((getZookeeperConnectStringTls() == null) ? 0 : getZookeeperConnectStringTls().hashCode()); hashCode = prime * hashCode + ((getStorageMode() == null) ? 0 : getStorageMode().hashCode()); return hashCode; } @Override public ClusterInfo clone() { try { return (ClusterInfo) 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.kafka.model.transform.ClusterInfoMarshaller.getInstance().marshall(this, protocolMarshaller); } }