15 NSMutableArray *localLoginListeners;
20 localLoginListeners = [[NSMutableArray alloc] initWithCapacity:10];
28 - (void) configureGoogleSignIn
30 [
GIDSignIn sharedInstance].clientID =
@"498458703530-8vl37k9m1ibmue9tkhod0imepvsvhttb.apps.googleusercontent.com";
34 kGTLRAuthScopeCalendarReadonly,
40 NSLog(
@"Z5GoogleLoginController.logOutGoogle: user: %@", _username);
46 NSLog(
@"Z5GoogleLoginController.logOutGoogle: done(user: %@)", _username);
49 #pragma mark - #pragma mark - GIDSignInDelegate 53 withError:(NSError *)error {
57 self.signedIn = [NSNumber numberWithBool:YES];
61 NSLog(
@"GoogleLoginController.didSignInForUser: %@", fullName);
62 self.signedIn = [NSNumber numberWithBool:YES];
64 for (id<Z5GoogleLoginListener>ear in localLoginListeners) {
65 [ear signedIn: _signedInUser];
67 }
else if (-4 == [error code]) {
68 NSLog(
@"Z5GoogleLoginController.didSignInForUser: no one logged on");
70 NSLog(
@"Z5GoogleLoginController.didSignInForUser: error: %ld", (
long)[error code]);
76 withError:(NSError *)error {
78 NSLog(
@"Z5GoogleLoginController.didDisconnectWithUser");
79 self.signedIn = [NSNumber numberWithBool:NO];
81 for (id<Z5GoogleLoginListener>ear in localLoginListeners) {
82 [ear signedOut: _signedInUser];
86 - (NSString *)signedInUsername {
106 - (void) addLoginListener: (
id<Z5GoogleLoginListener>)ear
108 if (![localLoginListeners containsObject:ear]) {
109 [localLoginListeners addObject:ear];
111 if (
self.signedIn.boolValue) {
112 [ear signedIn: _signedInUser];
115 - (void) removeLoginListener: (
id<Z5GoogleLoginListener>)ear
117 [localLoginListeners removeObject:ear];
NSNumber * signInAttemptComplete
GIDGoogleUser * currentUser
GIDSignIn * sharedInstance()