blob: 51e09206a248622061129de58892aa665b451e46 [file] [log] [blame]
SurenNeware61859092020-10-01 09:37:32 +05301import api from '@/store/api';
SurenNeware31bf55a2020-06-22 21:53:33 +05302import i18n from '@/i18n';
SurenNeware090c2d42020-04-01 14:07:27 +05303
4const ServerLedStore = {
5 namespaced: true,
6 state: {
Derick Montague602e98a2020-10-21 16:20:00 -05007 indicatorValue: 'Off',
SurenNeware090c2d42020-04-01 14:07:27 +05308 },
9 getters: {
Derick Montague602e98a2020-10-21 16:20:00 -050010 getIndicatorValue: (state) => state.indicatorValue,
SurenNeware090c2d42020-04-01 14:07:27 +053011 },
12 mutations: {
13 setIndicatorValue(state, indicatorValue) {
14 state.indicatorValue = indicatorValue;
Derick Montague602e98a2020-10-21 16:20:00 -050015 },
SurenNeware090c2d42020-04-01 14:07:27 +053016 },
17 actions: {
SurenNewareaa7e8322020-06-12 17:59:34 +053018 async getIndicatorValue({ commit }) {
SurenNeware31bf55a2020-06-22 21:53:33 +053019 return await api
SurenNeware090c2d42020-04-01 14:07:27 +053020 .get('/redfish/v1/Systems/system')
Derick Montague602e98a2020-10-21 16:20:00 -050021 .then((response) => {
SurenNeware090c2d42020-04-01 14:07:27 +053022 commit('setIndicatorValue', response.data.IndicatorLED);
23 })
Derick Montague602e98a2020-10-21 16:20:00 -050024 .catch((error) => console.log(error));
SurenNeware090c2d42020-04-01 14:07:27 +053025 },
SurenNewareaa7e8322020-06-12 17:59:34 +053026 async saveIndicatorLedValue({ commit }, payload) {
SurenNeware31bf55a2020-06-22 21:53:33 +053027 return await api
SurenNeware090c2d42020-04-01 14:07:27 +053028 .patch('/redfish/v1/Systems/system', { IndicatorLED: payload })
29 .then(() => {
30 commit('setIndicatorValue', payload);
SurenNeware31bf55a2020-06-22 21:53:33 +053031 if (payload === 'Lit') {
32 return i18n.t('pageServerLed.toast.successServerLedOn');
33 } else {
34 return i18n.t('pageServerLed.toast.successServerLedOff');
35 }
SurenNeware090c2d42020-04-01 14:07:27 +053036 })
Derick Montague602e98a2020-10-21 16:20:00 -050037 .catch((error) => {
SurenNeware31bf55a2020-06-22 21:53:33 +053038 console.log(error);
39 if (payload === 'Lit') {
40 throw new Error(i18n.t('pageServerLed.toast.errorServerLedOn'));
41 } else {
42 throw new Error(i18n.t('pageServerLed.toast.errorServerLedOff'));
43 }
44 });
Derick Montague602e98a2020-10-21 16:20:00 -050045 },
46 },
SurenNeware090c2d42020-04-01 14:07:27 +053047};
48
49export default ServerLedStore;