Add User-Agent Header to gRPC Metadata #213
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This pull request introduces several updates across the
azuremanagedmodule and related files to enhance functionality, improve build processes, and extend protocol buffer definitions. The most significant changes include adding support for user-agent headers, automating version information generation during the build, and extending the protobuf definitions with new properties.Enhancements to SDK functionality:
User-Agent Header Support: Added user-agent headers to
DurableTaskSchedulerClientOptionsandDurableTaskSchedulerWorkerOptionsusing the newDurableTaskUserAgentUtilutility class. This ensures consistent identification of the SDK in network requests. (azuremanaged/src/main/java/com/microsoft/durabletask/azuremanaged/DurableTaskSchedulerClientOptions.java, [1];azuremanaged/src/main/java/com/microsoft/durabletask/azuremanaged/DurableTaskSchedulerWorkerOptions.java, [2]User-Agent Utility: Introduced
DurableTaskUserAgentUtilto generate user-agent strings dynamically based on the SDK name and version. (azuremanaged/src/main/java/com/microsoft/durabletask/azuremanaged/DurableTaskUserAgentUtil.java, azuremanaged/src/main/java/com/microsoft/durabletask/azuremanaged/DurableTaskUserAgentUtil.javaR1-R27)Build process improvements:
VersionInfoclass during the build process, ensuring the SDK version is always up-to-date in the code. (azuremanaged/build.gradle, [1];azuremanaged/src/main/resources/VersionInfo.java.template, [2]Protocol buffer extensions:
New Protobuf Import: Added
google/protobuf/struct.prototo theorchestrator_service.protofile to support structured data. (internal/durabletask-protobuf/protos/orchestrator_service.proto, internal/durabletask-protobuf/protos/orchestrator_service.protoR14)Extended OrchestratorRequest: Introduced a new
propertiesfield as a map of string keys to protobufValuetypes, allowing for additional metadata in orchestrator requests. (internal/durabletask-protobuf/protos/orchestrator_service.proto, internal/durabletask-protobuf/protos/orchestrator_service.protoR322)Miscellaneous:
Protobuf Source Commit Hash Update: Updated the
PROTO_SOURCE_COMMIT_HASHto reflect the latest changes in the protobuf definitions. (internal/durabletask-protobuf/PROTO_SOURCE_COMMIT_HASH, internal/durabletask-protobuf/PROTO_SOURCE_COMMIT_HASHL1-R1)Sample Application Update: Replaced the
applicationplugin in thesamplesmodule with a custom Gradle task for running a specific sample application. (samples/build.gradle, samples/build.gradleL4-R16)Issue describing the changes in this PR
resolves #issue_for_this_pr
Pull request checklist
CHANGELOG.mdAdditional information
Additional PR information