googleapis / sdk-platform-java

Tooling and shared libraries for Cloud SDK for Java
https://cloud.google.com/java/docs/bom
Apache License 2.0
62 stars 50 forks source link

HeaderProvider reference is lost during ServiceOptions.toBuilder #2821

Open burkedavison opened 1 month ago

burkedavison commented 1 month ago

serviceOptions.toBuilder().build() should not cause field values to be unset.

blakeli0 commented 1 month ago

Thanks Burke! How did you notice this issue?

burkedavison commented 1 month ago

Working through specific requirements for https://github.com/GoogleCloudPlatform/spring-cloud-gcp/issues/2906 by creating a test for it. I found I couldn't modify LoggingOptions via toBuilder without erasing its header provider. https://github.com/GoogleCloudPlatform/spring-cloud-gcp/blob/d8d7168e57683adf76b1e56b1a3e7d87fb7d8bdf/spring-cloud-gcp-logging/src/main/java/com/google/cloud/spring/logging/LoggingAppender.java#L43