diff options
Diffstat (limited to 'src/store/modules/Control/PowerControlStore.js')
-rw-r--r-- | src/store/modules/Control/PowerControlStore.js | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/src/store/modules/Control/PowerControlStore.js b/src/store/modules/Control/PowerControlStore.js new file mode 100644 index 00000000..63ede2d4 --- /dev/null +++ b/src/store/modules/Control/PowerControlStore.js @@ -0,0 +1,39 @@ +import api from '../../api'; + +const PowerControlStore = { + namespaced: true, + state: { + powerCapValue: null, + powerConsumptionValue: null + }, + getters: { + powerCapValue: state => state.powerCapValue, + powerConsumptionValue: state => state.powerConsumptionValue + }, + mutations: { + setPowerCapValue: (state, powerCapValue) => + (state.powerCapValue = powerCapValue), + setPowerConsumptionValue: (state, powerConsumptionValue) => + (state.powerConsumptionValue = powerConsumptionValue) + }, + actions: { + getPowerControl({ commit }) { + api + .get('/redfish/v1/Chassis/chassis/Power') + .then(response => { + const powerControl = response.data.PowerControl; + const powerCap = powerControl[0].PowerLimit.LimitInWatts; + // If system is powered off, power consumption does not exist in the PowerControl + const powerConsumption = powerControl[0].PowerConsumedWatts || null; + + commit('setPowerCapValue', powerCap); + commit('setPowerConsumptionValue', powerConsumption); + }) + .catch(error => { + console.log('Power control', error); + }); + } + } +}; + +export default PowerControlStore; |