Examples of CorbaStructHandler


Examples of org.apache.cxf.binding.corba.types.CorbaStructHandler

        if (template instanceof CorbaSequenceHandler) {
            CorbaSequenceHandler templateSeq = (CorbaSequenceHandler) template;
            ((CorbaSequenceHandler)handler).
                setTemplateElement(templateSeq.getTemplateElement());
        } else if (template instanceof CorbaStructHandler) {
            CorbaStructHandler templateStruct = (CorbaStructHandler) template;
            CorbaStructHandler struct = (CorbaStructHandler) handler;
            struct.setRecursive(template.isRecursive());
            List<CorbaObjectHandler> members = templateStruct.getMembers();
            for (int i = 0; i < members.size(); i++) {
                CorbaObjectHandler member = initializeCorbaObjectHandler(members.get(i));
                struct.addMember(member);
            }          
        } else if (template instanceof CorbaArrayHandler) {
            CorbaArrayHandler templateArray = (CorbaArrayHandler) template;
            CorbaArrayHandler array = (CorbaArrayHandler) handler;
            List<CorbaObjectHandler> elements = templateArray.getElements();
View Full Code Here

Examples of org.apache.cxf.binding.corba.types.CorbaStructHandler

       
        throw new CorbaBindingException("CorbaObjectWriter: unable to find enumeration label");
    }

    public void writeStruct(CorbaObjectHandler obj) throws CorbaBindingException {
        CorbaStructHandler structHandler = (CorbaStructHandler)obj;
        List<CorbaObjectHandler> structElements = structHandler.getMembers();

        for (int i = 0; i < structElements.size(); ++i) {
            this.write(structElements.get(i));
        }
    }
View Full Code Here

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

        QName objIdlType = new QName(staxTestNamespaceURI, "TestStruct", staxTestPrefix);
        CorbaTypeImpl type = CorbaUtils.getCorbaType(objIdlType, staxObject.getTypeMaps());
        assertTrue(type instanceof Struct);
        Struct structType = (Struct)type;
        TypeCode objTypeCode = CorbaUtils.getTypeCode(orb, objIdlType, staxObject.getTypeMaps());
        CorbaStructHandler obj = new CorbaStructHandler(objName, objIdlType, objTypeCode, structType);
        assertNotNull(obj);

        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;
