2 * ============LICENSE_START========================================================================
3 * ONAP : ccsdk feature sdnr wt odlux
4 * =================================================================================================
5 * Copyright (C) 2019 highstreet technologies GmbH Intellectual Property. All rights reserved.
6 * =================================================================================================
7 * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
8 * in compliance with the License. You may obtain a copy of the License at
10 * http://www.apache.org/licenses/LICENSE-2.0
12 * Unless required by applicable law or agreed to in writing, software distributed under the License
13 * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
14 * or implied. See the License for the specific language governing permissions and limitations under
16 * ============LICENSE_END==========================================================================
20 import { combineActionHandler } from '../../../../framework/src/flux/middleware';
22 // ** do not remove **
23 import { IApplicationStoreState } from '../../../../framework/src/store/applicationStore';
24 import { IActionHandler } from '../../../../framework/src/flux/action';
26 import { IFaultNotifications, faultNotificationsHandler } from './notificationsHandler';
27 import { ICurrentProblemsState, currentProblemsActionHandler } from './currentProblemsHandler';
28 import { IAlarmLogEntriesState, alarmLogEntriesActionHandler } from './alarmLogEntriesHandler';
29 import { SetPanelAction } from '../actions/panelChangeActions';
30 import { IFaultStatus, faultStatusHandler } from './faultStatusHandler';
31 import { stuckAlarmHandler } from './clearStuckAlarmsHandler';
33 export interface IFaultAppStoreState {
34 currentProblems: ICurrentProblemsState;
35 faultNotifications: IFaultNotifications;
36 alarmLogEntries: IAlarmLogEntriesState;
37 currentOpenPanel: string | null;
38 faultStatus: IFaultStatus;
41 const currentOpenPanelHandler: IActionHandler<string | null> = (state = null, action) => {
42 if (action instanceof SetPanelAction) {
43 state = action.panelId;
48 declare module '../../../../framework/src/store/applicationStore' {
49 interface IApplicationStoreState {
50 fault: IFaultAppStoreState;
54 const actionHandlers = {
55 currentProblems: currentProblemsActionHandler,
56 faultNotifications: faultNotificationsHandler,
57 alarmLogEntries: alarmLogEntriesActionHandler,
58 currentOpenPanel: currentOpenPanelHandler,
59 faultStatus: faultStatusHandler,
60 stuckAlarms: stuckAlarmHandler
63 export const faultAppRootHandler = combineActionHandler<IFaultAppStoreState>(actionHandlers);
64 export default faultAppRootHandler;