aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorsanjaypujare <sanjaypujare@users.noreply.github.com>2020-04-02 14:29:36 -0700
committerGitHub <noreply@github.com>2020-04-02 14:29:36 -0700
commit7555a400db886b5ae040e579f246eeec31048803 (patch)
tree30d0fa81c46ca6ad6231c6ab1ea529248e9e1259
parent84dd812db86cbfa77b0dda7839ae0ea876135057 (diff)
downloadgrpc-grpc-java-7555a400db886b5ae040e579f246eeec31048803.tar.gz
xds: set listeningAddresses in Node and metadata as per the new interface (#6880)
-rw-r--r--xds/src/main/java/io/grpc/xds/XdsClientImpl.java14
-rw-r--r--xds/src/test/java/io/grpc/xds/XdsClientImplTestForListener.java14
2 files changed, 21 insertions, 7 deletions
diff --git a/xds/src/main/java/io/grpc/xds/XdsClientImpl.java b/xds/src/main/java/io/grpc/xds/XdsClientImpl.java
index 1f8053281..2e7d33787 100644
--- a/xds/src/main/java/io/grpc/xds/XdsClientImpl.java
+++ b/xds/src/main/java/io/grpc/xds/XdsClientImpl.java
@@ -41,6 +41,7 @@ import io.envoyproxy.envoy.api.v2.Listener;
import io.envoyproxy.envoy.api.v2.RouteConfiguration;
import io.envoyproxy.envoy.api.v2.core.Address;
import io.envoyproxy.envoy.api.v2.core.Node;
+import io.envoyproxy.envoy.api.v2.core.SocketAddress;
import io.envoyproxy.envoy.api.v2.listener.FilterChain;
import io.envoyproxy.envoy.api.v2.listener.FilterChainMatch;
import io.envoyproxy.envoy.api.v2.route.Route;
@@ -450,12 +451,17 @@ final class XdsClientImpl extends XdsClient {
/** In case of Listener watcher metadata to be updated to include port. */
private void updateNodeMetadataForListenerRequest(int port) {
- // TODO(sanjaypujare): fields of metadata to update to be finalized
Struct newMetadata = node.getMetadata().toBuilder()
- .putFields("listener_inbound_port",
- Value.newBuilder().setStringValue("" + port).build())
+ .putFields("TRAFFICDIRECTOR_PROXYLESS",
+ Value.newBuilder().setStringValue("1").build())
.build();
- node = node.toBuilder().setMetadata(newMetadata).build();
+ Address listeningAddress =
+ Address.newBuilder()
+ .setSocketAddress(
+ SocketAddress.newBuilder().setAddress("0.0.0.0").setPortValue(port).build())
+ .build();
+ node =
+ node.toBuilder().setMetadata(newMetadata).addListeningAddresses(listeningAddress).build();
}
@Override
diff --git a/xds/src/test/java/io/grpc/xds/XdsClientImplTestForListener.java b/xds/src/test/java/io/grpc/xds/XdsClientImplTestForListener.java
index 976bafcb3..d59bc1288 100644
--- a/xds/src/test/java/io/grpc/xds/XdsClientImplTestForListener.java
+++ b/xds/src/test/java/io/grpc/xds/XdsClientImplTestForListener.java
@@ -228,10 +228,18 @@ public class XdsClientImplTestForListener {
private static Node getNodeToVerify() {
Struct newMetadata = NODE.getMetadata().toBuilder()
- .putFields("listener_inbound_port",
- Value.newBuilder().setStringValue("" + PORT).build())
+ .putFields("TRAFFICDIRECTOR_PROXYLESS",
+ Value.newBuilder().setStringValue("1").build())
+ .build();
+ Address listeningAddress =
+ Address.newBuilder()
+ .setSocketAddress(
+ SocketAddress.newBuilder().setAddress("0.0.0.0").setPortValue(PORT).build())
+ .build();
+ return NODE.toBuilder()
+ .setMetadata(newMetadata)
+ .addListeningAddresses(listeningAddress)
.build();
- return NODE.toBuilder().setMetadata(newMetadata).build();
}
private static DiscoveryRequest buildDiscoveryRequest(