diff options
Diffstat (limited to 'src/store')
-rw-r--r-- | src/store/index.js | 4 | ||||
-rw-r--r-- | src/store/modules/Control/ServerLedStore.js | 36 |
2 files changed, 39 insertions, 1 deletions
diff --git a/src/store/index.js b/src/store/index.js index 364e16c0..ad55030a 100644 --- a/src/store/index.js +++ b/src/store/index.js @@ -14,6 +14,7 @@ import PowerControlStore from './modules/Control/PowerControlStore'; import NetworkSettingStore from './modules/Configuration/NetworkSettingsStore'; import EventLogStore from './modules/Health/EventLogStore'; import SensorsStore from './modules/Health/SensorsStore'; +import ServerLedStore from './modules/Control/ServerLedStore'; import WebSocketPlugin from './plugins/WebSocketPlugin'; @@ -36,7 +37,8 @@ export default new Vuex.Store({ networkSettings: NetworkSettingStore, eventLog: EventLogStore, sensors: SensorsStore, - sslCertificates: SslCertificatesStore + sslCertificates: SslCertificatesStore, + serverLed: ServerLedStore }, plugins: [WebSocketPlugin] }); diff --git a/src/store/modules/Control/ServerLedStore.js b/src/store/modules/Control/ServerLedStore.js new file mode 100644 index 00000000..c690d7cb --- /dev/null +++ b/src/store/modules/Control/ServerLedStore.js @@ -0,0 +1,36 @@ +import api from '../../api'; + +const ServerLedStore = { + namespaced: true, + state: { + indicatorValue: 'Off' + }, + getters: { + getIndicatorValue: state => state.indicatorValue + }, + mutations: { + setIndicatorValue(state, indicatorValue) { + state.indicatorValue = indicatorValue; + } + }, + actions: { + getIndicatorValue: ({ commit }) => { + api + .get('/redfish/v1/Systems/system') + .then(response => { + commit('setIndicatorValue', response.data.IndicatorLED); + }) + .catch(error => console.log(error)); + }, + saveIndicatorLedValue: ({ commit }, payload) => { + api + .patch('/redfish/v1/Systems/system', { IndicatorLED: payload }) + .then(() => { + commit('setIndicatorValue', payload); + }) + .catch(error => console.log(error)); + } + } +}; + +export default ServerLedStore; |