/// <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 (DavRoot != null)
         {
             hashCode = hashCode * 59 + DavRoot.GetHashCode();
         }
         if (DavCreateAbsoluteUri != null)
         {
             hashCode = hashCode * 59 + DavCreateAbsoluteUri.GetHashCode();
         }
         if (DavRealm != null)
         {
             hashCode = hashCode * 59 + DavRealm.GetHashCode();
         }
         if (CollectionTypes != null)
         {
             hashCode = hashCode * 59 + CollectionTypes.GetHashCode();
         }
         if (FilterPrefixes != null)
         {
             hashCode = hashCode * 59 + FilterPrefixes.GetHashCode();
         }
         if (FilterTypes != null)
         {
             hashCode = hashCode * 59 + FilterTypes.GetHashCode();
         }
         if (FilterUris != null)
         {
             hashCode = hashCode * 59 + FilterUris.GetHashCode();
         }
         if (TypeCollections != null)
         {
             hashCode = hashCode * 59 + TypeCollections.GetHashCode();
         }
         if (TypeNoncollections != null)
         {
             hashCode = hashCode * 59 + TypeNoncollections.GetHashCode();
         }
         if (TypeContent != null)
         {
             hashCode = hashCode * 59 + TypeContent.GetHashCode();
         }
         return(hashCode);
     }
 }
        /// <summary>
        /// Returns true if OrgApacheSlingJcrWebdavImplServletsSimpleWebDavServletProperties instances are equal
        /// </summary>
        /// <param name="other">Instance of OrgApacheSlingJcrWebdavImplServletsSimpleWebDavServletProperties to be compared</param>
        /// <returns>Boolean</returns>
        public bool Equals(OrgApacheSlingJcrWebdavImplServletsSimpleWebDavServletProperties other)
        {
            if (other is null)
            {
                return(false);
            }
            if (ReferenceEquals(this, other))
            {
                return(true);
            }

            return
                ((
                     DavRoot == other.DavRoot ||
                     DavRoot != null &&
                     DavRoot.Equals(other.DavRoot)
                     ) &&
                 (
                     DavCreateAbsoluteUri == other.DavCreateAbsoluteUri ||
                     DavCreateAbsoluteUri != null &&
                     DavCreateAbsoluteUri.Equals(other.DavCreateAbsoluteUri)
                 ) &&
                 (
                     DavRealm == other.DavRealm ||
                     DavRealm != null &&
                     DavRealm.Equals(other.DavRealm)
                 ) &&
                 (
                     CollectionTypes == other.CollectionTypes ||
                     CollectionTypes != null &&
                     CollectionTypes.Equals(other.CollectionTypes)
                 ) &&
                 (
                     FilterPrefixes == other.FilterPrefixes ||
                     FilterPrefixes != null &&
                     FilterPrefixes.Equals(other.FilterPrefixes)
                 ) &&
                 (
                     FilterTypes == other.FilterTypes ||
                     FilterTypes != null &&
                     FilterTypes.Equals(other.FilterTypes)
                 ) &&
                 (
                     FilterUris == other.FilterUris ||
                     FilterUris != null &&
                     FilterUris.Equals(other.FilterUris)
                 ) &&
                 (
                     TypeCollections == other.TypeCollections ||
                     TypeCollections != null &&
                     TypeCollections.Equals(other.TypeCollections)
                 ) &&
                 (
                     TypeNoncollections == other.TypeNoncollections ||
                     TypeNoncollections != null &&
                     TypeNoncollections.Equals(other.TypeNoncollections)
                 ) &&
                 (
                     TypeContent == other.TypeContent ||
                     TypeContent != null &&
                     TypeContent.Equals(other.TypeContent)
                 ));
        }