blob: 836f9844245bc2a93cf465fdae82effe50c6d5b9 [file] [log] [blame]
Sandeepa Singh06d53862021-05-24 13:51:09 +05301import api from '@/store/api';
Konstantin Aladyshevd8c71c02023-02-15 12:49:11 +00002import i18n from '@/i18n';
Sandeepa Singh06d53862021-05-24 13:51:09 +05303
4const PostCodeLogsStore = {
5 namespaced: true,
6 state: {
7 allPostCodes: [],
8 },
9 getters: {
10 allPostCodes: (state) => state.allPostCodes,
11 },
12 mutations: {
13 setAllPostCodes: (state, allPostCodes) =>
14 (state.allPostCodes = allPostCodes),
15 },
16 actions: {
17 async getPostCodesLogData({ commit }) {
18 return await api
19 .get('/redfish/v1/Systems/system/LogServices/PostCodes/Entries')
20 .then(({ data: { Members = [] } = {} }) => {
21 const postCodeLogs = Members.map((log) => {
22 const { Created, MessageArgs, AdditionalDataURI } = log;
23 return {
24 date: new Date(Created),
25 bootCount: MessageArgs[0],
26 timeStampOffset: MessageArgs[1],
27 postCode: MessageArgs[2],
28 uri: AdditionalDataURI,
29 };
30 });
31 commit('setAllPostCodes', postCodeLogs);
32 })
33 .catch((error) => {
34 console.log('POST Codes Log Data:', error);
35 });
36 },
Konstantin Aladyshevd8c71c02023-02-15 12:49:11 +000037 async deleteAllPostCodeLogs({ dispatch }, data) {
38 return await api
39 .post(
40 '/redfish/v1/Systems/system/LogServices/PostCodes/Actions/LogService.ClearLog'
41 )
42 .then(() => dispatch('getPostCodesLogData'))
43 .then(() =>
44 i18n.tc('pagePostCodeLogs.toast.successDelete', data.length)
45 )
46 .catch((error) => {
47 console.log(error);
48 throw new Error(
49 i18n.tc('pagePostCodeLogs.toast.errorDelete', data.length)
50 );
51 });
52 },
Sandeepa Singh06d53862021-05-24 13:51:09 +053053 },
54};
55
56export default PostCodeLogsStore;