aspect RagConnectHandler { interface RagConnectHandler<T> { boolean connectReceive(String path, java.util.function.Consumer<T> callback); boolean sendPush(String path, T value); boolean connectSendPull(String path, SupplierWithException<T> supplier); } }