Commit 430edf33 authored by Paul Asmuth's avatar Paul Asmuth
Browse files

js_api: initialization

parent 442bdbb0
Loading
Loading
Loading
Loading
+4 −7
Original line number Diff line number Diff line
@@ -6,7 +6,8 @@ var FnordMetric = (function(){
    '/js/fnordmetric.js',
    '/js/fnordmetric.util.js',
    '/js/fnordmetric.ui.js',
    '/js/fnordmetric.timeline_widget.js'
    '/js/fnordmetric.timeline_widget.js',
    '/js/fnordmetric.js_api.js'
  ];

  var setup = function(opts){
@@ -15,7 +16,8 @@ var FnordMetric = (function(){
      return;
    }

    this.ext_opts = opts;
    FnordMetric.currentNamespace = opts.namespace;
    FnordMetric.ws_addr = "ws://" + opts.address + "/stream";

    for (n=0; n < require.length; n++)
      document.write('<script type="text/javascript" src="' + (
@@ -24,12 +26,7 @@ var FnordMetric = (function(){


  return {
    ext_opts: null,
    setup: setup
  };

}());



document.write()
+36 −34
Original line number Diff line number Diff line
@@ -3,13 +3,21 @@ var FnordMetric = (function(pre_init){
  var canvasElem = false;
  var currentView = false;
  var currentNamespace = false;
  var ws_addr = null;
  var js_api = false;
  var gauges = {};
  var socket, conf;

  var navigatedViaHash = false;

  if (typeof pre_init != 'null') {
    setup_ext(pre_init.ext_opts);
  if (typeof pre_init != 'undefined') {
    currentNamespace = pre_init.currentNamespace;
    ws_addr = pre_init.ws_addr;
    $(document).ready(function(){
      FnordMetric.js_api.init();
      js_api = FnordMetric.js_api;
      connect();
    });
  }

  function renderDashboard(_dash){
@@ -148,7 +156,6 @@ var FnordMetric = (function(pre_init){
    $(".resize_listener").trigger('fm_resize');
  };


  function init(_conf){
    conf = _conf;
    this.currentNamespace = _conf.token;
@@ -170,19 +177,18 @@ var FnordMetric = (function(pre_init){
    resizeView();
  };

  function setup_ext(_conf){
    conf = _conf;
    this.currentNamespace = _conf.token;
    FnordMetric.ws_addr = "ws://" + _conf.address + "/stream";

    connect();
  };

  function connect(){
    socket = new WebSocket(FnordMetric.ws_addr);

    if (js_api == false) {
      socket.onmessage = socketMessage;
      socket.onclose = socketClose;
      socket.onopen = socketOpen;
    } else {
      socket.onmessage = js_api.socketMessage;
      socket.onclose = js_api.socketClose;
      socket.onopen = js_api.socketOpen;
    }
  }

  function publish(obj){
@@ -204,16 +210,13 @@ var FnordMetric = (function(pre_init){

  function socketOpen(){
    console.log("[FnordMetric] connected...");
    if (typeof pre_init == 'null') {
    publish({"type": "discover_request"});
    $('.flash_msg_over').fadeOut(function(){ $(this).remove(); });
  }
  }

  function socketClose(){
    console.log("[FnordMetric] socket closed"); 

    if (typeof pre_init == 'null') {
    if($('.flash_msg_over').length == 0){
      $(viewport)
        .append($("<div class='flash_msg_over'>")
@@ -226,7 +229,6 @@ var FnordMetric = (function(pre_init){
        $('.flash_msg_over').addClass('visible');  
      }, 20);
    }
    }

    window.setTimeout(connect, 1000);
  }
@@ -260,8 +262,8 @@ var FnordMetric = (function(pre_init){
    publish: publish,
    p: '',
    socket: socket,
    currentNamespace: null,
    ws_addr: null,
    currentNamespace: currentNamespace,
    ws_addr: ws_addr,
    currentWidgetUID: 23,
    ui: {},
    views: {},
+40 −0
Original line number Diff line number Diff line
FnordMetric.js_api = (function(){

  var timer = null;
  var update_interval = 1000;

  function init() {
    console.log("yeah");
  }

  function socketOpen(){
    console.log("[FnordMetric] connected...");
    timer = window.setInterval(poll, update_interval);
  }

  function socketClose(){
    console.log("[FnordMetric] socket closed");
    if (timer) window.clearInterval(timer);
    timer = null;
    window.setTimeout(FnordMetric.connect, 1000);
  }

  function socketMessage(raw){
    var evt = JSON.parse(raw.data);

    console.log("[FnordMetric] socket msg");
    console.log(evt);
  }

  function poll() {
    console.log("yeah");
  }

  return {
    init: init,
    socketOpen: socketOpen,
    socketClose: socketClose,
    socketMessage: socketMessage
  };

}());
+1 −0
Original line number Diff line number Diff line
@@ -15,6 +15,7 @@ FnordMetric.widgets.timeseriesWidget = function(){
    var xticks   = 30;

    function render(_opts){
      console.log(_opts);
      opts = _opts;

      if(opts.default_style == "areaspline"){ opts.default_style = 'area'; }
+1 −1

File changed.

Contains only whitespace changes.