Thomas Vachuska

Fixed a defect in GUI details fly-out (it would not appear)

Adjusted L&F of the port labels
Suppressed using buffer-id in packet-out messages; we now always send data; cbench is much more steady now and I see no 0s!!!!
...@@ -60,7 +60,9 @@ public final class DefaultOpenFlowPacketContext implements OpenFlowPacketContext ...@@ -60,7 +60,9 @@ public final class DefaultOpenFlowPacketContext implements OpenFlowPacketContext
60 OFAction act = buildOutput(outPort.getPortNumber()); 60 OFAction act = buildOutput(outPort.getPortNumber());
61 pktout = builder.setXid(pktin.getXid()) 61 pktout = builder.setXid(pktin.getXid())
62 .setInPort(inport()) 62 .setInPort(inport())
63 - .setBufferId(pktin.getBufferId()) 63 + .setBufferId(OFBufferId.NO_BUFFER)
64 + .setData(pktin.getData())
65 +// .setBufferId(pktin.getBufferId())
64 .setActions(Collections.singletonList(act)) 66 .setActions(Collections.singletonList(act))
65 .build(); 67 .build();
66 } 68 }
......
File mode changed
...@@ -359,7 +359,7 @@ ...@@ -359,7 +359,7 @@
359 ix = Math.random() * 0.6 * nw + 0.2 * nw, 359 ix = Math.random() * 0.6 * nw + 0.2 * nw,
360 iy = ypc * nh, 360 iy = ypc * nh,
361 node = { 361 node = {
362 - id: safeId(n.id), 362 + id: n.id,
363 labels: n.labels, 363 labels: n.labels,
364 class: 'device', 364 class: 'device',
365 icon: 'device', 365 icon: 'device',
...@@ -381,7 +381,7 @@ ...@@ -381,7 +381,7 @@
381 ix = Math.random() * 0.6 * nw + 0.2 * nw, 381 ix = Math.random() * 0.6 * nw + 0.2 * nw,
382 iy = ypc * nh, 382 iy = ypc * nh,
383 node = { 383 node = {
384 - id: safeId(n.id), 384 + id: n.id,
385 labels: n.labels, 385 labels: n.labels,
386 class: 'host', 386 class: 'host',
387 icon: 'host', 387 icon: 'host',
...@@ -584,38 +584,40 @@ ...@@ -584,38 +584,40 @@
584 584
585 network.link.filter('.infra').each(function(d, i) { 585 network.link.filter('.infra').each(function(d, i) {
586 network.linkSrcPort.append('rect').attr({ 586 network.linkSrcPort.append('rect').attr({
587 - id: 'srcPort-' + d.id, 587 + id: 'srcPort-' + safeId(d.id),
588 class: 'port', 588 class: 'port',
589 width: pw, 589 width: pw,
590 height: ph, 590 height: ph,
591 - x: i * 20, 591 + Xx: i * 20,
592 - y: 0 592 + Xy: 0,
593 - }) 593 + rx: 4,
594 - .style('visibility', portVis); 594 + ry: 4
595 + }).style('visibility', portVis);
595 596
596 network.linkTgtPort.append('rect').attr({ 597 network.linkTgtPort.append('rect').attr({
597 - id: 'tgtPort-' + d.id, 598 + id: 'tgtPort-' + safeId(d.id),
598 class: 'port', 599 class: 'port',
599 width: pw, 600 width: pw,
600 height: ph, 601 height: ph,
601 - x: i * 20, 602 + Xx: i * 20,
602 - y: 20 603 + Xy: 20,
603 - }) 604 + rx: 4,
604 - .style('visibility', portVis); 605 + ry: 4
606 + }).style('visibility', portVis);
605 607
606 network.linkSrcPort.append('text').attr({ 608 network.linkSrcPort.append('text').attr({
607 - id: 'srcText-' + d.id, 609 + id: 'srcText-' + safeId(d.id),
608 class: 'portText', 610 class: 'portText',
609 - x: i * 20, 611 + Xx: i * 20,
610 - y:0 612 + Xy: 0
611 }).text(d.srcPort) 613 }).text(d.srcPort)
612 .style('visibility', portVis); 614 .style('visibility', portVis);
613 615
614 network.linkTgtPort.append('text').attr({ 616 network.linkTgtPort.append('text').attr({
615 - id: 'tgtText-' + d.id, 617 + id: 'tgtText-' + safeId(d.id),
616 class: 'portText', 618 class: 'portText',
617 - x: i * 20, 619 + Xx: i * 20,
618 - y:20 620 + Xy: 20
619 }).text(d.tgtPort) 621 }).text(d.tgtPort)
620 .style('visibility', portVis); 622 .style('visibility', portVis);
621 }); 623 });
...@@ -985,26 +987,27 @@ ...@@ -985,26 +987,27 @@
985 } 987 }
986 988
987 // adjust the endpoints of the link's line to match rectangles 989 // adjust the endpoints of the link's line to match rectangles
990 + var sid = safeId(d.id);
988 d3.select(this) 991 d3.select(this)
989 .attr('x1', exs) 992 .attr('x1', exs)
990 .attr('y1', eys) 993 .attr('y1', eys)
991 .attr('x2', ext) 994 .attr('x2', ext)
992 .attr('y2', eyt); 995 .attr('y2', eyt);
993 996
994 - d3.select('#srcPort-' + d.id) 997 + d3.select('#srcPort-' + sid)
995 .attr('x', pxs - portHalfW) 998 .attr('x', pxs - portHalfW)
996 .attr('y', pys - portHalfH); 999 .attr('y', pys - portHalfH);
997 1000
998 - d3.select('#tgtPort-' + d.id) 1001 + d3.select('#tgtPort-' + sid)
999 .attr('x', pxt - portHalfW) 1002 .attr('x', pxt - portHalfW)
1000 .attr('y', pyt - portHalfH); 1003 .attr('y', pyt - portHalfH);
1001 1004
1002 // TODO: fit label rect to size of port number. 1005 // TODO: fit label rect to size of port number.
1003 - d3.select('#srcText-' + d.id) 1006 + d3.select('#srcText-' + sid)
1004 .attr('x', pxs - 5) 1007 .attr('x', pxs - 5)
1005 .attr('y', pys + 3); 1008 .attr('y', pys + 3);
1006 1009
1007 - d3.select('#tgtText-' + d.id) 1010 + d3.select('#tgtText-' + sid)
1008 .attr('x', pxt - 5) 1011 .attr('x', pxt - 5)
1009 .attr('y', pyt + 3); 1012 .attr('y', pyt + 3);
1010 1013
......
...@@ -103,20 +103,15 @@ svg .link { ...@@ -103,20 +103,15 @@ svg .link {
103 svg .link.host { 103 svg .link.host {
104 stroke: #666; 104 stroke: #666;
105 stroke-width: 1px; 105 stroke-width: 1px;
106 - Xstroke-dasharray: 3,3;
107 } 106 }
108 107
109 svg g.portLayer rect.port { 108 svg g.portLayer rect.port {
110 - stroke-width: 1; 109 + fill: #ccc;
111 - stroke: black;
112 - fill: white;
113 } 110 }
114 111
115 svg g.portLayer text { 112 svg g.portLayer text {
116 - stroke: #888; 113 + Xstroke: #fff;
117 - font-size: 8pt; 114 + font: 8pt sans-serif;
118 - text-align: center;
119 - font-weight: normal;
120 pointer-events: none; 115 pointer-events: none;
121 } 116 }
122 117
...@@ -149,7 +144,7 @@ svg .node.host circle { ...@@ -149,7 +144,7 @@ svg .node.host circle {
149 144
150 svg .node text { 145 svg .node text {
151 fill: white; 146 fill: white;
152 - font: 10px sans-serif; 147 + font: 10pt sans-serif;
153 pointer-events: none; 148 pointer-events: none;
154 } 149 }
155 150
......