Examples of CorbaPrimitiveHandler


Examples of org.apache.yoko.bindings.corba.types.CorbaPrimitiveHandler

        List<MemberType> structMembers = structType.getMember();
        // For this test, we know what each of the members are.  Create the correct handler and assign
        // each member a value
        MemberType m1 = structMembers.get(0);
        TypeCode m1TypeCode = CorbaUtils.getTypeCode(orb, m1.getIdltype(), staxObject.getTypeMaps());
        CorbaPrimitiveHandler member1 = new CorbaPrimitiveHandler(new QName(m1.getName()),
                                                                 m1.getIdltype(),
                                                                 m1TypeCode,
                                                                 null);
        Boolean member1Value = new Boolean(false);
        member1.setValue(member1Value);
        obj.addMember(member1);
       
        MemberType m2 = structMembers.get(1);
        TypeCode m2TypeCode = CorbaUtils.getTypeCode(orb, m2.getIdltype(), staxObject.getTypeMaps());
        CorbaPrimitiveHandler member2 = new CorbaPrimitiveHandler(new QName(m2.getName()),
                                                                 m2.getIdltype(),
                                                                 m2TypeCode,
                                                                 null);
        String member2Value = "Member 2 string";
        member2.setValue(member2Value);
        obj.addMember(member2);
       
        MemberType m3 = structMembers.get(2);
        TypeCode m3TypeCode = CorbaUtils.getTypeCode(orb, m3.getIdltype(), staxObject.getTypeMaps());
        CorbaPrimitiveHandler member3 = new CorbaPrimitiveHandler(new QName(m3.getName()),
                                                                 m3.getIdltype(),
                                                                 m3TypeCode,
                                                                 null);
        Float member3Value = new Float(12345.678);
        member3.setValue(member3Value);
        obj.addMember(member3);
       
        XMLInputFactory inputFactory = XMLInputFactory.newInstance();
        XMLOutputFactory outputFactory = XMLOutputFactory.newInstance();
        outputFactory.setProperty(XMLOutputFactory.IS_REPAIRING_NAMESPACES, Boolean.TRUE);
     
        ByteArrayOutputStream outStream = new ByteArrayOutputStream();
        XMLEventWriter evtWriter = null;
        try {
            evtWriter = outputFactory.createXMLEventWriter(outStream);
        } catch (XMLStreamException ex) {
        }
        assertNotNull(evtWriter);
       
        try {
            XMLEventFactory factory = XMLEventFactory.newInstance();
            staxObject.writeObjectToStax(obj, evtWriter, factory);
            evtWriter.flush();
        } catch (XMLStreamException ex) {
           
        }

        ByteArrayInputStream inStream = new ByteArrayInputStream(outStream.toByteArray());       
        XMLEventReader evtReader = null;
        try {           
            evtReader = inputFactory.createXMLEventReader(inStream);
            // read the first tag which should be a start document
            XMLEvent evt = evtReader.nextEvent();
            assertTrue(evt.isStartDocument());
        } catch (XMLStreamException ex) {
        }
        assertNotNull(evtReader);
       
        CorbaObjectHandler resultObj = staxObject.readObjectFromStax(evtReader,
                                                                     obj.getIdlType());
        assertNotNull(resultObj);
       
        assertTrue(resultObj instanceof CorbaStructHandler);
        CorbaStructHandler result = (CorbaStructHandler)resultObj;
       
        List<CorbaObjectHandler> resultMembers = result.getMembers();
        assertTrue(resultMembers.size() == 3);
       
        CorbaObjectHandler resultMember1Obj = resultMembers.get(0);
        assertTrue(resultMember1Obj instanceof CorbaPrimitiveHandler);
        CorbaPrimitiveHandler resultMember1 = (CorbaPrimitiveHandler)resultMember1Obj;
        Object resultMember1ValueObj = resultMember1.getValue();
        assertTrue(resultMember1ValueObj instanceof Boolean);
        Boolean resultMember1Value = (Boolean)resultMember1ValueObj;
        assertTrue(resultMember1Value.booleanValue() == member1Value.booleanValue());
       
        CorbaObjectHandler resultMember2Obj = resultMembers.get(1);
        assertTrue(resultMember2Obj instanceof CorbaPrimitiveHandler);
        CorbaPrimitiveHandler resultMember2 = (CorbaPrimitiveHandler)resultMember2Obj;
        Object resultMember2ValueObj = resultMember2.getValue();
        assertTrue(resultMember2ValueObj instanceof String);
        String resultMember2Value = (String)resultMember2ValueObj;
        assertTrue(resultMember2Value.equals(member2Value));
       
        CorbaObjectHandler resultMember3Obj = resultMembers.get(2);
        assertTrue(resultMember3Obj instanceof CorbaPrimitiveHandler);
        CorbaPrimitiveHandler resultMember3 = (CorbaPrimitiveHandler)resultMember3Obj;
        Object resultMember3ValueObj = resultMember3.getValue();
        assertTrue(resultMember3ValueObj instanceof Float);
        Float resultMember3Value = (Float)resultMember3ValueObj;
        assertTrue(resultMember3Value.floatValue() == member3Value.floatValue());
    }
