Mercurial > hg > release > thermostat-1.6
changeset 1984:ddc9c46e66a7
Move WeightAsSizeRenderer from TreeMapComponent
PR3059
Reviewed-by: jkang
Review-thread: http://icedtea.classpath.org/pipermail/thermostat/2016-June/019844.html
Original-thread: http://icedtea.classpath.org/pipermail/thermostat/2015-October/016646.html
author | James Aziz <jaziz@redhat.com> |
---|---|
date | Wed, 29 Jun 2016 12:23:09 -0400 |
parents | b4be4986a4c6 |
children | c7d7084f1ed5 |
files | client/swing/src/main/java/com/redhat/thermostat/client/swing/components/experimental/TreeMapComponent.java vm-heap-analysis/client-swing/src/main/java/com/redhat/thermostat/vm/heap/analysis/client/swing/internal/SwingHeapTreeMapView.java vm-heap-analysis/client-swing/src/test/java/com/redhat/thermostat/vm/heap/analysis/client/swing/internal/SwingHeapTreeMapViewTest.java |
diffstat | 3 files changed, 75 insertions(+), 9 deletions(-) [+] |
line wrap: on
line diff
--- a/client/swing/src/main/java/com/redhat/thermostat/client/swing/components/experimental/TreeMapComponent.java Wed Jun 29 12:23:08 2016 -0400 +++ b/client/swing/src/main/java/com/redhat/thermostat/client/swing/components/experimental/TreeMapComponent.java Wed Jun 29 12:23:09 2016 -0400 @@ -780,14 +780,6 @@ return node.getLabel(); } } - - public static class WeightAsSizeRenderer implements ToolTipRenderer { - @Override - public String render(TreeMapNode node) { - Size size = new Size(node.getRealWeight(), Unit.B); - return node.getLabel() + " - " + size.toString("%.2f"); - } - } }
--- a/vm-heap-analysis/client-swing/src/main/java/com/redhat/thermostat/vm/heap/analysis/client/swing/internal/SwingHeapTreeMapView.java Wed Jun 29 12:23:08 2016 -0400 +++ b/vm-heap-analysis/client-swing/src/main/java/com/redhat/thermostat/vm/heap/analysis/client/swing/internal/SwingHeapTreeMapView.java Wed Jun 29 12:23:09 2016 -0400 @@ -45,6 +45,7 @@ import com.redhat.thermostat.client.swing.components.experimental.TreeMapComponent; import com.redhat.thermostat.client.swing.components.experimental.TreeMapNode; import com.redhat.thermostat.client.swing.components.experimental.TreeMapToolbar; +import com.redhat.thermostat.common.Size; import com.redhat.thermostat.vm.heap.analysis.client.core.HeapTreeMapView; import com.redhat.thermostat.vm.heap.analysis.common.ObjectHistogram; @@ -55,7 +56,7 @@ public SwingHeapTreeMapView() { treeMap = new TreeMapComponent(); - treeMap.setToolTipRenderer(new TreeMapComponent.WeightAsSizeRenderer()); + treeMap.setToolTipRenderer(new WeightAsSizeRenderer()); panel = new JPanel(); panel.setLayout(new BorderLayout()); @@ -73,4 +74,12 @@ public Component getUiComponent() { return panel; } + + public static class WeightAsSizeRenderer implements TreeMapComponent.ToolTipRenderer { + @Override + public String render(TreeMapNode node) { + Size size = new Size(node.getRealWeight(), Size.Unit.B); + return node.getLabel() + " - " + size.toString("%.2f"); + } + } }
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/vm-heap-analysis/client-swing/src/test/java/com/redhat/thermostat/vm/heap/analysis/client/swing/internal/SwingHeapTreeMapViewTest.java Wed Jun 29 12:23:09 2016 -0400 @@ -0,0 +1,65 @@ +/* + * Copyright 2012-2015 Red Hat, Inc. + * + * This file is part of Thermostat. + * + * Thermostat is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published + * by the Free Software Foundation; either version 2, or (at your + * option) any later version. + * + * Thermostat is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Thermostat; see the file COPYING. If not see + * <http://www.gnu.org/licenses/>. + * + * Linking this code with other modules is making a combined work + * based on this code. Thus, the terms and conditions of the GNU + * General Public License cover the whole combination. + * + * As a special exception, the copyright holders of this code give + * you permission to link this code with independent modules to + * produce an executable, regardless of the license terms of these + * independent modules, and to copy and distribute the resulting + * executable under terms of your choice, provided that you also + * meet, for each linked independent module, the terms and conditions + * of the license of that module. An independent module is a module + * which is not derived from or based on this code. If you modify + * this code, you may extend this exception to your version of the + * library, but you are not obligated to do so. If you do not wish + * to do so, delete this exception statement from your version. + */ + +package com.redhat.thermostat.vm.heap.analysis.client.swing.internal; + +import static org.junit.Assert.assertEquals; + +import org.junit.Before; +import org.junit.Test; + +import com.redhat.thermostat.client.swing.components.experimental.TreeMapNode; + +public class SwingHeapTreeMapViewTest { + + private static final String SOME_ROOT = "root"; + private static final double WEIGHT = 1024.0; + + private SwingHeapTreeMapView.WeightAsSizeRenderer renderer; + private TreeMapNode root; + + @Before + public void setUp() { + root = new TreeMapNode(SOME_ROOT, WEIGHT); + renderer = new SwingHeapTreeMapView.WeightAsSizeRenderer(); + } + + @Test + public void testWeightAsSizeRenderer() { + String result = renderer.render(root); + assertEquals("root - 1.00 KiB", result); + } +}