Changeset d7ff044ea22c in nodewatcher


Ignore:
Timestamp:
09/07/2014 07:38:03 PM (5 years ago)
Author:
kostko
Branches:
Travis-warnings, Update-packages, development, feature/cidr
Children:
cb1a5ff22cea
Parents:
19a9b3934bc8
git-author:
Jernej Kos <jernej@…> (09/07/2014 07:38:03 PM)
git-committer:
Jernej Kos <jernej@…> (09/07/2014 07:38:03 PM)
Message:

Implemented extensible network topology rendering. See #736.

Location:
nodewatcher/modules
Files:
4 added
4 edited

Legend:

Unmodified
Added
Removed
  • nodewatcher/modules/frontend/topology/frontend.py

    r1b181c6e2f58 rd7ff044ea22c  
    2222    url=urlresolvers.reverse_lazy('TopologyComponent:topology'), 
    2323)) 
     24 
     25components.partials.register(components.Partial('network_topology_partial')) 
  • nodewatcher/modules/frontend/topology/static/topology/js/code.js

    r19a9b3934bc8 rd7ff044ea22c  
    1818                    nodes.push({ 
    1919                        'index': index, 
    20                         'uuid': vertex.i, 
    21                         'name': vertex.n, 
     20                        'data': vertex, 
    2221                    }); 
    2322                    nodeIndex[vertex.i] = index; 
    2423                }); 
    2524 
    26                 $.each(graph.e, function(index, vertex) { 
     25                $.each(graph.e, function(index, edge) { 
    2726                    edges.push({ 
    28                         'source': nodeIndex[vertex.f], 
    29                         'target': nodeIndex[vertex.t], 
    30                         'value': 1, 
     27                        'source': nodeIndex[edge.f], 
     28                        'target': nodeIndex[edge.t], 
     29                        'data': edge, 
    3130                    }); 
    3231                }); 
     
    7170                    .data(edges) 
    7271                    .enter().append("line") 
    73                     .attr("class", "link") 
    74                     .style("stroke-width", function(d) { return Math.sqrt(d.value); }); 
     72                    .attr("class", "link"); 
    7573 
    7674                var node = svg.selectAll(".node") 
     
    7876                    .enter().append("circle") 
    7977                    .attr("class", "node") 
    80                     .attr("r", 5) 
    81                     .style("fill", function(d) { return "#73B55B"; }); 
     78                    .attr("r", 5); 
    8279 
    83                 node.append("title") 
    84                     .text(function(d) { return d.name; }); 
     80                // Apply all node and link style extenders 
     81                $.nodewatcher.topology.extend(node, link); 
    8582 
    8683                force.on("tick", function() { 
  • nodewatcher/modules/frontend/topology/templates/topology/topology.html

    r1b181c6e2f58 rd7ff044ea22c  
    22 
    33{% contextblock %} 
    4     {% load future i18n sekizai_tags html_tags url_tags %} 
     4    {% load future i18n sekizai_tags html_tags url_tags partial_tags %} 
    55 
    66    {% add_data "js_data" "topology/js/d3.v3.min.js" %} 
     7    {% add_data "js_data" "topology/js/api.js" %} 
    78    {% add_data "js_data" "topology/js/code.js" %} 
    89    {% add_data "css_data" "topology/css/style.css" %} 
     
    1314{% block content %} 
    1415    <div id="topology"></div> 
     16 
     17    {% get_partial "network_topology_partial" as network_topology_partial %} 
     18 
     19    {% with partial=network_topology_partial %} 
     20        {% include "base/partial.html" %} 
     21    {% endwith %} 
    1522{% endblock %} 
  • nodewatcher/modules/monitor/topology/processors.py

    r1b181c6e2f58 rd7ff044ea22c  
    7676            'n': 'core.general#name', 
    7777        } 
     78        # TODO: Make node topology storage fields extensible via the pool pattern 
    7879 
    7980        qs = core_models.Node.objects.filter(pk__in=vertices.keys()) 
Note: See TracChangeset for help on using the changeset viewer.