/// <summary>
        /// Returns true if OgcDataStreamInfo instances are equal
        /// </summary>
        /// <param name="other">Instance of OgcDataStreamInfo to be compared</param>
        /// <returns>Boolean</returns>
        public bool Equals(OgcDataStreamInfo other)
        {
            if (ReferenceEquals(null, other))
            {
                return(false);
            }
            if (ReferenceEquals(this, other))
            {
                return(true);
            }

            return
                ((
                     DataStreamId == other.DataStreamId ||
                     DataStreamId != null &&
                     DataStreamId.Equals(other.DataStreamId)
                     ) &&
                 (
                     MqttTopic == other.MqttTopic ||
                     MqttTopic != null &&
                     MqttTopic.Equals(other.MqttTopic)
                 ) &&
                 (
                     MqttServer == other.MqttServer ||
                     MqttServer != null &&
                     MqttServer.Equals(other.MqttServer)
                 ) &&
                 (
                     ExternalId == other.ExternalId ||
                     ExternalId != null &&
                     ExternalId.Equals(other.ExternalId)
                 ) &&
                 (
                     Metadata == other.Metadata ||
                     Metadata != null &&
                     Metadata.Equals(other.Metadata)
                 ) &&
                 (
                     SensorType == other.SensorType ||
                     SensorType != null &&
                     SensorType.Equals(other.SensorType)
                 ) &&
                 (
                     UnitOfMeasurement == other.UnitOfMeasurement ||
                     UnitOfMeasurement != null &&
                     UnitOfMeasurement.Equals(other.UnitOfMeasurement)
                 ) &&
                 (
                     fixedLatitude == other.fixedLatitude ||
                     fixedLatitude != null &&
                     fixedLatitude.Equals(other.fixedLatitude)
                 ) && (
                     fixedLongitude == other.fixedLongitude ||
                     fixedLongitude != null &&
                     fixedLongitude.Equals(other.fixedLongitude)
                     ));
        }