diff --git a/src/main/java/dev/selimaj/session/Session.java b/src/main/java/dev/selimaj/session/Session.java index 5fcc57f..32909d1 100644 --- a/src/main/java/dev/selimaj/session/Session.java +++ b/src/main/java/dev/selimaj/session/Session.java @@ -48,9 +48,8 @@ public final class Session { } CompletableFuture request( - Class> method, Req req) throws Exception { - Method m = method.getDeclaredConstructor().newInstance(); - return listener.request(ws, m.getName(), req, m.getResClass()); + Method method, Req req) throws Exception { + return listener.request(ws, method.getName(), req, method.getResClass()); } public void close() throws Exception { diff --git a/src/main/java/dev/selimaj/session/types/Method.java b/src/main/java/dev/selimaj/session/types/Method.java index 319fe62..c7c7fa6 100644 --- a/src/main/java/dev/selimaj/session/types/Method.java +++ b/src/main/java/dev/selimaj/session/types/Method.java @@ -8,7 +8,7 @@ public class Method resClass; private final Class errClass; - protected Method(String name, Class reqClass, Class resClass, Class errClass) { + public Method(String name, Class reqClass, Class resClass, Class errClass) { this.name = name; this.reqClass = reqClass; this.resClass = resClass; diff --git a/src/test/java/dev/selimaj/session/Methods.java b/src/test/java/dev/selimaj/session/Methods.java index 031e6e5..b331232 100644 --- a/src/test/java/dev/selimaj/session/Methods.java +++ b/src/test/java/dev/selimaj/session/Methods.java @@ -5,9 +5,6 @@ import com.fasterxml.jackson.databind.node.TextNode; import dev.selimaj.session.types.Method; public class Methods { - public static class Data extends Method { - Data() { - super("data", TextNode.class, TextNode.class, TextNode.class); - } - } + public static final Method Data = new Method<>("data", + TextNode.class, TextNode.class, TextNode.class); } diff --git a/src/test/java/dev/selimaj/session/SessionTest.java b/src/test/java/dev/selimaj/session/SessionTest.java index 3ac0b76..14a4093 100644 --- a/src/test/java/dev/selimaj/session/SessionTest.java +++ b/src/test/java/dev/selimaj/session/SessionTest.java @@ -8,7 +8,7 @@ public class SessionTest { static void testRequest() throws Exception { Session session = Session.connect("ws://localhost:8080/"); - TextNode response = session.request(Methods.Data.class, TextNode.valueOf("Hello from client")).get(); + TextNode response = session.request(Methods.Data, TextNode.valueOf("Hello from client")).get(); System.out.println(response);