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

📄 ctbasic.java

📁 UCS (Ultra Corba Simulator) is one more powerful corba client/servant simulator tool than other simi
💻 JAVA
字号:
package com.corba.mnq.tool.idl.type;

import com.corba.mnq.main.MNQmainFrame;
import com.corba.mnq.tool.Warehouse;
import com.corba.mnq.ui.ArgsTable;

import org.omg.CORBA.TypeCode;
import org.omg.CORBA.portable.OutputStream;

public class CTBasic extends TypeBase {

    public CTBasic() {
        super();
        // TODO Auto-generated constructor stub
    }

    public TypeBase t_any;

    public TypeBase cloneType() {
        CTBasic t = new CTBasic();
        t.disName = disName;
        t.dmtn = dmtn;
        t.dn = dn;
        t.id = id;
        t.rdn = rdn;
        t.val = val;
        t.valType = valType;
        if (t_any != null)
            t.t_any = t_any.cloneType();
        return t;
    }

    public String toCaseLabel(Object item) {

        if (item instanceof Boolean) { return ((Boolean) item).toString(); }
        if (item != null)
            return item.toString();
        return rdn;
    }

    public TypeCode type() {
        // TODO Auto-generated method stub
        if (rdn.equalsIgnoreCase("float"))
            return orb.get_primitive_tc(org.omg.CORBA.TCKind.tk_float);
        if (rdn.equalsIgnoreCase("double"))
            return orb.get_primitive_tc(org.omg.CORBA.TCKind.tk_double);
        if (rdn.equalsIgnoreCase("long double") || rdn.equalsIgnoreCase("longdouble"))
            return orb.get_primitive_tc(org.omg.CORBA.TCKind.tk_longdouble);
        if (rdn.equalsIgnoreCase("short"))
            return orb.get_primitive_tc(org.omg.CORBA.TCKind.tk_short);
        if (rdn.equalsIgnoreCase("long"))
            return orb.get_primitive_tc(org.omg.CORBA.TCKind.tk_long);
        if (rdn.equalsIgnoreCase("long long") || rdn.equalsIgnoreCase("longlong"))
            return orb.get_primitive_tc(org.omg.CORBA.TCKind.tk_longlong);
        if (rdn.equalsIgnoreCase("unsigned short") || rdn.equalsIgnoreCase("unsignedshort"))
            return orb.get_primitive_tc(org.omg.CORBA.TCKind.tk_ushort);
        if (rdn.equalsIgnoreCase("unsigned long") || rdn.equalsIgnoreCase("unsignedlong"))
            return orb.get_primitive_tc(org.omg.CORBA.TCKind.tk_ulong);
        if (rdn.equalsIgnoreCase("unsigned long long") || rdn.equalsIgnoreCase("unsignedlonglong"))
            return orb.get_primitive_tc(org.omg.CORBA.TCKind.tk_ulonglong);
        if (rdn.equalsIgnoreCase("char"))
            return orb.get_primitive_tc(org.omg.CORBA.TCKind.tk_char);
        if (rdn.equalsIgnoreCase("wchar"))
            return orb.get_primitive_tc(org.omg.CORBA.TCKind.tk_wchar);
        if (rdn.equalsIgnoreCase("boolean"))
            return orb.get_primitive_tc(org.omg.CORBA.TCKind.tk_boolean);
        if (rdn.equalsIgnoreCase("octet"))
            return orb.get_primitive_tc(org.omg.CORBA.TCKind.tk_octet);
        if (rdn.equalsIgnoreCase("any"))
            return orb.get_primitive_tc(org.omg.CORBA.TCKind.tk_any);

        if (rdn.equalsIgnoreCase("string"))
            return orb.create_string_tc(0);
        if (rdn.equalsIgnoreCase("wstring"))
            return orb.create_wstring_tc(0);

        if (rdn.equalsIgnoreCase("void"))
            return orb.get_primitive_tc(org.omg.CORBA.TCKind.tk_void);

        return null;
    }

