blob: a8903e2aac653588db95fabaee74d00e9c37cfe3 [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 Montague64835442020-11-29 12:31:20 -06007 indicatorLedActiveState: false,
SurenNeware090c2d42020-04-01 14:07:27 +05308 },
9 getters: {
Derick Montague64835442020-11-29 12:31:20 -060010 getIndicatorLedActiveState: (state) => state.indicatorLedActiveState,
SurenNeware090c2d42020-04-01 14:07:27 +053011 },
12 mutations: {
Derick Montague64835442020-11-29 12:31:20 -060013 setIndicatorLedActiveState(state, indicatorLedActiveState) {
14 state.indicatorLedActiveState = indicatorLedActiveState;
Derick Montague602e98a2020-10-21 16:20:00 -050015 },
SurenNeware090c2d42020-04-01 14:07:27 +053016 },
17 actions: {
Derick Montague64835442020-11-29 12:31:20 -060018 async getIndicatorLedActiveState({ 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) => {
Derick Montague64835442020-11-29 12:31:20 -060022 commit(
23 'setIndicatorLedActiveState',
24 response.data.LocationIndicatorActive
25 );
SurenNeware090c2d42020-04-01 14:07:27 +053026 })
Derick Montague602e98a2020-10-21 16:20:00 -050027 .catch((error) => console.log(error));
SurenNeware090c2d42020-04-01 14:07:27 +053028 },
Derick Montague64835442020-11-29 12:31:20 -060029 async saveIndicatorLedActiveState({ commit }, payload) {
Yoshie Muranaka11bafca2020-12-01 16:38:47 -080030 commit('setIndicatorLedActiveState', payload);
SurenNeware31bf55a2020-06-22 21:53:33 +053031 return await api
SurenNeware2aac4d32020-11-24 16:32:14 +053032 .patch('/redfish/v1/Systems/system', {
33 LocationIndicatorActive: payload,
34 })
SurenNeware090c2d42020-04-01 14:07:27 +053035 .then(() => {
SurenNeware2aac4d32020-11-24 16:32:14 +053036 if (payload) {
SurenNeware31bf55a2020-06-22 21:53:33 +053037 return i18n.t('pageServerLed.toast.successServerLedOn');
38 } else {
39 return i18n.t('pageServerLed.toast.successServerLedOff');
40 }
SurenNeware090c2d42020-04-01 14:07:27 +053041 })
Derick Montague602e98a2020-10-21 16:20:00 -050042 .catch((error) => {
SurenNeware31bf55a2020-06-22 21:53:33 +053043 console.log(error);
Yoshie Muranaka11bafca2020-12-01 16:38:47 -080044 commit('setIndicatorLedActiveState', !payload);
SurenNeware2aac4d32020-11-24 16:32:14 +053045 if (payload) {
SurenNeware31bf55a2020-06-22 21:53:33 +053046 throw new Error(i18n.t('pageServerLed.toast.errorServerLedOn'));
47 } else {
48 throw new Error(i18n.t('pageServerLed.toast.errorServerLedOff'));
49 }
50 });
Derick Montague602e98a2020-10-21 16:20:00 -050051 },
52 },
SurenNeware090c2d42020-04-01 14:07:27 +053053};
54
55export default ServerLedStore;