소스 검색

feat(live): tricky

Torkel Ödegaard 9 년 전
부모
커밋
3ea441d1a0
1개의 변경된 파일18개의 추가작업 그리고 18개의 파일을 삭제
  1. 18 18
      public/app/plugins/datasource/grafana-live/datasource.ts

+ 18 - 18
public/app/plugins/datasource/grafana-live/datasource.ts

@@ -4,6 +4,21 @@ import {liveSrv} from 'app/core/core';
 
 import {Observable} from 'vendor/npm/rxjs/Observable';
 
+class DataObservable {
+  target: any;
+
+  constructor(target) {
+   this.target = target;
+  }
+
+  subscribe(options) {
+    var observable = liveSrv.subscribe(this.target.stream);
+    return observable.subscribe(data => {
+      console.log("grafana stream ds data!", data);
+    });
+  }
+}
+
 export class GrafanaStreamDS {
   subscription: any;
 
@@ -12,30 +27,15 @@ export class GrafanaStreamDS {
 
   }
 
-  query(options) {
+  query(options): any {
     if (options.targets.length === 0) {
       return Promise.resolve({data: []});
     }
 
     var target = options.targets[0];
+    var observable = new DataObservable(target);
 
-    if (this.subscription) {
-      if (this.subscription.stream !== target.stream) {
-        this.subscription.unsubscribe();
-      } else {
-        return Promise.resolve({data: []});
-      }
-    }
-
-    var observable = liveSrv.subscribe(target.stream);
-
-    this.subscription = observable.subscribe(data => {
-      console.log("grafana stream ds data!", data);
-    });
-
-    this.subscription.stream = target.stream;
-
-    return Promise.resolve({data: []});
+    return Promise.resolve(observable);
   }
 }