    /**
     * Method: "read"
     * 
     * @param istream
     * @return
     */
    public Object read(org.omg.CORBA.portable.InputStream istream) {
        Object ret = null;

        // TODO Auto-generated method stub
        if (rdn.equalsIgnoreCase("float")) {
            ret = new Float(istream.read_float());
        } else if (rdn.equalsIgnoreCase("double")) {
            ret = new Double(istream.read_double());
        } else if (rdn.equalsIgnoreCase("long double") || rdn.equalsIgnoreCase("longdouble")) {
            ret = new Double(istream.read_double());
        } else if (rdn.equalsIgnoreCase("short")) {
            ret = new Short(istream.read_short());
        } else if (rdn.equalsIgnoreCase("long")) {
            ret = new Integer(istream.read_long());
        } else if (rdn.equalsIgnoreCase("long long") || rdn.equalsIgnoreCase("longlong")) {
            ret = new Long(istream.read_longlong());
        } else if (rdn.equalsIgnoreCase("unsigned short") || rdn.equalsIgnoreCase("unsignedshort")) {
            ret = new Short(istream.read_ushort());
        } else if (rdn.equalsIgnoreCase("unsigned long") || rdn.equalsIgnoreCase("unsignedlong")) {
            ret = new Integer(istream.read_ulong());
        } else if (rdn.equalsIgnoreCase("unsigned long long")
                || rdn.equalsIgnoreCase("unsignedlonglong")) {
            ret = new Long(istream.read_ulonglong());
        } else if (rdn.equalsIgnoreCase("char")) {
            ret = new Character(istream.read_char());
        } else if (rdn.equalsIgnoreCase("wchar")) {
            ret = new Character(istream.read_wchar());
        } else if (rdn.equalsIgnoreCase("boolean")) {
            ret = new Boolean(istream.read_boolean());
        } else if (rdn.equalsIgnoreCase("octet")) {
            ret = new Byte(istream.read_octet());
        } else if (rdn.equalsIgnoreCase("any")) {
            ret = istream.read_any();
        } else if (rdn.equalsIgnoreCase("string")) {
            ret = new String(istream.read_string());
        } else if (rdn.equalsIgnoreCase("wstring")) {
            ret = new String(istream.read_wstring());
        }

        return ret;
    }

    public void write(OutputStream ostream, Object value) {
        // TODO Auto-generated method stub
        if (rdn.equalsIgnoreCase("float")) {
            ostream.write_float(((Float) value).floatValue());
        } else if (rdn.equalsIgnoreCase("double")) {
            ostream.write_double(((Double) value).doubleValue());
        } else if (rdn.equalsIgnoreCase("long double") || rdn.equalsIgnoreCase("longdouble")) {
            ostream.write_double(((Double) value).doubleValue());
        } else if (rdn.equalsIgnoreCase("short")) {
            ostream.write_short(((Short) value).shortValue());
        } else if (rdn.equalsIgnoreCase("long")) {
            ostream.write_long(((Integer) value).intValue());
        } else if (rdn.equalsIgnoreCase("long long") || rdn.equalsIgnoreCase("longlong")) {
            ostream.write_longlong(((Long) value).longValue());
        } else if (rdn.equalsIgnoreCase("unsigned short") || rdn.equalsIgnoreCase("unsignedshort")) {
            ostream.write_ushort(((Short) value).shortValue());
        } else if (rdn.equalsIgnoreCase("unsigned long") || rdn.equalsIgnoreCase("unsignedlong")) {
            ostream.write_ulong(((Integer) value).intValue());
        } else if (rdn.equalsIgnoreCase("unsigned long long")
                || rdn.equalsIgnoreCase("unsignedlonglong")) {
            ostream.write_ulonglong(((Long) value).longValue());
        } else if (rdn.equalsIgnoreCase("char")) {
            ostream.write_char(((Character) value).charValue());
        } else if (rdn.equalsIgnoreCase("wchar")) {
            ostream.write_wchar(((Character) value).charValue());
        } else if (rdn.equalsIgnoreCase("boolean")) {
            ostream.write_boolean(((Boolean) value).booleanValue());
        } else if (rdn.equalsIgnoreCase("octet")) {
            ostream.write_octet(((Byte) value).byteValue());
        } else if (rdn.equalsIgnoreCase("any")) {
            ostream.write_any((org.omg.CORBA.Any) value);
        } else if (rdn.equalsIgnoreCase("string")) {
            ostream.write_string((String) value);
        } else if (rdn.equalsIgnoreCase("wstring")) {
            ostream.write_wstring((String) value);
        }
    }