View Full Code Here

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

                                                    XmlSchemaObject schemaType)
        throws CorbaBindingException {
        if (schemaType == null) {
            throw new CorbaBindingException("Couldn't find xml schema object for : " + idlType);
        }        
        CorbaStructHandler obj = null;
        try {           
            Struct structType = (Struct) CorbaUtils.getCorbaType(idlType, typeMaps);
            XmlSchemaObjectCollection attrs = null;
            XmlSchemaObjectCollection members = null;
           
            boolean readElement = false;

            XmlSchemaObject stype = schemaType;
            if (schemaType instanceof XmlSchemaElement) {
                XmlSchemaElement el = (XmlSchemaElement) schemaType;
                stype = el.getSchemaType();
                if (stype == null) {
                    stype = CorbaUtils.getXmlSchemaType(serviceInfo, el.getRefName());
                }
                readElement = true;
            }
            if (stype instanceof XmlSchemaComplexType) {
                XmlSchemaComplexType ctype = (XmlSchemaComplexType) stype;
                attrs = ctype.getAttributes();
                stype = ctype.getParticle();
                readElement = true;
            }
            if (stype instanceof XmlSchemaGroupRef) {
                members = ((XmlSchemaGroupRef) stype).getParticle().getItems();
            } else if (stype instanceof XmlSchemaGroupBase) {
                members = ((XmlSchemaGroupBase) stype).getItems();
            }
            QName elName;
            if ((attrs != null) && (attrs.getCount() > 0)) {
                elName = reader.peek().asStartElement().getName();
            } else if (readElement) {
                elName = reader.nextEvent().asStartElement().getName();
            } else {
                elName = CorbaUtils.EMPTY_QNAME;
            }
            obj = new CorbaStructHandler(elName, idlType, tc, structType);

            List<MemberType> structMembers = structType.getMember();
            int attrCount = 0;
            int memberCount = 0;
            for (int i = 0; i < structMembers.size(); ++i) {
                XmlSchemaObject schemaObj;
                if ((attrs != null) && (attrCount < attrs.getCount())) {
                    schemaObj = attrs.getItem(attrCount++);
                } else {
                    schemaObj = members.getItem(memberCount++);
                }
                CorbaObjectHandler member = readObjectFromStax(reader,
                                                               structMembers.get(i).getIdltype(),
                                                               schemaObj,
                                                               true);
                obj.addMember(member);
                if ((attrs != null) && (attrs.getCount() != 0) && (attrCount == attrs.getCount())) {
                    //Finished reading all the attributes, now read the start element
                    reader.nextEvent();
                    attrCount++;
                }
View Full Code Here

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

        if (writeElement) {
            StartElement startEl = factory.createStartElement(objName, null, null);
            writer.add(startEl);
        }
       
        CorbaStructHandler structHandler = (CorbaStructHandler)obj;
        List<CorbaObjectHandler> elements = structHandler.getMembers();
        int attrCount = 0;
        int memberCount = 0;
        for (Iterator<CorbaObjectHandler> elementsIter = elements.iterator(); elementsIter.hasNext();) {
            XmlSchemaObject schemaObj;
            if ((attrs != null) && (attrCount != attrs.getCount())) {
View Full Code Here

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

        structMembers[0] = new StructMember("member1", orb.get_primitive_tc(TCKind.tk_long), null);
        structMembers[1] = new StructMember("member2", orb.get_primitive_tc(TCKind.tk_string), null);
        structMembers[2] = new StructMember("member3", orb.get_primitive_tc(TCKind.tk_boolean), null);
        TypeCode structTC = orb.create_struct_tc("IDL:org.apache.yoko.TestStruct/1.0", "TestStruct",
                                                 structMembers);
        CorbaStructHandler obj = new CorbaStructHandler(new QName("TestStruct"), structIdlType,
                                                        structTC, structType);
        CorbaPrimitiveHandler memberObj1 =
            new CorbaPrimitiveHandler(new QName("member1"), longIdlType, structMembers[0].type, null);
        CorbaPrimitiveHandler memberObj2 =
            new CorbaPrimitiveHandler(new QName("member2"), stringIdlType, structMembers[1].type, null);
        CorbaPrimitiveHandler memberObj3 =
            new CorbaPrimitiveHandler(new QName("member3"), boolIdlType, structMembers[2].type, null);
       
        memberObj1.setValueFromData(Integer.toString(member1));
        memberObj2.setValueFromData(member2);
        memberObj3.setValueFromData(Boolean.toString(member3));
       
        obj.addMember(memberObj1);
        obj.addMember(memberObj2);
        obj.addMember(memberObj3);
       
        Buffer buf = new Buffer();
        OutputStream oStream = new OutputStream(buf);
        CorbaObjectWriter writer = new CorbaObjectWriter(oStream);
        writer.writeStruct(obj);
View Full Code Here

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

       
        throw new CorbaBindingException("CorbaObjectWriter: unable to find enumeration label");
    }

    public void writeStruct(CorbaObjectHandler obj) throws CorbaBindingException {
        CorbaStructHandler structHandler = (CorbaStructHandler)obj;
        List<CorbaObjectHandler> structElements = structHandler.getMembers();

        for (int i = 0; i < structElements.size(); ++i) {
            this.write(structElements.get(i));
        }
    }
View Full Code Here

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

        CorbaEnumHandler enumObj = (CorbaEnumHandler)obj;
        enumObj.setValue(enumerators.get(enumIndex).getValue());
    }

    public void readStruct(CorbaObjectHandler obj) throws CorbaBindingException {
        CorbaStructHandler structObj = (CorbaStructHandler)obj;
        List<CorbaObjectHandler> structMembers = structObj.getMembers();

        for (int i = 0; i < structMembers.size(); ++i) {
            this.read(structMembers.get(i));
        }
    }
View Full Code Here

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

        structMembers[0] = new StructMember("member1", orb.get_primitive_tc(TCKind.tk_long), null);
        structMembers[1] = new StructMember("member2", orb.get_primitive_tc(TCKind.tk_string), null);
        structMembers[2] = new StructMember("member3", orb.get_primitive_tc(TCKind.tk_boolean), null);
        TypeCode structTC = orb.create_struct_tc("IDL:org.apache.yoko.TestStruct/1.0", "TestStruct",
                                                 structMembers);
        CorbaStructHandler obj = new CorbaStructHandler(new QName("TestStruct"), structIdlType,
                                                      structTC, structType);
        obj.addMember(
                new CorbaPrimitiveHandler(new QName("member1"), longIdlType, structMembers[0].type, null));
        obj.addMember(
                new CorbaPrimitiveHandler(new QName("member2"), stringIdlType, structMembers[1].type, null));
        obj.addMember(
                new CorbaPrimitiveHandler(new QName("member3"), boolIdlType, structMembers[2].type, null));
       
        reader.readStruct(obj);
       
        List<CorbaObjectHandler> nestedObjs = obj.getMembers();
        assertTrue(new Integer(((CorbaPrimitiveHandler)nestedObjs.get(0)).getDataFromValue()).intValue()
                   == member1);
        assertTrue(((CorbaPrimitiveHandler)nestedObjs.get(1)).getDataFromValue().equals(member2));
        assertTrue(new Boolean(((CorbaPrimitiveHandler)nestedObjs.get(2)).getDataFromValue()).booleanValue()
                   == member3);
View Full Code Here

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

        structMembers[0] = new StructMember("member1", orb.get_primitive_tc(TCKind.tk_long), null);
        structMembers[1] = new StructMember("member2", orb.get_primitive_tc(TCKind.tk_string), null);
        structMembers[2] = new StructMember("member3", orb.get_primitive_tc(TCKind.tk_boolean), null);
        TypeCode structTC = orb.create_struct_tc("IDL:org.apache.yoko.TestStruct/1.0", "TestStruct",
                                                 structMembers);
        CorbaStructHandler obj = new CorbaStructHandler(new QName("TestStruct"), structIdlType,
                                                      structTC, structType);
        obj.addMember(
                new CorbaPrimitiveHandler(new QName("member1"), longIdlType, structMembers[0].type, null));
        obj.addMember(
                new CorbaPrimitiveHandler(new QName("member2"), stringIdlType, structMembers[1].type, null));
        obj.addMember(
                new CorbaPrimitiveHandler(new QName("member3"), boolIdlType, structMembers[2].type, null));
       
        reader.readStruct(obj);
       
        List<CorbaObjectHandler> nestedObjs = obj.getMembers();
        assertTrue(new Integer(((CorbaPrimitiveHandler)nestedObjs.get(0)).getValueData()).intValue()
                   == member1);
        assertTrue(((CorbaPrimitiveHandler)nestedObjs.get(1)).getValueData().equals(member2));
        assertTrue(new Boolean(((CorbaPrimitiveHandler)nestedObjs.get(2)).getValueData()).booleanValue()
                   == member3);
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.