refactor: use ngx-logger instead of @openstapps/logger

Closes #71
This commit is contained in:
Jovan Krunić
2020-11-17 13:54:02 +01:00
parent f7790426cd
commit 987f9d45f5
10 changed files with 63 additions and 27 deletions

View File

@@ -18,6 +18,7 @@ import {StAppsWebHttpClient} from '../data/stapps-web-http-client.provider';
import {StorageProvider} from '../storage/storage.provider';
import {ConfigProvider, STORAGE_KEY_CONFIG} from './config.provider';
import {ConfigFetchError, ConfigInitError, SavedConfigNotAvailable, WrongConfigVersionInStorage,} from './errors';
import {NGXLogger} from "ngx-logger";
describe('ConfigProvider', () => {
let configProvider: ConfigProvider;
@@ -26,6 +27,7 @@ describe('ConfigProvider', () => {
beforeEach(() => {
const storageProviderMethodSpy = jasmine.createSpyObj('StorageProvider', ['init', 'get', 'has', 'put']);
const webHttpClientMethodSpy = jasmine.createSpyObj('StAppsWebHttpClient', ['request']);
const ngxLogger: jasmine.SpyObj<NGXLogger> = jasmine.createSpyObj('NGXLogger', ['log', 'error', 'warn']);
TestBed.configureTestingModule({
imports: [],
@@ -37,6 +39,9 @@ describe('ConfigProvider', () => {
{
provide: StAppsWebHttpClient, useValue: webHttpClientMethodSpy,
},
{
provide: NGXLogger, useValue: ngxLogger,
},
],
});

View File

@@ -1,5 +1,5 @@
/*
* Copyright (C) 2019 StApps
* Copyright (C) 2019, 2020 StApps
* This program is free software: you can redistribute it and/or modify it
* under the terms of the GNU General Public License as published by the Free
* Software Foundation, version 3.
@@ -15,7 +15,7 @@
import {Injectable} from '@angular/core';
import {Client} from '@openstapps/api/lib/client';
import {SCAppConfiguration, SCIndexResponse} from '@openstapps/core';
import {Logger} from '@openstapps/logger';
import {NGXLogger} from 'ngx-logger';
import {environment} from '../../../environments/environment';
import {StAppsWebHttpClient} from '../data/stapps-web-http-client.provider';
import {StorageProvider} from '../storage/storage.provider';
@@ -55,10 +55,13 @@ export class ConfigProvider {
/**
* Constructor, initialise api client
*
* @param storageProvider StorageProvider to load persistet configuration
* @param storageProvider StorageProvider to load persistent configuration
* @param swHttpClient Api client
* @param logger An angular logger
*/
constructor(private readonly storageProvider: StorageProvider, swHttpClient: StAppsWebHttpClient) {
constructor(private readonly storageProvider: StorageProvider,
swHttpClient: StAppsWebHttpClient,
private readonly logger: NGXLogger) {
this.client = new Client(swHttpClient, environment.backend_url, environment.backend_version);
}
@@ -109,10 +112,10 @@ export class ConfigProvider {
try {
this.config = await this.loadLocal();
this.initialised = true;
Logger.log(`initialised configuration from storage`);
this.logger.log(`initialised configuration from storage`);
if (this.config.backend.SCVersion !== environment.backend_version) {
loadError = new WrongConfigVersionInStorage(environment.backend_version, this.config.backend.SCVersion);
Logger.warn(loadError);
this.logger.warn(loadError);
}
} catch (error) {
loadError = error;
@@ -122,7 +125,7 @@ export class ConfigProvider {
const fetchedConfig: SCIndexResponse = await this.fetch();
await this.set(fetchedConfig);
this.initialised = true;
Logger.log(`initialised configuration from remote`);
this.logger.log(`initialised configuration from remote`);
} catch (error) {
fetchError = error;
}

View File

@@ -1,5 +1,5 @@
/*
* Copyright (C) 2018, 2019, 2020 StApps
* Copyright (C) 2018-2020 StApps
* This program is free software: you can redistribute it and/or modify it
* under the terms of the GNU General Public License as published by the Free
* Software Foundation, version 3.
@@ -21,7 +21,7 @@ import {
SCSearchSort,
SCThing,
} from '@openstapps/core';
import {Logger} from '@openstapps/logger';
import {NGXLogger} from 'ngx-logger';
import {Subject} from 'rxjs';
import {debounceTime, distinctUntilChanged} from 'rxjs/operators';
import {MenuService} from '../../menu/menu.service';
@@ -82,12 +82,15 @@ export class DataListComponent implements OnInit {
* @param alertController AlertController
* @param dataProvider DataProvider
* @param menuService MenuService
* @param settingsProvider SettingsProvider
* @param logger An angular logger
*/
constructor(
private readonly alertController: AlertController,
private dataProvider: DataProvider,
private readonly dataProvider: DataProvider,
private readonly menuService: MenuService,
private readonly settingsProvider: SettingsProvider,
private readonly logger: NGXLogger,
) {
this.queryTextChanged
.pipe(
@@ -116,7 +119,7 @@ export class DataListComponent implements OnInit {
this.settingsProvider.settingsActionChanged$.subscribe(({type, payload}) => {
if (type === 'stapps.settings.changed') {
const {category, name, value} = payload!;
Logger.log(`received event "settings.changed" with category:
this.logger.log(`received event "settings.changed" with category:
${category}, name: ${name}, value: ${JSON.stringify(value)}`);
}
},

View File

@@ -1,5 +1,5 @@
/*
* Copyright (C) 2018, 2019 StApps
* Copyright (C) 2018-2020 StApps
* This program is free software: you can redistribute it and/or modify it
* under the terms of the GNU General Public License as published by the Free
* Software Foundation, version 3.
@@ -15,7 +15,7 @@
import {Component} from '@angular/core';
import {LangChangeEvent, TranslateService} from '@ngx-translate/core';
import {SCAppConfigurationMenuCategory, SCLanguage, SCThingTranslator, SCTranslations} from '@openstapps/core';
import {Logger} from '@openstapps/logger';
import {NGXLogger} from 'ngx-logger';
import {ConfigProvider} from '../../config/config.provider';
/**
@@ -46,8 +46,9 @@ export class NavigationComponent {
*/
translator: SCThingTranslator;
constructor(private configProvider: ConfigProvider,
public translateService: TranslateService) {
constructor(private readonly configProvider: ConfigProvider,
public translateService: TranslateService,
private readonly logger: NGXLogger) {
this.loadMenuEntries();
translateService.onLangChange.subscribe((event: LangChangeEvent) => {
this.language = event.lang as keyof SCTranslations<SCLanguage>;
@@ -63,7 +64,7 @@ export class NavigationComponent {
try {
this.menu = await this.configProvider.getValue('menus') as SCAppConfigurationMenuCategory[];
} catch (error) {
Logger.error(`error from loading menu entries: ${error}`);
this.logger.error(`error from loading menu entries: ${error}`);
}
}