⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 socketmanage_bp.java

📁 经过反编译和部分代码修改后的ultraimpro java源代码。可在netbean环境下成功编译。供学习和分析用。
💻 JAVA
字号:
// Decompiled by DJ v3.9.9.91 Copyright 2005 Atanas Neshkov  Date: 2006-5-1 19:31:42
// Home Page : http://members.fortunecity.com/neshkov/dj.html  - Check often for new version!
// Decompiler options: packimports(3) 

import java.io.InputStream;
import java.io.OutputStream;
import java.util.Hashtable;
import javax.microedition.io.Connector;
import javax.microedition.io.SocketConnection;

public final class SocketManage_bp
{

    public SocketManage_bp(String s, int i, ServerConnection_ar ar1)
    {
        a_javax_microedition_io_SocketConnection_fld = null;
        a_java_io_InputStream_fld = null;
        a_java_io_OutputStream_fld = null;
        blSocketOpen = false;
        a_ar_fld = ar1;
        b = false;
        String s1 = "socket://" + s + ":" + i;
        try
        {
            a_javax_microedition_io_SocketConnection_fld = (SocketConnection)Connector.open(s1);
            a_java_io_InputStream_fld = a_javax_microedition_io_SocketConnection_fld.openInputStream();
            a_java_io_OutputStream_fld = a_javax_microedition_io_SocketConnection_fld.openOutputStream();
            blSocketOpen = true;
            a_java_util_Hashtable_fld = new Hashtable();
        }
        catch(Exception _ex)
        {
            CloseSocket();
            return;
        }
        StartListen();
    }

    public final synchronized void CloseSocket()
    {
        if(!blSocketOpen)
            return;
        try
        {
            blSocketOpen = false;
            if(a_java_io_InputStream_fld != null)
            {
                a_java_io_InputStream_fld.close();
                a_java_io_InputStream_fld = null;
            }
            if(a_java_io_OutputStream_fld != null)
            {
                a_java_io_OutputStream_fld.close();
                a_java_io_OutputStream_fld = null;
            }
            if(a_javax_microedition_io_SocketConnection_fld != null)
            {
                a_javax_microedition_io_SocketConnection_fld.close();
                a_javax_microedition_io_SocketConnection_fld = null;
            }
        }
        catch(Exception _ex) { }
        a_ar_fld.d();
    }

    public final synchronized boolean Output(OutCommandComposit_ae ae1)
    {
        try
        {
            if(ae1.blHasPayload)
            {
                a_java_io_OutputStream_fld.write(ae1.GetOutputString().getBytes());
                a_java_io_OutputStream_fld.write(ae1.a_byte_array1d_fld);
                a_java_io_OutputStream_fld.write(ae1.b);
                a_java_io_OutputStream_fld.flush();
            } else
            {
                a_java_io_OutputStream_fld.write(ae1.GetOutputBytes());
                a_java_io_OutputStream_fld.flush();
            }
        }
        catch(Exception _ex)
        {
            return false;
        }
        int i;
        if((i = ae1.a_mod_toi()) >= 0 && ae1.CommandIndex == 2)
            a_java_util_Hashtable_fld.put(new Integer(i), ae1.b_mod_tos());
        return true;
    }

    private void StartListen()
    {
        SocketListen_z z1;
        (z1 = new SocketListen_z(this)).start();
    }

    public SocketConnection a_javax_microedition_io_SocketConnection_fld;
    public InputStream a_java_io_InputStream_fld;
    public OutputStream a_java_io_OutputStream_fld;
    public ServerConnection_ar a_ar_fld;
    public boolean blSocketOpen;
    public boolean b;
    public Hashtable a_java_util_Hashtable_fld;

    // Unreferenced inner class SocketListen_z
    /*
    class z_bp_local extends Thread
    {

        public final void run()
        {
            p p1;
            Object obj = null;
            p1 = new p(a.a_java_io_InputStream_fld, "UTF8");
//_L2:
            while(true) {
            be be1;
            if(!a.blSocketOpen)
                break; // Loop/switch isn't completed
            String s;
            try
            {
                if(a.b)
                    Thread.sleep(500L);
                if((s = p1.ReadLine()) == null)
                    break; // Loop/switch isn't completed 
            }
            catch(Exception _ex)
            {
                continue; // Loop/switch isn't completed 
            }
            if(s.equals("err"))
                continue; // Loop/switch isn't completed 

            try
            {
                be1 = new be(s);
            }
            catch(Exception _ex) {break;}
            
            int j;
            int k;
            if((j = be1.b()) > 0)
                try
                {
                    if((k = be1.e_mod_toi()) > 0)
                        be1.a_byte_array1d_fld = p1.ReadBytes(k);
                }
                catch(Exception _ex) { }
            String s1 = null;
            int i;
            if((i = be1.f_mod_toi()) >= 0 && be1.a_int_fld == 2)
                s1 = (String)a.a_java_util_Hashtable_fld.remove(new Integer(i));
            a.a_ar_fld.a(be1, s1);
            //if(true) goto _L2; else goto _L1
            }
//_L1:
            if(a.blSocketOpen)
                a.CloseSocket();
            return;
        }

        private final SocketManage_bp a;

            public z_bp_local()
            {
                a = SocketManage_bp.this;
            }
    } */

}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -