code: private List<String> getOrderedDimValues(ServiceMetricEvent event)
    {
      String prefixKey = getPrefixKey(event.getMetric(), whiteListDimsMapper);
      if (prefixKey == null) {
        return null;
      }
      ImmutableList.Builder<String> outputList = new ImmutableList.Builder<>();
      List<String> dimensions = whiteListDimsMapper.get(prefixKey);
      if (dimensions == null) {
        return Collections.emptyList();
      }
  
      for (String dimKey : dimensions) {
        Object rawValue = event.getUserDims().get(dimKey);
        String value = null;
  
        if (rawValue instanceof String) {
          value = (String) rawValue;
        } else if (rawValue instanceof Collection) {
          Collection values = (Collection) rawValue;
          if (!values.isEmpty()) {
            value = (String) values.iterator().next();
          }
        }
  
        if (value != null) {
          outputList.add(AmbariMetricsEmitter.sanitize(value));
        }
      }
      return outputList.build();
    }
docs: Returns a {@link List} of the white-listed dimension's values to send.
  The list is order is the same as the order of dimensions {@code whiteListDimsMapper}
  
  @param event the event for which will filter dimensions
  
  @return {@link List}  of the filtered dimension values to send or <tt>null<tt/> if the event is not in the white list