in nuget-feed/src/jetbrains/buildServer/nuget/feed/server/tab/PackagesSettingsController.java [239:282]
public void process(@NotNull HttpServletRequest request, @NotNull HttpServletResponse response, @Nullable Element xmlResponse) {
final ActionErrors errors = new ActionErrors();
final SProject project = getProject(request);
try {
if (project == null) {
errors.addError("projectNotFound", "Project was not found");
return;
}
if (project.isReadOnly()) {
errors.addError("cannotEditProject", "Project is read-only");
return;
}
final String type = request.getParameter("type");
if (StringUtil.isEmpty(type)) {
errors.addError(RepositoryConstants.REPOSITORY_TYPE_KEY, "Repository type not found");
return;
}
RepositoryType registryType = myRepositoryRegistry.findType(type);
if (registryType == null) {
errors.addError(RepositoryConstants.REPOSITORY_TYPE_KEY, "Repository type not found");
return;
}
final String name = request.getParameter("name");
if (StringUtil.isEmpty(name)) {
errors.addError(RepositoryConstants.REPOSITORY_NAME_KEY, registryType.getName() + "name is not found");
return;
}
try {
myRepositoryManager.removeRepository(project, type, name);
} catch (Exception e) {
LOG.infoAndDebugDetails(String.format("Failed to delete %s %s in project %s", registryType.getName(), name, project.getExternalId()), e);
errors.addError(RepositoryConstants.REPOSITORY_NAME_KEY, e.getMessage());
}
} finally {
if (xmlResponse != null) {
writeErrors(xmlResponse, errors);
}
}
}