import {
windowResize,
extensibleViewNetworkCallback,
+ overlayNetworkCallback,
extensibleViewMessageCallback
} from './MainScreenWrapperActionHelper.js';
},
onExtensibleViewMessageCallback: (message, messageSevirity) => {
dispatch(extensibleViewMessageCallback(message, messageSevirity));
+ },
+ onOverlayNetworkCallback: (apiUrl, body, viewName, curViewData, responseEventKey) => {
+ dispatch(overlayNetworkCallback(apiUrl, body, viewName, curViewData, responseEventKey));
}
};
};
const {
onExtensibleViewNetworkCallback,
extensibleViewNetworkCallbackData,
- onExtensibleViewMessageCallback
+ onExtensibleViewMessageCallback,
+ onOverlayNetworkCallback
} = this.props;
let customViewList = [];
networkingCallback={(apiUrl, body, paramName, curViewData) => {
onExtensibleViewNetworkCallback(apiUrl, body, paramName, curViewData);
}}
+ overlayCallback={(apiUrl, body, paramName, curOverlayData,responseEventKey) => {
+ onOverlayNetworkCallback(apiUrl, body, paramName, curOverlayData, responseEventKey);
+ }}
messagingCallback ={(message, messageSeverity) => {
onExtensibleViewMessageCallback(message, messageSeverity);
}}
*
* ECOMP is a trademark and service mark of AT&T Intellectual Property.
*/
-import {aaiActionTypes} from './MainScreenWrapperConstants.js';
import {
POST,
POST_HEADER,
getSetGlobalMessageEvent,
getClearGlobalMessageEvent
} from 'app/globalInlineMessageBar/GlobalInlineMessageBarActions.js';
+import {aaiActionTypes} from 'app/MainScreenWrapperConstants.js';
function createWindowSizeChangeEvent() {
return {
};
}
+function createOverlayDataFoundEvent(overlayData, paramName, curData, responseEventKey) {
+ return {
+ type: responseEventKey,
+ data: {
+ paramName: paramName,
+ overlayData: overlayData,
+ curData: curData
+ }
+ };
+}
+
+function overlayViewData(dataFetchRequest, paramName, curData, responseEventKey) {
+ return dispatch => {
+ dataFetchRequest().then(
+ (response) => {
+ return response.json();
+ }
+ ).then(
+ (responseJson) => {
+ dispatch(createOverlayDataFoundEvent(responseJson, paramName, curData, responseEventKey));
+ }).catch(
+ () => {
+ dispatch(getSetGlobalMessageEvent(ERROR_RETRIEVING_DATA, MESSAGE_LEVEL_DANGER));
+ dispatch(createOverlayDataFoundEvent({}, paramName, curData, responseEventKey));
+ });
+ };
+}
+
+export function overlayNetworkCallback(urlApi, postBody, paramName, curData, responseEventKey) {
+ let dataFetchRequest =
+ () => fetchRequestObj(BASE_URL + urlApi, POST,
+ POST_HEADER, JSON.stringify(postBody));
+
+
+ return dispatch => {
+ dispatch(overlayViewData(dataFetchRequest, paramName, curData, responseEventKey));
+ };
+}
+
function createViewDataFoundEvent(viewData, paramName, curViewData) {
var obj = {};
obj['data'] = {};
import SelectedNodeDetails from 'app/tierSupport/selectedNodeDetails/SelectedNodeDetails.jsx';
+import {
+ overlayNetworkCallback,
+} from '../MainScreenWrapperActionHelper.js';
+
import overlaysDetails from 'resources/overlays/overlaysDetails.json';
import * as Overlays from 'app/overlays/OverlayImports.js';
TSUI_NODE_DETAILS_INITIAL_WIDTH,
TSUI_NODE_DETAILS_MIN_WIDTH,
TSUI_GRAPH_MENU_NODE_DETAILS,
+ tierSupportActionTypes
} from './TierSupportConstants.js';
let mapStateToProps = (
},
onRequestClearData: () => {
dispatch(clearVIData());
+ },
+ onOverlayNetworkCallback: (apiUrl, body, viewName, curViewData, responseEventKey) => {
+ dispatch(overlayNetworkCallback(apiUrl, body, viewName, curViewData, responseEventKey));
}
};
};
if (this.isNotEmpty(this.props.nodeData) && overlayComponent) {
if (Overlays.default.hasOwnProperty(overlayComponent)) {
let OverlayComponent = Overlays.default[overlayComponent];
- secondOverlay = <OverlayComponent nodeDetails={this.props.nodeData}/>;
+ secondOverlay = <OverlayComponent
+ nodeDetails={this.props.nodeData}
+ networkingCallback={(apiUrl, body, paramName, curViewData) => {
+ this.props.onOverlayNetworkCallback(
+ apiUrl,
+ body,
+ paramName,
+ curViewData,
+ tierSupportActionTypes.TS_OVERLAY_NETWORK_CALLBACK_RESPONSE_RECEIVED);
+ }} />;
+
}
}
return secondOverlay;
SPLIT_PANE_RESIZE: null,
TIER_SUPPORT_CLEAR_DATA: null,
TIER_SUPPORT_ACTIVATE_BUSY_FEEDBACK: null,
- TIER_SUPPORT_DISABLE_BUSY_FEEDBACK: null
+ TIER_SUPPORT_DISABLE_BUSY_FEEDBACK: null,
+ TS_OVERLAY_NETWORK_CALLBACK_RESPONSE_RECEIVED: null
});
export const TSUI_NODE_DETAILS_INITIAL_WIDTH = 300;
return {
...state,
enableBusyFeedback: false
- };
+ };
case globalAutoCompleteSearchBarActionTypes.SEARCH_WARNING_EVENT:
let emptyNodesAndLinksWarningEvent = ForceDirectedGraph.generateNewProps([], [], {});
return {
} else {
return state;
}
+ case tierSupportActionTypes.TS_OVERLAY_NETWORK_CALLBACK_RESPONSE_RECEIVED:
+ let newNodeData = JSON.parse(JSON.stringify(action.data.curData));
+ newNodeData[action.data.paramName] = action.data.overlayData;
+ return {
+ ...state,
+ nodeData: newNodeData
+ };
}
return state;
progress: true,
inline: true,
debug: true,
- https: true,
+ https: true,
stats: {
colors: true
}