/// <summary>
 /// Gets the hash code
 /// </summary>
 /// <returns>Hash code</returns>
 public override int GetHashCode()
 {
     unchecked // Overflow is fine, just wrap
     {
         var hashCode = 41;
         // Suitable nullity checks etc, of course :)
         if (DsLoglevel != null)
         {
             hashCode = hashCode * 59 + DsLoglevel.GetHashCode();
         }
         if (DsFactoryEnabled != null)
         {
             hashCode = hashCode * 59 + DsFactoryEnabled.GetHashCode();
         }
         if (DsDelayedKeepInstances != null)
         {
             hashCode = hashCode * 59 + DsDelayedKeepInstances.GetHashCode();
         }
         if (DsLockTimeoutMilliseconds != null)
         {
             hashCode = hashCode * 59 + DsLockTimeoutMilliseconds.GetHashCode();
         }
         if (DsStopTimeoutMilliseconds != null)
         {
             hashCode = hashCode * 59 + DsStopTimeoutMilliseconds.GetHashCode();
         }
         if (DsGlobalExtender != null)
         {
             hashCode = hashCode * 59 + DsGlobalExtender.GetHashCode();
         }
         return(hashCode);
     }
 }
        /// <summary>
        /// Returns true if OrgApacheFelixScrScrServiceProperties instances are equal
        /// </summary>
        /// <param name="other">Instance of OrgApacheFelixScrScrServiceProperties to be compared</param>
        /// <returns>Boolean</returns>
        public bool Equals(OrgApacheFelixScrScrServiceProperties other)
        {
            if (other is null)
            {
                return(false);
            }
            if (ReferenceEquals(this, other))
            {
                return(true);
            }

            return
                ((
                     DsLoglevel == other.DsLoglevel ||
                     DsLoglevel != null &&
                     DsLoglevel.Equals(other.DsLoglevel)
                     ) &&
                 (
                     DsFactoryEnabled == other.DsFactoryEnabled ||
                     DsFactoryEnabled != null &&
                     DsFactoryEnabled.Equals(other.DsFactoryEnabled)
                 ) &&
                 (
                     DsDelayedKeepInstances == other.DsDelayedKeepInstances ||
                     DsDelayedKeepInstances != null &&
                     DsDelayedKeepInstances.Equals(other.DsDelayedKeepInstances)
                 ) &&
                 (
                     DsLockTimeoutMilliseconds == other.DsLockTimeoutMilliseconds ||
                     DsLockTimeoutMilliseconds != null &&
                     DsLockTimeoutMilliseconds.Equals(other.DsLockTimeoutMilliseconds)
                 ) &&
                 (
                     DsStopTimeoutMilliseconds == other.DsStopTimeoutMilliseconds ||
                     DsStopTimeoutMilliseconds != null &&
                     DsStopTimeoutMilliseconds.Equals(other.DsStopTimeoutMilliseconds)
                 ) &&
                 (
                     DsGlobalExtender == other.DsGlobalExtender ||
                     DsGlobalExtender != null &&
                     DsGlobalExtender.Equals(other.DsGlobalExtender)
                 ));
        }