package com.l7tech.server.identity;

import com.l7tech.identity.IdentityProviderConfig;
import com.l7tech.identity.IdentityProviderConfigManager;
import com.l7tech.identity.IdentityProviderType;
import com.l7tech.objectmodel.DeleteException;
import com.l7tech.objectmodel.EntityHeader;
import com.l7tech.objectmodel.EntityType;
import com.l7tech.objectmodel.FindException;
import com.l7tech.objectmodel.Goid;
import com.l7tech.objectmodel.SaveException;
import com.l7tech.objectmodel.UpdateException;
import com.l7tech.server.HibernateEntityManager;
import com.l7tech.server.security.rbac.RoleManager;
import com.l7tech.util.Config;
import com.l7tech.util.ConfigFactory;
import java.text.MessageFormat;
import java.util.logging.Logger;
import java.util.regex.Pattern;
import org.jetbrains.annotations.NotNull;
import org.springframework.dao.DataAccessException;

public class IdProvConfManagerServer extends HibernateEntityManager<IdentityProviderConfig, EntityHeader> implements IdentityProviderConfigManager {
   private static final Logger m;
   private RoleManager n;
   private Config o;
   private static final Pattern p;
   static final String q;
   private static final String[] r;

   public void setRoleManager(RoleManager var1) {
      this.n = var1;
   }

   public void setConfig(@NotNull Config var1) {
      try {
         if (var1 == null) {
            b(0);
         }
      } catch (DataAccessException var2) {
         throw a(var2);
      }

      this.o = var1;
   }

   public Goid save(IdentityProviderConfig var1) throws SaveException {
      try {
         if (var1.type() == IdentityProviderType.INTERNAL) {
            this.a(var1);
         }
      } catch (SaveException var2) {
         throw a(var2);
      }

      return super.save(var1);
   }

   public void update(IdentityProviderConfig var1) throws UpdateException {
      label25: {
         try {
            if (var1.type() == IdentityProviderType.INTERNAL) {
               this.a(var1);
               break label25;
            }
         } catch (FindException var5) {
            throw a(var5);
         }

         try {
            this.n.renameEntitySpecificRoles(EntityType.ID_PROVIDER_CONFIG, var1, p);
         } catch (FindException var4) {
            throw new UpdateException(r[0], var4);
         }
      }

      try {
         super.update(var1);
      } catch (DataAccessException var3) {
         throw new UpdateException(var3.toString(), var3);
      }
   }

   @Override
   public void delete(Goid var1) throws DeleteException, FindException {
      this.findAndDelete(var1);
   }

   public void delete(IdentityProviderConfig var1) throws DeleteException {
      try {
         if (var1.type() == IdentityProviderType.INTERNAL) {
            m.warning(r[7]);
            throw new DeleteException(r[9]);
         }
      } catch (DataAccessException var4) {
         throw a(var4);
      }

      try {
         super.delete(var1);
      } catch (DataAccessException var3) {
         throw new DeleteException(var3.toString(), var3);
      }
   }

   public Class<IdentityProviderConfig> getImpClass() {
      return IdentityProviderConfig.class;
   }

   @Override
   public Class<IdentityProviderConfig> getInterfaceClass() {
      return IdentityProviderConfig.class;
   }

   @Override
   public EntityType getEntityType() {
      return EntityType.ID_PROVIDER_CONFIG;
   }

   public void createRoles(IdentityProviderConfig var1) throws SaveException {
      try {
         if (this.o.getBooleanProperty(r[3], true)) {
            this.b(var1);
         }
      } catch (SaveException var2) {
         throw a(var2);
      }
   }

   public void updateRoles(IdentityProviderConfig var1) throws UpdateException {
   }

   protected EntityHeader headerFromConfig(IdentityProviderConfig var1) {
      EntityHeader var2 = new EntityHeader();
      var2.setDescription(var1.getDescription());
      var2.setName(var1.getName());
      var2.setGoid(var1.getGoid());
      var2.setType(EntityType.ID_PROVIDER_CONFIG);
      return var2;
   }

   private void a(IdentityProviderConfig var1) {
      String[] var2 = r;
      var1.setName(var2[10]);
      var1.setDescription(var2[19]);
   }

