射射AV v6.8.3版本的 MD5 值为:4b0475341d3c62fa7e762c41558fd25f

以下内容为反编译后的 l.java 源代码,内容仅作参考


package com.cloudtech.a;

import java.io.OutputStream;
import java.net.Socket;
import java.util.Arrays;
import java.util.Locale;
import java.util.concurrent.Callable;
import java.util.concurrent.ExecutionException;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import java.util.concurrent.TimeUnit;
import java.util.concurrent.TimeoutException;

public class l {
    private final ExecutorService a = Executors.newSingleThreadExecutor();
    private final String b;
    private final int c;

    public class b implements Callable<Boolean> {
        private b() {
        }

        @Override
        public Boolean call() {
            return Boolean.valueOf(l.this.b());
        }
    }

    public l(String str, int i2) {
        this.b = (String) m.a(str);
        this.c = i2;
    }

    public boolean b() {
        h hVar = new h(f());
        try {
            byte[] bytes = "ping ok".getBytes();
            hVar.a(0L);
            byte[] bArr = new byte[bytes.length];
            hVar.a(bArr);
            boolean equals = Arrays.equals(bytes, bArr);
            i.a((Object) ("Ping response: `" + new String(bArr) + "`, pinged? " + equals));
            return equals;
        } catch (o e2) {
            i.a("Error reading ping response", e2);
            return false;
        } finally {
            hVar.b();
        }
    }

    private String f() {
        return String.format(Locale.US, "http://%s:%d/%s", this.b, Integer.valueOf(this.c), "ping");
    }

    public void a(Socket socket) {
        OutputStream outputStream = socket.getOutputStream();
        outputStream.write("HTTP/1.1 200 OK\n\n".getBytes());
        outputStream.write("ping ok".getBytes());
    }

    public boolean c(int i2, int i3) {
        m.a(i2 >= 1);
        m.a(i3 > 0);
        int i4 = 0;
        while (i4 < i2) {
            try {
            } catch (InterruptedException e2) {
                e = e2;
                i.a("Error pinging server due to unexpected error", e);
            } catch (ExecutionException e3) {
                e = e3;
                i.a("Error pinging server due to unexpected error", e);
            } catch (TimeoutException unused) {
                i.b("Error pinging server (attempt: " + i4 + ", timeout: " + i3 + "). ");
            }
            if (((Boolean) this.a.submit(new b()).get(i3, TimeUnit.MILLISECONDS)).booleanValue()) {
                return true;
            }
            i4++;
            i3 *= 2;
        }
        return false;
    }

    public boolean e(String str) {
        return "ping".equals(str);
    }
}