package com.l7tech.external.assertions.gatewaygraphql.server.resolver;

import com.l7tech.util.ResourceUtils;
import graphql.schema.GraphQLScalarType;
import graphql.schema.GraphQLScalarType.Builder;
import java.io.InputStream;
import java.util.function.Supplier;
import lombok.Generated;

public class FilePart {
   private String a;
   private String b;
   private String c;
   private Supplier<InputStream> d;
   public static final GraphQLScalarType SCALAR_TYPE;
   private static final String[] e;

   public void closeQuietly() {
      ResourceUtils.closeQuietly(this.d.get());
   }

   @Generated
   public String getName() {
      return this.a;
   }

   @Generated
   public String getFilename() {
      return this.b;
   }

   @Generated
   public String getContentType() {
      return this.c;
   }

   @Generated
   public Supplier<InputStream> getInputStreamSupplier() {
      return this.d;
   }

   @Generated
   public void setName(String var1) {
      this.a = var1;
   }

   @Generated
   public void setFilename(String var1) {
      this.b = var1;
   }

   @Generated
   public void setContentType(String var1) {
      this.c = var1;
   }

   @Generated
   public void setInputStreamSupplier(Supplier<InputStream> var1) {
      this.d = var1;
   }

   @Generated
   @Override
   public boolean equals(Object var1) {
      if (var1 == this) {
         return true;
      } else if (!(var1 instanceof FilePart var2)) {
         return false;
      } else {
         if (!var2.canEqual(this)) {
            return false;
         }

         String var3 = this.getName();
         String var4 = var2.getName();
         if (var3 == null ? var4 == null : var3.equals(var4)) {
            String var5 = this.getFilename();
            String var6 = var2.getFilename();
            if (var5 == null ? var6 == null : var5.equals(var6)) {
               String var7 = this.getContentType();
               String var8 = var2.getContentType();
               if (var7 == null ? var8 == null : var7.equals(var8)) {
                  Supplier var9 = this.getInputStreamSupplier();
                  Supplier var10 = var2.getInputStreamSupplier();
                  return var9 == null ? var10 == null : var9.equals(var10);
               } else {
                  return false;
               }
            } else {
               return false;
            }
         } else {
            return false;
         }
      }
   }

   @Generated
   protected boolean canEqual(Object var1) {
      return var1 instanceof FilePart;
   }

   @Generated
   @Override
   public int hashCode() {
      byte var1 = 59;
      int var2 = 1;
      String var3 = this.getName();
      var2 = var2 * 59 + (var3 == null ? 43 : var3.hashCode());
      String var4 = this.getFilename();
      var2 = var2 * 59 + (var4 == null ? 43 : var4.hashCode());
      String var5 = this.getContentType();
      var2 = var2 * 59 + (var5 == null ? 43 : var5.hashCode());
      Supplier var6 = this.getInputStreamSupplier();
      return var2 * 59 + (var6 == null ? 43 : var6.hashCode());
   }

   @Generated
   @Override
   public String toString() {
      String var10000 = this.getName();
      String var10001 = this.getFilename();
      String var1 = String.valueOf(this.getInputStreamSupplier());
      String var2 = this.getContentType();
      String var3 = var10001;
      String var4 = var10000;
      String[] var5 = e;
      return var5[0] + var4 + var5[2] + var3 + var5[3] + var2 + var5[4] + var1 + ")";
   }

   @Generated
   public FilePart(String var1, String var2, String var3, Supplier<InputStream> var4) {
      this.a = var1;
      this.b = var2;
      this.c = var3;
      this.d = var4;
   }

   @Generated
   public FilePart() {
   }

   static {
      String[] var5 = new String[6];
      int var3 = 0;
      String var2 = "{nj\u0001c.fI/h\u0005^*)\b{nj\u0001c.fI\u000b\u0011'`\r_*z\\jcY\u000e\u0011'e\u000b];qSsR\u001dC*)";
      int var4 = "{nj\u0001c.fI/h\u0005^*)\b{nj\u0001c.fI\u000b\u0011'`\r_*z\\jcY\u000e\u0011'e\u000b];qSsR\u001dC*)".length();
      char var1 = 14;
      int var7 = -1;

      label24:
      while (true) {
         byte var10000 = 125;
         String var10001 = var2.substring(++var7, var7 + var1);
         byte var10002 = -1;

         while (true) {
            String var9 = a(var10000, a(var10001));
            switch (var10002) {
               case 0:
                  var5[var3++] = var9;
                  if ((var7 += var1) >= var4) {
                     e = var5;
                     Builder var10 = GraphQLScalarType.newScalar();
                     String[] var8 = e;
                     SCALAR_TYPE = var10.name(var8[1]).description(var8[5]).coercing(new a()).build();
                     return;
                  }

                  var1 = var2.charAt(var7);
                  break;
               default:
                  var5[var3++] = var9;
                  if ((var7 += var1) < var4) {
                     var1 = var2.charAt(var7);
                     continue label24;
                  }

                  var2 = "xN\u0006c*S\t\u0007\u001a\u001dh;K.!\u001e\u001fa3C\u000fi.\u0012\u0007\u0003hzV\u001c&\u001aOd4@\u0012&\u0003\u000ey3I\u0013t\b\u001db7\u0006\u001ct\u0003\u001aa.O\r5\u001c\u001b-(C\f!\u000b\u001cy";
                  var4 = "xN\u0006c*S\t\u0007\u001a\u001dh;K.!\u001e\u001fa3C\u000fi.\u0012\u0007\u0003hzV\u001c&\u001aOd4@\u0012&\u0003\u000ey3I\u0013t\b\u001db7\u0006\u001ct\u0003\u001aa.O\r5\u001c\u001b-(C\f!\u000b\u001cy"
                     .length();
                  var1 = 22;
                  var7 = -1;
            }

            var10000 = 20;
            var10001 = var2.substring(++var7, var7 + var1);
            var10002 = 0;
         }
      }
   }

   private static char[] a(String var0) {
      char[] var10000 = var0.toCharArray();
      if (var10000.length < 2) {
         var10000[0] = (char)(var10000[0] ^ 105);
      }

      return var10000;
   }

   private static String a(int var0, char[] var1) {
      int var10003 = var1.length;
      int var10002 = var0;
      char[] var10001 = var1;
      int var10000 = var10003;

      for (int var2 = 0; var10000 > var2; var2++) {
         var10001[var2] = (char)(var10001[var2] ^ var10002 ^ switch (var2 % 7) {
            case 0 -> 64;
            case 1 -> 122;
            case 2 -> 123;
            case 3 -> 25;
            case 4 -> 78;
            case 5 -> 50;
            default -> 105;
         });
      }

      return new String(var10001).intern();
   }
}
