public static Object getIppValue()

in modules/print/src/main/java/common/org/apache/harmony/x/print/ipp/util/IppAttributeUtils.java [64:139]


    public static Object getIppValue(Attribute attr, byte ippvtag) {
        Object o = null;

        switch (ippvtag) {
        // integer values for the "value-tag" field.
        case IppAttribute.TAG_BOOLEAN:
        case IppAttribute.TAG_INTEGER:
        case IppAttribute.TAG_ENUM:
            if (attr instanceof IntegerSyntax) {
                o = new Integer(((IntegerSyntax) attr).getValue());
            } else if (attr instanceof EnumSyntax) {
                o = new Integer(((EnumSyntax) attr).getValue());
            } else if (attr instanceof DateTimeSyntax
                    || attr instanceof ResolutionSyntax
                    || attr instanceof SetOfIntegerSyntax
                    || attr instanceof Size2DSyntax
                    || attr instanceof TextSyntax || attr instanceof URISyntax) {
                // TODO - process other attr's types
            }
            break;
        // octetString values for the "value-tag" field.
        case IppAttribute.TAG_DATETIME:
        case IppAttribute.TAG_RESOLUTION:
        case IppAttribute.TAG_RANGEOFINTEGER:
        case IppAttribute.TAG_OCTETSTRINGUNSPECIFIEDFORMAT:
        case IppAttribute.TAG_TEXTWITHLANGUAGE:
        case IppAttribute.TAG_NAMEWITHLANGUAGE:
            if (attr instanceof IntegerSyntax) {
                // TODO - it seems that this needs to be fixed
                o = new Integer(((IntegerSyntax) attr).toString());
            } else if (attr instanceof EnumSyntax) {
                // TODO - it seems that this needs to be fixed
                o = new Integer(((EnumSyntax) attr).toString());
            } else if (attr instanceof DateTimeSyntax
                    || attr instanceof ResolutionSyntax
                    || attr instanceof SetOfIntegerSyntax
                    || attr instanceof Size2DSyntax) {
                // TODO - process other attr's types
            } else if (attr instanceof TextSyntax) {
                // TODO - it seems that this needs to be fixed
                o = new Integer(((TextSyntax) attr).toString());
            } else if (attr instanceof URISyntax) {
                // TODO - it seems that this needs to be fixed
                o = new Integer(((URISyntax) attr).toString());
            }
            break;
        // character-string values for the "value-tag" field
        case IppAttribute.TAG_TEXTWITHOUTLANGUAGE:
        case IppAttribute.TAG_NAMEWITHOUTLANGUAGE:
        case IppAttribute.TAG_KEYWORD:
        case IppAttribute.TAG_URI:
        case IppAttribute.TAG_URISCHEME:
        case IppAttribute.TAG_CHARSET:
        case IppAttribute.TAG_NATURAL_LANGUAGE:
        case IppAttribute.TAG_MIMEMEDIATYPE:
            if (attr instanceof IntegerSyntax) {
                o = ((IntegerSyntax) attr).toString();
            } else if (attr instanceof EnumSyntax) {
                o = ((EnumSyntax) attr).toString();
            } else if (attr instanceof DateTimeSyntax
                    || attr instanceof ResolutionSyntax
                    || attr instanceof SetOfIntegerSyntax
                    || attr instanceof Size2DSyntax) {
                // TODO - process other attr's types
            } else if (attr instanceof TextSyntax) {
                o = ((TextSyntax) attr).toString();
            } else if (attr instanceof URISyntax) {
                o = ((URISyntax) attr).toString();
            }
            break;
        default:
            break;
        }

        return o;
    }