Skip to content

Commit 63bb4c9

Browse files
author
Daniel Bustamante Ospina
committed
Query delegate API
1 parent c10d99e commit 63bb4c9

File tree

4 files changed

+22
-0
lines changed

4 files changed

+22
-0
lines changed

async/async-commons-api/src/main/java/org/reactivecommons/async/api/DirectAsyncGateway.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,4 +6,5 @@
66
public interface DirectAsyncGateway {
77
<T> Mono<Void> sendCommand(Command<T> command, String targetName);
88
<T, R> Mono<R> requestReply(AsyncQuery<T> query, String targetName, Class<R> type);
9+
<T> Mono<Void> reply(T response, From from);
910
}
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
package org.reactivecommons.async.api;
2+
3+
public class From {
4+
//String getCorrelationID();
5+
//String getReplyID();
6+
///...
7+
}

async/async-commons-api/src/main/java/org/reactivecommons/async/api/HandlerRegistry.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
import org.reactivecommons.async.api.handlers.CommandHandler;
77
import org.reactivecommons.async.api.handlers.EventHandler;
88
import org.reactivecommons.async.api.handlers.QueryHandler;
9+
import org.reactivecommons.async.api.handlers.QueryHandlerDelegate;
910
import org.reactivecommons.async.api.handlers.registered.RegisteredCommandHandler;
1011
import org.reactivecommons.async.api.handlers.registered.RegisteredEventListener;
1112
import org.reactivecommons.async.api.handlers.registered.RegisteredQueryHandler;
@@ -61,6 +62,11 @@ public <T, R> HandlerRegistry serveQuery(String resource, QueryHandler<T, R> han
6162
return this;
6263
}
6364

65+
public <T, R> HandlerRegistry serveQuery(String resource, QueryHandlerDelegate<R> handler, Class<R> queryClass){
66+
//handlers.add(new RegisteredQueryHandler<>(resource, handler, queryClass));
67+
return this;
68+
}
69+
6470

6571
@SuppressWarnings("unchecked")
6672
private <T, R> Class<R> inferGenericParameterType(QueryHandler<T, R> handler){
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
package org.reactivecommons.async.api.handlers;
2+
3+
import org.reactivecommons.async.api.From;
4+
import reactor.core.publisher.Mono;
5+
6+
public interface QueryHandlerDelegate<M> {
7+
Mono<Void> handle(From from, M message);
8+
}

0 commit comments

Comments
 (0)