Repository URL to install this package:
Version:
0.3.1 ▾
|
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
import { AuthService } from 'web-console-core';
import { Injectable } from '@angular/core';
import { NGXLogger } from 'ngx-logger';
import { AdminsService } from '@wa-motif-open-api/user-mgr-service';
import { Observable } from 'rxjs/Observable';
/** @type {?} */
var LOG_TAG = '[SessionService]';
/**
* @record
*/
export function CurrentUserInfo() { }
if (false) {
/** @type {?} */
CurrentUserInfo.prototype.userName;
/** @type {?} */
CurrentUserInfo.prototype.userAbbr;
/** @type {?} */
CurrentUserInfo.prototype.lastAccess;
/** @type {?|undefined} */
CurrentUserInfo.prototype.details;
}
var SessionService = /** @class */ (function () {
function SessionService(logger, authService, adminsService) {
this.logger = logger;
this.authService = authService;
this.adminsService = adminsService;
this.logger.debug(LOG_TAG, 'ctor');
this.init();
}
/**
* @private
* @return {?}
*/
SessionService.prototype.init = /**
* @private
* @return {?}
*/
function () {
this.logger.debug(LOG_TAG, 'init invoked');
};
Object.defineProperty(SessionService.prototype, "currentUser", {
/*
private loadCurrentUserInformations(){
this.logger.debug(LOG_TAG, 'loadCurrentUserInformations invoked');
this.adminsService.getCurrentAdminUser().subscribe( (data: AdminUser) => {
this._currentUser.details = data;
}, (error) => {
this.logger.error(LOG_TAG, 'loadCurrentUserInformations error:', error);
});
}
*/
get: /*
private loadCurrentUserInformations(){
this.logger.debug(LOG_TAG, 'loadCurrentUserInformations invoked');
this.adminsService.getCurrentAdminUser().subscribe( (data: AdminUser) => {
this._currentUser.details = data;
}, (error) => {
this.logger.error(LOG_TAG, 'loadCurrentUserInformations error:', error);
});
}
*/
/**
* @return {?}
*/
function () {
var _this = this;
return new Observable((/**
* @param {?} observer
* @return {?}
*/
function (observer) {
if (!_this._currentUser) {
_this.adminsService.getCurrentAdminUser().subscribe((/**
* @param {?} data
* @return {?}
*/
function (data) {
_this._currentUser = {
userName: _this.authService.currentUserName,
userAbbr: _this.buildAbbr(_this.authService.currentUserName),
lastAccess: _this.authService.logonInfo.accessTime
};
_this._currentUser.details = data;
observer.next(_this._currentUser);
observer.complete();
}), (/**
* @param {?} error
* @return {?}
*/
function (error) {
_this.logger.error(LOG_TAG, 'retrieve currentUser error:', error);
observer.error(error);
}));
}
else {
observer.next(_this._currentUser);
observer.complete();
}
}));
},
enumerable: true,
configurable: true
});
/**
* @return {?}
*/
SessionService.prototype.invalidateCache = /**
* @return {?}
*/
function () {
this._currentUser = undefined;
this.logger.debug(LOG_TAG, 'cache invalidated');
};
/**
* @private
* @param {?} userName
* @return {?}
*/
SessionService.prototype.buildAbbr = /**
* @private
* @param {?} userName
* @return {?}
*/
function (userName) {
try {
return this.authService.currentUserName.substring(0, 2).toUpperCase();
}
catch (err) {
this.logger.error(LOG_TAG, 'buildAbbr error: ', err);
return 'N.A.';
}
};
SessionService.decorators = [
{ type: Injectable }
];
/** @nocollapse */
SessionService.ctorParameters = function () { return [
{ type: NGXLogger },
{ type: AuthService },
{ type: AdminsService }
]; };
return SessionService;
}());
export { SessionService };
if (false) {
/**
* @type {?}
* @private
*/
SessionService.prototype._currentUser;
/**
* @type {?}
* @private
*/
SessionService.prototype.logger;
/**
* @type {?}
* @private
*/
SessionService.prototype.authService;
/**
* @type {?}
* @private
*/
SessionService.prototype.adminsService;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Vzc2lvbi1zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vbW90aWYtd2ViLWFkbWluLWNvcmUvIiwic291cmNlcyI6WyJsaWIvY29tcG9uZW50cy9Db21tb25zL3Nlc3Npb24tc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxVQUFVLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFFbkQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUN2QyxPQUFPLEVBQUUsYUFBYSxFQUFhLE1BQU0scUNBQXFDLENBQUM7QUFDL0UsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGlCQUFpQixDQUFDOztJQUV2QyxPQUFPLEdBQUcsa0JBQWtCOzs7O0FBRWxDLHFDQUtDOzs7SUFKRyxtQ0FBaUI7O0lBQ2pCLG1DQUFpQjs7SUFDakIscUNBQWlCOztJQUNqQixrQ0FBYTs7QUFHakI7SUFLSSx3QkFBb0IsTUFBaUIsRUFDekIsV0FBdUIsRUFDdkIsYUFBNEI7UUFGcEIsV0FBTSxHQUFOLE1BQU0sQ0FBVztRQUN6QixnQkFBVyxHQUFYLFdBQVcsQ0FBWTtRQUN2QixrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQUNoQyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxPQUFPLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFDbkMsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ2hCLENBQUM7Ozs7O0lBRUcsNkJBQUk7Ozs7SUFBWjtRQUNJLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLE9BQU8sRUFBRSxjQUFjLENBQUMsQ0FBQztJQUMvQyxDQUFDO0lBYUQsc0JBQVcsdUNBQVc7UUFYMUI7Ozs7Ozs7OztVQVNFOzs7Ozs7Ozs7Ozs7OztRQUVFO1lBQUEsaUJBcUJDO1lBcEJHLE9BQU8sSUFBSSxVQUFVOzs7O1lBQWtCLFVBQUMsUUFBUTtnQkFDNUMsSUFBSSxDQUFDLEtBQUksQ0FBQyxZQUFZLEVBQUU7b0JBQ3BCLEtBQUksQ0FBQyxhQUFhLENBQUMsbUJBQW1CLEVBQUUsQ0FBQyxTQUFTOzs7O29CQUFFLFVBQUMsSUFBZTt3QkFDaEUsS0FBSSxDQUFDLFlBQVksR0FBRzs0QkFDaEIsUUFBUSxFQUFFLEtBQUksQ0FBQyxXQUFXLENBQUMsZUFBZTs0QkFDMUMsUUFBUSxFQUFFLEtBQUksQ0FBQyxTQUFTLENBQUMsS0FBSSxDQUFDLFdBQVcsQ0FBQyxlQUFlLENBQUM7NEJBQzFELFVBQVUsRUFBRSxLQUFJLENBQUMsV0FBVyxDQUFDLFNBQVMsQ0FBQyxVQUFVO3lCQUNwRCxDQUFBO3dCQUNELEtBQUksQ0FBQyxZQUFZLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQzt3QkFDakMsUUFBUSxDQUFDLElBQUksQ0FBQyxLQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7d0JBQ2pDLFFBQVEsQ0FBQyxRQUFRLEVBQUUsQ0FBQztvQkFDeEIsQ0FBQzs7OztvQkFBRSxVQUFDLEtBQUs7d0JBQ0wsS0FBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsT0FBTyxFQUFFLDZCQUE2QixFQUFFLEtBQUssQ0FBQyxDQUFDO3dCQUNqRSxRQUFRLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO29CQUMxQixDQUFDLEVBQUMsQ0FBQztpQkFDTjtxQkFBTTtvQkFDSCxRQUFRLENBQUMsSUFBSSxDQUFDLEtBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztvQkFDakMsUUFBUSxDQUFDLFFBQVEsRUFBRSxDQUFDO2lCQUN2QjtZQUNMLENBQUMsRUFBQyxDQUFDO1FBQ1AsQ0FBQzs7O09BQUE7Ozs7SUFFTSx3Q0FBZTs7O0lBQXRCO1FBQ0ksSUFBSSxDQUFDLFlBQVksR0FBRyxTQUFTLENBQUM7UUFDOUIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsT0FBTyxFQUFFLG1CQUFtQixDQUFDLENBQUM7SUFDcEQsQ0FBQzs7Ozs7O0lBRU8sa0NBQVM7Ozs7O0lBQWpCLFVBQWtCLFFBQWdCO1FBQzlCLElBQUk7WUFDQSxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsZUFBZSxDQUFDLFNBQVMsQ0FBQyxDQUFDLEVBQUMsQ0FBQyxDQUFDLENBQUMsV0FBVyxFQUFFLENBQUM7U0FDeEU7UUFBQyxPQUFNLEdBQUcsRUFBQztZQUNSLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxHQUFHLENBQUMsQ0FBQztZQUNyRCxPQUFPLE1BQU0sQ0FBQztTQUNqQjtJQUNMLENBQUM7O2dCQTlESixVQUFVOzs7O2dCQWJGLFNBQVM7Z0JBSFQsV0FBVztnQkFJWCxhQUFhOztJQTZFdEIscUJBQUM7Q0FBQSxBQWpFRCxJQWlFQztTQWhFWSxjQUFjOzs7Ozs7SUFFdkIsc0NBQXVDOzs7OztJQUUzQixnQ0FBeUI7Ozs7O0lBQ2pDLHFDQUErQjs7Ozs7SUFDL0IsdUNBQW9DIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQXV0aFNlcnZpY2UgfSBmcm9tICd3ZWItY29uc29sZS1jb3JlJztcbmltcG9ydCB7IEluamVjdGFibGUsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0ICogYXMgXyBmcm9tICdsb2Rhc2gnXG5pbXBvcnQgeyBOR1hMb2dnZXIgfSBmcm9tICduZ3gtbG9nZ2VyJztcbmltcG9ydCB7IEFkbWluc1NlcnZpY2UsIEFkbWluVXNlciB9IGZyb20gJ0B3YS1tb3RpZi1vcGVuLWFwaS91c2VyLW1nci1zZXJ2aWNlJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzL09ic2VydmFibGUnO1xuXG5jb25zdCBMT0dfVEFHID0gJ1tTZXNzaW9uU2VydmljZV0nO1xuXG5leHBvcnQgaW50ZXJmYWNlIEN1cnJlbnRVc2VySW5mbyB7XG4gICAgdXNlck5hbWU6IHN0cmluZztcbiAgICB1c2VyQWJicjogc3RyaW5nO1xuICAgIGxhc3RBY2Nlc3M6IERhdGU7XG4gICAgZGV0YWlscz86YW55O1xufVxuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgU2Vzc2lvblNlcnZpY2UgIHtcblxuICAgIHByaXZhdGUgX2N1cnJlbnRVc2VyIDogQ3VycmVudFVzZXJJbmZvO1xuXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBsb2dnZXI6IE5HWExvZ2dlcixcbiAgICAgICAgcHJpdmF0ZSBhdXRoU2VydmljZTpBdXRoU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBhZG1pbnNTZXJ2aWNlOiBBZG1pbnNTZXJ2aWNlKSB7XG4gICAgICAgICAgICB0aGlzLmxvZ2dlci5kZWJ1ZyhMT0dfVEFHLCAnY3RvcicpO1xuICAgICAgICAgICAgdGhpcy5pbml0KCk7XG4gICAgICAgIH1cblxuICAgIHByaXZhdGUgaW5pdCgpe1xuICAgICAgICB0aGlzLmxvZ2dlci5kZWJ1ZyhMT0dfVEFHLCAnaW5pdCBpbnZva2VkJyk7XG4gICAgfVxuICAgIFxuLypcbiAgICBwcml2YXRlIGxvYWRDdXJyZW50VXNlckluZm9ybWF0aW9ucygpe1xuICAgICAgICB0aGlzLmxvZ2dlci5kZWJ1ZyhMT0dfVEFHLCAnbG9hZEN1cnJlbnRVc2VySW5mb3JtYXRpb25zIGludm9rZWQnKTtcbiAgICAgICAgdGhpcy5hZG1pbnNTZXJ2aWNlLmdldEN1cnJlbnRBZG1pblVzZXIoKS5zdWJzY3JpYmUoIChkYXRhOiBBZG1pblVzZXIpID0+IHtcbiAgICAgICAgICAgIHRoaXMuX2N1cnJlbnRVc2VyLmRldGFpbHMgPSBkYXRhO1xuICAgICAgICB9LCAoZXJyb3IpID0+IHtcbiAgICAgICAgICAgIHRoaXMubG9nZ2VyLmVycm9yKExPR19UQUcsICdsb2FkQ3VycmVudFVzZXJJbmZvcm1hdGlvbnMgZXJyb3I6JywgZXJyb3IpO1xuICAgICAgICB9KTtcbiAgICB9XG4qL1xuXG4gICAgcHVibGljIGdldCBjdXJyZW50VXNlcigpOiBPYnNlcnZhYmxlPEN1cnJlbnRVc2VySW5mbz4ge1xuICAgICAgICByZXR1cm4gbmV3IE9ic2VydmFibGU8Q3VycmVudFVzZXJJbmZvPigob2JzZXJ2ZXIpID0+IHtcbiAgICAgICAgICAgIGlmICghdGhpcy5fY3VycmVudFVzZXIpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmFkbWluc1NlcnZpY2UuZ2V0Q3VycmVudEFkbWluVXNlcigpLnN1YnNjcmliZSggKGRhdGE6IEFkbWluVXNlcikgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLl9jdXJyZW50VXNlciA9IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHVzZXJOYW1lOiB0aGlzLmF1dGhTZXJ2aWNlLmN1cnJlbnRVc2VyTmFtZSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHVzZXJBYmJyOiB0aGlzLmJ1aWxkQWJicih0aGlzLmF1dGhTZXJ2aWNlLmN1cnJlbnRVc2VyTmFtZSksXG4gICAgICAgICAgICAgICAgICAgICAgICBsYXN0QWNjZXNzOiB0aGlzLmF1dGhTZXJ2aWNlLmxvZ29uSW5mby5hY2Nlc3NUaW1lXG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgdGhpcy5fY3VycmVudFVzZXIuZGV0YWlscyA9IGRhdGE7XG4gICAgICAgICAgICAgICAgICAgIG9ic2VydmVyLm5leHQodGhpcy5fY3VycmVudFVzZXIpO1xuICAgICAgICAgICAgICAgICAgICBvYnNlcnZlci5jb21wbGV0ZSgpO1xuICAgICAgICAgICAgICAgIH0sIChlcnJvcikgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmxvZ2dlci5lcnJvcihMT0dfVEFHLCAncmV0cmlldmUgY3VycmVudFVzZXIgZXJyb3I6JywgZXJyb3IpO1xuICAgICAgICAgICAgICAgICAgICBvYnNlcnZlci5lcnJvcihlcnJvcik7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIG9ic2VydmVyLm5leHQodGhpcy5fY3VycmVudFVzZXIpO1xuICAgICAgICAgICAgICAgIG9ic2VydmVyLmNvbXBsZXRlKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHB1YmxpYyBpbnZhbGlkYXRlQ2FjaGUoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX2N1cnJlbnRVc2VyID0gdW5kZWZpbmVkO1xuICAgICAgICB0aGlzLmxvZ2dlci5kZWJ1ZyhMT0dfVEFHLCAnY2FjaGUgaW52YWxpZGF0ZWQnKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGJ1aWxkQWJicih1c2VyTmFtZTogc3RyaW5nKTogc3RyaW5nIHtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLmF1dGhTZXJ2aWNlLmN1cnJlbnRVc2VyTmFtZS5zdWJzdHJpbmcoMCwyKS50b1VwcGVyQ2FzZSgpO1xuICAgICAgICB9IGNhdGNoKGVycil7XG4gICAgICAgICAgICB0aGlzLmxvZ2dlci5lcnJvcihMT0dfVEFHLCAnYnVpbGRBYmJyIGVycm9yOiAnLCBlcnIpO1xuICAgICAgICAgICAgcmV0dXJuICdOLkEuJztcbiAgICAgICAgfVxuICAgIH1cblxuXG59XG4iXX0=