   private void b(IdentityProviderConfig param1) throws SaveException {
      // $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: invokestatic com/l7tech/server/util/JaasUtils.getCurrentUser ()Lcom/l7tech/identity/User;
      // 003: astore 2
      // 004: getstatic com/l7tech/server/identity/IdProvConfManagerServer.r [Ljava/lang/String;
      // 007: astore 8
      // 009: aload 8
      // 00b: bipush 8
      // 00d: aaload
      // 00e: bipush 2
      // 00f: anewarray 242
      // 012: dup
      // 013: bipush 0
      // 014: aload 1
      // 015: invokevirtual com/l7tech/identity/IdentityProviderConfig.getName ()Ljava/lang/String;
      // 018: aastore
      // 019: dup
      // 01a: bipush 1
      // 01b: aload 1
      // 01c: invokevirtual com/l7tech/identity/IdentityProviderConfig.getGoid ()Lcom/l7tech/objectmodel/Goid;
      // 01f: aastore
      // 020: invokestatic java/text/MessageFormat.format (Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
      // 023: astore 3
      // 024: getstatic com/l7tech/server/identity/IdProvConfManagerServer.m Ljava/util/logging/Logger;
      // 027: aload 3
      // 028: aload 8
      // 02a: bipush 15
      // 02c: aaload
      // 02d: swap
      // 02e: invokedynamic makeConcatWithConstants (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; bsm=java/lang/invoke/StringConcatFactory.makeConcatWithConstants (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/invoke/CallSite; args=[ "\u0001\u0001" ]
      // 033: invokevirtual java/util/logging/Logger.info (Ljava/lang/String;)V
      // 036: new com/l7tech/gateway/common/security/rbac/Role
      // 039: dup
      // 03a: invokespecial com/l7tech/gateway/common/security/rbac/Role.<init> ()V
      // 03d: astore 4
      // 03f: aload 4
      // 041: aload 3
      // 042: invokevirtual com/l7tech/gateway/common/security/rbac/Role.setName (Ljava/lang/String;)V
      // 045: aload 4
      // 047: getstatic com/l7tech/gateway/common/security/rbac/OperationType.READ Lcom/l7tech/gateway/common/security/rbac/OperationType;
      // 04a: getstatic com/l7tech/objectmodel/EntityType.ID_PROVIDER_CONFIG Lcom/l7tech/objectmodel/EntityType;
      // 04d: aload 1
      // 04e: invokevirtual com/l7tech/identity/IdentityProviderConfig.getId ()Ljava/lang/String;
      // 051: invokevirtual com/l7tech/gateway/common/security/rbac/Role.addEntityPermission (Lcom/l7tech/gateway/common/security/rbac/OperationType;Lcom/l7tech/objectmodel/EntityType;Ljava/lang/String;)V
      // 054: aload 4
      // 056: getstatic com/l7tech/gateway/common/security/rbac/OperationType.UPDATE Lcom/l7tech/gateway/common/security/rbac/OperationType;
      // 059: getstatic com/l7tech/objectmodel/EntityType.ID_PROVIDER_CONFIG Lcom/l7tech/objectmodel/EntityType;
      // 05c: aload 1
      // 05d: invokevirtual com/l7tech/identity/IdentityProviderConfig.getId ()Ljava/lang/String;
      // 060: invokevirtual com/l7tech/gateway/common/security/rbac/Role.addEntityPermission (Lcom/l7tech/gateway/common/security/rbac/OperationType;Lcom/l7tech/objectmodel/EntityType;Ljava/lang/String;)V
      // 063: aload 4
      // 065: getstatic com/l7tech/gateway/common/security/rbac/OperationType.DELETE Lcom/l7tech/gateway/common/security/rbac/OperationType;
      // 068: getstatic com/l7tech/objectmodel/EntityType.ID_PROVIDER_CONFIG Lcom/l7tech/objectmodel/EntityType;
      // 06b: aload 1
      // 06c: invokevirtual com/l7tech/identity/IdentityProviderConfig.getId ()Ljava/lang/String;
      // 06f: invokevirtual com/l7tech/gateway/common/security/rbac/Role.addEntityPermission (Lcom/l7tech/gateway/common/security/rbac/OperationType;Lcom/l7tech/objectmodel/EntityType;Ljava/lang/String;)V
      // 072: aload 4
      // 074: getstatic com/l7tech/gateway/common/security/rbac/OperationType.CREATE Lcom/l7tech/gateway/common/security/rbac/OperationType;
      // 077: getstatic com/l7tech/objectmodel/EntityType.USER Lcom/l7tech/objectmodel/EntityType;
      // 07a: aload 8
      // 07c: bipush 16
      // 07e: aaload
      // 07f: aload 1
      // 080: invokevirtual com/l7tech/identity/IdentityProviderConfig.getId ()Ljava/lang/String;
      // 083: invokevirtual com/l7tech/gateway/common/security/rbac/Role.addAttributePermission (Lcom/l7tech/gateway/common/security/rbac/OperationType;Lcom/l7tech/objectmodel/EntityType;Ljava/lang/String;Ljava/lang/String;)V
      // 086: aload 4
      // 088: getstatic com/l7tech/gateway/common/security/rbac/OperationType.READ Lcom/l7tech/gateway/common/security/rbac/OperationType;
      // 08b: getstatic com/l7tech/objectmodel/EntityType.USER Lcom/l7tech/objectmodel/EntityType;
      // 08e: aload 8
      // 090: bipush 13
      // 092: aaload
      // 093: aload 1
      // 094: invokevirtual com/l7tech/identity/IdentityProviderConfig.getId ()Ljava/lang/String;
      // 097: invokevirtual com/l7tech/gateway/common/security/rbac/Role.addAttributePermission (Lcom/l7tech/gateway/common/security/rbac/OperationType;Lcom/l7tech/objectmodel/EntityType;Ljava/lang/String;Ljava/lang/String;)V
      // 09a: aload 4
      // 09c: getstatic com/l7tech/gateway/common/security/rbac/OperationType.UPDATE Lcom/l7tech/gateway/common/security/rbac/OperationType;
      // 09f: getstatic com/l7tech/objectmodel/EntityType.USER Lcom/l7tech/objectmodel/EntityType;
      // 0a2: aload 8
      // 0a4: bipush 13
      // 0a6: aaload
      // 0a7: aload 1
      // 0a8: invokevirtual com/l7tech/identity/IdentityProviderConfig.getId ()Ljava/lang/String;
      // 0ab: invokevirtual com/l7tech/gateway/common/security/rbac/Role.addAttributePermission (Lcom/l7tech/gateway/common/security/rbac/OperationType;Lcom/l7tech/objectmodel/EntityType;Ljava/lang/String;Ljava/lang/String;)V
      // 0ae: aload 4
      // 0b0: getstatic com/l7tech/gateway/common/security/rbac/OperationType.DELETE Lcom/l7tech/gateway/common/security/rbac/OperationType;
      // 0b3: getstatic com/l7tech/objectmodel/EntityType.USER Lcom/l7tech/objectmodel/EntityType;
      // 0b6: aload 8
      // 0b8: bipush 13
      // 0ba: aaload
      // 0bb: aload 1
      // 0bc: invokevirtual com/l7tech/identity/IdentityProviderConfig.getId ()Ljava/lang/String;
      // 0bf: invokevirtual com/l7tech/gateway/common/security/rbac/Role.addAttributePermission (Lcom/l7tech/gateway/common/security/rbac/OperationType;Lcom/l7tech/objectmodel/EntityType;Ljava/lang/String;Ljava/lang/String;)V
      // 0c2: aload 4
      // 0c4: getstatic com/l7tech/gateway/common/security/rbac/OperationType.CREATE Lcom/l7tech/gateway/common/security/rbac/OperationType;
      // 0c7: getstatic com/l7tech/objectmodel/EntityType.GROUP Lcom/l7tech/objectmodel/EntityType;
      // 0ca: aload 8
      // 0cc: bipush 13
      // 0ce: aaload
      // 0cf: aload 1
      // 0d0: invokevirtual com/l7tech/identity/IdentityProviderConfig.getId ()Ljava/lang/String;
      // 0d3: invokevirtual com/l7tech/gateway/common/security/rbac/Role.addAttributePermission (Lcom/l7tech/gateway/common/security/rbac/OperationType;Lcom/l7tech/objectmodel/EntityType;Ljava/lang/String;Ljava/lang/String;)V
      // 0d6: aload 4
      // 0d8: getstatic com/l7tech/gateway/common/security/rbac/OperationType.READ Lcom/l7tech/gateway/common/security/rbac/OperationType;
      // 0db: getstatic com/l7tech/objectmodel/EntityType.GROUP Lcom/l7tech/objectmodel/EntityType;
      // 0de: aload 8
      // 0e0: bipush 13
      // 0e2: aaload
      // 0e3: aload 1
      // 0e4: invokevirtual com/l7tech/identity/IdentityProviderConfig.getId ()Ljava/lang/String;
      // 0e7: invokevirtual com/l7tech/gateway/common/security/rbac/Role.addAttributePermission (Lcom/l7tech/gateway/common/security/rbac/OperationType;Lcom/l7tech/objectmodel/EntityType;Ljava/lang/String;Ljava/lang/String;)V
      // 0ea: aload 4
      // 0ec: getstatic com/l7tech/gateway/common/security/rbac/OperationType.UPDATE Lcom/l7tech/gateway/common/security/rbac/OperationType;
      // 0ef: getstatic com/l7tech/objectmodel/EntityType.GROUP Lcom/l7tech/objectmodel/EntityType;
      // 0f2: aload 8
      // 0f4: bipush 13
      // 0f6: aaload
      // 0f7: aload 1
      // 0f8: invokevirtual com/l7tech/identity/IdentityProviderConfig.getId ()Ljava/lang/String;
      // 0fb: invokevirtual com/l7tech/gateway/common/security/rbac/Role.addAttributePermission (Lcom/l7tech/gateway/common/security/rbac/OperationType;Lcom/l7tech/objectmodel/EntityType;Ljava/lang/String;Ljava/lang/String;)V
      // 0fe: aload 4
      // 100: getstatic com/l7tech/gateway/common/security/rbac/OperationType.DELETE Lcom/l7tech/gateway/common/security/rbac/OperationType;
      // 103: getstatic com/l7tech/objectmodel/EntityType.GROUP Lcom/l7tech/objectmodel/EntityType;
      // 106: aload 8
      // 108: bipush 13
      // 10a: aaload
      // 10b: aload 1
      // 10c: invokevirtual com/l7tech/identity/IdentityProviderConfig.getId ()Ljava/lang/String;
      // 10f: invokevirtual com/l7tech/gateway/common/security/rbac/Role.addAttributePermission (Lcom/l7tech/gateway/common/security/rbac/OperationType;Lcom/l7tech/objectmodel/EntityType;Ljava/lang/String;Ljava/lang/String;)V
      // 112: aload 4
      // 114: getstatic com/l7tech/gateway/common/security/rbac/OperationType.READ Lcom/l7tech/gateway/common/security/rbac/OperationType;
      // 117: getstatic com/l7tech/objectmodel/EntityType.SSG_KEY_ENTRY Lcom/l7tech/objectmodel/EntityType;
      // 11a: aconst_null
      // 11b: invokevirtual com/l7tech/gateway/common/security/rbac/Role.addEntityPermission (Lcom/l7tech/gateway/common/security/rbac/OperationType;Lcom/l7tech/objectmodel/EntityType;Ljava/lang/String;)V
      // 11e: aload 4
      // 120: getstatic com/l7tech/gateway/common/security/rbac/OperationType.READ Lcom/l7tech/gateway/common/security/rbac/OperationType;
      // 123: getstatic com/l7tech/objectmodel/EntityType.SSG_KEYSTORE Lcom/l7tech/objectmodel/EntityType;
      // 126: aconst_null
      // 127: invokevirtual com/l7tech/gateway/common/security/rbac/Role.addEntityPermission (Lcom/l7tech/gateway/common/security/rbac/OperationType;Lcom/l7tech/objectmodel/EntityType;Ljava/lang/String;)V
      // 12a: aload 4
      // 12c: getstatic com/l7tech/objectmodel/EntityType.ID_PROVIDER_CONFIG Lcom/l7tech/objectmodel/EntityType;
      // 12f: invokevirtual com/l7tech/gateway/common/security/rbac/Role.setEntityType (Lcom/l7tech/objectmodel/EntityType;)V
      // 132: aload 4
      // 134: aload 1
      // 135: invokevirtual com/l7tech/identity/IdentityProviderConfig.getGoid ()Lcom/l7tech/objectmodel/Goid;
      // 138: invokevirtual com/l7tech/gateway/common/security/rbac/Role.setEntityGoid (Lcom/l7tech/objectmodel/Goid;)V
      // 13b: aload 4
      // 13d: aload 8
      // 13f: bipush 12
      // 141: aaload
      // 142: invokevirtual com/l7tech/gateway/common/security/rbac/Role.setDescription (Ljava/lang/String;)V
      // 145: aload 1
      // 146: invokevirtual com/l7tech/identity/IdentityProviderConfig.type ()Lcom/l7tech/identity/IdentityProviderType;
      // 149: getstatic com/l7tech/identity/IdentityProviderType.FEDERATED Lcom/l7tech/identity/IdentityProviderType;
      // 14c: if_acmpne 157
      // 14f: bipush 1
      // 150: goto 158
      // 153: invokestatic com/l7tech/server/identity/IdProvConfManagerServer.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 156: athrow
      // 157: bipush 0
      // 158: istore 5
      // 15a: iload 5
      // 15c: ifeq 172
      // 15f: aload 4
      // 161: getstatic com/l7tech/gateway/common/security/rbac/OperationType.READ Lcom/l7tech/gateway/common/security/rbac/OperationType;
      // 164: getstatic com/l7tech/objectmodel/EntityType.TRUSTED_CERT Lcom/l7tech/objectmodel/EntityType;
      // 167: aconst_null
      // 168: invokevirtual com/l7tech/gateway/common/security/rbac/Role.addEntityPermission (Lcom/l7tech/gateway/common/security/rbac/OperationType;Lcom/l7tech/objectmodel/EntityType;Ljava/lang/String;)V
      // 16b: goto 172
      // 16e: invokestatic com/l7tech/server/identity/IdProvConfManagerServer.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 171: athrow
      // 172: aload 2
      // 173: ifnull 2b5
      // 176: aload 0
      // 177: getfield com/l7tech/server/identity/IdProvConfManagerServer.n Lcom/l7tech/server/security/rbac/RoleManager;
      // 17a: aload 2
      // 17b: aload 1
      // 17c: getstatic com/l7tech/gateway/common/security/rbac/OperationType.READ Lcom/l7tech/gateway/common/security/rbac/OperationType;
      // 17f: aconst_null
      // 180: invokeinterface com/l7tech/server/security/rbac/RoleManager.isPermittedForEntity (Lcom/l7tech/identity/User;Lcom/l7tech/objectmodel/Entity;Lcom/l7tech/gateway/common/security/rbac/OperationType;Ljava/lang/String;)Z 5
      // 185: istore 6
      // 187: iload 6
      // 189: aload 0
      // 18a: getfield com/l7tech/server/identity/IdProvConfManagerServer.n Lcom/l7tech/server/security/rbac/RoleManager;
      // 18d: aload 2
      // 18e: aload 1
      // 18f: getstatic com/l7tech/gateway/common/security/rbac/OperationType.UPDATE Lcom/l7tech/gateway/common/security/rbac/OperationType;
      // 192: aconst_null
      // 193: invokeinterface com/l7tech/server/security/rbac/RoleManager.isPermittedForEntity (Lcom/l7tech/identity/User;Lcom/l7tech/objectmodel/Entity;Lcom/l7tech/gateway/common/security/rbac/OperationType;Ljava/lang/String;)Z 5
      // 198: iand
      // 199: istore 6
      // 19b: iload 6
      // 19d: aload 0
      // 19e: getfield com/l7tech/server/identity/IdProvConfManagerServer.n Lcom/l7tech/server/security/rbac/RoleManager;
      // 1a1: aload 2
      // 1a2: aload 1
      // 1a3: getstatic com/l7tech/gateway/common/security/rbac/OperationType.DELETE Lcom/l7tech/gateway/common/security/rbac/OperationType;
      // 1a6: aconst_null
      // 1a7: invokeinterface com/l7tech/server/security/rbac/RoleManager.isPermittedForEntity (Lcom/l7tech/identity/User;Lcom/l7tech/objectmodel/Entity;Lcom/l7tech/gateway/common/security/rbac/OperationType;Ljava/lang/String;)Z 5
      // 1ac: iand
      // 1ad: istore 6
      // 1af: iload 6
      // 1b1: aload 0
      // 1b2: getfield com/l7tech/server/identity/IdProvConfManagerServer.n Lcom/l7tech/server/security/rbac/RoleManager;
      // 1b5: aload 2
      // 1b6: getstatic com/l7tech/gateway/common/security/rbac/OperationType.CREATE Lcom/l7tech/gateway/common/security/rbac/OperationType;
      // 1b9: getstatic com/l7tech/objectmodel/EntityType.USER Lcom/l7tech/objectmodel/EntityType;
      // 1bc: invokeinterface com/l7tech/server/security/rbac/RoleManager.isPermittedForAnyEntityOfType (Lcom/l7tech/identity/User;Lcom/l7tech/gateway/common/security/rbac/OperationType;Lcom/l7tech/objectmodel/EntityType;)Z 4
      // 1c1: iand
      // 1c2: istore 6
      // 1c4: iload 6
      // 1c6: aload 0
      // 1c7: getfield com/l7tech/server/identity/IdProvConfManagerServer.n Lcom/l7tech/server/security/rbac/RoleManager;
      // 1ca: aload 2
      // 1cb: getstatic com/l7tech/gateway/common/security/rbac/OperationType.READ Lcom/l7tech/gateway/common/security/rbac/OperationType;
      // 1ce: getstatic com/l7tech/objectmodel/EntityType.USER Lcom/l7tech/objectmodel/EntityType;
      // 1d1: invokeinterface com/l7tech/server/security/rbac/RoleManager.isPermittedForAnyEntityOfType (Lcom/l7tech/identity/User;Lcom/l7tech/gateway/common/security/rbac/OperationType;Lcom/l7tech/objectmodel/EntityType;)Z 4
      // 1d6: iand
      // 1d7: istore 6
      // 1d9: iload 6
      // 1db: aload 0
      // 1dc: getfield com/l7tech/server/identity/IdProvConfManagerServer.n Lcom/l7tech/server/security/rbac/RoleManager;
      // 1df: aload 2
      // 1e0: getstatic com/l7tech/gateway/common/security/rbac/OperationType.UPDATE Lcom/l7tech/gateway/common/security/rbac/OperationType;
      // 1e3: getstatic com/l7tech/objectmodel/EntityType.USER Lcom/l7tech/objectmodel/EntityType;
      // 1e6: invokeinterface com/l7tech/server/security/rbac/RoleManager.isPermittedForAnyEntityOfType (Lcom/l7tech/identity/User;Lcom/l7tech/gateway/common/security/rbac/OperationType;Lcom/l7tech/objectmodel/EntityType;)Z 4
      // 1eb: iand
      // 1ec: istore 6
      // 1ee: iload 6
      // 1f0: aload 0
      // 1f1: getfield com/l7tech/server/identity/IdProvConfManagerServer.n Lcom/l7tech/server/security/rbac/RoleManager;
      // 1f4: aload 2
      // 1f5: getstatic com/l7tech/gateway/common/security/rbac/OperationType.DELETE Lcom/l7tech/gateway/common/security/rbac/OperationType;
      // 1f8: getstatic com/l7tech/objectmodel/EntityType.USER Lcom/l7tech/objectmodel/EntityType;
      // 1fb: invokeinterface com/l7tech/server/security/rbac/RoleManager.isPermittedForAnyEntityOfType (Lcom/l7tech/identity/User;Lcom/l7tech/gateway/common/security/rbac/OperationType;Lcom/l7tech/objectmodel/EntityType;)Z 4
      // 200: iand
      // 201: istore 6
      // 203: iload 6
      // 205: aload 0
      // 206: getfield com/l7tech/server/identity/IdProvConfManagerServer.n Lcom/l7tech/server/security/rbac/RoleManager;
      // 209: aload 2
      // 20a: getstatic com/l7tech/gateway/common/security/rbac/OperationType.CREATE Lcom/l7tech/gateway/common/security/rbac/OperationType;
      // 20d: getstatic com/l7tech/objectmodel/EntityType.GROUP Lcom/l7tech/objectmodel/EntityType;
      // 210: invokeinterface com/l7tech/server/security/rbac/RoleManager.isPermittedForAnyEntityOfType (Lcom/l7tech/identity/User;Lcom/l7tech/gateway/common/security/rbac/OperationType;Lcom/l7tech/objectmodel/EntityType;)Z 4
      // 215: iand
      // 216: istore 6
      // 218: iload 6
      // 21a: aload 0
      // 21b: getfield com/l7tech/server/identity/IdProvConfManagerServer.n Lcom/l7tech/server/security/rbac/RoleManager;
      // 21e: aload 2
      // 21f: getstatic com/l7tech/gateway/common/security/rbac/OperationType.READ Lcom/l7tech/gateway/common/security/rbac/OperationType;
      // 222: getstatic com/l7tech/objectmodel/EntityType.GROUP Lcom/l7tech/objectmodel/EntityType;
      // 225: invokeinterface com/l7tech/server/security/rbac/RoleManager.isPermittedForAnyEntityOfType (Lcom/l7tech/identity/User;Lcom/l7tech/gateway/common/security/rbac/OperationType;Lcom/l7tech/objectmodel/EntityType;)Z 4
      // 22a: iand
      // 22b: istore 6
      // 22d: iload 6
      // 22f: aload 0
      // 230: getfield com/l7tech/server/identity/IdProvConfManagerServer.n Lcom/l7tech/server/security/rbac/RoleManager;
      // 233: aload 2
      // 234: getstatic com/l7tech/gateway/common/security/rbac/OperationType.UPDATE Lcom/l7tech/gateway/common/security/rbac/OperationType;
      // 237: getstatic com/l7tech/objectmodel/EntityType.GROUP Lcom/l7tech/objectmodel/EntityType;
      // 23a: invokeinterface com/l7tech/server/security/rbac/RoleManager.isPermittedForAnyEntityOfType (Lcom/l7tech/identity/User;Lcom/l7tech/gateway/common/security/rbac/OperationType;Lcom/l7tech/objectmodel/EntityType;)Z 4
      // 23f: iand
      // 240: istore 6
      // 242: iload 6
      // 244: aload 0
      // 245: getfield com/l7tech/server/identity/IdProvConfManagerServer.n Lcom/l7tech/server/security/rbac/RoleManager;
      // 248: aload 2
      // 249: getstatic com/l7tech/gateway/common/security/rbac/OperationType.DELETE Lcom/l7tech/gateway/common/security/rbac/OperationType;
      // 24c: getstatic com/l7tech/objectmodel/EntityType.GROUP Lcom/l7tech/objectmodel/EntityType;
      // 24f: invokeinterface com/l7tech/server/security/rbac/RoleManager.isPermittedForAnyEntityOfType (Lcom/l7tech/identity/User;Lcom/l7tech/gateway/common/security/rbac/OperationType;Lcom/l7tech/objectmodel/EntityType;)Z 4
      // 254: iand
      // 255: istore 6
      // 257: iload 5
      // 259: ifeq 271
      // 25c: iload 6
      // 25e: aload 0
      // 25f: getfield com/l7tech/server/identity/IdProvConfManagerServer.n Lcom/l7tech/server/security/rbac/RoleManager;
      // 262: aload 2
      // 263: getstatic com/l7tech/gateway/common/security/rbac/OperationType.READ Lcom/l7tech/gateway/common/security/rbac/OperationType;
      // 266: getstatic com/l7tech/objectmodel/EntityType.TRUSTED_CERT Lcom/l7tech/objectmodel/EntityType;
      // 269: invokeinterface com/l7tech/server/security/rbac/RoleManager.isPermittedForAnyEntityOfType (Lcom/l7tech/identity/User;Lcom/l7tech/gateway/common/security/rbac/OperationType;Lcom/l7tech/objectmodel/EntityType;)Z 4
      // 26e: iand
      // 26f: istore 6
      // 271: goto 28a
      // 274: astore 7
      // 276: new com/l7tech/objectmodel/SaveException
      // 279: dup
      // 27a: getstatic com/l7tech/server/identity/IdProvConfManagerServer.r [Ljava/lang/String;
      // 27d: astore 8
      // 27f: aload 8
      // 281: bipush 14
      // 283: aaload
      // 284: aload 7
      // 286: invokespecial com/l7tech/objectmodel/SaveException.<init> (Ljava/lang/String;Ljava/lang/Throwable;)V
      // 289: athrow
      // 28a: iload 6
      // 28c: ifne 2b5
      // 28f: aload 0
      // 290: invokevirtual com/l7tech/server/identity/IdProvConfManagerServer.a ()Z
      // 293: ifeq 2b5
      // 296: goto 29d
      // 299: invokestatic com/l7tech/server/identity/IdProvConfManagerServer.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 29c: athrow
      // 29d: getstatic com/l7tech/server/identity/IdProvConfManagerServer.m Ljava/util/logging/Logger;
      // 2a0: getstatic com/l7tech/server/identity/IdProvConfManagerServer.r [Ljava/lang/String;
      // 2a3: bipush 5
      // 2a4: aaload
      // 2a5: invokevirtual java/util/logging/Logger.info (Ljava/lang/String;)V
      // 2a8: aload 4
      // 2aa: aload 2
      // 2ab: invokevirtual com/l7tech/gateway/common/security/rbac/Role.addAssignedUser (Lcom/l7tech/identity/User;)V
      // 2ae: goto 2b5
      // 2b1: invokestatic com/l7tech/server/identity/IdProvConfManagerServer.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 2b4: athrow
      // 2b5: aload 0
      // 2b6: getfield com/l7tech/server/identity/IdProvConfManagerServer.n Lcom/l7tech/server/security/rbac/RoleManager;
      // 2b9: aload 4
      // 2bb: invokeinterface com/l7tech/server/security/rbac/RoleManager.save (Lcom/l7tech/objectmodel/PersistentEntity;)Lcom/l7tech/objectmodel/Goid; 2
      // 2c0: pop
      // 2c1: return
      // try (158 -> 165): 166 com/l7tech/objectmodel/FindException
      // try (33 -> 154): 154 com/l7tech/objectmodel/FindException
      // try (170 -> 281): 282 com/l7tech/objectmodel/FindException
      // try (293 -> 298): 299 com/l7tech/objectmodel/FindException
      // try (295 -> 309): 310 com/l7tech/objectmodel/FindException
   }

