in server/src/jetbrains/buildServer/sharedResources/pages/ResourceHelper.java [83:109]
public Resource getResourceFromRequest(@NotNull final String projectId, @NotNull final HttpServletRequest request) {
final String resourceName = request.getParameter(SharedResourcesPluginConstants.WEB.PARAM_RESOURCE_NAME);
final String resourceId = request.getParameter(SharedResourcesPluginConstants.WEB.PARAM_RESOURCE_ID);
final ResourceType resourceType = ResourceType.fromString(request.getParameter(SharedResourcesPluginConstants.WEB.PARAM_RESOURCE_TYPE));
Resource resource = null;
if (isEmptyOrSpaces(resourceId)) {
return null;
}
if (ResourceType.QUOTED.equals(resourceType)) {
final String resourceQuota = request.getParameter(SharedResourcesPluginConstants.WEB.PARAM_RESOURCE_QUOTA);
if (!isEmptyOrSpaces(resourceQuota)) { // we have quoted resource
try {
int quota = Integer.parseInt(resourceQuota);
resource = ResourceFactory.newQuotedResource(resourceId, projectId, resourceName, quota, true);
} catch (IllegalArgumentException e) {
LOG.warn("Illegal argument supplied in quota for resource [" + resourceName + "]");
}
} else {
resource = ResourceFactory.newInfiniteResource(resourceId, projectId, resourceName, true);
}
} else if (ResourceType.CUSTOM.equals(resourceType)) {
final String values = request.getParameter(SharedResourcesPluginConstants.WEB.PARAM_RESOURCE_VALUES);
final List<String> strings = StringUtil.split(values, true, '\r', '\n');
resource = ResourceFactory.newCustomResource(resourceId, projectId, resourceName, strings, true);
}
return resource;
}