@Override
		public boolean equals(Object obj) {
			if (obj == this) {
				return true;
			}
			if (obj instanceof ConnectionId) {
				ConnectionId that = (ConnectionId) obj;
				return isEqual(this.address, that.address)
						&& this.maxIdleTime == that.maxIdleTime
						&& this.maxRetries == that.maxRetries
						&& this.pingInterval == that.pingInterval
						&& isEqual(this.protocol, that.protocol)
						&& this.rpcTimeout == that.rpcTimeout
						&& isEqual(this.serverPrincipal, that.serverPrincipal)
						&& this.tcpNoDelay == that.tcpNoDelay;
			}
			return false;
		}