/*
 * Decompiled with CFR 0.152.
 * 
 * Could not load the following classes:
 *  com.l7tech.policy.bundle.BundleInfo
 *  org.apache.commons.lang3.StringUtils
 *  org.jetbrains.annotations.NotNull
 *  org.jetbrains.annotations.Nullable
 */
package com.l7tech.server.policy.bundle;

import com.l7tech.policy.bundle.BundleInfo;
import java.util.List;
import org.apache.commons.lang3.StringUtils;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import org.w3c.dom.Document;

public interface BundleResolver {
    public static final String FILE_EXTENSION_XML = ".xml";

    @NotNull
    public List<BundleInfo> getResultList();

    @Nullable
    public Document getBundleItem(@NotNull String var1, @NotNull String var2, @NotNull BundleItem var3, boolean var4) throws UnknownBundleException, BundleResolverException, InvalidBundleException;

    public Document getBundleItem(@NotNull String var1, @NotNull BundleItem var2, boolean var3) throws UnknownBundleException, BundleResolverException, InvalidBundleException;

    public static class InvalidBundleException
    extends Exception {
        static final long serialVersionUID = 5818759216757183343L;

        public InvalidBundleException(String string) {
            super(string);
        }

        public InvalidBundleException(Throwable throwable) {
            super(throwable);
        }

        public InvalidBundleException(String string, Throwable throwable) {
            super(string, throwable);
        }
    }

    public static class BundleResolverException
    extends Exception {
        static final long serialVersionUID = -2116602258259191788L;

        public BundleResolverException(String string) {
            super(string);
        }

        public BundleResolverException(Throwable throwable) {
            super(throwable);
        }
    }

    public static class UnknownBundleItemException
    extends UnknownBundleException {
        static final long serialVersionUID = 5559948403621251978L;

        public UnknownBundleItemException(String string) {
            super(string);
        }
    }

    public static class UnknownBundleException
    extends Exception {
        static final long serialVersionUID = 5940947991901225352L;

        public UnknownBundleException(String string) {
            super(string);
        }
    }

