### Question:
ServiceMeta { public static ServiceMeta service(final String name, final String address, final ServiceMethodMeta... serviceMethods) { return new ServiceMeta(name, Lists.list(address), Lists.list(serviceMethods), null); } ServiceMeta(final String name, final List<String> requestPaths,
                       final List<ServiceMethodMeta> methods, String description); static ServiceMeta serviceMeta(final String name, final String address,
                                          final ServiceMethodMeta... serviceMethods); static ServiceMeta service(final String name, final String address,
                                      final ServiceMethodMeta... serviceMethods); static ServiceMeta serviceMeta(final String name, final List<String> requestPaths,
                                          final ServiceMethodMeta... serviceMethods); static ServiceMeta service(final String name, final List<String> requestPaths,
                                      final ServiceMethodMeta... serviceMethods); String getName(); List<String> getRequestPaths(); List<ServiceMethodMeta> getMethods(); String getDescription();  }### Answer:
@Test public void test() throws Exception { final ServiceMeta myService = service("myService", "/myservice"); puts(toJson(myService)); }
@Test public void test2() throws Exception { final ClassMeta<MyService> classMeta = classMeta(MyService.class); final ServiceMeta myService = service("myService", "/myservice/{score}", method( "hello", getRequest( "/callme/", stringParam( headParam("foobarHeader") ), intParam( requestParam("helloMom") ), doubleParam( pathParam("score", 9) ) ) ) ); puts(toJson(myService)); }