19 #ifndef GRPCPP_SUPPORT_CHANNEL_ARGUMENTS_H
20 #define GRPCPP_SUPPORT_CHANNEL_ARGUMENTS_H
31 class SecureChannelCredentials;
33 class ChannelArgumentsTest;
97 void SetInt(
const std::string& key,
int value);
102 void SetPointer(
const std::string& key,
void* value);
111 void SetString(
const std::string& key,
const std::string& value);
118 out.
args = args_.empty() ? nullptr :
const_cast<grpc_arg*
>(&args_[0]);
127 struct PointerVtableMembers {
128 static void* Copy(
void* in) {
return in; }
129 static void Destroy(
void* ) {}
130 static int Compare(
void* a,
void* b) {
131 if (a < b)
return -1;
138 std::string GetSslTargetNameOverride()
const;
140 std::vector<grpc_arg> args_;
141 std::list<std::string> strings_;
Options for channel creation.
Definition: channel_arguments.h:39
void SetMaxReceiveMessageSize(int size)
Set the max receive and send message sizes.
Definition: channel_arguments.cc:151
void SetGrpclbFallbackTimeout(int fallback_timeout)
Set the grpclb fallback timeout (in ms) for the channel.
Definition: channel_arguments.cc:87
void Swap(ChannelArguments &other)
Definition: channel_arguments.cc:77
friend class grpc::testing::ChannelArgumentsTest
Definition: channel_arguments.h:124
void SetSslTargetNameOverride(const std::string &name)
Set target name override for SSL host name checking.
Definition: secure_channel_arguments.cc:26
void SetPointer(const std::string &key, void *value)
Set a pointer argument value under key.
Definition: channel_arguments.cc:179
void SetSocketMutator(grpc_socket_mutator *mutator)
Set a mutator for the underlying socket.
Definition: channel_arguments.cc:91
~ChannelArguments()
Definition: channel_arguments.cc:68
void SetUserAgentPrefix(const std::string &user_agent_prefix)
Set the string to prepend to the user agent.
Definition: channel_arguments.cc:119
void SetResourceQuota(const grpc::ResourceQuota &resource_quota)
Set the buffer pool to be attached to the constructed channel.
Definition: channel_arguments.cc:144
void SetInt(const std::string &key, int value)
Set an integer argument value under key.
Definition: channel_arguments.cc:169
void SetCompressionAlgorithm(grpc_compression_algorithm algorithm)
Set the compression algorithm for the channel.
Definition: channel_arguments.cc:82
void SetMaxSendMessageSize(int size)
Definition: channel_arguments.cc:155
ChannelArguments & operator=(ChannelArguments other)
Definition: channel_arguments.h:45
void SetLoadBalancingPolicyName(const std::string &lb_policy_name)
Set LB policy name.
Definition: channel_arguments.cc:159
void SetChannelArgs(grpc_channel_args *channel_args) const
Dump arguments in this instance to channel_args.
Definition: channel_arguments.cc:210
void SetServiceConfigJSON(const std::string &service_config_json)
Set service config in JSON form.
Definition: channel_arguments.cc:164
ChannelArguments()
Definition: channel_arguments.cc:32
grpc_channel_args c_channel_args() const
Return (by value) a C grpc_channel_args structure which points to arguments owned by this ChannelArgu...
Definition: channel_arguments.h:115
void SetString(const std::string &key, const std::string &value)
Set a textual argument value under key.
Definition: channel_arguments.cc:198
void SetPointerWithVtable(const std::string &key, void *value, const grpc_arg_pointer_vtable *vtable)
Set a pointer argument value under key, transferring ownership of value to the ChannelArguments objec...
Definition: channel_arguments.cc:186
ResourceQuota represents a bound on memory and thread usage by the gRPC library.
Definition: resource_quota.h:34
Definition: secure_credentials.h:37
grpc_compression_algorithm
The various compression algorithms supported by gRPC (not sorted by compression level)
Definition: compression_types.h:57
An Alarm posts the user-provided tag to its associated completion queue or invokes the user-provided ...
Definition: alarm.h:33
Definition: grpc_types.h:85
A single argument...
Definition: grpc_types.h:103
An array of arguments that can be passed around.
Definition: grpc_types.h:132
grpc_arg * args
Definition: grpc_types.h:134
size_t num_args
Definition: grpc_types.h:133
The Socket Mutator interface allows changes on socket options.
Definition: socket_mutator.h:62