From 7795324d19edf896086bca7b26104dbbda7acd9f Mon Sep 17 00:00:00 2001 From: Yang Gao Date: Fri, 27 Feb 2015 14:28:05 -0800 Subject: Redo #817. Update pubsub example channel creation and credentials --- examples/pubsub/main.cc | 42 ++++++++---------------------------------- 1 file changed, 8 insertions(+), 34 deletions(-) (limited to 'examples') diff --git a/examples/pubsub/main.cc b/examples/pubsub/main.cc index 39fb8aea15..75aecac1f9 100644 --- a/examples/pubsub/main.cc +++ b/examples/pubsub/main.cc @@ -41,6 +41,7 @@ #include #include #include +#include #include #include #include @@ -48,17 +49,11 @@ #include "examples/pubsub/publisher.h" #include "examples/pubsub/subscriber.h" -#include "test/cpp/util/create_test_channel.h" DEFINE_int32(server_port, 443, "Server port."); DEFINE_string(server_host, "pubsub-staging.googleapis.com", "Server host to connect to"); DEFINE_string(project_id, "", "GCE project id such as stoked-keyword-656"); -DEFINE_string(service_account_key_file, "", - "Path to service account json key file."); -DEFINE_string(oauth_scope, - "https://www.googleapis.com/auth/cloud-platform", - "Scope for OAuth tokens."); // In some distros, gflags is in the namespace google, and in some others, // in gflags. This hack is enabling us to find both. @@ -75,17 +70,6 @@ const char kMessageData[] = "Test Data"; } // namespace -grpc::string GetServiceAccountJsonKey() { - grpc::string json_key; - if (json_key.empty()) { - std::ifstream json_key_file(FLAGS_service_account_key_file); - std::stringstream key_stream; - key_stream << json_key_file.rdbuf(); - json_key = key_stream.str(); - } - return json_key; -} - int main(int argc, char** argv) { grpc_init(); ParseCommandLineFlags(&argc, &argv, true); @@ -93,23 +77,12 @@ int main(int argc, char** argv) { std::ostringstream ss; - std::unique_ptr creds; - if (FLAGS_service_account_key_file != "") { - grpc::string json_key = GetServiceAccountJsonKey(); - creds = grpc::CredentialsFactory::ServiceAccountCredentials( - json_key, FLAGS_oauth_scope, std::chrono::hours(1)); - } else { - creds = grpc::CredentialsFactory::ComputeEngineCredentials(); - } - ss << FLAGS_server_host << ":" << FLAGS_server_port; - std::shared_ptr channel( - grpc::CreateTestChannel( - ss.str(), - FLAGS_server_host, - true, // enable SSL - true, // use prod roots - creds)); + + std::unique_ptr creds = + grpc::CredentialsFactory::GoogleDefaultCredentials(); + std::shared_ptr channel = + grpc::CreateChannel(ss.str(), creds, grpc::ChannelArguments()); grpc::examples::pubsub::Publisher publisher(channel); grpc::examples::pubsub::Subscriber subscriber(channel); @@ -127,8 +100,9 @@ int main(int argc, char** argv) { grpc::string subscription_topic; if (subscriber.GetSubscription( subscription_name, &subscription_topic).IsOk()) { - subscriber.DeleteSubscription(subscription_name); + s = subscriber.DeleteSubscription(subscription_name); } + if (publisher.GetTopic(topic).IsOk()) publisher.DeleteTopic(topic); grpc::Status s = publisher.CreateTopic(topic); -- cgit v1.2.3