add default getBrand to RequestHook

This commit is contained in:
Vaci Koblizek 2020-11-24 15:37:28 +00:00
parent 3b642d0355
commit 9465ffde5b
2 changed files with 9 additions and 9 deletions

View file

@ -6,6 +6,8 @@ public interface Request<Params> {
FromPointerBuilder<Params> getParamsFactory(); FromPointerBuilder<Params> getParamsFactory();
Request<AnyPointer.Builder> getTypelessRequest();
default Params getParams() { default Params getParams() {
return this.getTypelessRequest().getParams().getAs(this.getParamsFactory()); return this.getTypelessRequest().getParams().getAs(this.getParamsFactory());
} }
@ -14,7 +16,6 @@ public interface Request<Params> {
return this.getTypelessRequest().getHook(); return this.getTypelessRequest().getHook();
} }
Request<AnyPointer.Builder> getTypelessRequest();
default RemotePromise<AnyPointer.Reader> sendInternal() { default RemotePromise<AnyPointer.Reader> sendInternal() {
return this.getTypelessRequest().sendInternal(); return this.getTypelessRequest().sendInternal();
@ -23,7 +24,7 @@ public interface Request<Params> {
static <Params> Request<Params> newBrokenRequest(FromPointerBuilder<Params> paramsFactory, static <Params> Request<Params> newBrokenRequest(FromPointerBuilder<Params> paramsFactory,
Throwable exc) { Throwable exc) {
final MessageBuilder message = new MessageBuilder(); var message = new MessageBuilder();
var hook = new RequestHook() { var hook = new RequestHook() {
@Override @Override
@ -36,14 +37,8 @@ public interface Request<Params> {
public CompletableFuture<?> sendStreaming() { public CompletableFuture<?> sendStreaming() {
return CompletableFuture.failedFuture(exc); return CompletableFuture.failedFuture(exc);
} }
@Override
public Object getBrand() {
return null;
}
}; };
var root = message.getRoot(AnyPointer.factory);
return new Request<>() { return new Request<>() {
@Override @Override
public FromPointerBuilder<Params> getParamsFactory() { public FromPointerBuilder<Params> getParamsFactory() {

View file

@ -3,7 +3,12 @@ package org.capnproto;
import java.util.concurrent.CompletionStage; import java.util.concurrent.CompletionStage;
public interface RequestHook { public interface RequestHook {
RemotePromise<AnyPointer.Reader> send(); RemotePromise<AnyPointer.Reader> send();
CompletionStage<?> sendStreaming(); CompletionStage<?> sendStreaming();
Object getBrand();
default Object getBrand() {
return null;
}
} }