diff --git a/grpc-client-rx-utils/build.gradle.kts b/grpc-client-rx-utils/build.gradle.kts index 665aa80..06a13bb 100644 --- a/grpc-client-rx-utils/build.gradle.kts +++ b/grpc-client-rx-utils/build.gradle.kts @@ -7,9 +7,9 @@ plugins { dependencies { api("io.reactivex.rxjava3:rxjava:3.0.6") - api("io.grpc:grpc-stub:1.35.0") + api("io.grpc:grpc-stub:1.36.0") api(project(":grpc-context-utils")) - implementation("io.grpc:grpc-context:1.35.0") + implementation("io.grpc:grpc-context:1.36.0") testImplementation("org.junit.jupiter:junit-jupiter:5.7.0") testImplementation("org.mockito:mockito-core:3.5.11") diff --git a/grpc-client-utils/build.gradle.kts b/grpc-client-utils/build.gradle.kts index ccb20ff..aeb4e84 100644 --- a/grpc-client-utils/build.gradle.kts +++ b/grpc-client-utils/build.gradle.kts @@ -13,7 +13,7 @@ dependencies { // End Logging // grpc - implementation("io.grpc:grpc-core:1.35.0") + implementation("io.grpc:grpc-core:1.36.0") constraints { implementation("com.google.guava:guava:30.0-jre") { because("https://snyk.io/vuln/SNYK-JAVA-COMGOOGLEGUAVA-1015415") diff --git a/grpc-context-utils/build.gradle.kts b/grpc-context-utils/build.gradle.kts index 507b5a3..08164fe 100644 --- a/grpc-context-utils/build.gradle.kts +++ b/grpc-context-utils/build.gradle.kts @@ -11,7 +11,7 @@ tasks.test { dependencies { // grpc - implementation("io.grpc:grpc-core:1.35.0") + implementation("io.grpc:grpc-core:1.36.0") constraints { implementation("com.google.guava:guava:30.0-jre") { because("https://snyk.io/vuln/SNYK-JAVA-COMGOOGLEGUAVA-1015415") diff --git a/grpc-server-rx-utils/build.gradle.kts b/grpc-server-rx-utils/build.gradle.kts index 3b6518a..6305cde 100644 --- a/grpc-server-rx-utils/build.gradle.kts +++ b/grpc-server-rx-utils/build.gradle.kts @@ -7,13 +7,18 @@ plugins { dependencies { api("io.reactivex.rxjava3:rxjava:3.0.6") - api("io.grpc:grpc-stub:1.35.0") + api("io.grpc:grpc-stub:1.36.0") + + annotationProcessor("org.projectlombok:lombok:1.18.18") + compileOnly("org.projectlombok:lombok:1.18.18") + + implementation("org.slf4j:slf4j-api:1.7.30") + constraints { - implementation("com.google.guava:guava:30.0-jre") { + implementation("com.google.guava:guava:30.1-jre") { because("https://snyk.io/vuln/SNYK-JAVA-COMGOOGLEGUAVA-1015415") } } - testImplementation("org.junit.jupiter:junit-jupiter:5.7.0") testImplementation("org.mockito:mockito-core:3.5.11") testImplementation("org.mockito:mockito-junit-jupiter:3.5.11") diff --git a/grpc-server-rx-utils/src/main/java/org/hypertrace/core/grpcutils/server/rx/ServerCallStreamRxObserver.java b/grpc-server-rx-utils/src/main/java/org/hypertrace/core/grpcutils/server/rx/ServerCallStreamRxObserver.java index dfa68d6..ebd8473 100644 --- a/grpc-server-rx-utils/src/main/java/org/hypertrace/core/grpcutils/server/rx/ServerCallStreamRxObserver.java +++ b/grpc-server-rx-utils/src/main/java/org/hypertrace/core/grpcutils/server/rx/ServerCallStreamRxObserver.java @@ -1,20 +1,29 @@ package org.hypertrace.core.grpcutils.server.rx; import io.grpc.stub.ServerCallStreamObserver; +import io.grpc.stub.StreamObserver; import io.reactivex.rxjava3.annotations.NonNull; import io.reactivex.rxjava3.core.CompletableObserver; import io.reactivex.rxjava3.core.MaybeObserver; import io.reactivex.rxjava3.core.Observer; import io.reactivex.rxjava3.core.SingleObserver; import io.reactivex.rxjava3.observers.DefaultObserver; +import lombok.extern.slf4j.Slf4j; +@Slf4j public class ServerCallStreamRxObserver extends DefaultObserver implements Observer, MaybeObserver, SingleObserver, CompletableObserver { private final ServerCallStreamObserver serverCallStreamObserver; - public ServerCallStreamRxObserver(ServerCallStreamObserver serverCallStreamObserver) { - this.serverCallStreamObserver = serverCallStreamObserver; + /** + * Requires a ServerCallStreamObserver which a grpc server implementation will provide (but not + * specify) + * + * @param serverCallStreamObserver + */ + public ServerCallStreamRxObserver(StreamObserver serverCallStreamObserver) { + this.serverCallStreamObserver = (ServerCallStreamObserver) serverCallStreamObserver; } @Override @@ -35,6 +44,7 @@ public void onNext(@NonNull T value) { @Override public void onError(@NonNull Throwable throwable) { + log.error("Returning error", throwable); this.serverCallStreamObserver.onError(throwable); } diff --git a/grpc-server-utils/build.gradle.kts b/grpc-server-utils/build.gradle.kts index 7befdf8..9d3491b 100644 --- a/grpc-server-utils/build.gradle.kts +++ b/grpc-server-utils/build.gradle.kts @@ -17,7 +17,7 @@ dependencies { // End Logging // grpc - implementation("io.grpc:grpc-core:1.35.0") + implementation("io.grpc:grpc-core:1.36.0") constraints { implementation("com.google.guava:guava:30.0-jre") { because("https://snyk.io/vuln/SNYK-JAVA-COMGOOGLEGUAVA-1015415")