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

📄 javaenumtypewriter.java

📁 Java有关XML编程需要用到axis 的源代码 把里面bin下的包导入相应的Java工程 进行使用
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
        // FromValue returns the unique enumeration value object from the table        pw.println("    public static " + javaName + " fromValue(" + baseType                + " value)");        pw.println("          throws java.lang.IllegalArgumentException {");        pw.println("        " + javaName + " enumeration = (" + javaName + ")");        if (baseClass.equals("java.lang.String")                || baseClass.equals(baseType)) {            pw.println("            _table_.get(value);");        } else {            pw.println("            _table_.get(new " + baseClass                    + "(value));");        }        pw.println(                "        if (enumeration==null) throw new java.lang.IllegalArgumentException();");        pw.println("        return enumeration;");        pw.println("    }");        // FromString returns the unique enumeration value object from a string representation        pw.println("    public static " + javaName                + " fromString(java.lang.String value)");        pw.println("          throws java.lang.IllegalArgumentException {");        if (baseClass.equals("java.lang.String")) {            pw.println("        return fromValue(value);");        } else if (baseClass.equals("javax.xml.namespace.QName")) {            pw.println("        try {");            pw.println("            return fromValue(javax.xml.namespace.QName.valueOf"                    + "(value));");            pw.println("        } catch (Exception e) {");            pw.println(                    "            throw new java.lang.IllegalArgumentException();");            pw.println("        }");        } else if (baseClass.equals(baseType)) {            pw.println("        try {");            pw.println("            return fromValue(new " + baseClass                    + "(value));");            pw.println("        } catch (Exception e) {");            pw.println(                    "            throw new java.lang.IllegalArgumentException();");            pw.println("        }");        } else if (baseClass.equals("java.lang.Character")) {            pw.println("        if (value != null && value.length() == 1);");            pw.println("            return fromValue(value.charAt(0));");            pw.println(                    "        throw new java.lang.IllegalArgumentException();");        } else if (baseClass.equals("java.lang.Integer")) {            pw.println("        try {");            pw.println(                    "            return fromValue(java.lang.Integer.parseInt(value));");            pw.println("        } catch (Exception e) {");            pw.println(                    "            throw new java.lang.IllegalArgumentException();");            pw.println("        }");        } else {            String parse = "parse"                    + baseClass.substring(baseClass.lastIndexOf(".")                    + 1);            pw.println("        try {");            pw.println("            return fromValue(" + baseClass + "."                    + parse + "(value));");            pw.println("        } catch (Exception e) {");            pw.println(                    "            throw new java.lang.IllegalArgumentException();");            pw.println("        }");        }        pw.println("    }");        // Equals == to determine equality value.        // Since enumeration values are singletons, == is appropriate for equals()        pw.println(                "    public boolean equals(java.lang.Object obj) {return (obj == this);}");        // Provide a reasonable hashCode method (hashCode of the string value of the enumeration)        pw.println(                "    public int hashCode() { return toString().hashCode();}");        // toString returns a string representation of the enumerated value        if (baseClass.equals("java.lang.String")) {            pw.println(                    "    public java.lang.String toString() { return _value_;}");        } else if (baseClass.equals(baseType)) {            pw.println(                    "    public java.lang.String toString() { return _value_.toString();}");        } else {            pw.println(                    "    public java.lang.String toString() { return java.lang.String.valueOf(_value_);}");        }        pw.println(                "    public java.lang.Object readResolve() throws java.io.ObjectStreamException { return fromValue(_value_);}");        pw.println(                "    public static org.apache.axis.encoding.Serializer getSerializer(");        pw.println("           java.lang.String mechType, ");        pw.println("           java.lang.Class _javaType,  ");        pw.println("           javax.xml.namespace.QName _xmlType) {");        pw.println("        return ");        pw.println(                "          new org.apache.axis.encoding.ser.EnumSerializer(");        pw.println("            _javaType, _xmlType);");        pw.println("    }");        pw.println(                "    public static org.apache.axis.encoding.Deserializer getDeserializer(");        pw.println("           java.lang.String mechType, ");        pw.println("           java.lang.Class _javaType,  ");        pw.println("           javax.xml.namespace.QName _xmlType) {");        pw.println("        return ");        pw.println(                "          new org.apache.axis.encoding.ser.EnumDeserializer(");        pw.println("            _javaType, _xmlType);");        pw.println("    }");        pw.println("    // " + Messages.getMessage("typeMeta"));        pw.println(                "    private static org.apache.axis.description.TypeDesc typeDesc =");        pw.println("        new org.apache.axis.description.TypeDesc("                + Utils.getJavaLocalName(type.getName()) + ".class);");        pw.println();        pw.println("    static {");        pw.println("        typeDesc.setXmlType("                + Utils.getNewQName(type.getQName()) + ");");        pw.println("    }");        pw.println("    /**");        pw.println("     * " + Messages.getMessage("returnTypeMeta"));        pw.println("     */");        pw.println(                "    public static org.apache.axis.description.TypeDesc getTypeDesc() {");        pw.println("        return typeDesc;");        pw.println("    }");        pw.println();    }    // writeFileBody    /**     * Get the enumeration names for the values.     * The name is affected by whether all of the values of the enumeration     * can be expressed as valid java identifiers.     *      * @param bv Vector base and values vector from getEnumerationBaseAndValues     * @return Vector names of enum value identifiers.     */    public static Vector getEnumValueIds(Vector bv) {        boolean validJava = true;    // Assume all enum values are valid ids        // Walk the values looking for invalid ids        for (int i = 1; (i < bv.size()) && validJava; i++) {            String value = (String) bv.get(i);            if (!JavaUtils.isJavaId(value)) {                validJava = false;            }        }        // Build the vector of ids        Vector ids = new Vector();        for (int i = 1; i < bv.size(); i++) {            // If any enum values are not valid java, then            // all of the ids are of the form value<1..N>.            if (!validJava) {                ids.add("value" + i);            } else {                ids.add((String) bv.get(i));            }        }        return ids;    }    /** Generate a java source file for enum class.     * If the emitter works in deploy mode and the class already exists, the source wull not be generated.     */    public void generate() throws IOException {        String fqcn = getPackage() + "." + getClassName();	        if (emitter.isDeploy()) {            if (!emitter.doesExist(fqcn)) {                super.generate();            }        } else {            super.generate();        }    }}    // class JavaEnumTypeWriter

⌨️ 快捷键说明

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