From 288372bdd8f7c707bfcd693ef3cb5a656277f441 Mon Sep 17 00:00:00 2001 From: Stephen Vinouze Date: Sun, 24 Aug 2025 10:09:11 +0200 Subject: [PATCH] feature: Enhance grpc json printing (#117) * Enhance json printing for grpc calls * Remove gson dependency * Split grpc interceptor into three modules for both protobuf libraries * Remove unwanted versioned files * Abstract the grpc interceptor to avoid injecting the formatter * fixed readme * fixed pom for lit * added to publish yml --------- Co-authored-by: Florent Champigny Co-authored-by: Florent CHAMPIGNY --- .github/workflows/publish_android.yml | 2 + FloconAndroid/.idea/gradle.xml | 2 + FloconAndroid/app/build.gradle.kts | 11 +- .../{IntiializeGrpc.kt => InitializeGrpc.kt} | 7 +- FloconAndroid/gradle/libs.versions.toml | 5 +- .../grpc-interceptor-base/.gitignore | 1 + .../grpc-interceptor-base/build.gradle.kts | 88 ++++++++ .../grpc-interceptor-base/consumer-rules.pro | 0 .../grpc-interceptor-base/proguard-rules.pro | 21 ++ .../src/main/AndroidManifest.xml | 3 + .../openflocon/flocon/grpc/BadQuality.kt | 0 .../flocon/grpc/FloconGrpcBaseFormatter.kt | 6 + .../flocon/grpc/FloconGrpcBaseInterceptor.kt | 168 ++++++++++++++ .../flocon/grpc/FloconGrpcPlugin.kt | 0 .../flocon/grpc/model/GrpcHeader.kt | 0 .../flocon/grpc/model/RequestHolder.kt | 0 .../grpc-interceptor-lite/.gitignore | 1 + .../grpc-interceptor-lite/build.gradle.kts | 86 +++++++ .../grpc-interceptor-lite/consumer-rules.pro | 0 .../grpc-interceptor-lite/proguard-rules.pro | 21 ++ .../src/main/AndroidManifest.xml | 4 + .../flocon/grpc/lite/FloconGrpcFormatter.kt | 51 +++++ .../flocon/grpc/lite/FloconGrpcInterceptor.kt | 9 + .../grpc-interceptor/build.gradle.kts | 7 +- .../src/main/AndroidManifest.xml | 1 + .../flocon/grpc/FloconGrpcFormatter.kt | 12 + .../flocon/grpc/FloconGrpcInterceptor.kt | 212 +----------------- FloconAndroid/publishLocal.sh | 4 + FloconAndroid/settings.gradle.kts | 2 + README.md | 24 +- 30 files changed, 522 insertions(+), 226 deletions(-) rename FloconAndroid/app/src/main/java/io/github/openflocon/flocon/myapplication/grpc/{IntiializeGrpc.kt => InitializeGrpc.kt} (84%) create mode 100644 FloconAndroid/grpc-interceptor-base/.gitignore create mode 100644 FloconAndroid/grpc-interceptor-base/build.gradle.kts create mode 100644 FloconAndroid/grpc-interceptor-base/consumer-rules.pro create mode 100644 FloconAndroid/grpc-interceptor-base/proguard-rules.pro create mode 100644 FloconAndroid/grpc-interceptor-base/src/main/AndroidManifest.xml rename FloconAndroid/{grpc-interceptor => grpc-interceptor-base}/src/main/java/io/github/openflocon/flocon/grpc/BadQuality.kt (100%) create mode 100644 FloconAndroid/grpc-interceptor-base/src/main/java/io/github/openflocon/flocon/grpc/FloconGrpcBaseFormatter.kt create mode 100644 FloconAndroid/grpc-interceptor-base/src/main/java/io/github/openflocon/flocon/grpc/FloconGrpcBaseInterceptor.kt rename FloconAndroid/{grpc-interceptor => grpc-interceptor-base}/src/main/java/io/github/openflocon/flocon/grpc/FloconGrpcPlugin.kt (100%) rename FloconAndroid/{grpc-interceptor => grpc-interceptor-base}/src/main/java/io/github/openflocon/flocon/grpc/model/GrpcHeader.kt (100%) rename FloconAndroid/{grpc-interceptor => grpc-interceptor-base}/src/main/java/io/github/openflocon/flocon/grpc/model/RequestHolder.kt (100%) create mode 100644 FloconAndroid/grpc-interceptor-lite/.gitignore create mode 100644 FloconAndroid/grpc-interceptor-lite/build.gradle.kts create mode 100644 FloconAndroid/grpc-interceptor-lite/consumer-rules.pro create mode 100644 FloconAndroid/grpc-interceptor-lite/proguard-rules.pro create mode 100644 FloconAndroid/grpc-interceptor-lite/src/main/AndroidManifest.xml create mode 100644 FloconAndroid/grpc-interceptor-lite/src/main/java/io/github/openflocon/flocon/grpc/lite/FloconGrpcFormatter.kt create mode 100644 FloconAndroid/grpc-interceptor-lite/src/main/java/io/github/openflocon/flocon/grpc/lite/FloconGrpcInterceptor.kt create mode 100644 FloconAndroid/grpc-interceptor/src/main/java/io/github/openflocon/flocon/grpc/FloconGrpcFormatter.kt diff --git a/.github/workflows/publish_android.yml b/.github/workflows/publish_android.yml index 26730ba3..b09f1515 100644 --- a/.github/workflows/publish_android.yml +++ b/.github/workflows/publish_android.yml @@ -23,6 +23,8 @@ jobs: :flocon:publishToMavenCentral \ :flocon-no-op:publishToMavenCentral \ :okhttp-interceptor:publishToMavenCentral \ + :grpc-interceptor-base:publishToMavenCentral \ + :grpc-interceptor-lite:publishToMavenCentral \ :grpc-interceptor:publishToMavenCentral \ :ktor-interceptor:publishToMavenCentral \ --no-configuration-cache diff --git a/FloconAndroid/.idea/gradle.xml b/FloconAndroid/.idea/gradle.xml index 4b005bf0..3449fbee 100644 --- a/FloconAndroid/.idea/gradle.xml +++ b/FloconAndroid/.idea/gradle.xml @@ -15,6 +15,8 @@