Index: blimp/client/core/blimp_client_context_impl.cc |
diff --git a/blimp/client/core/blimp_client_context_impl.cc b/blimp/client/core/blimp_client_context_impl.cc |
index 4ebebde648c30cfb8a3c03536604343eb4b982d8..2f75beb8aa188223dd3610826ae5f26ab650378f 100644 |
--- a/blimp/client/core/blimp_client_context_impl.cc |
+++ b/blimp/client/core/blimp_client_context_impl.cc |
@@ -95,10 +95,7 @@ std::unique_ptr<BlimpContents> BlimpClientContextImpl::CreateBlimpContents() { |
void BlimpClientContextImpl::Connect() { |
// Lazy initialization of IdentitySource. |
David Trainor- moved to gerrit
2016/08/30 20:46:29
Can this just call GetIdentitySource()->Connect()?
xingliu
2016/08/30 22:27:36
Done.
|
if (!identity_source_) { |
- identity_source_ = base::MakeUnique<IdentitySource>( |
- delegate_, |
- base::Bind(&BlimpClientContextImpl::ConnectToAssignmentSource, |
- base::Unretained(this))); |
+ CreateIdentitySource(); |
} |
// Start Blimp authentication flow. The OAuth2 token will be used in |
@@ -106,6 +103,13 @@ void BlimpClientContextImpl::Connect() { |
identity_source_->Connect(); |
} |
+IdentitySource* BlimpClientContextImpl::GetIdentitySource() { |
+ if (!identity_source_) { |
+ CreateIdentitySource(); |
+ } |
+ return identity_source_.get(); |
+} |
+ |
void BlimpClientContextImpl::ConnectToAssignmentSource( |
const std::string& client_auth_token) { |
if (!assignment_source_) { |
@@ -165,5 +169,11 @@ void BlimpClientContextImpl::RegisterFeatures() { |
tab_control_feature_.get())); |
} |
+void BlimpClientContextImpl::CreateIdentitySource() { |
+ identity_source_ = base::MakeUnique<IdentitySource>( |
+ delegate_, base::Bind(&BlimpClientContextImpl::ConnectToAssignmentSource, |
+ base::Unretained(this))); |
+} |
+ |
} // namespace client |
} // namespace blimp |