public static Resource fromDescriptor()

in server/src/jetbrains/buildServer/sharedResources/model/resources/ResourceFactory.java [61:89]


  public static Resource fromDescriptor(@NotNull final SProjectFeatureDescriptor descriptor) {
    Resource result = null;
    final Map<String, String> parameters = descriptor.getParameters();
    ResourceType type = ResourceType.fromString(parameters.get(TYPE));
    final String enabledStr = parameters.get(ENABLED);
    final boolean resourceState = enabledStr == null || Boolean.parseBoolean(enabledStr);
    final String name = parameters.get(NAME);
    if (isEmptyOrSpaces(name)) {
      return null;
    }
    if (type == ResourceType.QUOTED) {
      final String quotaStr = parameters.get(QUOTA);
      if (!isEmptyOrSpaces(quotaStr)) {
        try {
          int quota = Integer.parseInt(quotaStr);
          result = QuotedResource.newResource(descriptor.getId(), descriptor.getProjectId(), name, quota, resourceState);
        } catch (NumberFormatException ignored) {}
      }
    } else {
      final String valuesStr = parameters.get(VALUES);
      if (!isEmptyOrSpaces(valuesStr)) {
        List<String> values = split(valuesStr, true, '\r', '\n');
        if (!values.isEmpty()) {
          result = CustomResource.newCustomResource(descriptor.getId(), descriptor.getProjectId(), name, values, resourceState);
        }
      }
    }
    return result;
  }