|
|
@ -79,6 +79,10 @@ ABSL_FLAG(bool, batch, false, |
|
|
|
ABSL_FLAG(double, timeout, -1, |
|
|
|
ABSL_FLAG(double, timeout, -1, |
|
|
|
"Specify timeout in seconds, used to set the deadline for all " |
|
|
|
"Specify timeout in seconds, used to set the deadline for all " |
|
|
|
"RPCs. The default value of -1 means no deadline has been set."); |
|
|
|
"RPCs. The default value of -1 means no deadline has been set."); |
|
|
|
|
|
|
|
ABSL_FLAG( |
|
|
|
|
|
|
|
int, max_recv_msg_size, 0, |
|
|
|
|
|
|
|
"Specify the max receive message size in bytes for all RPCs. -1 indicates " |
|
|
|
|
|
|
|
"unlimited. The default value of 0 means to use the gRPC default."); |
|
|
|
|
|
|
|
|
|
|
|
namespace grpc { |
|
|
|
namespace grpc { |
|
|
|
namespace testing { |
|
|
|
namespace testing { |
|
|
@ -228,8 +232,9 @@ void ReadResponse(CliCall* call, const std::string& method_name, |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
std::shared_ptr<grpc::Channel> CreateCliChannel( |
|
|
|
std::shared_ptr<grpc::Channel> CreateCliChannel( |
|
|
|
const std::string& server_address, const CliCredentials& cred) { |
|
|
|
const std::string& server_address, const CliCredentials& cred, |
|
|
|
grpc::ChannelArguments args; |
|
|
|
const grpc::ChannelArguments& extra_args) { |
|
|
|
|
|
|
|
grpc::ChannelArguments args(extra_args); |
|
|
|
if (!cred.GetSslTargetNameOverride().empty()) { |
|
|
|
if (!cred.GetSslTargetNameOverride().empty()) { |
|
|
|
args.SetSslTargetNameOverride(cred.GetSslTargetNameOverride()); |
|
|
|
args.SetSslTargetNameOverride(cred.GetSslTargetNameOverride()); |
|
|
|
} |
|
|
|
} |
|
|
@ -363,7 +368,7 @@ bool GrpcTool::ListServices(int argc, const char** argv, |
|
|
|
|
|
|
|
|
|
|
|
std::string server_address(argv[0]); |
|
|
|
std::string server_address(argv[0]); |
|
|
|
std::shared_ptr<grpc::Channel> channel = |
|
|
|
std::shared_ptr<grpc::Channel> channel = |
|
|
|
CreateCliChannel(server_address, cred); |
|
|
|
CreateCliChannel(server_address, cred, grpc::ChannelArguments()); |
|
|
|
grpc::ProtoReflectionDescriptorDatabase desc_db(channel); |
|
|
|
grpc::ProtoReflectionDescriptorDatabase desc_db(channel); |
|
|
|
grpc::protobuf::DescriptorPool desc_pool(&desc_db); |
|
|
|
grpc::protobuf::DescriptorPool desc_pool(&desc_db); |
|
|
|
|
|
|
|
|
|
|
@ -464,7 +469,7 @@ bool GrpcTool::PrintType(int /*argc*/, const char** argv, |
|
|
|
|
|
|
|
|
|
|
|
std::string server_address(argv[0]); |
|
|
|
std::string server_address(argv[0]); |
|
|
|
std::shared_ptr<grpc::Channel> channel = |
|
|
|
std::shared_ptr<grpc::Channel> channel = |
|
|
|
CreateCliChannel(server_address, cred); |
|
|
|
CreateCliChannel(server_address, cred, grpc::ChannelArguments()); |
|
|
|
grpc::ProtoReflectionDescriptorDatabase desc_db(channel); |
|
|
|
grpc::ProtoReflectionDescriptorDatabase desc_db(channel); |
|
|
|
grpc::protobuf::DescriptorPool desc_pool(&desc_db); |
|
|
|
grpc::protobuf::DescriptorPool desc_pool(&desc_db); |
|
|
|
|
|
|
|
|
|
|
@ -504,6 +509,9 @@ bool GrpcTool::CallMethod(int argc, const char** argv, |
|
|
|
" --binary_output ; Output in binary format\n" |
|
|
|
" --binary_output ; Output in binary format\n" |
|
|
|
" --json_input ; Input in json format\n" |
|
|
|
" --json_input ; Input in json format\n" |
|
|
|
" --json_output ; Output in json format\n" |
|
|
|
" --json_output ; Output in json format\n" |
|
|
|
|
|
|
|
" --max_recv_msg_size ; Specify max receive message size in " |
|
|
|
|
|
|
|
"bytes. -1 indicates unlimited. The default value of 0 means to use the " |
|
|
|
|
|
|
|
"gRPC default.\n" |
|
|
|
" --timeout ; Specify timeout (in seconds), used to " |
|
|
|
" --timeout ; Specify timeout (in seconds), used to " |
|
|
|
"set the deadline for RPCs. The default value of -1 means no " |
|
|
|
"set the deadline for RPCs. The default value of -1 means no " |
|
|
|
"deadline has been set.\n" + |
|
|
|
"deadline has been set.\n" + |
|
|
@ -520,8 +528,12 @@ bool GrpcTool::CallMethod(int argc, const char** argv, |
|
|
|
cli_args.timeout = absl::GetFlag(FLAGS_timeout); |
|
|
|
cli_args.timeout = absl::GetFlag(FLAGS_timeout); |
|
|
|
bool print_mode = false; |
|
|
|
bool print_mode = false; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
grpc::ChannelArguments args; |
|
|
|
|
|
|
|
if (absl::GetFlag(FLAGS_max_recv_msg_size) != 0) { |
|
|
|
|
|
|
|
args.SetMaxReceiveMessageSize(absl::GetFlag(FLAGS_max_recv_msg_size)); |
|
|
|
|
|
|
|
} |
|
|
|
std::shared_ptr<grpc::Channel> channel = |
|
|
|
std::shared_ptr<grpc::Channel> channel = |
|
|
|
CreateCliChannel(server_address, cred); |
|
|
|
CreateCliChannel(server_address, cred, args); |
|
|
|
|
|
|
|
|
|
|
|
if (!absl::GetFlag(FLAGS_binary_input) || |
|
|
|
if (!absl::GetFlag(FLAGS_binary_input) || |
|
|
|
!absl::GetFlag(FLAGS_binary_output)) { |
|
|
|
!absl::GetFlag(FLAGS_binary_output)) { |
|
|
@ -910,7 +922,7 @@ bool GrpcTool::ParseMessage(int argc, const char** argv, |
|
|
|
if (!absl::GetFlag(FLAGS_binary_input) || |
|
|
|
if (!absl::GetFlag(FLAGS_binary_input) || |
|
|
|
!absl::GetFlag(FLAGS_binary_output)) { |
|
|
|
!absl::GetFlag(FLAGS_binary_output)) { |
|
|
|
std::shared_ptr<grpc::Channel> channel = |
|
|
|
std::shared_ptr<grpc::Channel> channel = |
|
|
|
CreateCliChannel(server_address, cred); |
|
|
|
CreateCliChannel(server_address, cred, grpc::ChannelArguments()); |
|
|
|
parser = absl::make_unique<grpc::testing::ProtoFileParser>( |
|
|
|
parser = absl::make_unique<grpc::testing::ProtoFileParser>( |
|
|
|
absl::GetFlag(FLAGS_remotedb) ? channel : nullptr, |
|
|
|
absl::GetFlag(FLAGS_remotedb) ? channel : nullptr, |
|
|
|
absl::GetFlag(FLAGS_proto_path), absl::GetFlag(FLAGS_protofiles)); |
|
|
|
absl::GetFlag(FLAGS_proto_path), absl::GetFlag(FLAGS_protofiles)); |
|
|
|