View | Details | Raw Unified | Return to bug 64119
Collapse All | Expand All

(-)a/src/components/src/main/java/org/apache/jmeter/visualizers/ViewResultsFullVisualizer.java (-8 / +16 lines)
Lines 449-463 implements ActionListener, TreeSelectionListener, Clearable, ItemListener { Link Here
449
        } catch (IOException e1) {
449
        } catch (IOException e1) {
450
            // ignored
450
            // ignored
451
        }
451
        }
452
        String textRenderer = JMeterUtils.getResString("view_results_render_text"); // $NON-NLS-1$
452
        String defaultRenderer = expandToClassname(".RenderAsText"); // $NON-NLS-1$
453
        Object textObject = null;
453
        if (VIEWERS_ORDER.length() > 0) {
454
            defaultRenderer = expandToClassname(VIEWERS_ORDER.split(",", 2)[0]);
455
        }
456
        Object defaultObject = null;
454
        Map<String, ResultRenderer> map = new HashMap<>(classesToAdd.size());
457
        Map<String, ResultRenderer> map = new HashMap<>(classesToAdd.size());
455
        for (String clazz : classesToAdd) {
458
        for (String clazz : classesToAdd) {
456
            try {
459
            try {
457
                // Instantiate render classes
460
                // Instantiate render classes
458
                final ResultRenderer renderer = (ResultRenderer) Class.forName(clazz).getDeclaredConstructor().newInstance();
461
                final ResultRenderer renderer = (ResultRenderer) Class.forName(clazz).getDeclaredConstructor().newInstance();
459
                if (textRenderer.equals(renderer.toString())){
462
                if (defaultRenderer.equals(clazz)) {
460
                    textObject=renderer;
463
                    defaultObject=renderer;
461
                }
464
                }
462
                renderer.setBackgroundColor(getBackground());
465
                renderer.setBackgroundColor(getBackground());
463
                map.put(renderer.getClass().getName(), renderer);
466
                map.put(renderer.getClass().getName(), renderer);
Lines 473-481 implements ActionListener, TreeSelectionListener, Clearable, ItemListener { Link Here
473
        }
476
        }
474
        if (VIEWERS_ORDER.length() > 0) {
477
        if (VIEWERS_ORDER.length() > 0) {
475
            Arrays.stream(VIEWERS_ORDER.split(","))
478
            Arrays.stream(VIEWERS_ORDER.split(","))
476
                    .map(key -> key.startsWith(".")
479
                    .map(this::expandToClassname)
477
                            ? "org.apache.jmeter.visualizers" + key //$NON-NLS-1$
478
                            : key)
479
                    .forEach(key -> {
480
                    .forEach(key -> {
480
                        ResultRenderer renderer = map.remove(key);
481
                        ResultRenderer renderer = map.remove(key);
481
                        if (renderer != null) {
482
                        if (renderer != null) {
Lines 490-499 implements ActionListener, TreeSelectionListener, Clearable, ItemListener { Link Here
490
        }
491
        }
491
        // Add remaining (plugins or missed in property)
492
        // Add remaining (plugins or missed in property)
492
        map.values().forEach(renderer -> selectRenderPanel.addItem(renderer));
493
        map.values().forEach(renderer -> selectRenderPanel.addItem(renderer));
493
        nodesModel.setSelectedItem(textObject); // preset to "Text" option
494
        nodesModel.setSelectedItem(defaultObject); // preset to "Text" option or the first option from the view.results.tree.renderers_order property
494
        return selectRenderPanel;
495
        return selectRenderPanel;
495
    }
496
    }
496
497
498
    private String expandToClassname(String name) {
499
        if (name.startsWith(".")) {
500
            return "org.apache.jmeter.visualizers" + name; // $NON-NLS-1$
501
        }
502
        return name;
503
    }
504
497
    /** {@inheritDoc} */
505
    /** {@inheritDoc} */
498
    @Override
506
    @Override
499
    public void actionPerformed(ActionEvent event) {
507
    public void actionPerformed(ActionEvent event) {

Return to bug 64119