aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorGravatar Mark D. Roth <roth@google.com>2016-10-26 09:02:37 -0700
committerGravatar Mark D. Roth <roth@google.com>2016-10-26 12:54:59 -0700
commit7190b0c6510b75766362c43ec32c9e497057bced (patch)
tree35fa3f978aeb68076a124df66a4be8cd44dcac00
parentd4a5971ae89e124f67781a6fda57b36af3d7fb54 (diff)
Add ChannelArguments::SetLoadBalancingPolicyName() to C++ API.
-rw-r--r--include/grpc++/support/channel_arguments.h5
-rw-r--r--src/cpp/common/channel_arguments.cc5
2 files changed, 10 insertions, 0 deletions
diff --git a/include/grpc++/support/channel_arguments.h b/include/grpc++/support/channel_arguments.h
index ae243939e9..9de5497fb8 100644
--- a/include/grpc++/support/channel_arguments.h
+++ b/include/grpc++/support/channel_arguments.h
@@ -80,6 +80,11 @@ class ChannelArguments {
/// The given string will be sent at the front of the user agent string.
void SetUserAgentPrefix(const grpc::string& user_agent_prefix);
+ // Set LB policy name.
+ // Note that if the name resolver returns only balancer addresses, the
+ // grpclb LB policy will be used, regardless of what is specified here.
+ void SetLoadBalancingPolicyName(const grpc::string& lb_policy_name);
+
// Generic channel argument setters. Only for advanced use cases.
/// Set an integer argument \a value under \a key.
void SetInt(const grpc::string& key, int value);
diff --git a/src/cpp/common/channel_arguments.cc b/src/cpp/common/channel_arguments.cc
index f297ae8587..d16d27e86c 100644
--- a/src/cpp/common/channel_arguments.cc
+++ b/src/cpp/common/channel_arguments.cc
@@ -113,6 +113,11 @@ void ChannelArguments::SetUserAgentPrefix(
}
}
+void ChannelArguments::SetLoadBalancingPolicyName(
+ const grpc::string& lb_policy_name) {
+ SetString(GRPC_ARG_LB_POLICY_NAME, lb_policy_name);
+}
+
void ChannelArguments::SetInt(const grpc::string& key, int value) {
grpc_arg arg;
arg.type = GRPC_ARG_INTEGER;