   private boolean a() {
      return ConfigFactory.getBooleanProperty(r[1], true);
   }

   static {
      String[] var5 = new String[21];
      int var3 = 0;
      String var2 = "\u000fEz\u0001lV.8\ni\u0004f\\)\u001eEc\b(LflXj\u0003iUl'>Hn\u000e&Y|8E]\u0002d]'!Ka\fo]Y>Ey\u0004l]{bKz\u0019gyz?Ch\u0003>\rXh\u0018e]g8\ni\u0002z\u0018I\u0002E{#}TelZn\u001fiUl8O}M/\u001dzk\n`\u000b(\u001dzb\u000f|MeMz8\na\u0002|\u0018k)\na\u0018dT'>Hn\u000e&Y|8E]\u0002d]'!Ka\fo]Y>Ey\u0004l]{bKz\u0019g{{)K{\b\t?O{.gVo%M\"\rY|\u0004oV`\"M/\u000e}J{)D{M]Kl>\n{\u0002(Vl;\n]\u0002d]\u0011\u0005Nj\u0003|Q}5\n_\u001fgN`(O}&\r^{\beH}l^`Ml]e)^jMaV})Xa\fd\u0018`(\n\u007f\u001fgN`(O}#\u0001Ka\fo])7\u001arMA\\l\"^f\u0019q\u0018Y>Ey\u0004l]{l\u0002,\u00169E %8Bf\u001e(Lp<O/\u0002n\u0018j#Di\u0004o\u0018j-Da\u0002|\u0018k)\nk\bd]})N\u001a\u0005D{\bzVh \nF\tmV}%^vMXJf:Ck\bz2/EbBd\u000f})IgB{]{:O}Ba\\l\"^f\u0019q\u0017@(z}\u0002~{f\"LB\ffYn)X\\\bzNl>\u0098\u0019Yj\u001f{\u0018h?Yf\nf]ml^`M|PllQ?\u0010(Jf O/\u0005iNll^g\b(Yk%Ff\u0019q\u0018}#\n}\bi\\%l_\u007f\tiLllKa\t(\\l O{\b(La)\nt\\u\u0018y>Ey\u0004l]{`\nn\u0003l\u0018j>On\u0019m\u0014)?On\u001fkP%l_\u007f\tiLllKa\t(\\l O{\b(Q}?\nz\u001emJzlKa\t(_{#_\u007f\u001e&\n<X`\u001ba\\l>ck!\u000fEz\u0001lV.8\nh\b|\u0018l4C|\u0019aVnlZj\u001feQz?C`\u0003{\u0013\u000fXj\f|Qg+\na\b\u007f\u0018[#FjW(\n<X`\u001ba\\l>ck\u0006/Ea\u000ba_=d\u00153PVd~kQ(\\$\t;t\rrJ(\u0011'f\u0015'R5\u0018r|W/1 \u001bR\u0010NT1l\u0014)\u0011VT,%bhaP?@1eTfv&I!";
      int var4 = "\u000fEz\u0001lV.8\ni\u0004f\\)\u001eEc\b(LflXj\u0003iUl'>Hn\u000e&Y|8E]\u0002d]'!Ka\fo]Y>Ey\u0004l]{bKz\u0019gyz?Ch\u0003>\rXh\u0018e]g8\ni\u0002z\u0018I\u0002E{#}TelZn\u001fiUl8O}M/\u001dzk\n`\u000b(\u001dzb\u000f|MeMz8\na\u0002|\u0018k)\na\u0018dT'>Hn\u000e&Y|8E]\u0002d]'!Ka\fo]Y>Ey\u0004l]{bKz\u0019g{{)K{\b\t?O{.gVo%M\"\rY|\u0004oV`\"M/\u000e}J{)D{M]Kl>\n{\u0002(Vl;\n]\u0002d]\u0011\u0005Nj\u0003|Q}5\n_\u001fgN`(O}&\r^{\beH}l^`Ml]e)^jMaV})Xa\fd\u0018`(\n\u007f\u001fgN`(O}#\u0001Ka\fo])7\u001arMA\\l\"^f\u0019q\u0018Y>Ey\u0004l]{l\u0002,\u00169E %8Bf\u001e(Lp<O/\u0002n\u0018j#Di\u0004o\u0018j-Da\u0002|\u0018k)\nk\bd]})N\u001a\u0005D{\bzVh \nF\tmV}%^vMXJf:Ck\bz2/EbBd\u000f})IgB{]{:O}Ba\\l\"^f\u0019q\u0017@(z}\u0002~{f\"LB\ffYn)X\\\bzNl>\u0098\u0019Yj\u001f{\u0018h?Yf\nf]ml^`M|PllQ?\u0010(Jf O/\u0005iNll^g\b(Yk%Ff\u0019q\u0018}#\n}\bi\\%l_\u007f\tiLllKa\t(\\l O{\b(La)\nt\\u\u0018y>Ey\u0004l]{`\nn\u0003l\u0018j>On\u0019m\u0014)?On\u001fkP%l_\u007f\tiLllKa\t(\\l O{\b(Q}?\nz\u001emJzlKa\t(_{#_\u007f\u001e&\n<X`\u001ba\\l>ck!\u000fEz\u0001lV.8\nh\b|\u0018l4C|\u0019aVnlZj\u001feQz?C`\u0003{\u0013\u000fXj\f|Qg+\na\b\u007f\u0018[#FjW(\n<X`\u001ba\\l>ck\u0006/Ea\u000ba_=d\u00153PVd~kQ(\\$\t;t\rrJ(\u0011'f\u0015'R5\u0018r|W/1 \u001bR\u0010NT1l\u0014)\u0011VT,%bhaP?@1eTfv&I!"
         .length();
      char var1 = 28;
      int var7 = -1;

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

         while (true) {
            String var9 = b(var10000, a(var10001));
            switch (var10002) {
               case 0:
                  var5[var3++] = var9;
                  if ((var7 += var1) >= var4) {
                     r = var5;
                     q = r[20];
                     m = Logger.getLogger(IdProvConfManagerServer.class.getName());
                     String[] var8 = r;
                     p = Pattern.compile(MessageFormat.format(var8[18], var8[6]));
                     return;
                  }

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

                  var2 = "-lS R~@\b\"n!E~U\rv^epbN\u0012kC R'\u0016`F&\u000eqT\u0010mu*Lu\u000f\tcI$Guq\u0016mQ,DuSJcR1OSS\u0001cS ";
                  var4 = "-lS R~@\b\"n!E~U\rv^epbN\u0012kC R'\u0016`F&\u000eqT\u0010mu*Lu\u000f\tcI$Guq\u0016mQ,DuSJcR1OSS\u0001cS ".length();
                  var1 = 26;
                  var7 = -1;
            }

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

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

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

      return var10000;
   }

   private static String b(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 -> 59;
            case 1 -> 93;
            case 2 -> 120;
            case 3 -> 26;
            case 4 -> 127;
            case 5 -> 79;
            default -> 126;
         });
      }

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