code: private Map<String, Set<DataUsage>> getDataUsage(String dataUsageName) throws PropertyException {
          String dataUsageString = props.getProperty(dataUsageName);
          if (dataUsageString == null) {
              throw new PropertyException(ProcessContextProperty.DATA_USAGE, dataUsageName, "No data usage with name \"" + dataUsageName + "\"");
          }
          Map<String, Set<DataUsage>> result = new HashMap<>();
          int delimiterIndex = dataUsageString.indexOf(" ");
          if (delimiterIndex == -1) {
              throw new PropertyException(ProcessContextProperty.DATA_USAGE, dataUsageName, "Invalid property value for data usage with name \"" + dataUsageName + "\"");
          }
          String attributeString = null;
          String dataUsagesString = null;
          try {
              attributeString = dataUsageString.substring(0, delimiterIndex);
              dataUsagesString = dataUsageString.substring(delimiterIndex + 1);
  
              attributeString = attributeString.substring(1, attributeString.length() - 1);
          } catch (Exception e) {
              throw new PropertyException(ProcessContextProperty.DATA_USAGE, dataUsageName, "Invalid property value for data usage with name \"" + dataUsageName + "\"", e);
          }
  
          Set<DataUsage> usageModes = new HashSet<>();
          StringTokenizer usageModeTokens = StringUtils.splitArrayString(dataUsagesString, " ");
          while (usageModeTokens.hasMoreTokens()) {
              try {
                  usageModes.add(DataUsage.parse(usageModeTokens.nextToken()));
              } catch (ParameterException e) {
                  throw new PropertyException(ProcessContextProperty.DATA_USAGE, dataUsageName, "Invalid property value for data usage with name \"" + dataUsageName + "\"", e);
              }
          }
          result.put(attributeString, usageModes);
  
          return result;
      }
docs: Extracts the data usage with the given name in form of a map containing
  the attribute as key and the data usages as value.<br>
  
  @param dataUsageName The property-name of the data usage (DATA_USAGE_X)
  @return The map-representation of the data usage-property
  @throws PropertyException if there is no constraint with the given name
  or the value cannot be converted into a number- or string-constraint.