X-Git-Url: https://osm.etsi.org/gitweb/?p=osm%2FUI.git;a=blobdiff_plain;f=skyquake%2Fplugins%2Flogging%2Fsrc%2FloggingStore.js;h=a8bb337a19622fee08bcbb79f5f33dcc9784503b;hp=d8f0d70a6daf5464df6285a43f86739c4f2a3002;hb=refs%2Ftags%2Fv3.0.0rc2;hpb=27eea26c0b90dc1482aa785837b7c56da6090eaf diff --git a/skyquake/plugins/logging/src/loggingStore.js b/skyquake/plugins/logging/src/loggingStore.js index d8f0d70a6..a8bb337a1 100644 --- a/skyquake/plugins/logging/src/loggingStore.js +++ b/skyquake/plugins/logging/src/loggingStore.js @@ -1,5 +1,5 @@ /* - * + * * Copyright 2016 RIFT.IO Inc * * Licensed under the Apache License, Version 2.0 (the "License"); @@ -15,7 +15,9 @@ * limitations under the License. * */ -import _ from 'lodash'; +import _cloneDeep from 'lodash/cloneDeep'; +import _findIndex from 'lodash/findIndex'; +import _remove from 'lodash/remove'; import LoggingActions from './loggingActions.js'; import LoggingSource from './loggingSource.js'; @@ -44,7 +46,7 @@ class LoggingStore { getLoggingConfigSuccess = (data) => { console.log("LoggingStore.getLoggingConfigSuccess called. data=", data); // Do we need to do a deep clone? - const initialLoggingConfig = _.cloneDeep(data); + const initialLoggingConfig = _cloneDeep(data); console.log("initialLoggingConfig=", initialLoggingConfig); this.setState({ loggingConfig: data, @@ -59,8 +61,9 @@ class LoggingStore { putLoggingConfigSuccess = (data) => { console.log("LoggingStore.putLoggingConfigSuccess called. data=", data); - const initialLoggingConfig = _.cloneDeep(this.loggingConfig); + const initialLoggingConfig = _cloneDeep(this.loggingConfig); this.setState({ + nulledCategories: [], isLoading: false, initialLoggingConfig: initialLoggingConfig }); @@ -73,7 +76,7 @@ class LoggingStore { resetLoggingConfigData = (data) => { console.log('LoggingStore.resetLoggingConfigData called. data=', data); // Do we need to do a deep clone? - const loggingConfig = _.cloneDeep(this.initialLoggingConfig); + const loggingConfig = _cloneDeep(this.initialLoggingConfig); this.setState({ loggingConfig: loggingConfig }); @@ -83,7 +86,7 @@ class LoggingStore { console.log("LoggingStore.updateCategoryDefaultSeverity:", catsev); // find the category - let catIndex = _.findIndex(this.loggingConfig.defaultSeverities, function(o) { + let catIndex = _findIndex(this.loggingConfig.defaultSeverities, function(o) { return o.category == catsev.category; }); console.log("catIndex=", catIndex); @@ -104,7 +107,7 @@ class LoggingStore { // find the category (name) in the syslog sink let self = this; - let loggingConfig = _.cloneDeep(this.loggingConfig); + let loggingConfig = _cloneDeep(this.loggingConfig); let syslogSinkIndex = -1; let nulledCategories = this.nulledCategories; @@ -112,7 +115,7 @@ class LoggingStore { if (sink.name == 'syslog') { if (sink.filter) { if (sink.filter.category) { - let catIndex = _.findIndex(sink.filter.category, { + let catIndex = _findIndex(sink.filter.category, { name: catsev.name }); if (catIndex != -1) { @@ -126,14 +129,18 @@ class LoggingStore { // TODO/NOTE: Can't delete from model as sending a top-level payload with // missing elements is not allowed! // When backend supports it, in loggingSource change the order of operations - // Delete first followed by save/put. - // _.remove(loggingConfig.sinks[sinkIndex].filter.category, { - // name: catsev.name - // }); + // // Delete first followed by save/put. + _remove(loggingConfig.sinks[sinkIndex].filter.category, { + name: catsev.name + }); } else { sink.filter.category[catIndex] = catsev; } } else { + _remove(nulledCategories, (v) => v == catsev.name); + this.setState({ + nulledCategories: nulledCategories + }); sink.filter.category.push(catsev); } } else { @@ -212,4 +219,4 @@ class LoggingStore { } } -export default alt.createStore(LoggingStore); +export default alt.createStore(LoggingStore, 'LoggingStore');