private static List getGroups()

in src/core/src/main/java/org/apache/jmeter/gui/menu/StaticJMeterGUIComponent.java [78:110]


    private static List<String> getGroups(Class<?> c, TestElementMetadata metadata) {
        String[] groups = metadata.actionGroups();
        if (groups.length == 1 && groups[0].equals("")) {
            // Annotations can't hold null values, so we use empty string instead
            return null;
        }
        if (groups.length != 0) {
            return Collections.unmodifiableList(Arrays.asList(groups));
        }
        String group;
        if (Assertion.class.isAssignableFrom(c) || AbstractAssertionGui.class.isAssignableFrom(c)) {
            group = MenuFactory.ASSERTIONS;
        } else if (ConfigElement.class.isAssignableFrom(c) || AbstractConfigGui.class.isAssignableFrom(c)) {
            group = MenuFactory.CONFIG_ELEMENTS;
        } else if (Controller.class.isAssignableFrom(c) || AbstractControllerGui.class.isAssignableFrom(c)) {
            group = MenuFactory.CONTROLLERS;
        } else if (Visualizer.class.isAssignableFrom(c) || AbstractListenerGui.class.isAssignableFrom(c)) {
            group = MenuFactory.LISTENERS;
        } else if (PostProcessor.class.isAssignableFrom(c) || AbstractPostProcessorGui.class.isAssignableFrom(c)) {
            group = MenuFactory.POST_PROCESSORS;
        } else if (PreProcessor.class.isAssignableFrom(c) || AbstractPreProcessorGui.class.isAssignableFrom(c)) {
            group = MenuFactory.PRE_PROCESSORS;
        } else if (Sampler.class.isAssignableFrom(c) || AbstractSamplerGui.class.isAssignableFrom(c)) {
            group = MenuFactory.SAMPLERS;
        } else if (Timer.class.isAssignableFrom(c) || AbstractTimerGui.class.isAssignableFrom(c)) {
            group = MenuFactory.TIMERS;
        } else if (ThreadGroup.class.isAssignableFrom(c) || AbstractThreadGroupGui.class.isAssignableFrom(c)) {
            group = MenuFactory.THREADS;
        } else {
            throw new IllegalArgumentException("Unknown group for class " + c);
        }
        return Collections.singletonList(group);
    }