    public static final class BundleItem
    extends Enum<BundleItem> {
        public static final /* enum */ BundleItem ASSERTION;
        public static final /* enum */ BundleItem CERTIFICATE;
        public static final /* enum */ BundleItem ENCAPSULATED_ASSERTION;
        public static final /* enum */ BundleItem FOLDER;
        public static final /* enum */ BundleItem MIGRATION_BUNDLE;
        public static final /* enum */ BundleItem POLICY;
        public static final /* enum */ BundleItem SERVICE;
        private String fileName;
        private String version;
        private static final /* synthetic */ BundleItem[] $VALUES;
        private static final String[] a;

        public static BundleItem[] values() {
            return (BundleItem[])$VALUES.clone();
        }

        public static BundleItem valueOf(String string) {
            return Enum.valueOf(BundleItem.class, string);
        }

        private BundleItem(String string2) {
            this.fileName = string2;
        }

        public String getFileName() {
            if (StringUtils.isEmpty((CharSequence)this.version)) {
                String[] stringArray = a;
                return this.fileName + stringArray[10];
            }
            return this.fileName + this.version + a[4];
        }

        public void setVersion(String string) {
            this.version = string;
        }

        private static /* synthetic */ BundleItem[] $values() {
            return new BundleItem[]{ASSERTION, CERTIFICATE, ENCAPSULATED_ASSERTION, FOLDER, MIGRATION_BUNDLE, POLICY, SERVICE};
        }

        /*
         * Unable to fully structure code
         */
        static {
            block10: {
                block9: {
                    var5 = new String[16];
                    var3_1 = 0;
                    var2_2 = "M\u0018\u000f\b}{\u000fF\u001e\u0004\u001ey}id\u0019!\u0019vmln\tJ\u0004\u0010\tj}id\u0019\u0006[\u0018\u000f\u0005{p\u0004%\u000f\u000e\u0000\u0016N9 -HZUG67)\\VAX$&>L@OE\u0006[8/%[P\u000bH218QOIH67)\u0007X21:QJE\tJ$0)J]ID9\u0004%\u000f\u000e\u0000\u0006M8/(][\u0010F>$>Y]ID9<.MGDG2\u0015N\u0019\u0000\rhzug\u0016\u0017\t|Hsx\u0012\u0011\u0018qfn";
                    var4_3 = "M\u0018\u000f\b}{\u000fF\u001e\u0004\u001ey}id\u0019!\u0019vmln\tJ\u0004\u0010\tj}id\u0019\u0006[\u0018\u000f\u0005{p\u0004%\u000f\u000e\u0000\u0016N9 -HZUG67)\\VAX$&>L@OE\u0006[8/%[P\u000bH218QOIH67)\u0007X21:QJE\tJ$0)J]ID9\u0004%\u000f\u000e\u0000\u0006M8/(][\u0010F>$>Y]ID9<.MGDG2\u0015N\u0019\u0000\rhzug\u0016\u0017\t|Hsx\u0012\u0011\u0018qfn".length();
                    var1_4 = 6;
                    var0_5 = -1;
lbl7:
                    // 2 sources

                    while (true) {
                        v0 = 62;
                        v1 = ++var0_5;
                        v2 = var2_2.substring(v1, v1 + var1_4);
                        v3 = -1;
                        break block9;
                        break;
                    }
lbl13:
                    // 1 sources

                    while (true) {
                        var5[var3_1++] = BundleItem.a(v0, BundleItem.a(v2));
                        if ((var0_5 += var1_4) < var4_3) {
                            var1_4 = var2_2.charAt(var0_5);
                            ** continue;
                        }
                        var2_2 = "(rah\u001b\u001b\u0013?efo\u0006\u0018\u001e\u001fa`~\u0007/efm\u0006\u001d\u0012";
                        var4_3 = "(rah\u001b\u001b\u0013?efo\u0006\u0018\u001e\u001fa`~\u0007/efm\u0006\u001d\u0012".length();
                        var1_4 = 18;
                        var0_5 = -1;
lbl22:
                        // 2 sources

                        while (true) {
                            v0 = 73;
                            v4 = ++var0_5;
                            v2 = var2_2.substring(v4, v4 + var1_4);
                            v3 = 0;
                            break block9;
                            break;
                        }
                        break;
                    }
lbl28:
                    // 1 sources

                    while (true) {
                        var5[var3_1++] = BundleItem.a(v0, BundleItem.a(v2));
                        if ((var0_5 += var1_4) < var4_3) {
                            var1_4 = var2_2.charAt(var0_5);
                            ** continue;
                        }
                        break block10;
                        break;
                    }
                }
                switch (v3) {
                    default: {
                        ** continue;
                    }
                    ** case 0:
lbl39:
                    // 1 sources

                    ** continue;
                }
            }
            BundleItem.a = var5;
            var0_6 = BundleItem.a;
            BundleItem.ASSERTION = new BundleItem(var0_6[2]);
            BundleItem.CERTIFICATE = new BundleItem(var0_6[14]);
            BundleItem.ENCAPSULATED_ASSERTION = new BundleItem(var0_6[13]);
            BundleItem.FOLDER = new BundleItem(var0_6[0]);
            BundleItem.MIGRATION_BUNDLE = new BundleItem(var0_6[1]);
            BundleItem.POLICY = new BundleItem(var0_6[3]);
            BundleItem.SERVICE = new BundleItem(var0_6[15]);
            BundleItem.$VALUES = BundleItem.$values();
        }

        private static char[] a(String string) {
            char[] cArray = string.toCharArray();
            if (cArray.length < 2) {
                cArray = cArray;
                cArray[0] = (char)(cArray[0] ^ 0x3E);
            }
            return cArray;
        }

        /*
         * Handled impossible loop by duplicating code
         * Enabled aggressive block sorting
         */
        private static String a(int n2, char[] cArray) {
            char[] cArray2;
            block11: {
                int n3;
                int n4;
                int n5;
                block10: {
                    n5 = n2;
                    cArray2 = cArray;
                    n4 = cArray.length;
                    n3 = 0;
                    if (!true) break block10;
                    n4 = n4;
                    if (n4 <= n3) break block11;
                }
                do {
                    n5 = n5;
                    cArray2 = cArray2;
                    int n6 = n3;
                    cArray2[n6] = (char)(cArray2[n6] ^ (n5 ^ (switch (n3 % 7) {
                        case 0 -> 53;
                        case 1 -> 73;
                        case 2 -> 93;
                        case 3 -> 82;
                        case 4 -> 38;
                        case 5 -> 55;
                        default -> 62;
                    })));
                    ++n3;
                    n4 = n4;
                } while (n4 > n3);
            }
            return new String(cArray2).intern();
        }
    }
}