    /**
     * getter for valType
     * 
     * @return Returns the valType.
     */
    public String getValType() {

        if (rdn.equalsIgnoreCase("float")) {
            return "java.lang.Float";
        } else if (rdn.equalsIgnoreCase("double")) {
            return "java.lang.Double";
        } else if (rdn.equalsIgnoreCase("long double") || rdn.equalsIgnoreCase("longdouble")) {
            return "java.lang.Double";
        } else if (rdn.equalsIgnoreCase("short")) {
            return "java.lang.Short";
        } else if (rdn.equalsIgnoreCase("long")) {
            return "java.lang.Integer";
        } else if (rdn.equalsIgnoreCase("long long") || rdn.equalsIgnoreCase("longlong")) {
            return "java.lang.Long";
        } else if (rdn.equalsIgnoreCase("unsigned short") || rdn.equalsIgnoreCase("unsignedshort")) {
            return "java.lang.Short";
        } else if (rdn.equalsIgnoreCase("unsigned long") || rdn.equalsIgnoreCase("unsignedlong")) {
            return "java.lang.Integer";
        } else if (rdn.equalsIgnoreCase("unsigned long long")
                || rdn.equalsIgnoreCase("unsignedlonglong")) {
            return "java.lang.Long";
        } else if (rdn.equalsIgnoreCase("char")) {
            return "java.lang.Character";
        } else if (rdn.equalsIgnoreCase("wchar")) {
            return "java.lang.Character";
        } else if (rdn.equalsIgnoreCase("boolean")) {
            return "java.lang.Boolean";
        } else if (rdn.equalsIgnoreCase("octet")) {
            return "java.lang.Byte";
        } else if (rdn.equalsIgnoreCase("any")) {
            if (t_any != null)
                return t_any.getValType();
            else
                return "java.lang.Object";
        } else if (rdn.equalsIgnoreCase("string")) {
            return "java.lang.String";
        } else if (rdn.equalsIgnoreCase("wstring")) { return "java.lang.String"; }
        // else if (rdn.equalsIgnoreCase("void")) { return "void"; }

        return "java.lang.Object";
    }

    public boolean compare(TypeBase t) {
        if (!selected)
            return true;
        if (!type().equal(t.type()))
            return false;

        if (!match(strval, t.strval))
            return false;

        return true;
    }

