in server/src/jetbrains/buildServer/sharedResources/pages/actions/EnableDisableResourceAction.java [45:68]
protected void doProcess(@NotNull final HttpServletRequest request,
@NotNull final HttpServletResponse response,
@NotNull final Element ajaxResponse) {
final String resourceId = request.getParameter(SharedResourcesPluginConstants.WEB.PARAM_RESOURCE_ID);
final String projectId = request.getParameter(SharedResourcesPluginConstants.WEB.PARAM_PROJECT_ID);
final boolean newState = StringUtil.isTrue(request.getParameter(SharedResourcesPluginConstants.WEB.PARAM_RESOURCE_STATE));
final SProject project = myProjectManager.findProjectById(projectId);
if (project != null) {
ResourceProjectFeature feature = myProjectFeatures.getOwnFeatures(project).stream()
.filter(rf -> rf.getId().equals(resourceId))
.findFirst()
.orElse(null);
if (feature != null && feature.getResource() != null) {
final Resource resource = feature.getResource();
final Resource resourceInState = myResourceHelper.getResourceInState(projectId, resource, newState);
myProjectFeatures.updateFeature(project, resourceInState.getId(), resourceInState.getParameters());
final String changed = newState ? "enabled" : "disabled";
project.schedulePersisting(myConfigActionFactory.createAction(project, "'" + resource.getName() + "' shared resource was " + changed));
addMessage(request, "Resource " + resource.getName() + " was " + changed);
}
} else {
LOG.error("Project [" + projectId + "] no longer exists!");
}
}