/// <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 (JasperCompilerTargetVM != null)
         {
             hashCode = hashCode * 59 + JasperCompilerTargetVM.GetHashCode();
         }
         if (JasperCompilerSourceVM != null)
         {
             hashCode = hashCode * 59 + JasperCompilerSourceVM.GetHashCode();
         }
         if (JasperClassdebuginfo != null)
         {
             hashCode = hashCode * 59 + JasperClassdebuginfo.GetHashCode();
         }
         if (JasperEnablePooling != null)
         {
             hashCode = hashCode * 59 + JasperEnablePooling.GetHashCode();
         }
         if (JasperIeClassId != null)
         {
             hashCode = hashCode * 59 + JasperIeClassId.GetHashCode();
         }
         if (JasperGenStringAsCharArray != null)
         {
             hashCode = hashCode * 59 + JasperGenStringAsCharArray.GetHashCode();
         }
         if (JasperKeepgenerated != null)
         {
             hashCode = hashCode * 59 + JasperKeepgenerated.GetHashCode();
         }
         if (JasperMappedfile != null)
         {
             hashCode = hashCode * 59 + JasperMappedfile.GetHashCode();
         }
         if (JasperTrimSpaces != null)
         {
             hashCode = hashCode * 59 + JasperTrimSpaces.GetHashCode();
         }
         if (JasperDisplaySourceFragments != null)
         {
             hashCode = hashCode * 59 + JasperDisplaySourceFragments.GetHashCode();
         }
         if (DefaultIsSession != null)
         {
             hashCode = hashCode * 59 + DefaultIsSession.GetHashCode();
         }
         return(hashCode);
     }
 }
        /// <summary>
        /// Returns true if OrgApacheSlingScriptingJspJspScriptEngineFactoryProperties instances are equal
        /// </summary>
        /// <param name="other">Instance of OrgApacheSlingScriptingJspJspScriptEngineFactoryProperties to be compared</param>
        /// <returns>Boolean</returns>
        public bool Equals(OrgApacheSlingScriptingJspJspScriptEngineFactoryProperties other)
        {
            if (other is null)
            {
                return(false);
            }
            if (ReferenceEquals(this, other))
            {
                return(true);
            }

            return
                ((
                     JasperCompilerTargetVM == other.JasperCompilerTargetVM ||
                     JasperCompilerTargetVM != null &&
                     JasperCompilerTargetVM.Equals(other.JasperCompilerTargetVM)
                     ) &&
                 (
                     JasperCompilerSourceVM == other.JasperCompilerSourceVM ||
                     JasperCompilerSourceVM != null &&
                     JasperCompilerSourceVM.Equals(other.JasperCompilerSourceVM)
                 ) &&
                 (
                     JasperClassdebuginfo == other.JasperClassdebuginfo ||
                     JasperClassdebuginfo != null &&
                     JasperClassdebuginfo.Equals(other.JasperClassdebuginfo)
                 ) &&
                 (
                     JasperEnablePooling == other.JasperEnablePooling ||
                     JasperEnablePooling != null &&
                     JasperEnablePooling.Equals(other.JasperEnablePooling)
                 ) &&
                 (
                     JasperIeClassId == other.JasperIeClassId ||
                     JasperIeClassId != null &&
                     JasperIeClassId.Equals(other.JasperIeClassId)
                 ) &&
                 (
                     JasperGenStringAsCharArray == other.JasperGenStringAsCharArray ||
                     JasperGenStringAsCharArray != null &&
                     JasperGenStringAsCharArray.Equals(other.JasperGenStringAsCharArray)
                 ) &&
                 (
                     JasperKeepgenerated == other.JasperKeepgenerated ||
                     JasperKeepgenerated != null &&
                     JasperKeepgenerated.Equals(other.JasperKeepgenerated)
                 ) &&
                 (
                     JasperMappedfile == other.JasperMappedfile ||
                     JasperMappedfile != null &&
                     JasperMappedfile.Equals(other.JasperMappedfile)
                 ) &&
                 (
                     JasperTrimSpaces == other.JasperTrimSpaces ||
                     JasperTrimSpaces != null &&
                     JasperTrimSpaces.Equals(other.JasperTrimSpaces)
                 ) &&
                 (
                     JasperDisplaySourceFragments == other.JasperDisplaySourceFragments ||
                     JasperDisplaySourceFragments != null &&
                     JasperDisplaySourceFragments.Equals(other.JasperDisplaySourceFragments)
                 ) &&
                 (
                     DefaultIsSession == other.DefaultIsSession ||
                     DefaultIsSession != null &&
                     DefaultIsSession.Equals(other.DefaultIsSession)
                 ));
        }