/// <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 (Disabled != null)
         {
             hashCode = hashCode * 59 + Disabled.GetHashCode();
         }
         if (Debug != null)
         {
             hashCode = hashCode * 59 + Debug.GetHashCode();
         }
         if (LocalIndexDir != null)
         {
             hashCode = hashCode * 59 + LocalIndexDir.GetHashCode();
         }
         if (EnableOpenIndexAsync != null)
         {
             hashCode = hashCode * 59 + EnableOpenIndexAsync.GetHashCode();
         }
         if (ThreadPoolSize != null)
         {
             hashCode = hashCode * 59 + ThreadPoolSize.GetHashCode();
         }
         if (PrefetchIndexFiles != null)
         {
             hashCode = hashCode * 59 + PrefetchIndexFiles.GetHashCode();
         }
         if (ExtractedTextCacheSizeInMB != null)
         {
             hashCode = hashCode * 59 + ExtractedTextCacheSizeInMB.GetHashCode();
         }
         if (ExtractedTextCacheExpiryInSecs != null)
         {
             hashCode = hashCode * 59 + ExtractedTextCacheExpiryInSecs.GetHashCode();
         }
         if (AlwaysUsePreExtractedCache != null)
         {
             hashCode = hashCode * 59 + AlwaysUsePreExtractedCache.GetHashCode();
         }
         if (BooleanClauseLimit != null)
         {
             hashCode = hashCode * 59 + BooleanClauseLimit.GetHashCode();
         }
         if (EnableHybridIndexing != null)
         {
             hashCode = hashCode * 59 + EnableHybridIndexing.GetHashCode();
         }
         if (HybridQueueSize != null)
         {
             hashCode = hashCode * 59 + HybridQueueSize.GetHashCode();
         }
         if (DisableStoredIndexDefinition != null)
         {
             hashCode = hashCode * 59 + DisableStoredIndexDefinition.GetHashCode();
         }
         if (DeletedBlobsCollectionEnabled != null)
         {
             hashCode = hashCode * 59 + DeletedBlobsCollectionEnabled.GetHashCode();
         }
         if (PropIndexCleanerIntervalInSecs != null)
         {
             hashCode = hashCode * 59 + PropIndexCleanerIntervalInSecs.GetHashCode();
         }
         if (EnableSingleBlobIndexFiles != null)
         {
             hashCode = hashCode * 59 + EnableSingleBlobIndexFiles.GetHashCode();
         }
         return(hashCode);
     }
 }
        /// <summary>
        /// Returns true if OrgApacheJackrabbitOakPluginsIndexLuceneLuceneIndexProviderServProperties instances are equal
        /// </summary>
        /// <param name="other">Instance of OrgApacheJackrabbitOakPluginsIndexLuceneLuceneIndexProviderServProperties to be compared</param>
        /// <returns>Boolean</returns>
        public bool Equals(OrgApacheJackrabbitOakPluginsIndexLuceneLuceneIndexProviderServProperties other)
        {
            if (other is null)
            {
                return(false);
            }
            if (ReferenceEquals(this, other))
            {
                return(true);
            }

            return
                ((
                     Disabled == other.Disabled ||
                     Disabled != null &&
                     Disabled.Equals(other.Disabled)
                     ) &&
                 (
                     Debug == other.Debug ||
                     Debug != null &&
                     Debug.Equals(other.Debug)
                 ) &&
                 (
                     LocalIndexDir == other.LocalIndexDir ||
                     LocalIndexDir != null &&
                     LocalIndexDir.Equals(other.LocalIndexDir)
                 ) &&
                 (
                     EnableOpenIndexAsync == other.EnableOpenIndexAsync ||
                     EnableOpenIndexAsync != null &&
                     EnableOpenIndexAsync.Equals(other.EnableOpenIndexAsync)
                 ) &&
                 (
                     ThreadPoolSize == other.ThreadPoolSize ||
                     ThreadPoolSize != null &&
                     ThreadPoolSize.Equals(other.ThreadPoolSize)
                 ) &&
                 (
                     PrefetchIndexFiles == other.PrefetchIndexFiles ||
                     PrefetchIndexFiles != null &&
                     PrefetchIndexFiles.Equals(other.PrefetchIndexFiles)
                 ) &&
                 (
                     ExtractedTextCacheSizeInMB == other.ExtractedTextCacheSizeInMB ||
                     ExtractedTextCacheSizeInMB != null &&
                     ExtractedTextCacheSizeInMB.Equals(other.ExtractedTextCacheSizeInMB)
                 ) &&
                 (
                     ExtractedTextCacheExpiryInSecs == other.ExtractedTextCacheExpiryInSecs ||
                     ExtractedTextCacheExpiryInSecs != null &&
                     ExtractedTextCacheExpiryInSecs.Equals(other.ExtractedTextCacheExpiryInSecs)
                 ) &&
                 (
                     AlwaysUsePreExtractedCache == other.AlwaysUsePreExtractedCache ||
                     AlwaysUsePreExtractedCache != null &&
                     AlwaysUsePreExtractedCache.Equals(other.AlwaysUsePreExtractedCache)
                 ) &&
                 (
                     BooleanClauseLimit == other.BooleanClauseLimit ||
                     BooleanClauseLimit != null &&
                     BooleanClauseLimit.Equals(other.BooleanClauseLimit)
                 ) &&
                 (
                     EnableHybridIndexing == other.EnableHybridIndexing ||
                     EnableHybridIndexing != null &&
                     EnableHybridIndexing.Equals(other.EnableHybridIndexing)
                 ) &&
                 (
                     HybridQueueSize == other.HybridQueueSize ||
                     HybridQueueSize != null &&
                     HybridQueueSize.Equals(other.HybridQueueSize)
                 ) &&
                 (
                     DisableStoredIndexDefinition == other.DisableStoredIndexDefinition ||
                     DisableStoredIndexDefinition != null &&
                     DisableStoredIndexDefinition.Equals(other.DisableStoredIndexDefinition)
                 ) &&
                 (
                     DeletedBlobsCollectionEnabled == other.DeletedBlobsCollectionEnabled ||
                     DeletedBlobsCollectionEnabled != null &&
                     DeletedBlobsCollectionEnabled.Equals(other.DeletedBlobsCollectionEnabled)
                 ) &&
                 (
                     PropIndexCleanerIntervalInSecs == other.PropIndexCleanerIntervalInSecs ||
                     PropIndexCleanerIntervalInSecs != null &&
                     PropIndexCleanerIntervalInSecs.Equals(other.PropIndexCleanerIntervalInSecs)
                 ) &&
                 (
                     EnableSingleBlobIndexFiles == other.EnableSingleBlobIndexFiles ||
                     EnableSingleBlobIndexFiles != null &&
                     EnableSingleBlobIndexFiles.Equals(other.EnableSingleBlobIndexFiles)
                 ));
        }