Commit 3b05eba89d6a5e599c437905f1b6e28c78b14621

Authored by Igor Kulikov
1 parent e80d355b

UI: Set default interval to 1 sec for no aggregation.

Showing 1 changed file with 23 additions and 15 deletions
... ... @@ -238,23 +238,25 @@ function TimeService($translate, types) {
238 238 interval = timewindow.realtime.interval;
239 239 }
240 240
  241 + var aggType;
  242 + if (timewindow.aggregation) {
  243 + aggType = timewindow.aggregation.type || types.aggregation.avg.value;
  244 + } else {
  245 + aggType = types.aggregation.avg.value;
  246 + }
  247 +
241 248 var historyTimewindow = {
242 249 history: {
243 250 fixedTimewindow: {
244 251 startTimeMs: startTimeMs,
245 252 endTimeMs: endTimeMs
246 253 },
247   - interval: boundIntervalToTimewindow(endTimeMs - startTimeMs, interval)
  254 + interval: boundIntervalToTimewindow(endTimeMs - startTimeMs, interval, aggType)
248 255 },
249 256 aggregation: {
250   -
  257 + type: aggType
251 258 }
252 259 }
253   - if (timewindow.aggregation) {
254   - historyTimewindow.aggregation.type = timewindow.aggregation.type || types.aggregation.avg.value;
255   - } else {
256   - historyTimewindow.aggregation.type = types.aggregation.avg.value;
257   - }
258 260
259 261 return historyTimewindow;
260 262 }
... ... @@ -281,7 +283,8 @@ function TimeService($translate, types) {
281 283 if (angular.isDefined(timewindow.realtime)) {
282 284 subscriptionTimewindow.realtimeWindowMs = timewindow.realtime.timewindowMs;
283 285 subscriptionTimewindow.aggregation.interval =
284   - boundIntervalToTimewindow(subscriptionTimewindow.realtimeWindowMs, timewindow.realtime.interval);
  286 + boundIntervalToTimewindow(subscriptionTimewindow.realtimeWindowMs, timewindow.realtime.interval,
  287 + subscriptionTimewindow.aggregation.type);
285 288 subscriptionTimewindow.startTs = (new Date).getTime() + stDiff - subscriptionTimewindow.realtimeWindowMs;
286 289 var startDiff = subscriptionTimewindow.startTs % subscriptionTimewindow.aggregation.interval;
287 290 aggTimewindow = subscriptionTimewindow.realtimeWindowMs;
... ... @@ -306,7 +309,8 @@ function TimeService($translate, types) {
306 309 aggTimewindow = subscriptionTimewindow.fixedWindow.endTimeMs - subscriptionTimewindow.fixedWindow.startTimeMs;
307 310 }
308 311 subscriptionTimewindow.startTs = subscriptionTimewindow.fixedWindow.startTimeMs;
309   - subscriptionTimewindow.aggregation.interval = boundIntervalToTimewindow(aggTimewindow, timewindow.history.interval);
  312 + subscriptionTimewindow.aggregation.interval =
  313 + boundIntervalToTimewindow(aggTimewindow, timewindow.history.interval, subscriptionTimewindow.aggregation.type);
310 314 }
311 315 var aggregation = subscriptionTimewindow.aggregation;
312 316 aggregation.timeWindow = aggTimewindow;
... ... @@ -316,13 +320,17 @@ function TimeService($translate, types) {
316 320 return subscriptionTimewindow;
317 321 }
318 322
319   - function boundIntervalToTimewindow(timewindow, intervalMs) {
320   - var min = minIntervalLimit(timewindow);
321   - var max = maxIntervalLimit(timewindow);
322   - if (intervalMs) {
323   - return toBound(intervalMs, min, max, intervalMs);
  323 + function boundIntervalToTimewindow(timewindow, intervalMs, aggType) {
  324 + if (aggType === types.aggregation.none.value) {
  325 + return SECOND;
324 326 } else {
325   - return boundToPredefinedInterval(min, max, avgInterval(timewindow));
  327 + var min = minIntervalLimit(timewindow);
  328 + var max = maxIntervalLimit(timewindow);
  329 + if (intervalMs) {
  330 + return toBound(intervalMs, min, max, intervalMs);
  331 + } else {
  332 + return boundToPredefinedInterval(min, max, avgInterval(timewindow));
  333 + }
326 334 }
327 335 }
328 336
... ...