View Full Code Here

Examples of org.apache.yoko.bindings.corba.types.CorbaPrimitiveHandler

        assertNotNull(obj);
       
        Character unionValue = new Character('u');
        TypeCode unionValueTC = CorbaUtils.getTypeCode(orb, CorbaConstants.NT_CORBA_WCHAR,
                                                       staxObject.getTypeMaps());
        CorbaPrimitiveHandler unionValueObj = new CorbaPrimitiveHandler(new QName("case12"),
                                                                        CorbaConstants.NT_CORBA_WCHAR,
                                                                        unionValueTC,
                                                                        null);
        unionValueObj.setValue(unionValue);
        Short discriminatorValue = new Short((short)1);
        TypeCode discriminatorTC = CorbaUtils.getTypeCode(orb, unionType.getDiscriminator(),
                                                          staxObject.getTypeMaps());
        CorbaPrimitiveHandler discriminator = new CorbaPrimitiveHandler(new QName("discriminator"),
                                                                       unionType.getDiscriminator(),
                                                                       discriminatorTC,
                                                                       null);
        discriminator.setValue(discriminatorValue);

        obj.setDiscriminator(discriminator);
        obj.setValue("1", unionValueObj);
       
        XMLInputFactory inputFactory = XMLInputFactory.newInstance();
        XMLOutputFactory outputFactory = XMLOutputFactory.newInstance();
        outputFactory.setProperty(XMLOutputFactory.IS_REPAIRING_NAMESPACES, Boolean.TRUE);
     
        ByteArrayOutputStream outStream = new ByteArrayOutputStream();
        XMLEventWriter evtWriter = null;
        try {
            evtWriter = outputFactory.createXMLEventWriter(outStream);
        } catch (XMLStreamException ex) {
        }
        assertNotNull(evtWriter);
       
        try {
            XMLEventFactory factory = XMLEventFactory.newInstance();
            staxObject.writeObjectToStax(obj, evtWriter, factory);
            evtWriter.flush();
        } catch (XMLStreamException ex) {
           
        }

        ByteArrayInputStream inStream = new ByteArrayInputStream(outStream.toByteArray());       
        XMLEventReader evtReader = null;
        try {           
            evtReader = inputFactory.createXMLEventReader(inStream);
            // read the first tag which should be a start document
            XMLEvent evt = evtReader.nextEvent();
            assertTrue(evt.isStartDocument());
        } catch (XMLStreamException ex) {
        }
        assertNotNull(evtReader);
       
        CorbaObjectHandler resultObj = staxObject.readObjectFromStax(evtReader,
                                                                     obj.getIdlType());
        assertNotNull(resultObj);
       
        assertTrue(resultObj instanceof CorbaUnionHandler);
        CorbaUnionHandler result = (CorbaUnionHandler)resultObj;
       
        CorbaObjectHandler resultDiscriminatorObj = result.getDiscriminator();
        assertTrue(resultDiscriminatorObj instanceof CorbaPrimitiveHandler);
        CorbaPrimitiveHandler resultDiscriminator = (CorbaPrimitiveHandler)resultDiscriminatorObj;
        Object resultDiscValueObj = resultDiscriminator.getValue();
        assertTrue(resultDiscValueObj instanceof Short);
        Short resultDiscValue = (Short)resultDiscValueObj;
        assertTrue(resultDiscValue.shortValue() == discriminatorValue.shortValue());
       
        CorbaObjectHandler resultValueObj = result.getValue();
        assertTrue(resultValueObj instanceof CorbaPrimitiveHandler);
        CorbaPrimitiveHandler resultValue = (CorbaPrimitiveHandler)resultValueObj;
        Object unionResultValueObj = resultValue.getValue();
        assertTrue(unionResultValueObj instanceof Character);
        Character unionResultValue = (Character)unionResultValueObj;
        assertTrue(unionResultValue.charValue() == unionValue.charValue());
    }
