/**
 * ObjectRiver Inc, http://www.objectriver.net/
 * Copyright (c) 2002-2013, ObjectRiver(tm). All rights reserved.
 */
Application Lists = com.companyname {
    Endpoint ListsIface = 1 {
        Enumeration DoSomething { Walk=0, Run=1, Jog=2, Hop=3 };
        Exception ListsException {};
        Bean ListBean {
            Integer size;
            List<String> strList;
            String[] strArray;
        };
        Server Stateless {
            @Path("returnList")
            @Produces(JSON)
            @Consumes(JSON)
            @POST  List<Integer> returnList(@In int size) raises ListsException;
            
            @Path("inoutList")
            @Produces(JSON)
            @Consumes(JSON)
            @POST  void inoutList(@Inout List<String> listOfString)  raises ListsException;
                        
            @Path("outList")
            @Produces(JSON)
            @POST  void outList(@Out List<String> listOfString)  raises ListsException;
                        
            @Path("enumList")
            @Produces(JSON)
            @Consumes(JSON)
            @POST  void enumList(@In List<DoSomething> inlist, @Out List<DoSomething> outlist )  raises ListsException;
                        
            @Path("arrayList")
            @Consumes(JSON)
            @POST  void arrayList( @In ListBean listBean );

            @Path("queryParamStringList")
            @Produces(JSON)
            @GET  List<String> queryParamStringList( @QueryParam("stringList") List<String> stringList);

            @Path("queryParamIntegerList")
            @Produces(JSON)
            @GET  List<Integer> queryParamIntegerList( @QueryParam("intLIst") List<Integer> intLIst );

            @Path("queryParamEnumList")
            @Produces(JSON)
            @GET  List<DoSomething> queryParamEnumList( @QueryParam("enumLIst") List<DoSomething> enumLIst );
        };
	};
};