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

📄 switchboard_bf.java

📁 经过反编译和部分代码修改后的ultraimpro java源代码。可在netbean环境下成功编译。供学习和分析用。
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
// 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.util.Hashtable;
import java.util.Vector;

public final class SwitchBoard_bf
    implements ServerConnection_ar
{
    private class bl_bf_local
    {

        public int a_int_fld;
        public Object a_java_lang_Object_fld;

        public bl_bf_local(int k, Object obj)
        {
            a_int_fld = k;
            a_java_lang_Object_fld = obj;
        }
    }


    public SwitchBoard_bf(String s, String s1, Notification_t t1)
    {
        d = null;
        a_boolean_fld = false;
        b_boolean_fld = false;
        a_int_fld = 0;
        a_java_lang_String_fld = s;
        b_java_lang_String_fld = s1;
        a_java_util_Vector_fld = new Vector();
        c_java_util_Vector_fld = new Vector();
        a_java_util_Hashtable_fld = new Hashtable();
        b_java_util_Hashtable_fld = new Hashtable();
        a_t_fld = t1;
    }

    public final void a(String s, int k, String s1, String s2)
    {
        e = s;
        a_java_lang_Integer_fld = new Integer(k);
        d = s1;
        c_java_lang_String_fld = s2;
        b_boolean_fld = false;
    }

    public final void SetupConnection()
    {
        a_bp_fld = new SocketManage_bp(e, a_java_lang_Integer_fld.intValue(), this);
        if(a_boolean_fld)
        {
            OutCommandComposit_ae ae1;
            (ae1 = new OutCommandComposit_ae(31, a_mod_toi())).AddString(a_java_lang_String_fld);
            ae1.AddString(c_java_lang_String_fld);
            a_bp_fld.Output(ae1);
            return;
        } else
        {
            OutCommandComposit_ae ae2;
            (ae2 = new OutCommandComposit_ae(4, a_mod_toi())).AddString(a_java_lang_String_fld);
            ae2.AddString(c_java_lang_String_fld);
            ae2.AddString(d);
            a_bp_fld.Output(ae2);
            return;
        }
    }

    public final void SendMsnMsg(boolean flag, int k, Object obj)
    {
        if(b_boolean_fld)
        {
            if(obj == null)
                return;
            if(k == 1)
            {
                OutCommandComposit_ae ae1 = new OutCommandComposit_ae(19, a_mod_toi());
                String s = "MIME-Version: 1.0\r\nContent-Type: text/plain; charset=UTF-8\r\n\r\n" + (String)obj;
                ae1.AddString("N");
                ae1.AddString(String.valueOf(Utf8Util_ao.GetEncodingSize(s)));
                ae1.a_java_lang_String_fld = s;
                if(!a_bp_fld.Output(ae1))
                {
                    a_bp_fld.CloseSocket();
                    d();
                    flag = true;
                }
            } else
            {
                int l = a_mod_toi();
                OutCommandComposit_ae ae2;
                (ae2 = (OutCommandComposit_ae)obj).a(l);
                if(!a_bp_fld.Output(ae2))
                {
                    a_bp_fld.CloseSocket();
                    d();
                    flag = true;
                } else
                {
                    a_java_util_Hashtable_fld.put(new Integer(l), new Integer(l));
                }
            }
        }
        if(!b_boolean_fld)
        {
            if(k != 4)
                c_java_util_Vector_fld.addElement(new bl(this, k, obj));
            if(flag)
            {
                a_t_fld.a_java_util_Vector_fld.addElement(this);
                a_t_fld.e();
            }
        }
    }

    public final void b()
    {
        Object obj = null;
        Vector vector = new Vector(3);
        for(int k = 0; k < b_java_util_Vector_static_fld.size(); k++)
        {
            h h1;
            String s;
            if((s = (h1 = (h)b_java_util_Vector_static_fld.elementAt(k)).j_java_lang_String_fld) == null || s.length() == 0)
            {
                if(h1.f_java_lang_String_fld.equals(b_java_lang_String_fld))
                    vector.addElement(h1);
                continue;
            }
            if(s.equals(d))
                vector.addElement(h1);
        }

        int l;
        if((l = vector.size()) > 0)
        {
            for(int i1 = 0; i1 < l; i1++)
                ((h)vector.elementAt(i1)).a(false, false);

            vector.removeAllElements();
        }
        OutCommandComposit_ae ae1 = new OutCommandComposit_ae(22, -1);
        a_bp_fld.Output(ae1);
        try
        {
            Thread.sleep(1000L);
        }
        catch(Exception _ex) { }
        a_bp_fld.CloseSocket();
    }

    public final void a(String s)
    {
        OutCommandComposit_ae ae1;
        (ae1 = new OutCommandComposit_ae(8, a_mod_toi())).AddString(s);
        a_bp_fld.Output(ae1);
    }

    public final void a(InputCommandProcess_be be1, String s)
    {
        switch(be1.CommandIndex)
        {
        case 7: // '\007' BYE
            a(be1);
            return;

        case 31: // '\037' USR
            b(be1);
            return;

        case 8: // '\b' CAL
            c(be1);
            return;

        case 16: // '\020' JOI
            d(be1);
            return;

        case 15: // '\017'
            e(be1);
            return;

        case 4: // '\004'
            f(be1);
            return;

        case 19: // '\023'
            g(be1);
            return;

        case 1: // '\001'
            i(be1);
            return;

        case 20: // '\024'
            h(be1);
            return;

        case 36: // '$'
            j(be1);
            // fall through

        case 2: // '\002'
        case 3: // '\003'
        case 5: // '\005'
        case 6: // '\006'
        case 9: // '\Notification_t'
        case 10: // '\n'
        case 11: // '\013'
        case 12: // '\f'
        case 13: // '\r'
        case 14: // '\016'
        case 17: // '\021'
        case 18: // '\022'
        case 21: // '\025'
        case 22: // '\026'
        case 23: // '\027'
        case 24: // '\030'
        case 25: // '\031'
        case 26: // '\032'
        case 27: // '\033'
        case 28: // '\034'
        case 29: // '\035'
        case 30: // '\036'
        case 32: // ' '
        case 33: // '!'
        case 34: // '"'
        case 35: // '#'
        default:
            return;
        }
    }

    public final void d()
    {
        b_boolean_fld = false;
        if(d != null)
            a_t_fld.e(d);
    }

    private void a(InputCommandProcess_be be1)
    {
        String s;
        if((s = be1.e()) == null)
            return;
        String s1 = null;
        int k = 0;
        do
        {
            if(k >= a_java_util_Vector_fld.size())
                break;
            if(((String[])a_java_util_Vector_fld.elementAt(k))[0].equals(s))
            {
                s1 = ((String[])a_java_util_Vector_fld.elementAt(k))[1];
                a_java_util_Vector_fld.removeElementAt(k);
                break;
            }
            k++;
        } while(true);
        ConnectionManage_ag.GetObject().a(d, s1, a_java_util_Vector_fld);
        if(a_java_util_Vector_fld.size() == 0)
        {
            for(int l = 0; l < b_java_util_Vector_static_fld.size(); l++)
                if(((h)b_java_util_Vector_static_fld.elementAt(l)).j_java_lang_String_fld.equals(d))
                    return;

            OutCommandComposit_ae ae1 = new OutCommandComposit_ae(22, -1);
            a_bp_fld.Output(ae1);
            try
            {
                Thread.sleep(500L);
            }
            catch(Exception _ex) { }
            a_bp_fld.CloseSocket();
        }
    }

    private void b(InputCommandProcess_be be1)
    {
        OutCommandComposit_ae ae1;
        (ae1 = new OutCommandComposit_ae(8, a_mod_toi())).AddString(b_java_lang_String_fld);
        a_bp_fld.Output(ae1);
    }

⌨️ 快捷键说明

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