public CategoryController createController()

in broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/controller/v6_1/category/LegacyCategoryControllerFactory.java [99:239]


    public CategoryController createController(final String type,
                                               final LegacyManagementController legacyManagementController)
    {
        switch (type)
        {
            case CATEGORY_ACCESS_CONTROL_PROVIDER:
                return new LegacyCategoryController(legacyManagementController,
                                                    type,
                                                    new String[]{CATEGORY_BROKER},
                                                    DEFAULT_TYPES.get(type),
                                                    legacyManagementController.getTypeControllersByCategory(type));
            case CATEGORY_BROKER:
                return new BrokerController(legacyManagementController,
                                            legacyManagementController.getTypeControllersByCategory(type));
            case CATEGORY_BROKER_LOGGER:
                return new LegacyCategoryController(legacyManagementController,
                                                    type,
                                                    new String[]{CATEGORY_BROKER},
                                                    DEFAULT_TYPES.get(type),
                                                    legacyManagementController.getTypeControllersByCategory(type));
            case CATEGORY_BROKER_LOG_INCLUSION_RULE:
                return new LegacyCategoryController(legacyManagementController,
                                                    type,
                                                    new String[]{CATEGORY_BROKER_LOGGER},
                                                    DEFAULT_TYPES.get(type),
                                                    legacyManagementController.getTypeControllersByCategory(type));
            case CATEGORY_AUTHENTICATION_PROVIDER:
                return new LegacyCategoryController(legacyManagementController,
                                                    type,
                                                    new String[]{CATEGORY_BROKER},
                                                    DEFAULT_TYPES.get(type),
                                                    legacyManagementController.getTypeControllersByCategory(type));
            case CATEGORY_USER:
                return new LegacyCategoryController(legacyManagementController,
                                                    type,
                                                    new String[]{CATEGORY_AUTHENTICATION_PROVIDER},
                                                    DEFAULT_TYPES.get(type),
                                                    legacyManagementController.getTypeControllersByCategory(type));
            case CATEGORY_PORT:
                return new PortController(legacyManagementController,
                                          legacyManagementController.getTypeControllersByCategory(type));
            case CATEGORY_VIRTUAL_HOST_ALIAS:
                return new LegacyCategoryController(legacyManagementController,
                                                    type,
                                                    new String[]{CATEGORY_VIRTUAL_HOST_ALIAS},
                                                    DEFAULT_TYPES.get(type),
                                                    legacyManagementController.getTypeControllersByCategory(type));
            case CATEGORY_PLUGIN:
                return new LegacyCategoryController(legacyManagementController,
                                                    type,
                                                    new String[]{CATEGORY_BROKER},
                                                    DEFAULT_TYPES.get(type),
                                                    legacyManagementController.getTypeControllersByCategory(type));
            case CATEGORY_TRUST_STORE:
                return new LegacyCategoryController(legacyManagementController,
                                                    type,
                                                    new String[]{CATEGORY_BROKER},
                                                    DEFAULT_TYPES.get(type),
                                                    legacyManagementController.getTypeControllersByCategory(type));
            case CATEGORY_KEY_STORE:
                return new LegacyCategoryController(legacyManagementController,
                                                    type,
                                                    new String[]{CATEGORY_BROKER},
                                                    DEFAULT_TYPES.get(type),
                                                    legacyManagementController.getTypeControllersByCategory(type));
            case CATEGORY_GROUP_PROVIDER:
                return new LegacyCategoryController(legacyManagementController,
                                                    type,
                                                    new String[]{CATEGORY_BROKER},
                                                    DEFAULT_TYPES.get(type),
                                                    legacyManagementController.getTypeControllersByCategory(type));
            case CATEGORY_GROUP:
                return new LegacyCategoryController(legacyManagementController,
                                                    type,
                                                    new String[]{CATEGORY_GROUP_PROVIDER},
                                                    null,
                                                    legacyManagementController.getTypeControllersByCategory(type));
            case CATEGORY_GROUP_MEMBER:
                return new LegacyCategoryController(legacyManagementController,
                                                    type,
                                                    new String[]{CATEGORY_GROUP},
                                                    DEFAULT_TYPES.get(type),
                                                    legacyManagementController.getTypeControllersByCategory(type));
            case CATEGORY_VIRTUAL_HOST_NODE:
                return new LegacyCategoryController(legacyManagementController,
                                                    type,
                                                    new String[]{CATEGORY_BROKER},
                                                    DEFAULT_TYPES.get(type),
                                                    legacyManagementController.getTypeControllersByCategory(type));
            case CATEGORY_REMOTE_REPLICATION_NODE:
                return new LegacyCategoryController(legacyManagementController,
                                                    type,
                                                    new String[]{CATEGORY_VIRTUAL_HOST_NODE},
                                                    DEFAULT_TYPES.get(type),
                                                    legacyManagementController.getTypeControllersByCategory(type));
            case CATEGORY_VIRTUAL_HOST:
                return new VirtualHostController(legacyManagementController,
                                                 legacyManagementController.getTypeControllersByCategory(type));
            case CATEGORY_VIRTUAL_HOST_LOGGER:
                return new LegacyCategoryController(legacyManagementController,
                                                    type,
                                                    new String[]{CATEGORY_VIRTUAL_HOST},
                                                    DEFAULT_TYPES.get(type),
                                                    legacyManagementController.getTypeControllersByCategory(type));
            case CATEGORY_VIRTUAL_HOST_LOG_INCLUSION_RULE:
                return new LegacyCategoryController(legacyManagementController,
                                                    type,
                                                    new String[]{CATEGORY_VIRTUAL_HOST_LOGGER},
                                                    DEFAULT_TYPES.get(type),
                                                    legacyManagementController.getTypeControllersByCategory(type));
            case CATEGORY_VIRTUAL_HOST_ACCESS_CONTROL_PROVIDER:
                return new LegacyCategoryController(legacyManagementController,
                                                    type,
                                                    new String[]{CATEGORY_VIRTUAL_HOST},
                                                    DEFAULT_TYPES.get(type),
                                                    legacyManagementController.getTypeControllersByCategory(type));
            case CATEGORY_EXCHANGE:
                return new ExchangeController(legacyManagementController,
                                              legacyManagementController.getTypeControllersByCategory(type));
            case CATEGORY_QUEUE:
                return new QueueController(legacyManagementController,
                                           legacyManagementController.getTypeControllersByCategory(type));
            case CATEGORY_BINDING:
                return new BindingController(legacyManagementController
                );
            case CATEGORY_CONNECTION:
                return new LegacyCategoryController(legacyManagementController,
                                                    type,
                                                    new String[]{CATEGORY_PORT, CATEGORY_VIRTUAL_HOST},
                                                    DEFAULT_TYPES.get(type),
                                                    legacyManagementController.getTypeControllersByCategory(type));
            case CATEGORY_SESSION:
                return new SessionController(legacyManagementController,
                                             legacyManagementController.getTypeControllersByCategory(type));
            case CATEGORY_CONSUMER:
                return new ConsumerController(legacyManagementController
                );
            default:
                throw new IllegalArgumentException(String.format("Unsupported category '%s'", type));
        }
    }