/* * Copyright 2014 Red Hat, Inc. * * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * and Apache License v2.0 which accompanies this distribution. * * The Eclipse Public License is available at * http://www.eclipse.org/legal/epl-v10.html * * The Apache License v2.0 is available at * http://www.opensource.org/licenses/apache2.0.php * * You may elect to redistribute this code under either of these licenses. */ package io.vertx.serviceproxy.testmodel; import java.util.List; import java.util.Map; import java.util.Set; import io.vertx.codegen.annotations.Fluent; import io.vertx.codegen.annotations.ProxyGen; import io.vertx.codegen.annotations.ProxyIgnore; import io.vertx.codegen.annotations.VertxGen; import io.vertx.core.AsyncResult; import io.vertx.core.Handler; import io.vertx.core.Vertx; import io.vertx.core.eventbus.DeliveryOptions; import io.vertx.core.json.JsonArray; import io.vertx.core.json.JsonObject; import io.vertx.serviceproxy.ProxyHelper; import io.vertx.serviceproxy.testmodel.impl.TestServiceImpl; /** * @author <a href="http://tfox.org">Tim Fox</a> */ @ProxyGen @VertxGen public interface TestService { static TestService create(Vertx vertx) { return new TestServiceImpl(vertx); } static TestService createProxy(Vertx vertx, String address) { return ProxyHelper.createProxy(TestService.class, vertx, address); } static TestService createProxyLongDelivery(Vertx vertx, String address) { DeliveryOptions options = new DeliveryOptions(); options.setSendTimeout(20*1000L); return ProxyHelper.createProxy(TestService.class, vertx, address, options); } void longDeliverySuccess(Handler<AsyncResult<String>> resultHandler); void longDeliveryFailed(Handler<AsyncResult<String>> resultHandler); void createConnection(String str, Handler<AsyncResult<TestConnection>> resultHandler); void createConnectionWithCloseFuture(Handler<AsyncResult<TestConnectionWithCloseFuture>> resultHandler); void noParams(); void basicTypes(String str, byte b, short s, int i, long l, float f, double d, char c, boolean bool); void basicBoxedTypes(String str, Byte b, Short s, Integer i, Long l, Float f, Double d, Character c, Boolean bool); void basicBoxedTypesNull(String str, Byte b, Short s, Integer i, Long l, Float f, Double d, Character c, Boolean bool); void jsonTypes(JsonObject jsonObject, JsonArray jsonArray); void jsonTypesNull(JsonObject jsonObject, JsonArray jsonArray); void enumType(SomeEnum someEnum); void enumTypeNull(SomeEnum someEnum); void enumTypeAsResult(Handler<AsyncResult<SomeEnum>> someEnum); void enumTypeAsResultNull(Handler<AsyncResult<SomeEnum>> someEnum); void dataObjectType(TestDataObject options); void dataObjectTypeNull(TestDataObject options); void listParams(List<String> listString, List<Byte> listByte, List<Short> listShort, List<Integer> listInt, List<Long> listLong, List<JsonObject> listJsonObject, List<JsonArray> listJsonArray, List<TestDataObject> listDataObject); void setParams(Set<String> setString, Set<Byte> setByte, Set<Short> setShort, Set<Integer> setInt, Set<Long> setLong, Set<JsonObject> setJsonObject, Set<JsonArray> setJsonArray, Set<TestDataObject> setDataObject); void mapParams(Map<String, String> mapString, Map<String, Byte> mapByte, Map<String, Short> mapShort, Map<String, Integer> mapInt, Map<String, Long> mapLong, Map<String, JsonObject> mapJsonObject, Map<String, JsonArray> mapJsonArray); void stringHandler(Handler<AsyncResult<String>> resultHandler); void stringNullHandler(Handler<AsyncResult<String>> resultHandler); void byteHandler(Handler<AsyncResult<Byte>> resultHandler); void byteNullHandler(Handler<AsyncResult<Byte>> resultHandler); void shortHandler(Handler<AsyncResult<Short>> resultHandler); void shortNullHandler(Handler<AsyncResult<Short>> resultHandler); void intHandler(Handler<AsyncResult<Integer>> resultHandler); void intNullHandler(Handler<AsyncResult<Integer>> resultHandler); void longHandler(Handler<AsyncResult<Long>> resultHandler); void longNullHandler(Handler<AsyncResult<Long>> resultHandler); void floatHandler(Handler<AsyncResult<Float>> resultHandler); void floatNullHandler(Handler<AsyncResult<Float>> resultHandler); void doubleHandler(Handler<AsyncResult<Double>> resultHandler); void doubleNullHandler(Handler<AsyncResult<Double>> resultHandler); void charHandler(Handler<AsyncResult<Character>> resultHandler); void charNullHandler(Handler<AsyncResult<Character>> resultHandler); void booleanHandler(Handler<AsyncResult<Boolean>> resultHandler); void booleanNullHandler(Handler<AsyncResult<Boolean>> resultHandler); void jsonObjectHandler(Handler<AsyncResult<JsonObject>> resultHandler); void jsonObjectNullHandler(Handler<AsyncResult<JsonObject>> resultHandler); void jsonArrayHandler(Handler<AsyncResult<JsonArray>> resultHandler); void jsonArrayNullHandler(Handler<AsyncResult<JsonArray>> resultHandler); void dataObjectHandler(Handler<AsyncResult<TestDataObject>> resultHandler); void dataObjectNullHandler(Handler<AsyncResult<TestDataObject>> resultHandler); void voidHandler(Handler<AsyncResult<Void>> resultHandler); @Fluent TestService fluentMethod(String str, Handler<AsyncResult<String>> resultHandler); @Fluent TestService fluentNoParams(); void failingMethod(Handler<AsyncResult<JsonObject>> resultHandler); void invokeWithMessage(JsonObject object, String str, int i, char chr, SomeEnum senum, Handler<AsyncResult<String>> resultHandler); void listStringHandler(Handler<AsyncResult<List<String>>> resultHandler); void listByteHandler(Handler<AsyncResult<List<Byte>>> resultHandler); void listShortHandler(Handler<AsyncResult<List<Short>>> resultHandler); void listIntHandler(Handler<AsyncResult<List<Integer>>> resultHandler); void listLongHandler(Handler<AsyncResult<List<Long>>> resultHandler); void listFloatHandler(Handler<AsyncResult<List<Float>>> resultHandler); void listDoubleHandler(Handler<AsyncResult<List<Double>>> resultHandler); void listCharHandler(Handler<AsyncResult<List<Character>>> resultHandler); void listBoolHandler(Handler<AsyncResult<List<Boolean>>> resultHandler); void listJsonObjectHandler(Handler<AsyncResult<List<JsonObject>>> resultHandler); void listJsonArrayHandler(Handler<AsyncResult<List<JsonArray>>> resultHandler); void listDataObjectHandler(Handler<AsyncResult<List<TestDataObject>>> resultHandler); void setStringHandler(Handler<AsyncResult<Set<String>>> resultHandler); void setByteHandler(Handler<AsyncResult<Set<Byte>>> resultHandler); void setShortHandler(Handler<AsyncResult<Set<Short>>> resultHandler); void setIntHandler(Handler<AsyncResult<Set<Integer>>> resultHandler); void setLongHandler(Handler<AsyncResult<Set<Long>>> resultHandler); void setFloatHandler(Handler<AsyncResult<Set<Float>>> resultHandler); void setDoubleHandler(Handler<AsyncResult<Set<Double>>> resultHandler); void setCharHandler(Handler<AsyncResult<Set<Character>>> resultHandler); void setBoolHandler(Handler<AsyncResult<Set<Boolean>>> resultHandler); void setJsonObjectHandler(Handler<AsyncResult<Set<JsonObject>>> resultHandler); void setJsonArrayHandler(Handler<AsyncResult<Set<JsonArray>>> resultHandler); void setDataObjectHandler(Handler<AsyncResult<Set<TestDataObject>>> resultHandler); void failingCall(String value, Handler<AsyncResult<JsonObject>> resultHandler); @ProxyIgnore void ignoredMethod(); }