Adding support for manually specifying HTTP/2 :authority and :path headers.
-------------
Created by MOE: http://code.google.com/p/moe-java
MOE_MIGRATED_REVID=75316631
diff --git a/core/src/main/java/com/google/net/stubby/Metadata.java b/core/src/main/java/com/google/net/stubby/Metadata.java
index ca83e0c..c757294 100644
--- a/core/src/main/java/com/google/net/stubby/Metadata.java
+++ b/core/src/main/java/com/google/net/stubby/Metadata.java
@@ -301,6 +301,26 @@
public void setAuthority(String authority) {
this.authority = authority;
}
+
+ @Override
+ public void merge(Metadata other) {
+ super.merge(other);
+ mergePathAndAuthority(other);
+ }
+
+ @Override
+ public void merge(Metadata other, Set<Key> keys) {
+ super.merge(other, keys);
+ mergePathAndAuthority(other);
+ }
+
+ private void mergePathAndAuthority(Metadata other) {
+ if (other instanceof Headers) {
+ Headers otherHeaders = (Headers) other;
+ path = otherHeaders.path != null ? otherHeaders.path : path;
+ authority = otherHeaders.authority != null ? otherHeaders.authority : authority;
+ }
+ }
}
/**