Skip to content

Commit f6cc560

Browse files
authored
Merge pull request #1714 from AzureAD/atp-instrumentation
Extend acquireTokenPopup and acquireTokenInteractive instrumentation
2 parents ace2688 + 567ec94 commit f6cc560

File tree

1 file changed

+16
-2
lines changed

1 file changed

+16
-2
lines changed

lib/msal-core/src/UserAgentApplication.ts

Lines changed: 16 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -377,6 +377,8 @@ export class UserAgentApplication {
377377
* @returns {Promise.<AuthResponse>} - a promise that is fulfilled when this function has completed, or rejected if an error was raised. Returns the {@link AuthResponse} object
378378
*/
379379
acquireTokenPopup(userRequest: AuthenticationParameters): Promise<AuthResponse> {
380+
this.logger.verbose("AcquireTokenPopup has been called");
381+
380382
// validate request
381383
const request: AuthenticationParameters = RequestUtils.validateRequest(userRequest, false, this.clientId, Constants.interactionTypePopup);
382384
const apiEvent: ApiEvent = this.telemetryManager.createAndStartApiEvent(request.correlationId, API_EVENT_IDENTIFIER.AcquireTokenPopup);
@@ -385,6 +387,7 @@ export class UserAgentApplication {
385387
this.acquireTokenInteractive(Constants.interactionTypePopup, false, request, resolve, reject);
386388
})
387389
.then((resp) => {
390+
this.logger.verbose("Successfully acquired token");
388391
this.telemetryManager.stopAndFlushApiEvent(request.correlationId, apiEvent, true);
389392
return resp;
390393
})
@@ -405,6 +408,7 @@ export class UserAgentApplication {
405408
* To renew idToken, please pass clientId as the only scope in the Authentication Parameters
406409
*/
407410
private acquireTokenInteractive(interactionType: InteractionType, isLoginCall: boolean, request: AuthenticationParameters, resolve?: any, reject?: any): void {
411+
this.logger.verbose("AcquireTokenInteractive has been called");
408412

409413
// block the request if made from the hidden iframe
410414
WindowUtils.blockReloadInHiddenIframes();
@@ -427,7 +431,14 @@ export class UserAgentApplication {
427431
}
428432

429433
// Get the account object if a session exists
430-
const account: Account = (request && request.account && !isLoginCall) ? request.account : this.getAccount();
434+
let account: Account;
435+
if (request && request.account && !isLoginCall) {
436+
account = request.account;
437+
this.logger.verbose("Account set from request");
438+
} else {
439+
account = this.getAccount();
440+
this.logger.verbose("Account set from MSAL Cache");
441+
}
431442

432443
// If no session exists, prompt the user to login.
433444
if (!account && !ServerRequestParameters.isSSOParam(request)) {
@@ -437,7 +448,7 @@ export class UserAgentApplication {
437448

438449
// silent login if ADAL id_token is retrieved successfully - SSO
439450
if (adalIdToken && !request.scopes) {
440-
this.logger.info("ADAL's idToken exists. Extracting login information from ADAL's idToken ");
451+
this.logger.info("ADAL's idToken exists. Extracting login information from ADAL's idToken");
441452
const tokenRequest: AuthenticationParameters = this.buildIDTokenRequest(request);
442453

443454
this.silentLogin = true;
@@ -457,11 +468,13 @@ export class UserAgentApplication {
457468
}
458469
// No ADAL token found, proceed to login
459470
else {
471+
this.logger.verbose("Login call but no token found, proceed to login");
460472
this.acquireTokenHelper(null, interactionType, isLoginCall, request, resolve, reject);
461473
}
462474
}
463475
// AcquireToken call, but no account or context given, so throw error
464476
else {
477+
this.logger.verbose("AcquireToken call, no context or account given");
465478
this.logger.info("User login is required");
466479
const stateOnlyResponse = buildResponseStateOnly(this.getAccountState(request.state));
467480
this.cacheStorage.resetTempCacheItems(request.state);
@@ -474,6 +487,7 @@ export class UserAgentApplication {
474487
}
475488
// User session exists
476489
else {
490+
this.logger.verbose("User session exists, login not required");
477491
this.acquireTokenHelper(account, interactionType, isLoginCall, request, resolve, reject);
478492
}
479493
}

0 commit comments

Comments
 (0)