@@ -71,17 +71,18 @@ public async Task GetOrganizations(Action<IList<Organization>> callback)
7171 callback ( organizations ) ;
7272 }
7373
74- public async Task GetCurrentUser ( Action < Octokit . User > callback )
74+ public async Task LoadKeychain ( Action < bool > callback )
7575 {
7676 Guard . ArgumentNotNull ( callback , "callback" ) ;
77- var user = await GetCurrentUserInternal ( ) ;
78- callback ( user ) ;
77+ var hasLoadedKeys = await LoadKeychainInternal ( ) ;
78+ callback ( hasLoadedKeys ) ;
7979 }
8080
81- public async Task GetCurrentUserAndOrganizations ( Action < Octokit . User , IList < Organization > > callback )
81+ public async Task GetCurrentUser ( Action < Octokit . User > callback )
8282 {
8383 Guard . ArgumentNotNull ( callback , "callback" ) ;
84- await GetUsersAndOrganizationInternal ( callback ) ;
84+ var user = await GetCurrentUserInternal ( ) ;
85+ callback ( user ) ;
8586 }
8687
8788 public async Task Login ( string username , string password , Action < LoginResult > need2faCode , Action < bool , string > result )
@@ -186,7 +187,7 @@ private async Task CreateRepositoryInternal(NewRepository newRepository, Action<
186187 {
187188 logger . Trace ( "Creating repository" ) ;
188189
189- if ( ! await EnsureKeychainLoaded ( ) )
190+ if ( ! await LoadKeychainInternal ( ) )
190191 {
191192 callback ( null , new Exception ( "Keychain Not Loaded" ) ) ;
192193 return ;
@@ -223,7 +224,7 @@ private async Task<IList<Organization>> GetOrganizationInternal()
223224 {
224225 logger . Trace ( "Getting Organizations" ) ;
225226
226- if ( ! await EnsureKeychainLoaded ( ) )
227+ if ( ! await LoadKeychainInternal ( ) )
227228 {
228229 return null ;
229230 }
@@ -252,7 +253,7 @@ private async Task<IList<Organization>> GetOrganizationInternal()
252253 {
253254 logger . Trace ( "Getting Organizations" ) ;
254255
255- if ( ! await EnsureKeychainLoaded ( ) )
256+ if ( ! await LoadKeychainInternal ( ) )
256257 {
257258 return null ;
258259 }
@@ -268,44 +269,27 @@ private async Task<IList<Organization>> GetOrganizationInternal()
268269 return userCache ;
269270 }
270271
271- private async Task GetUsersAndOrganizationInternal ( Action < Octokit . User , IList < Organization > > callback )
272- {
273- if ( ! await EnsureKeychainLoaded ( ) )
274- {
275- callback ( null , null ) ;
276- return ;
277- }
278-
279- var currentUserInternal = GetCurrentUserInternal ( ) ;
280- var organizationInternal = GetOrganizationInternal ( ) ;
281-
282- currentUserInternal . Start ( TaskScheduler . Current ) ;
283- organizationInternal . Start ( TaskScheduler . Current ) ;
284-
285- callback ( await currentUserInternal , await organizationInternal ) ;
286- }
287-
288- private async Task < bool > EnsureKeychainLoaded ( )
272+ private async Task < bool > LoadKeychainInternal ( )
289273 {
290- logger . Trace ( "EnsureKeychainLoaded " ) ;
274+ logger . Trace ( "LoadKeychainInternal " ) ;
291275
292276 if ( keychain . HasKeys )
293277 {
294278 if ( ! keychain . NeedsLoad )
295279 {
296- logger . Trace ( "EnsureKeychainLoaded : Has keys does not need load" ) ;
280+ logger . Trace ( "LoadKeychainInternal : Has keys does not need load" ) ;
297281 return true ;
298282 }
299283
300- logger . Trace ( "EnsureKeychainLoaded : Loading" ) ;
284+ logger . Trace ( "LoadKeychainInternal : Loading" ) ;
301285
302286 var uriString = keychain . Connections . First ( ) . Host ;
303287 var keychainAdapter = await keychain . Load ( uriString ) ;
304288
305289 return keychainAdapter . OctokitCredentials != Credentials . Anonymous ;
306290 }
307291
308- logger . Trace ( "EnsureKeychainLoaded : No keys to load" ) ;
292+ logger . Trace ( "LoadKeychainInternal : No keys to load" ) ;
309293
310294 return false ;
311295 }
0 commit comments