public PackagesSettingsController()

in nuget-feed/src/jetbrains/buildServer/nuget/feed/server/tab/PackagesSettingsController.java [49:84]


    public PackagesSettingsController(@NotNull final AuthorizationInterceptor auth,
                                      @NotNull final PluginDescriptor pluginDescriptor,
                                      @NotNull final PermissionChecker checker,
                                      @NotNull final WebControllerManager web,
                                      @NotNull final ProjectManager projectManager,
                                      @NotNull final RepositoryRegistry repositoryRegistry,
                                      @NotNull final RepositoryManager repositoryManager) {
        myPluginDescriptor = pluginDescriptor;
        myProjectManager = projectManager;
        myRepositoryRegistry = repositoryRegistry;
        myRepositoryManager = repositoryManager;

        final String path = pluginDescriptor.getPluginResourcesPath("packages/settings.html");
        auth.addPathBasedPermissionsChecker(path, (authorityHolder, request) -> checker.checkEditPermissions(getProject(request), authorityHolder));
        web.registerController(path, this);

        myDefaultProcessor = parameters -> {
            final List<InvalidProperty> invalidProperties = new ArrayList<>();
            notEmpty(parameters, RepositoryConstants.REPOSITORY_TYPE_KEY, "repository type", invalidProperties);
            notEmpty(parameters, RepositoryConstants.REPOSITORY_NAME_KEY, "name", invalidProperties);
            if (invalidProperties.isEmpty()) {
              String name = parameters.get(RepositoryConstants.REPOSITORY_NAME_KEY);
              try {
                IdentifiersUtil.validateExternalId(name, "Name");
              } catch (Exception e) {
                invalidProperties.add(new InvalidProperty(RepositoryConstants.REPOSITORY_NAME_KEY, e.getMessage()));
              }
            }
            return invalidProperties;
        };

        myPostActions = new ArrayList<>();
        myPostActions.add(new SaveRepositoryAction());
        myPostActions.add(new AddRepositoryAction());
        myPostActions.add(new DeleteRepositoryAction());
    }