    public void getValueFromTree() {
        ArgsTable table = (ArgsTable) Warehouse.node2table.get(dmtn);
        String text = table.getInputValue();
        strval = text;
        do {
            try {
                if (rdn.equalsIgnoreCase("float")) {
                    val = Float.valueOf(text);
                } else if (rdn.equalsIgnoreCase("double")) {
                    val = Double.valueOf(text);
                } else if (rdn.equalsIgnoreCase("long double")
                        || rdn.equalsIgnoreCase("longdouble")) {
                    val = Double.valueOf(text);
                } else if (rdn.equalsIgnoreCase("short")) {
                    val = Short.valueOf(text);
                } else if (rdn.equalsIgnoreCase("long")) {
                    val = Integer.valueOf(text);
                } else if (rdn.equalsIgnoreCase("long long") || rdn.equalsIgnoreCase("longlong")) {
                    val = Long.valueOf(text);
                } else if (rdn.equalsIgnoreCase("unsigned short")
                        || rdn.equalsIgnoreCase("unsignedshort")) {
                    val = Short.valueOf(text);
                } else if (rdn.equalsIgnoreCase("unsigned long")
                        || rdn.equalsIgnoreCase("unsignedlong")) {
                    val = Integer.valueOf(text);
                } else if (rdn.equalsIgnoreCase("unsigned long long")
                        || rdn.equalsIgnoreCase("unsignedlonglong")) {
                    val = Long.valueOf(text);
                } else if (rdn.equalsIgnoreCase("char")) {
                    val = new Character(text.charAt(0));
                } else if (rdn.equalsIgnoreCase("wchar")) {
                    val = new Character(text.charAt(0));
                } else if (rdn.equalsIgnoreCase("boolean")) {
                    val = Boolean.valueOf(text);
                } else if (rdn.equalsIgnoreCase("octet")) {
                    val = Byte.valueOf(text);
                } else if (rdn.equalsIgnoreCase("any")) {
                    // TODO update in the future
                    t_any.getValueFromTree();
                    val = t_any.toAny();
                } else if (rdn.equalsIgnoreCase("string")) {
                    val = text;
                } else if (rdn.equalsIgnoreCase("wstring")) {
                    val = text;
                }

                break;
            } catch (Exception e) {
                text = "0";
                MNQmainFrame.commonPane.appendln(e.getMessage());
            }
        } while (true);
    }

    public void setStrValue(String str) {
        String text = str;
        strval = str;
        try {
            if (rdn.equalsIgnoreCase("float")) {
                val = Float.valueOf(text);
            } else if (rdn.equalsIgnoreCase("double")) {
                val = Double.valueOf(text);
            } else if (rdn.equalsIgnoreCase("long double") || rdn.equalsIgnoreCase("longdouble")) {
                val = Double.valueOf(text);
            } else if (rdn.equalsIgnoreCase("short")) {
                val = Short.valueOf(text);
            } else if (rdn.equalsIgnoreCase("long")) {
                val = Integer.valueOf(text);
            } else if (rdn.equalsIgnoreCase("long long") || rdn.equalsIgnoreCase("longlong")) {
                val = Long.valueOf(text);
            } else if (rdn.equalsIgnoreCase("unsigned short")
                    || rdn.equalsIgnoreCase("unsignedshort")) {
                val = Short.valueOf(text);
            } else if (rdn.equalsIgnoreCase("unsigned long")
                    || rdn.equalsIgnoreCase("unsignedlong")) {
                val = Integer.valueOf(text);
            } else if (rdn.equalsIgnoreCase("unsigned long long")
                    || rdn.equalsIgnoreCase("unsignedlonglong")) {
                val = Long.valueOf(text);
            } else if (rdn.equalsIgnoreCase("char")) {
                val = new Character(text.charAt(0));
            } else if (rdn.equalsIgnoreCase("wchar")) {
                val = new Character(text.charAt(0));
            } else if (rdn.equalsIgnoreCase("boolean")) {
                val = Boolean.valueOf(text);
            } else if (rdn.equalsIgnoreCase("octet")) {
                val = Byte.valueOf(text);
            } else if (rdn.equalsIgnoreCase("any")) {
                // TODO update in the future
                t_any.setStrValue(text);
                val = t_any.toAny();
            } else if (rdn.equalsIgnoreCase("string")) {
                val = text;
            } else if (rdn.equalsIgnoreCase("wstring")) {
                val = text;
            }
        } catch (Exception e) {
            setStrValue("0");
            MNQmainFrame.commonPane.appendln(e.getMessage());
        }
    }

}
/* EOF */

⌨️ 快捷键说明

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