View Full Code Here

Examples of org.apache.yoko.bindings.corba.types.CorbaPrimitiveHandler

            } else {
                charEl = evt.asCharacters();
            }
            String value = charEl.getData();
            reader.nextEvent().asEndElement();
            CorbaPrimitiveHandler obj = new CorbaPrimitiveHandler(name, idlType, tc, null);
            obj.setValueFromData(value);
            return obj;
        } catch (java.lang.Exception ex) {
            LOG.log(Level.SEVERE, "Error: Object not correctly defined in the XML reader");
            throw new CorbaBindingException("Invalid XML event read", ex);
        }
View Full Code Here

Examples of org.apache.yoko.bindings.corba.types.CorbaPrimitiveHandler

    protected CorbaObjectHandler readAnonStringsFromStax(XMLEventReader reader,
                                                         QName idlType,
                                                         TypeCode tc,
                                                         XmlSchemaObject schemaType) {
        CorbaPrimitiveHandler obj = null;
       
        try {
            StartElement startEl = reader.nextEvent().asStartElement();
            Characters charEl = reader.nextEvent().asCharacters();
            reader.nextEvent().asEndElement();
           
            if (tc.kind().value() == TCKind._tk_string) {
                obj =
                    new CorbaPrimitiveHandler(startEl.getName(), CorbaConstants.NT_CORBA_STRING, tc, null);
            } else {
                obj =
                    new CorbaPrimitiveHandler(startEl.getName(), CorbaConstants.NT_CORBA_WSTRING, tc, null);
            }
            obj.setValueFromData(charEl.getData());
        } catch (java.lang.Exception ex) {
            LOG.log(Level.SEVERE, "Error: Object not correctly defined in the XML reader");
            throw new CorbaBindingException("Invalid XML event read", ex);
        }
        return obj;
View Full Code Here

Examples of org.apache.yoko.bindings.corba.types.CorbaPrimitiveHandler

            if (!readOctets) {
                addElementsToSequence(obj, reader, seqElementType, bound, schemaType);
            } else {
                QName valueQName = new QName("value");
                TypeCode valueTC = orb.get_primitive_tc(TCKind.from_int(TCKind._tk_octet));
                CorbaPrimitiveHandler handler = new CorbaPrimitiveHandler(valueQName,
                                                                          seqElementType,
                                                                          valueTC,
                                                                          null);
                obj.setTemplateElement(handler);
                XMLEvent evt = reader.nextEvent();
                Characters charEl = evt.asCharacters();
                String data = charEl.getData();
                byte[] value = data.getBytes();
                for (int i = 0; i < data.length(); i++) {
                    handler = new CorbaPrimitiveHandler(valueQName,
                                                        seqElementType,
                                                        valueTC,
                                                        null);
                    handler.setValue(new Byte(value[i]));
                    obj.addElement(handler);
                }
            }
            if (isTopLevel) {
                reader.nextEvent().asEndElement();
View Full Code Here

Examples of org.apache.yoko.bindings.corba.types.CorbaPrimitiveHandler

        } else {
            CorbaSequenceHandler seqHandler = (CorbaSequenceHandler) obj;
            List<CorbaObjectHandler> elements = seqHandler.getElements();
            byte[] value = new byte[elements.size()];
            for (int i = 0; i < elements.size(); i++) {
                CorbaPrimitiveHandler handler = (CorbaPrimitiveHandler) elements.get(i);
                value[i] = ((Byte) handler.getValue()).byteValue();
            }
            Characters charEvt = factory.createCharacters(new String(value));
            writer.add(charEvt);
        }
        if (isTopLevel) {
View Full Code Here

Examples of org.apache.yoko.bindings.corba.types.CorbaPrimitiveHandler

                                                                      TypeCode tc,
                                                                      XmlSchemaObject schemaType)
        throws CorbaBindingException {
        Union unionType = (Union) CorbaUtils.getCorbaType(idlType, typeMaps);
        CorbaUnionHandler obj = new CorbaUnionHandler(name, idlType, tc, unionType);
        CorbaPrimitiveHandler discObj =
            new CorbaPrimitiveHandler(new QName("discriminator"),
                                      unionType.getDiscriminator(),
                                      orb.get_primitive_tc(TCKind.from_int(TCKind._tk_boolean)),
                                      null);

        //only one union branch for a attribute / element nillable types.
        List<Unionbranch> branches = unionType.getUnionbranch();
        try {
            XMLEvent evt = reader.peek();
            if (schemaType instanceof XmlSchemaAttribute) {
                CorbaPrimitiveHandler value = getAttributeValue(evt, name, branches.get(0).getIdltype());
                if (value != null) {
                    discObj.setValue(Boolean.TRUE);
                    obj.setValue("value", value);
                    obj.addCase(value);
                } else {
View Full Code Here

Examples of org.apache.yoko.bindings.corba.types.CorbaPrimitiveHandler

                                                         XmlSchemaObject schemaType,
                                                         QName name,
                                                         XMLEventWriter writer,
                                                         XMLEventFactory factory)
        throws XMLStreamException {
        CorbaPrimitiveHandler discValue = (CorbaPrimitiveHandler) obj.getDiscriminator();     
        if (((Boolean) discValue.getValue()).booleanValue()) {
            CorbaObjectHandler value = obj.getValue();
            if (schemaType instanceof XmlSchemaAttribute) {
                QName attrName = name;
                if (!CorbaUtils.isAttributeFormQualified(serviceInfo, attrName.getNamespaceURI())) {
                    attrName = new QName("", attrName.getLocalPart());
View Full Code Here

Examples of org.apache.yoko.bindings.corba.types.CorbaPrimitiveHandler

        }
        return result;
    }

    private CorbaPrimitiveHandler getAttributeValue(XMLEvent evt, QName attrName, QName idlType) {
        CorbaPrimitiveHandler result = null;
        if (evt.isStartElement()) {
            StartElement el = (StartElement) evt;
            QName name = attrName;
            if (!CorbaUtils.isAttributeFormQualified(serviceInfo, attrName.getNamespaceURI())) {
                name = new QName("", attrName.getLocalPart());
            }
            Attribute attr = el.getAttributeByName(name);
            if (attr != null) {
                TypeCode tc = CorbaUtils.getTypeCode(orb, idlType, typeMaps);
                result = new CorbaPrimitiveHandler(new QName("value"), idlType, tc, null);
                result.setValueFromData(attr.getValue());
            }
        }
        return result;
    }
View Full Code Here

Examples of org.apache.yoko.bindings.corba.types.CorbaPrimitiveHandler

        // build the object holder for an array.
        TypeCode arrayTC = orb.create_array_tc(data.length, orb.get_primitive_tc(TCKind.tk_long));
        CorbaArrayHandler obj = new CorbaArrayHandler(new QName("Array"), arrayIdlType, arrayTC, arrayType);
        for (int i = 0; i < data.length; ++i) {
            CorbaPrimitiveHandler nestedObj =
                new CorbaPrimitiveHandler(new QName("item"), longIdlType,
                                      orb.get_primitive_tc(TCKind.tk_long), null);
            nestedObj.setValueFromData(Integer.toString(data[i]));
            obj.addElement(nestedObj);
        }

        Buffer buf = new Buffer();
        OutputStream oStream = new OutputStream(buf);
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.