package com.l7tech.external.assertions.gatewaymanagement.server;

import com.l7tech.gateway.api.ManagedObjectFactory;
import com.l7tech.gateway.api.SiteMinderConfigurationMO;
import com.l7tech.gateway.common.siteminder.SiteMinderConfiguration;
import com.l7tech.objectmodel.EntityHeader;
import com.l7tech.server.security.password.SecurePasswordManager;
import com.l7tech.server.security.rbac.RbacServices;
import com.l7tech.server.security.rbac.SecurityFilter;
import com.l7tech.server.security.rbac.SecurityZoneManager;
import com.l7tech.server.siteminder.SiteMinderConfigurationManager;
import java.util.HashMap;
import org.springframework.transaction.PlatformTransactionManager;

@ResourceFactory.ResourceType(type = SiteMinderConfigurationMO.class)
public class SiteMinderConfigurationResourceFactory
   extends SecurityZoneableEntityManagerResourceFactory<SiteMinderConfigurationMO, SiteMinderConfiguration, EntityHeader> {
   private SiteMinderConfigurationManager o;
   private SecurePasswordManager p;
   private static final String[] q;

   public SiteMinderConfigurationResourceFactory(
      RbacServices var1,
      SecurityFilter var2,
      PlatformTransactionManager var3,
      SiteMinderConfigurationManager var4,
      SecurePasswordManager var5,
      SecurityZoneManager var6
   ) {
      super(false, true, var1, var2, var3, var4, var6);
      this.o = var4;
      this.p = var5;
   }

   public SiteMinderConfigurationMO asResource(SiteMinderConfiguration var1) {
      SiteMinderConfigurationMO var2 = ManagedObjectFactory.createSiteMinderConfiguration();

      SiteMinderConfigurationMO var10000;
      String var10001;
      label26: {
         try {
            var2.setId(var1.getId());
            var2.setName(var1.getName());
            var2.setAddress(var1.getAddress());
            var2.setHostname(var1.getHostname());
            var2.setHostConfiguration(var1.getHostConfiguration());
            var2.setUserName(var1.getUserName());
            var10000 = var2;
            if (var1.getPasswordGoid() == null) {
               var10001 = null;
               break label26;
            }
         } catch (IllegalArgumentException var6) {
            throw a(var6);
         }

         var10001 = var1.getPasswordGoid().toString();
      }

      var10000.setPasswordId(var10001);
      var2.setIpCheck(var1.isIpcheck());
      var2.setUpdateSsoToken(var1.isUpdateSSOToken());
      var2.setEnabled(var1.isEnabled());
      var2.setNonClusterFailover(var1.isNonClusterFailover());
      var2.setFipsMode(var1.getFipsmode());
      var2.setClusterThreshold(var1.getClusterThreshold());
      HashMap var3 = new HashMap();

      for (String var5 : var1.getPropertyNames()) {
         var3.put(var5, (String)var1.getProperties().get(var5));
      }

      var2.setProperties(var3);
      this.doSecurityZoneAsResource(var2, var1);
      return var2;
   }

   public SiteMinderConfiguration fromResource(Object param1, boolean param2) throws ResourceFactory.InvalidResourceException {
      // $VF: Couldn't be decompiled
      // Please report this to the Vineflower issue tracker, at https://github.com/Vineflower/vineflower/issues with a copy of the class file (if you have the rights to distribute it!)
      // java.lang.RuntimeException: parsing failure!
      //   at org.jetbrains.java.decompiler.modules.decompiler.decompose.DomHelper.parseGraph(DomHelper.java:211)
      //   at org.jetbrains.java.decompiler.main.rels.MethodProcessor.codeToJava(MethodProcessor.java:174)
      //
      // Bytecode:
      // 000: aload 1
      // 001: instanceof com/l7tech/gateway/api/SiteMinderConfigurationMO
      // 004: ifne 01b
      // 007: new com/l7tech/external/assertions/gatewaymanagement/server/ResourceFactory$InvalidResourceException
      // 00a: dup
      // 00b: getstatic com/l7tech/external/assertions/gatewaymanagement/server/ResourceFactory$InvalidResourceException$ExceptionType.UNEXPECTED_TYPE Lcom/l7tech/external/assertions/gatewaymanagement/server/ResourceFactory$InvalidResourceException$ExceptionType;
      // 00e: getstatic com/l7tech/external/assertions/gatewaymanagement/server/SiteMinderConfigurationResourceFactory.q [Ljava/lang/String;
      // 011: bipush 0
      // 012: aaload
      // 013: invokespecial com/l7tech/external/assertions/gatewaymanagement/server/ResourceFactory$InvalidResourceException.<init> (Lcom/l7tech/external/assertions/gatewaymanagement/server/ResourceFactory$InvalidResourceException$ExceptionType;Ljava/lang/String;)V
      // 016: athrow
      // 017: invokestatic com/l7tech/external/assertions/gatewaymanagement/server/SiteMinderConfigurationResourceFactory.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 01a: athrow
      // 01b: aload 1
      // 01c: checkcast com/l7tech/gateway/api/SiteMinderConfigurationMO
      // 01f: astore 3
      // 020: new com/l7tech/gateway/common/siteminder/SiteMinderConfiguration
      // 023: dup
      // 024: invokespecial com/l7tech/gateway/common/siteminder/SiteMinderConfiguration.<init> ()V
      // 027: astore 4
      // 029: aload 4
      // 02b: aload 3
      // 02c: invokevirtual com/l7tech/gateway/api/SiteMinderConfigurationMO.getName ()Ljava/lang/String;
      // 02f: invokevirtual com/l7tech/gateway/common/siteminder/SiteMinderConfiguration.setName (Ljava/lang/String;)V
      // 032: aload 4
      // 034: aload 3
      // 035: invokevirtual com/l7tech/gateway/api/SiteMinderConfigurationMO.getAddress ()Ljava/lang/String;
      // 038: invokevirtual com/l7tech/gateway/common/siteminder/SiteMinderConfiguration.setAddress (Ljava/lang/String;)V
      // 03b: aload 4
      // 03d: aload 3
      // 03e: invokevirtual com/l7tech/gateway/api/SiteMinderConfigurationMO.getSecret ()Ljava/lang/String;
      // 041: invokevirtual com/l7tech/gateway/common/siteminder/SiteMinderConfiguration.setSecret (Ljava/lang/String;)V
      // 044: aload 4
      // 046: aload 3
      // 047: invokevirtual com/l7tech/gateway/api/SiteMinderConfigurationMO.getHostname ()Ljava/lang/String;
      // 04a: invokevirtual com/l7tech/gateway/common/siteminder/SiteMinderConfiguration.setHostname (Ljava/lang/String;)V
      // 04d: aload 4
      // 04f: aload 3
      // 050: invokevirtual com/l7tech/gateway/api/SiteMinderConfigurationMO.getHostConfiguration ()Ljava/lang/String;
      // 053: invokevirtual com/l7tech/gateway/common/siteminder/SiteMinderConfiguration.setHostConfiguration (Ljava/lang/String;)V
      // 056: aload 4
      // 058: aload 3
      // 059: invokevirtual com/l7tech/gateway/api/SiteMinderConfigurationMO.getUserName ()Ljava/lang/String;
      // 05c: invokevirtual com/l7tech/gateway/common/siteminder/SiteMinderConfiguration.setUserName (Ljava/lang/String;)V
      // 05f: aload 3
      // 060: invokevirtual com/l7tech/gateway/api/SiteMinderConfigurationMO.getPasswordId ()Ljava/lang/String;
      // 063: ifnull 0f4
      // 066: aload 3
      // 067: invokevirtual com/l7tech/gateway/api/SiteMinderConfigurationMO.getPasswordId ()Ljava/lang/String;
      // 06a: invokevirtual java/lang/String.isEmpty ()Z
      // 06d: ifne 0f4
      // 070: goto 077
      // 073: invokestatic com/l7tech/external/assertions/gatewaymanagement/server/SiteMinderConfigurationResourceFactory.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 076: athrow
      // 077: aload 0
      // 078: getfield com/l7tech/external/assertions/gatewaymanagement/server/SiteMinderConfigurationResourceFactory.p Lcom/l7tech/server/security/password/SecurePasswordManager;
      // 07b: getstatic com/l7tech/objectmodel/EntityType.SECURE_PASSWORD Lcom/l7tech/objectmodel/EntityType;
      // 07e: aload 3
      // 07f: invokevirtual com/l7tech/gateway/api/SiteMinderConfigurationMO.getPasswordId ()Ljava/lang/String;
      // 082: invokestatic com/l7tech/util/GoidUpgradeMapper.mapId (Lcom/l7tech/objectmodel/EntityType;Ljava/lang/String;)Lcom/l7tech/objectmodel/Goid;
      // 085: invokeinterface com/l7tech/server/security/password/SecurePasswordManager.findByPrimaryKey (Lcom/l7tech/objectmodel/Goid;)Lcom/l7tech/objectmodel/PersistentEntity; 2
      // 08a: checkcast com/l7tech/gateway/common/security/password/SecurePassword
      // 08d: astore 5
      // 08f: aload 5
      // 091: ifnonnull 0b3
      // 094: iload 2
      // 095: ifeq 0b3
      // 098: goto 09f
      // 09b: invokestatic com/l7tech/external/assertions/gatewaymanagement/server/SiteMinderConfigurationResourceFactory.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 09e: athrow
      // 09f: new com/l7tech/external/assertions/gatewaymanagement/server/ResourceFactory$InvalidResourceException
      // 0a2: dup
      // 0a3: getstatic com/l7tech/external/assertions/gatewaymanagement/server/ResourceFactory$InvalidResourceException$ExceptionType.INVALID_VALUES Lcom/l7tech/external/assertions/gatewaymanagement/server/ResourceFactory$InvalidResourceException$ExceptionType;
      // 0a6: getstatic com/l7tech/external/assertions/gatewaymanagement/server/SiteMinderConfigurationResourceFactory.q [Ljava/lang/String;
      // 0a9: bipush 2
      // 0aa: aaload
      // 0ab: invokespecial com/l7tech/external/assertions/gatewaymanagement/server/ResourceFactory$InvalidResourceException.<init> (Lcom/l7tech/external/assertions/gatewaymanagement/server/ResourceFactory$InvalidResourceException$ExceptionType;Ljava/lang/String;)V
      // 0ae: athrow
      // 0af: invokestatic com/l7tech/external/assertions/gatewaymanagement/server/SiteMinderConfigurationResourceFactory.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 0b2: athrow
      // 0b3: goto 0d0
      // 0b6: astore 5
      // 0b8: iload 2
      // 0b9: ifeq 0d0
      // 0bc: new com/l7tech/external/assertions/gatewaymanagement/server/ResourceFactory$InvalidResourceException
      // 0bf: dup
      // 0c0: getstatic com/l7tech/external/assertions/gatewaymanagement/server/ResourceFactory$InvalidResourceException$ExceptionType.INVALID_VALUES Lcom/l7tech/external/assertions/gatewaymanagement/server/ResourceFactory$InvalidResourceException$ExceptionType;
      // 0c3: getstatic com/l7tech/external/assertions/gatewaymanagement/server/SiteMinderConfigurationResourceFactory.q [Ljava/lang/String;
      // 0c6: bipush 1
      // 0c7: aaload
      // 0c8: invokespecial com/l7tech/external/assertions/gatewaymanagement/server/ResourceFactory$InvalidResourceException.<init> (Lcom/l7tech/external/assertions/gatewaymanagement/server/ResourceFactory$InvalidResourceException$ExceptionType;Ljava/lang/String;)V
      // 0cb: athrow
      // 0cc: invokestatic com/l7tech/external/assertions/gatewaymanagement/server/SiteMinderConfigurationResourceFactory.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 0cf: athrow
      // 0d0: aload 4
      // 0d2: getstatic com/l7tech/objectmodel/EntityType.SECURE_PASSWORD Lcom/l7tech/objectmodel/EntityType;
      // 0d5: aload 3
      // 0d6: invokevirtual com/l7tech/gateway/api/SiteMinderConfigurationMO.getPasswordId ()Ljava/lang/String;
      // 0d9: invokestatic com/l7tech/util/GoidUpgradeMapper.mapId (Lcom/l7tech/objectmodel/EntityType;Ljava/lang/String;)Lcom/l7tech/objectmodel/Goid;
      // 0dc: invokevirtual com/l7tech/gateway/common/siteminder/SiteMinderConfiguration.setPasswordGoid (Lcom/l7tech/objectmodel/Goid;)V
      // 0df: goto 0f4
      // 0e2: astore 5
      // 0e4: new com/l7tech/external/assertions/gatewaymanagement/server/ResourceFactory$InvalidResourceException
      // 0e7: dup
      // 0e8: getstatic com/l7tech/external/assertions/gatewaymanagement/server/ResourceFactory$InvalidResourceException$ExceptionType.INVALID_VALUES Lcom/l7tech/external/assertions/gatewaymanagement/server/ResourceFactory$InvalidResourceException$ExceptionType;
      // 0eb: getstatic com/l7tech/external/assertions/gatewaymanagement/server/SiteMinderConfigurationResourceFactory.q [Ljava/lang/String;
      // 0ee: bipush 1
      // 0ef: aaload
      // 0f0: invokespecial com/l7tech/external/assertions/gatewaymanagement/server/ResourceFactory$InvalidResourceException.<init> (Lcom/l7tech/external/assertions/gatewaymanagement/server/ResourceFactory$InvalidResourceException$ExceptionType;Ljava/lang/String;)V
      // 0f3: athrow
      // 0f4: aload 4
      // 0f6: aload 3
      // 0f7: invokevirtual com/l7tech/gateway/api/SiteMinderConfigurationMO.getIpCheck ()Z
      // 0fa: invokevirtual com/l7tech/gateway/common/siteminder/SiteMinderConfiguration.setIpcheck (Z)V
      // 0fd: aload 4
      // 0ff: aload 3
      // 100: invokevirtual com/l7tech/gateway/api/SiteMinderConfigurationMO.getUpdateSsoToken ()Z
      // 103: invokevirtual com/l7tech/gateway/common/siteminder/SiteMinderConfiguration.setUpdateSSOToken (Z)V
      // 106: aload 4
      // 108: aload 3
      // 109: invokevirtual com/l7tech/gateway/api/SiteMinderConfigurationMO.getEnabled ()Z
      // 10c: invokevirtual com/l7tech/gateway/common/siteminder/SiteMinderConfiguration.setEnabled (Z)V
      // 10f: aload 4
      // 111: aload 3
      // 112: invokevirtual com/l7tech/gateway/api/SiteMinderConfigurationMO.getNonClusterFailover ()Z
      // 115: invokevirtual com/l7tech/gateway/common/siteminder/SiteMinderConfiguration.setNonClusterFailover (Z)V
      // 118: aload 4
      // 11a: aload 3
      // 11b: invokevirtual com/l7tech/gateway/api/SiteMinderConfigurationMO.getFipsMode ()I
      // 11e: invokevirtual com/l7tech/gateway/common/siteminder/SiteMinderConfiguration.setFipsmode (I)V
      // 121: aload 4
      // 123: aload 3
      // 124: invokevirtual com/l7tech/gateway/api/SiteMinderConfigurationMO.getClusterThreshold ()I
      // 127: invokevirtual com/l7tech/gateway/common/siteminder/SiteMinderConfiguration.setClusterThreshold (I)V
      // 12a: new java/util/HashMap
      // 12d: dup
      // 12e: invokespecial java/util/HashMap.<init> ()V
      // 131: astore 5
      // 133: aload 3
      // 134: invokevirtual com/l7tech/gateway/api/SiteMinderConfigurationMO.getProperties ()Ljava/util/Map;
      // 137: ifnull 17f
      // 13a: aload 3
      // 13b: invokevirtual com/l7tech/gateway/api/SiteMinderConfigurationMO.getProperties ()Ljava/util/Map;
      // 13e: invokeinterface java/util/Map.entrySet ()Ljava/util/Set; 1
      // 143: invokeinterface java/util/Set.iterator ()Ljava/util/Iterator; 1
      // 148: astore 6
      // 14a: aload 6
      // 14c: invokeinterface java/util/Iterator.hasNext ()Z 1
      // 151: ifeq 17f
      // 154: aload 6
      // 156: invokeinterface java/util/Iterator.next ()Ljava/lang/Object; 1
      // 15b: checkcast java/util/Map$Entry
      // 15e: astore 7
      // 160: aload 5
      // 162: aload 7
      // 164: invokeinterface java/util/Map$Entry.getKey ()Ljava/lang/Object; 1
      // 169: checkcast java/lang/String
      // 16c: aload 7
      // 16e: invokeinterface java/util/Map$Entry.getValue ()Ljava/lang/Object; 1
      // 173: checkcast java/lang/String
      // 176: invokeinterface java/util/Map.put (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; 3
      // 17b: pop
      // 17c: goto 14a
      // 17f: aload 4
      // 181: aload 5
      // 183: invokevirtual com/l7tech/gateway/common/siteminder/SiteMinderConfiguration.setProperties (Ljava/util/Map;)V
      // 186: aload 0
      // 187: aload 3
      // 188: aload 4
      // 18a: iload 2
      // 18b: invokevirtual com/l7tech/external/assertions/gatewaymanagement/server/SiteMinderConfigurationResourceFactory.doSecurityZoneFromResource (Lcom/l7tech/gateway/api/SecurityZoneableObject;Lcom/l7tech/objectmodel/PersistentEntity;Z)V
      // 18e: aload 4
      // 190: areturn
      // try (65 -> 78): 78 com/l7tech/objectmodel/FindException
      // try (63 -> 67): 68 com/l7tech/objectmodel/FindException
      // try (20 -> 51): 52 com/l7tech/objectmodel/FindException
      // try (0 -> 11): 11 com/l7tech/objectmodel/FindException
      // try (54 -> 80): 81 com/l7tech/objectmodel/FindException
      // try (82 -> 92): 92 com/l7tech/objectmodel/FindException
      // try (54 -> 100): 101 java/lang/IllegalArgumentException
   }

   protected void updateEntity(SiteMinderConfiguration var1, SiteMinderConfiguration var2) throws ResourceFactory.InvalidResourceException {
      try {
         var1.setName(var2.getName());
         var1.setAddress(var2.getAddress());
         if (var2.getSecret() != null) {
            var1.setSecret(var2.getSecret());
         }
      } catch (ResourceFactory.InvalidResourceException var6) {
         throw a(var6);
      }

      var1.setHostname(var2.getHostname());
      var1.setHostConfiguration(var2.getHostConfiguration());
      var1.setUserName(var2.getUserName());
      var1.setPasswordGoid(var2.getPasswordGoid());
      var1.setIpcheck(var2.isIpcheck());
      var1.setUpdateSSOToken(var2.isUpdateSSOToken());
      var1.setEnabled(var2.isEnabled());
      var1.setNonClusterFailover(var2.isNonClusterFailover());
      var1.setFipsmode(var2.getFipsmode());
      var1.setClusterThreshold(var2.getClusterThreshold());
      var1.setSecurityZone(var2.getSecurityZone());
      HashMap var3 = new HashMap(var2.getProperties().size());

      for (String var5 : var2.getPropertyNames()) {
         var3.put(var5, (String)var2.getProperties().get(var5));
      }

      var1.setProperties(var3);
   }

   private static Exception a(Exception var0) {
      return var0;
   }

   static {
      String[] var5 = new String[3];
      int var3 = 0;
      String var2 = "T*\u0017S9x\u0017Ur$wz_\u001b_5\u000bSz_\u001bV<Jy4,\u0011^<\u0001_=y\u0000P&\u000eY4,X<\u0011W6e\u0016\u0011=\u0015\u0016/b\u0019_=\u0010Xz\u007f\u0017R'\u0015Sz|\u0013B!\u0010Y(hRC7\u0001S(i\u001cR7,X<\u0011W6e\u0016\u0011=\u0015\u0016/b\u0019_=\u0010Xz\u007f\u0017R'\u0015Sz|\u0013B!\u0010Y(hRC7\u0001S(i\u001cR7";
      int var4 = "T*\u0017S9x\u0017Ur$wz_\u001b_5\u000bSz_\u001bV<Jy4,\u0011^<\u0001_=y\u0000P&\u000eY4,X<\u0011W6e\u0016\u0011=\u0015\u0016/b\u0019_=\u0010Xz\u007f\u0017R'\u0015Sz|\u0013B!\u0010Y(hRC7\u0001S(i\u001cR7,X<\u0011W6e\u0016\u0011=\u0015\u0016/b\u0019_=\u0010Xz\u007f\u0017R'\u0015Sz|\u0013B!\u0010Y(hRC7\u0001S(i\u001cR7"
         .length();
      char var1 = '(';
      int var0 = -1;

      while (true) {
         String var10002 = d(81, a(var2.substring(++var0, var0 + var1)));
         byte var10001 = -1;
         var5[var3++] = var10002;
         if ((var0 += var1) >= var4) {
            q = var5;
            return;
         }

         var1 = var2.charAt(var0);
      }
   }

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

      return var10000;
   }

   private static String d(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 -> 96;
            case 1 -> 3;
            case 2 -> 54;
            case 3 -> 103;
            case 4 -> 11;
            case 5 -> 93;
            default -> 35;
         });
      }

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