Search in sources :

Example 1 with Enum

use of org.apache.cxf.binding.corba.wsdl.Enum in project cxf by apache.

the class CorbaEnumHandlerTest method testCorbaEnumHandler.

@Test
public void testCorbaEnumHandler() {
    Enum enumType = new Enum();
    enumType.setName("EnumType");
    enumType.setRepositoryID("IDL:EnumType:1.0");
    Enumerator enumerator0 = new Enumerator();
    enumerator0.setValue("ENUM0");
    Enumerator enumerator1 = new Enumerator();
    enumerator1.setValue("ENUM1");
    Enumerator enumerator2 = new Enumerator();
    enumerator2.setValue("ENUM2");
    enumType.getEnumerator().add(enumerator0);
    enumType.getEnumerator().add(enumerator1);
    enumType.getEnumerator().add(enumerator2);
    QName enumName = new QName("EnumType");
    QName enumIdlType = new QName(CorbaConstants.NU_WSDL_CORBA, "EnumType", CorbaConstants.NP_WSDL_CORBA);
    String[] members = new String[3];
    members[0] = enumerator0.getValue();
    members[1] = enumerator1.getValue();
    members[2] = enumerator2.getValue();
    TypeCode enumTC = orb.create_enum_tc(enumType.getRepositoryID(), enumType.getName(), members);
    CorbaEnumHandler obj = new CorbaEnumHandler(enumName, enumIdlType, enumTC, enumType);
    assertNotNull(obj);
    obj.setValue(members[1]);
    assertTrue(obj.getValue().equals(enumerator1.getValue()));
    assertTrue(obj.getIndex() == 1);
}
Also used : Enum(org.apache.cxf.binding.corba.wsdl.Enum) Enumerator(org.apache.cxf.binding.corba.wsdl.Enumerator) TypeCode(org.omg.CORBA.TypeCode) QName(javax.xml.namespace.QName) Test(org.junit.Test)

Example 2 with Enum

use of org.apache.cxf.binding.corba.wsdl.Enum in project cxf by apache.

the class CorbaObjectReader method readEnum.

// -- complex types --
public void readEnum(CorbaObjectHandler obj) throws CorbaBindingException {
    int enumIndex = stream.read_long();
    Enum enumType = (Enum) obj.getType();
    List<Enumerator> enumerators = enumType.getEnumerator();
    CorbaEnumHandler enumObj = (CorbaEnumHandler) obj;
    enumObj.setValue(enumerators.get(enumIndex).getValue());
}
Also used : Enum(org.apache.cxf.binding.corba.wsdl.Enum) Enumerator(org.apache.cxf.binding.corba.wsdl.Enumerator) CorbaEnumHandler(org.apache.cxf.binding.corba.types.CorbaEnumHandler)

Example 3 with Enum

use of org.apache.cxf.binding.corba.wsdl.Enum in project cxf by apache.

the class CorbaObjectReader method readEnumDiscriminator.

public void readEnumDiscriminator(CorbaUnionHandler unionHandler, CorbaEnumHandler disc) throws CorbaBindingException {
    int enumIndex = stream.read_long();
    Enum enumType = (Enum) disc.getType();
    List<Enumerator> enumerators = enumType.getEnumerator();
    if (enumIndex == Integer.MAX_VALUE) {
        enumIndex = unionHandler.getDefaultIndex();
    }
    disc.setValue(enumerators.get(enumIndex).getValue());
}
Also used : Enum(org.apache.cxf.binding.corba.wsdl.Enum) Enumerator(org.apache.cxf.binding.corba.wsdl.Enumerator)

Example 4 with Enum

use of org.apache.cxf.binding.corba.wsdl.Enum in project cxf by apache.

the class CorbaEnumHandler method setValue.

public void setValue(String val) {
    value = val;
    Enum enumType = (Enum) this.type;
    List<Enumerator> enumerators = enumType.getEnumerator();
    index = -1;
    for (int i = 0; i < enumerators.size(); ++i) {
        Enumerator e = enumerators.get(i);
        if (e.getValue().equals(val)) {
            index = i;
            break;
        }
    }
}
Also used : Enum(org.apache.cxf.binding.corba.wsdl.Enum) Enumerator(org.apache.cxf.binding.corba.wsdl.Enumerator)

Example 5 with Enum

use of org.apache.cxf.binding.corba.wsdl.Enum in project cxf by apache.

the class WSDLToCorbaHelper method createCorbaEnum.

private Enum createCorbaEnum(XmlSchemaSimpleTypeRestriction restrictionType, QName name, QName schematypeName) {
    Enum corbaEnum = new Enum();
    corbaEnum.setType(schematypeName);
    corbaEnum.setName(name.getLocalPart());
    corbaEnum.setQName(name);
    corbaEnum.setRepositoryID(REPO_STRING + name.getLocalPart().replace('.', '/') + IDL_VERSION);
    for (XmlSchemaFacet f : restrictionType.getFacets()) {
        XmlSchemaEnumerationFacet val = (XmlSchemaEnumerationFacet) f;
        Enumerator enumerator = new Enumerator();
        enumerator.setValue(val.getValue().toString());
        corbaEnum.getEnumerator().add(enumerator);
    }
    return corbaEnum;
}
Also used : Enum(org.apache.cxf.binding.corba.wsdl.Enum) XmlSchemaFacet(org.apache.ws.commons.schema.XmlSchemaFacet) Enumerator(org.apache.cxf.binding.corba.wsdl.Enumerator) XmlSchemaEnumerationFacet(org.apache.ws.commons.schema.XmlSchemaEnumerationFacet)

Aggregations

Enum (org.apache.cxf.binding.corba.wsdl.Enum)13 Enumerator (org.apache.cxf.binding.corba.wsdl.Enumerator)12 QName (javax.xml.namespace.QName)7 Union (org.apache.cxf.binding.corba.wsdl.Union)4 TypeCode (org.omg.CORBA.TypeCode)4 CorbaBindingException (org.apache.cxf.binding.corba.CorbaBindingException)3 CorbaEnumHandler (org.apache.cxf.binding.corba.types.CorbaEnumHandler)2 Alias (org.apache.cxf.binding.corba.wsdl.Alias)2 Array (org.apache.cxf.binding.corba.wsdl.Array)2 CorbaType (org.apache.cxf.binding.corba.wsdl.CorbaType)2 Fixed (org.apache.cxf.binding.corba.wsdl.Fixed)2 MemberType (org.apache.cxf.binding.corba.wsdl.MemberType)2 Sequence (org.apache.cxf.binding.corba.wsdl.Sequence)2 Struct (org.apache.cxf.binding.corba.wsdl.Struct)2 XmlSchemaEnumerationFacet (org.apache.ws.commons.schema.XmlSchemaEnumerationFacet)2 AST (antlr.collections.AST)1 ArrayList (java.util.ArrayList)1 LinkedHashMap (java.util.LinkedHashMap)1 List (java.util.List)1 Anonarray (org.apache.cxf.binding.corba.wsdl.Anonarray)1