/*
 * Decompiled with CFR 0.152.
 * 
 * Could not load the following classes:
 *  com.l7tech.util.ExceptionUtils
 *  jakarta.mail.Flags
 *  jakarta.mail.Flags$Flag
 *  jakarta.mail.Message
 *  jakarta.mail.MessagingException
 *  jakarta.mail.internet.MimeMessage
 *  jakarta.mail.search.FlagTerm
 *  jakarta.mail.search.SearchTerm
 */
package com.l7tech.server.transport.email.asynch;

import com.l7tech.server.transport.email.asynch.PooledPollingEmailListenerImpl;
import com.l7tech.util.ExceptionUtils;
import jakarta.mail.Flags;
import jakarta.mail.Message;
import jakarta.mail.MessagingException;
import jakarta.mail.internet.MimeMessage;
import jakarta.mail.search.FlagTerm;
import jakarta.mail.search.SearchTerm;
import java.util.logging.Level;

class a
implements Runnable {
    final PooledPollingEmailListenerImpl this$0;
    private static final String[] a;

    private a(PooledPollingEmailListenerImpl pooledPollingEmailListenerImpl) {
        this.this$0 = pooledPollingEmailListenerImpl;
        pooledPollingEmailListenerImpl.i = new Thread((Runnable)this, this.toString());
        pooledPollingEmailListenerImpl.i.setDaemon(true);
    }

    /*
     * WARNING - Removed try catching itself - possible behaviour change.
     * Unable to fully structure code
     * Enabled aggressive block sorting
     * Enabled unnecessary exception pruning
     * Enabled aggressive exception aggregation
     */
    @Override
    public final void run() {
        var1_1 = 0;
        var15_2 = com.l7tech.server.transport.email.asynch.a.a;
        this.this$0.log(Level.INFO, var15_2[8], this.this$0.c.getEmailListener().getName());
        try {
            while (true) {
                if (this.this$0.isStop()) {
                    var15_2 = com.l7tech.server.transport.email.asynch.a.a;
                    this.this$0.log(Level.INFO, var15_2[3], this.this$0.c.getEmailListener().getName());
                    this.this$0.cleanup();
                    return;
                }
                var4_5 = System.currentTimeMillis();
                var6_6 = 0;
                try {
                    block48: {
                        block47: {
                            this.this$0.ensureConnectionStarted();
                            var3_4 = this.this$0.n.search((SearchTerm)new FlagTerm(new Flags(Flags.Flag.SEEN), false));
                            try {
                                this.this$0.e.updateLastPolled(this.this$0.c.getEmailListener().getGoid());
                                v0 = this.this$0.c.getEmailListener().getEmailListenerState().getLastMessageId() == null ? 0L : this.this$0.c.getEmailListener().getEmailListenerState().getLastMessageId();
                            }
                            catch (Throwable v1) {
                                throw com.l7tech.server.transport.email.asynch.a.a(v1);
                            }
                            var7_7 = v0;
                            for (Message var12_19 : var3_4) {
                                try {
                                    var2_3 = (MimeMessage)var12_19;
                                    if ((long)var2_3.getMessageNumber() <= var7_7) continue;
                                    if (var2_3.getMessageNumber() > var6_6) {
                                        var6_6 = var2_3.getMessageNumber();
                                    }
                                    if (this.this$0.isStop()) continue;
                                    var15_2 = com.l7tech.server.transport.email.asynch.a.a;
                                    this.this$0.log(Level.FINE, var15_2[2], this.this$0.c.getEmailListener().getName());
                                    var1_1 = 0;
                                    var13_20 = new MimeMessage(var2_3);
                                    this.this$0.handleMessage(var13_20);
                                }
                                catch (Throwable var13_21) {
                                    var15_2 = com.l7tech.server.transport.email.asynch.a.a;
                                    this.this$0.log(Level.WARNING, var15_2[1], new Object[]{var12_19.getMessageNumber(), this.this$0.c.getEmailListener().getName()});
                                }
                            }
                            if (((Message[])var3_4).length > 0) {
                                try {
                                    var9_12 = new Flags(Flags.Flag.SEEN);
                                    try {
                                        if (this.this$0.c.getEmailListener().isDeleteOnReceive()) {
                                            var9_12.add(Flags.Flag.DELETED);
                                        }
                                    }
                                    catch (Throwable v2) {
                                        throw com.l7tech.server.transport.email.asynch.a.a(v2);
                                    }
                                    try {
                                        this.this$0.n.setFlags((Message[])var3_4, var9_12, true);
                                        if (this.this$0.c.getEmailListener().isDeleteOnReceive()) {
                                            this.this$0.n.close(true);
                                        }
                                    }
                                    catch (Throwable v3) {
                                        throw com.l7tech.server.transport.email.asynch.a.a(v3);
                                    }
                                }
                                catch (MessagingException var9_13) {
                                    var15_2 = com.l7tech.server.transport.email.asynch.a.a;
                                    this.this$0.log(Level.WARNING, var15_2[9], this.this$0.c.getEmailListener().getName());
                                }
                                catch (Throwable var9_14) {
                                    var15_2 = com.l7tech.server.transport.email.asynch.a.a;
                                    this.this$0.log(Level.SEVERE, var15_2[13], this.this$0.c.getEmailListener().getName());
                                }
                            }
                            try {
                                this.this$0.c.getEmailListener().getEmailListenerState().setLastPollTime(System.currentTimeMillis());
                                if (!this.this$0.c.getEmailListener().isDeleteOnReceive()) break block47;
                                this.this$0.c.getEmailListener().getEmailListenerState().setLastMessageId(Long.valueOf(0L));
                                break block48;
                            }
                            catch (Throwable v4) {
                                throw com.l7tech.server.transport.email.asynch.a.a(v4);
                            }
                        }
                        try {
                            if (var6_6 > 0) {
                                this.this$0.c.getEmailListener().getEmailListenerState().setLastMessageId(Long.valueOf(var6_6));
                            }
                        }
                        catch (Throwable v5) {
                            throw com.l7tech.server.transport.email.asynch.a.a(v5);
                        }
                    }
                    this.this$0.e.updateState(this.this$0.c.getEmailListener().getEmailListenerState());
                    var9_15 = System.currentTimeMillis();
                    try {
                        if (var9_15 - var4_5 < (long)(this.this$0.c.getEmailListener().getPollInterval() * 1000)) {
                            Thread.sleep((long)(this.this$0.c.getEmailListener().getPollInterval() * 1000) - (var9_15 - var4_5));
                        }
                    }
                    catch (Throwable v6) {
                        throw com.l7tech.server.transport.email.asynch.a.a(v6);
                    }
                }
                catch (Throwable var7_8) {
                    block50: {
                        try {
                            if (ExceptionUtils.causedBy((Throwable)var7_8, InterruptedException.class)) {
                                continue;
                            }
                        }
                        catch (Throwable v7) {
                            throw com.l7tech.server.transport.email.asynch.a.a(v7);
                        }
                        try {
                            this.this$0.log(Level.WARNING, this.this$0.formatMessage(com.l7tech.server.transport.email.asynch.a.a[7], this.this$0.c.getEmailListener().getName()));
                            this.this$0.cleanup();
                            if (++var1_1 >= 5) break block50;
                            Thread.sleep(5000L);
                        }
                        catch (MessagingException v8) {
                            throw com.l7tech.server.transport.email.asynch.a.a(v8);
                        }
                        catch (InterruptedException var8_10) {
                            var15_2 = com.l7tech.server.transport.email.asynch.a.a;
                            this.this$0.log(Level.INFO, var15_2[6], new Object[]{var15_2[5]});
                        }
                    }
                    var8_11 = this.this$0.c.getEmailListener().getPollInterval() * 1000;
                    var15_2 = com.l7tech.server.transport.email.asynch.a.a;
                    this.this$0.log(Level.WARNING, var15_2[12], new Object[]{this.this$0.c.getEmailListener().getName(), 5, var8_11});
                    try {
                        Thread.sleep(var8_11);
                    }
                    catch (InterruptedException var9_16) {
                        var15_2 = com.l7tech.server.transport.email.asynch.a.a;
                        this.this$0.log(Level.INFO, var15_2[4], new Object[]{var15_2[10]});
                    }
                }
                try {
                    if (this.this$0.n == null || !this.this$0.n.isOpen()) continue;
                    ** GOTO lbl124
                }
                catch (Throwable v9) {
                    try {
                        throw com.l7tech.server.transport.email.asynch.a.a(v9);
lbl124:
                        // 2 sources

                        this.this$0.n.close(this.this$0.c.getEmailListener().isDeleteOnReceive());
                        this.this$0.m.close();
                        continue;
                    }
                    catch (InterruptedException v10) {
                        throw com.l7tech.server.transport.email.asynch.a.a(v10);
                    }
                }
                catch (MessagingException var7_9) {
                    var15_2 = com.l7tech.server.transport.email.asynch.a.a;
                    this.this$0.log(Level.FINE, var15_2[0], this.this$0.c.getEmailListener().getName());
                    continue;
                }
                break;
            }
        }
        catch (Throwable var14_22) {
            this.this$0.log(Level.INFO, com.l7tech.server.transport.email.asynch.a.a[11], this.this$0.c.getEmailListener().getName());
            this.this$0.cleanup();
            throw var14_22;
        }
    }

    private static Throwable a(Throwable throwable) {
        return throwable;
    }

    /*
     * Unable to fully structure code
     */
    static {
        block10: {
            block9: {
                var5 = new String[14];
                var3_1 = 0;
                var2_2 = "4a_\u001e'SG\u0006o\u0016\u0011.X\u0014\u0017 B\u001a'\u0017\u0002\u001fa_\u001ebQ\b\u001edS\u0000bV\t\u0016 U\u001d,Y\u0002\u0011t_\u001d,\u0017\u0001\u001dr\u0016\trJI44a_\u001e'SG\u0006o\u0016\u00020X\u0004\u0017sER/R\u0014\u0001aQ\u0017b\u0014\u001cB}\u0016\u00140X\nRe[\u0013+[G\u0001eD\u0004'EG\t0K\u0019 eU\u0017+A\u0002\u0016 WR/R\u0014\u0001aQ\u0017bX\tR{\u0006\u000f\u001c!tY\u00022^\t\u0015 S\u001f#^\u000bRpY\u001e.R\u0015RoXR9\u0007\u001a&>iE\u0006'Y\u0002\u0000 B\u001a0R\u0006\u0016 _\u001c6R\u0015\u0000uF\u0006'SG\u0016uD\u001b,PG\t0K\u000e\u0000eB\u0000;\u0017\u000e\u001ctS\u00004V\u000b&>iE\u0006'Y\u0002\u0000 B\u001a0R\u0006\u0016 _\u001c6R\u0015\u0000uF\u0006'SG\u0016uD\u001b,PG\t0K/'nW\u0010.RG\u0006o\u0016\u0000'T\u0002\u001bvSR/R\u0014\u0001aQ\u0017bQ\u0015\u001dm\u0016\u0017/V\u000e\u001e E\u00170A\u0002\u0000 MB?\u001c!tW\u00006^\t\u0015 S\u001f#^\u000bRpY\u001e.R\u0015RoXR9\u0007\u001a74a_\u001e'SG\u0006o\u0016\u001f#E\fRmS\u00011V\u0000\u0017s\u0016\u00131\u0017\u0015\u0017aRR-YG\u0006hSR'Z\u0006\u001bl\u0016\u0001'E\u0011\u0017r\u0016\trJ\u000e\u0001lS\u00172\u0017\u000e\u001ctS\u00004V\u000b\u001c!tY\u00022^\t\u0015 S\u001f#^\u000bRpY\u001e.R\u0015RoXR9\u0007\u001a";
                var4_3 = "4a_\u001e'SG\u0006o\u0016\u0011.X\u0014\u0017 B\u001a'\u0017\u0002\u001fa_\u001ebQ\b\u001edS\u0000bV\t\u0016 U\u001d,Y\u0002\u0011t_\u001d,\u0017\u0001\u001dr\u0016\trJI44a_\u001e'SG\u0006o\u0016\u00020X\u0004\u0017sER/R\u0014\u0001aQ\u0017b\u0014\u001cB}\u0016\u00140X\nRe[\u0013+[G\u0001eD\u0004'EG\t0K\u0019 eU\u0017+A\u0002\u0016 WR/R\u0014\u0001aQ\u0017bX\tR{\u0006\u000f\u001c!tY\u00022^\t\u0015 S\u001f#^\u000bRpY\u001e.R\u0015RoXR9\u0007\u001a&>iE\u0006'Y\u0002\u0000 B\u001a0R\u0006\u0016 _\u001c6R\u0015\u0000uF\u0006'SG\u0016uD\u001b,PG\t0K\u000e\u0000eB\u0000;\u0017\u000e\u001ctS\u00004V\u000b&>iE\u0006'Y\u0002\u0000 B\u001a0R\u0006\u0016 _\u001c6R\u0015\u0000uF\u0006'SG\u0016uD\u001b,PG\t0K/'nW\u0010.RG\u0006o\u0016\u0000'T\u0002\u001bvSR/R\u0014\u0001aQ\u0017bQ\u0015\u001dm\u0016\u0017/V\u000e\u001e E\u00170A\u0002\u0000 MB?\u001c!tW\u00006^\t\u0015 S\u001f#^\u000bRpY\u001e.R\u0015RoXR9\u0007\u001a74a_\u001e'SG\u0006o\u0016\u001f#E\fRmS\u00011V\u0000\u0017s\u0016\u00131\u0017\u0015\u0017aRR-YG\u0006hSR'Z\u0006\u001bl\u0016\u0001'E\u0011\u0017r\u0016\trJ\u000e\u0001lS\u00172\u0017\u000e\u001ctS\u00004V\u000b\u001c!tY\u00022^\t\u0015 S\u001f#^\u000bRpY\u001e.R\u0015RoXR9\u0007\u001a".length();
                var1_4 = 56;
                var0_5 = -1;
lbl7:
                // 2 sources

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

                while (true) {
                    var5[var3_1++] = com.l7tech.server.transport.email.asynch.a.a(v0, com.l7tech.server.transport.email.asynch.a.a(v2));
                    if ((var0_5 += var1_4) < var4_3) {
                        var1_4 = var2_2.charAt(var0_5);
                        ** continue;
                    }
                    var2_2 = "s$\bKj\u0014OMm\u001dP}ZOR,\u0012S/\u001bI\\\"\u000eQ{ZQ\u000f0[Mj\u0019OV;\u001e[/\u000eEPm\u0016^a\u0003\nZ?\tP}\t\n\u00176JB&Z\u0007\u001f:\u0012ScZ^M4[^h\u001bCQm\u0012Q/\u0001\u0018Bm\u0016L!y,\u0012Sj\u001e\nK\"[J\u007f\u001eKK([Rj\tY^*\u001eL/\u001cEMm\u0000\u000fr";
                    var4_3 = "s$\bKj\u0014OMm\u001dP}ZOR,\u0012S/\u001bI\\\"\u000eQ{ZQ\u000f0[Mj\u0019OV;\u001e[/\u000eEPm\u0016^a\u0003\nZ?\tP}\t\n\u00176JB&Z\u0007\u001f:\u0012ScZ^M4[^h\u001bCQm\u0012Q/\u0001\u0018Bm\u0016L!y,\u0012Sj\u001e\nK\"[J\u007f\u001eKK([Rj\tY^*\u001eL/\u001cEMm\u0000\u000fr".length();
                    var1_4 = 88;
                    var0_5 = -1;
lbl22:
                    // 2 sources

                    while (true) {
                        v0 = 4;
                        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++] = com.l7tech.server.transport.email.asynch.a.a(v0, com.l7tech.server.transport.email.asynch.a.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;
            }
        }
        com.l7tech.server.transport.email.asynch.a.a = var5;
    }

    private static char[] a(String string) {
        char[] cArray = string.toCharArray();
        if (cArray.length < 2) {
            cArray = cArray;
            cArray[0] = (char)(cArray[0] ^ 0x2E);
        }
        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 -> 59;
                    case 1 -> 73;
                    case 2 -> 127;
                    case 3 -> 59;
                    case 4 -> 11;
                    case 5 -> 126;
                    default -> 46;
                })));
                ++n3;
                n4 = n4;
            } while (n4 > n3);
        }
        return new String(cArray2).intern();
    }
}

