use of org.apache.cxf.binding.corba.wsdl.Struct in project cxf by apache.
the class WSDLToCorbaBindingTypeTest method testTypeInheritance.
// tests Type Inheritance and attributes.
@Test
public void testTypeInheritance() throws Exception {
try {
String fileName = getClass().getResource("/wsdl/TypeInheritance.wsdl").toString();
generator.setWsdlFile(fileName);
generator.addInterfaceName("TypeInheritancePortType");
Definition model = generator.generateCORBABinding();
Document document = writer.getDocument(model);
Element typemap = getElementNode(document, "corba:typeMapping");
assertNotNull(typemap);
assertEquals(3, typemap.getElementsByTagName("corba:union").getLength());
assertEquals(1, typemap.getElementsByTagName("corba:anonstring").getLength());
assertEquals(17, typemap.getElementsByTagName("corba:struct").getLength());
TypeMappingType mapType = (TypeMappingType) model.getExtensibilityElements().get(0);
WSDLToIDLAction idlgen = new WSDLToIDLAction();
idlgen.setBindingName("TypeInheritanceCORBABinding");
idlgen.setOutputFile("typeInherit.idl");
idlgen.generateIDL(model);
List<CorbaType> types = mapType.getStructOrExceptionOrUnion();
for (int i = 0; i < types.size(); i++) {
CorbaType type = types.get(i);
if ("Type5SequenceStruct".equals(type.getName())) {
assertTrue("Name is incorrect for Type5SequenceStruct Type", type instanceof Struct);
assertEquals("Type is incorrect for AnonSequence Type", "Type5", type.getType().getLocalPart());
} else if ("attrib2Type".equals(type.getName())) {
assertTrue("Name is incorrect for attrib2Type Type", type instanceof Anonstring);
assertEquals("Type is incorrect for AnonString Type", "string", type.getType().getLocalPart());
} else if ("attrib2Type_nil".equals(type.getName())) {
assertTrue("Name is incorrect for Struct Type", type instanceof Union);
assertEquals("Type is incorrect for AnonSequence Type", "attrib2", type.getType().getLocalPart());
}
}
File f = new File("typeInherit.idl");
assertTrue("typeInherit.idl should be generated", f.exists());
} finally {
new File("typeInherit.idl").deleteOnExit();
}
}
use of org.apache.cxf.binding.corba.wsdl.Struct in project cxf by apache.
the class CorbaStructHandlerTest method testCorbaStructHandler.
@Test
public void testCorbaStructHandler() {
Struct structType = new Struct();
structType.setName("TestStruct");
structType.setRepositoryID("IDL:TestStruct:1.0");
MemberType member0 = new MemberType();
member0.setIdltype(CorbaConstants.NT_CORBA_LONG);
member0.setName("member0");
MemberType member1 = new MemberType();
member1.setIdltype(CorbaConstants.NT_CORBA_STRING);
member1.setName("member1");
QName structName = new QName("TestStruct");
QName structIdlType = new QName(CorbaConstants.NU_WSDL_CORBA, "testStruct", CorbaConstants.NP_WSDL_CORBA);
StructMember[] structMembers = new StructMember[2];
structMembers[0] = new StructMember("member0", orb.get_primitive_tc(TCKind.tk_long), null);
structMembers[1] = new StructMember("member1", orb.get_primitive_tc(TCKind.tk_string), null);
TypeCode structTC = orb.create_struct_tc(structType.getRepositoryID(), structType.getName(), structMembers);
CorbaStructHandler obj = new CorbaStructHandler(structName, structIdlType, structTC, structType);
assertNotNull(obj);
CorbaPrimitiveHandler objMember0 = new CorbaPrimitiveHandler(new QName(member0.getName()), member0.getIdltype(), orb.get_primitive_tc(TCKind.tk_long), null);
assertNotNull(objMember0);
obj.addMember(objMember0);
CorbaPrimitiveHandler objMember1 = new CorbaPrimitiveHandler(new QName(member1.getName()), member1.getIdltype(), orb.get_primitive_tc(TCKind.tk_string), null);
assertNotNull(objMember1);
obj.addMember(objMember1);
int memberSize = obj.getMembers().size();
assertTrue(memberSize == 2);
QName nameResult = obj.getName();
assertTrue(structName.equals(nameResult));
QName idlTypeResult = obj.getIdlType();
assertTrue(structIdlType.equals(idlTypeResult));
CorbaObjectHandler member0Result = obj.getMemberByName("member0");
assertNotNull(member0Result);
assertTrue(member0Result.getName().equals(objMember0.getName()));
CorbaObjectHandler member1Result = obj.getMember(1);
assertNotNull(member1Result);
assertTrue(member1Result.getName().equals(objMember1.getName()));
}
Aggregations