From b4fce004a40753e396f100ac9abdbe876de5865e Mon Sep 17 00:00:00 2001 From: Michael Dürre Date: Fri, 2 Aug 2019 06:45:49 +0200 Subject: fixed mediator app MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit route requests through apigateway Issue-ID: SDNC-824 Signed-off-by: Michael Dürre Change-Id: Ief159a71888f271a7751884260f85be01efdd6b4 --- .../src/handlers/mediatorServerHandler.ts | 68 ++++++++++++++-------- 1 file changed, 44 insertions(+), 24 deletions(-) (limited to 'sdnr/wt/odlux/apps/mediatorApp/src/handlers/mediatorServerHandler.ts') diff --git a/sdnr/wt/odlux/apps/mediatorApp/src/handlers/mediatorServerHandler.ts b/sdnr/wt/odlux/apps/mediatorApp/src/handlers/mediatorServerHandler.ts index 2d3f71c82..0d137b396 100644 --- a/sdnr/wt/odlux/apps/mediatorApp/src/handlers/mediatorServerHandler.ts +++ b/sdnr/wt/odlux/apps/mediatorApp/src/handlers/mediatorServerHandler.ts @@ -1,3 +1,20 @@ +/** + * ============LICENSE_START======================================================================== + * ONAP : ccsdk feature sdnr wt odlux + * ================================================================================================= + * Copyright (C) 2019 highstreet technologies GmbH Intellectual Property. All rights reserved. + * ================================================================================================= + * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except + * in compliance with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software distributed under the License + * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express + * or implied. See the License for the specific language governing permissions and limitations under + * the License. + * ============LICENSE_END========================================================================== + */ import { XmlFileInfo, MediatorConfig, BusySymbol, MediatorConfigResponse, MediatorServerDevice } from "../models/mediatorServer"; import { IActionHandler } from "../../../../framework/src/flux/action"; import { SetMediatorServerVersion, SetMediatorServerInfo, SetAllMediatorServerConfigurations, SetMediatorServerBusy, SetMediatorServerSupportedDevices } from "../actions/mediatorServerActions"; @@ -5,12 +22,13 @@ import { SetMediatorBusyByName, UpdateMediatorConfig, AddMediatorConfig, RemoveM export type MediatorServerState = { busy: boolean; - name: string| null ; + name: string | null; url: string | null; - serverVersion: string| null; - mediatorVersion: string| null; - nexmls: XmlFileInfo[]; - configurations: MediatorConfigResponse[]; + id: string | null; + serverVersion: string | null; + mediatorVersion: string | null; + nexmls: XmlFileInfo[]; + configurations: MediatorConfigResponse[]; supportedDevices: MediatorServerDevice[]; } @@ -18,10 +36,11 @@ const mediatorServerInit: MediatorServerState = { busy: false, name: null, url: null, - serverVersion : null, + id: null, + serverVersion: null, mediatorVersion: null, nexmls: [], - configurations: [], + configurations: [], supportedDevices: [] } @@ -36,60 +55,61 @@ export const mediatorServerHandler: IActionHandler = (state ...state, name: action.name, url: action.url, + id: action.id, }; } else if (action instanceof SetMediatorServerVersion) { state = { ...state, - serverVersion: action.versionInfo && action.versionInfo.server , - mediatorVersion: action.versionInfo && action.versionInfo.mediator , - nexmls: action.versionInfo && [...action.versionInfo.nexmls] || [], + serverVersion: action.versionInfo && action.versionInfo.server, + mediatorVersion: action.versionInfo && action.versionInfo.mediator, + nexmls: action.versionInfo && [...action.versionInfo.nexmls] || [], }; } else if (action instanceof SetAllMediatorServerConfigurations) { state = { ...state, - configurations: action.allConfigurations && action.allConfigurations.map(config => ({...config, busy: false}) ) || [], + configurations: action.allConfigurations && action.allConfigurations.map(config => ({ ...config, busy: false })) || [], }; } else if (action instanceof SetMediatorServerSupportedDevices) { state = { ...state, - supportedDevices: action.devices || [], + supportedDevices: action.devices || [], }; } else if (action instanceof SetMediatorBusyByName) { const index = state.configurations.findIndex(config => config.Name === action.name); if (index > -1) state = { ...state, - configurations:[ + configurations: [ ...state.configurations.slice(0, index), - { ...state.configurations[index], [BusySymbol]: action.isBusy }, + { ...state.configurations[index], [BusySymbol]: action.isBusy }, ...state.configurations.slice(index + 1) - ] + ] }; } else if (action instanceof AddMediatorConfig) { - state = { + state = { ...state, configurations: [ - ...state.configurations, - action.mediatorConfig - ] + ...state.configurations, + action.mediatorConfig + ] }; } else if (action instanceof UpdateMediatorConfig) { const index = state.configurations.findIndex(config => config.Name === action.name); if (index > -1) state = { ...state, - configurations:[ + configurations: [ ...state.configurations.slice(0, index), - { ...action.mediatorConfig, [BusySymbol]: state.configurations[index][BusySymbol] }, + { ...action.mediatorConfig, [BusySymbol]: state.configurations[index][BusySymbol] }, ...state.configurations.slice(index + 1) - ] + ] }; } else if (action instanceof RemoveMediatorConfig) { const index = state.configurations.findIndex(config => config.Name === action.name); if (index > -1) state = { ...state, - configurations:[ + configurations: [ ...state.configurations.slice(0, index), ...state.configurations.slice(index + 1) - ] + ] }; } return state; -- cgit 1.2.3-korg