/**
 * ObjectRiver Inc, http://www.objectriver.net/
 * Copyright (c) 2002-2013, ObjectRiver(tm). All rights reserved.
 */
Application Beans = com.companyname {
    Endpoint BeanIface = 1 {
        Enumeration MyMessageType { Empty=1, Full=2, HalfFull=3, HalfEmpty=4 };
        Exception BeanException {};
        Bean TestBean {
            String[] member1;
            Integer member2;
        };
        Bean TestBeanList {
            List<MyMessageType> enumlist;
            List<TestBean> beanlist;
        };
        Server Singleton {
            @Path("beanMethod")
                  @Produces(JSON)
                  @Consumes(JSON)
                  @POST  Boolean beanMethod(@In TestBean arg, @In TestBean[] argArray, @In MyMessageType option) raises BeanException;

            @Path("beanInReturn")
                  @Produces(JSON)
                  @Consumes(JSON)
                  @POST  TestBean beanInReturn(@In TestBean arg) raises BeanException;

            @Path("beanListRoundtrip")
                  @Produces(JSON)
                  @Consumes(JSON)
                  @POST  TestBeanList beanListRoundtrip(@In TestBeanList arg) raises BeanException;
        };
    };
};
