2 * Copyright (c) 2016 HCL Inc. and others. All rights reserved.
4 * This program and the accompanying materials are made available under the
5 * terms of the Eclipse Public License v1.0 which accompanies this distribution,
6 * and is available at http://www.eclipse.org/legal/epl-v10.html
9 define(['app/mwtnCommons/mwtnCommons.module', 'app/mwtnPerformanceLink/mwtnPerformanceLink.module'], function (mwtnPerformanceLinkApp) {
11 mwtnPerformanceLinkApp.register.factory('$mwtnPerformanceLink', function ($q, $mwtnCommons, $mwtnDatabase, $mwtnLog) {
13 var COMPONENT = '$mwtnPerformanceLink';
14 $mwtnLog.info({ component: COMPONENT, message: '$mwtnPerformanceLink started!' });
17 service.formatTimeStamp = $mwtnCommons.formatTimeStamp;
18 service.getMountPoints = $mwtnCommons.getMountPoints;
19 service.getAggregations = $mwtnDatabase.getAggregations;
22 service.TimeStampToONFFormat = function (timestamp) {
23 timestamp = timestamp.split('-').join('');
24 timestamp = timestamp.split(':').join('');
25 timestamp = timestamp.split(' ').join('');
26 timestamp = timestamp.replace('UTC', 'Z');
30 service.getFilteredSortedData = function (from, size, sort, query, selected15minPeriod) {
32 var functionId = 'sdnperformance';
33 var docType = 'historicalperformance15min';
34 if (selected15minPeriod === false) {
35 docType = 'historicalperformance24h';
38 var deferred = $q.defer();
39 $mwtnDatabase.getFilteredSortedData(functionId, docType, from, size, sort, query).then(function (success) {
40 deferred.resolve(success);
42 $mwtnLog.error({ component: '$mwtnPerformanceLink.getFilteredSortedData', message: JSON.stringify(error.data) });
43 deferred.reject(error)
45 return deferred.promise;
48 service.getInterfaces = function (aggregation, selected15minPeriod) {
50 var functionId = 'sdnperformance';
51 var docType = 'historicalperformance15min';
52 if (selected15minPeriod === false) {
53 docType = 'historicalperformance24h';
56 var deferred = $q.defer();
57 $mwtnDatabase.getAggregatedData(functionId, docType, aggregation).then(function (success) {
58 deferred.resolve(success);
60 $mwtnLog.error({ component: '$mwtnPerformanceLink.getFilteredSortedData', message: JSON.stringify(error.data) });
61 deferred.reject(error)
63 return deferred.promise;