导航菜单

页面标题

页面副标题

Top浏览器 v4.6.16 - a.java 源代码

正在查看: Top浏览器 v4.6.16 应用的 a.java JAVA 源代码文件

本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。


package m.e.a.d.u;

import java.io.IOException;
import java.net.InetAddress;
import java.net.InetSocketAddress;
import java.net.Socket;
import javax.net.ssl.SSLSocket;
import m.e.a.h.a0.c;

public class a extends b {

    public static final c f5112f = m.e.a.h.a0.b.a(a.class);

    public final Socket f5113g;

    public final InetSocketAddress f5114h;

    public final InetSocketAddress f5115i;

    public a(Socket socket) {
        super(socket.getInputStream(), socket.getOutputStream());
        this.f5113g = socket;
        this.f5114h = (InetSocketAddress) socket.getLocalSocketAddress();
        this.f5115i = (InetSocketAddress) socket.getRemoteSocketAddress();
        super.i(socket.getSoTimeout());
    }

    public void A() {
        if (this.f5113g.isClosed()) {
            return;
        }
        if (!this.f5113g.isInputShutdown()) {
            this.f5113g.shutdownInput();
        }
        if (this.f5113g.isOutputShutdown()) {
            this.f5113g.close();
        }
    }

    public final void B() {
        if (this.f5113g.isClosed()) {
            return;
        }
        if (!this.f5113g.isOutputShutdown()) {
            this.f5113g.shutdownOutput();
        }
        if (this.f5113g.isInputShutdown()) {
            this.f5113g.close();
        }
    }

    @Override
    public void close() {
        this.f5113g.close();
        this.a = null;
        this.b = null;
    }

    @Override
    public String e() {
        InetSocketAddress inetSocketAddress = this.f5114h;
        return (inetSocketAddress == null || inetSocketAddress.getAddress() == null || this.f5114h.getAddress().isAnyLocalAddress()) ? "0.0.0.0" : this.f5114h.getAddress().getHostAddress();
    }

    @Override
    public int getLocalPort() {
        InetSocketAddress inetSocketAddress = this.f5114h;
        if (inetSocketAddress == null) {
            return -1;
        }
        return inetSocketAddress.getPort();
    }

    @Override
    public Object getTransport() {
        return this.f5113g;
    }

    @Override
    public String h() {
        InetAddress address;
        InetSocketAddress inetSocketAddress = this.f5115i;
        if (inetSocketAddress == null || (address = inetSocketAddress.getAddress()) == null) {
            return null;
        }
        return address.getHostAddress();
    }

    @Override
    public void i(int i2) {
        if (i2 != g()) {
            this.f5113g.setSoTimeout(i2 > 0 ? i2 : 0);
        }
        super.i(i2);
    }

    @Override
    public boolean isOpen() {
        Socket socket;
        return (!super.isOpen() || (socket = this.f5113g) == null || socket.isClosed()) ? false : true;
    }

    @Override
    public void j() {
        if (this.f5113g instanceof SSLSocket) {
            super.j();
        } else {
            A();
        }
    }

    @Override
    public String k() {
        InetSocketAddress inetSocketAddress = this.f5114h;
        return (inetSocketAddress == null || inetSocketAddress.getAddress() == null || this.f5114h.getAddress().isAnyLocalAddress()) ? "0.0.0.0" : this.f5114h.getAddress().getCanonicalHostName();
    }

    @Override
    public boolean o() {
        Socket socket = this.f5113g;
        return socket instanceof SSLSocket ? super.o() : socket.isClosed() || this.f5113g.isOutputShutdown();
    }

    @Override
    public boolean p() {
        Socket socket = this.f5113g;
        return socket instanceof SSLSocket ? super.p() : socket.isClosed() || this.f5113g.isInputShutdown();
    }

    @Override
    public void q() {
        if (this.f5113g instanceof SSLSocket) {
            super.q();
        } else {
            B();
        }
    }

    public String toString() {
        return this.f5114h + " <--> " + this.f5115i;
    }

    @Override
    public void y() {
        try {
            if (p()) {
                return;
            }
            j();
        } catch (IOException e2) {
            f5112f.g(e2);
            this.f5113g.close();
        }
    }

    public a(Socket socket, int i2) {
        super(socket.getInputStream(), socket.getOutputStream());
        this.f5113g = socket;
        this.f5114h = (InetSocketAddress) socket.getLocalSocketAddress();
        this.f5115i = (InetSocketAddress) socket.getRemoteSocketAddress();
        socket.setSoTimeout(i2 > 0 ? i2 : 0);
        super.i(i2);
    }
}