public List<?> getSelection(PropertyDescriptor propertyDescriptor, Locator locator) {
    if (CollectionUtils.isNotEmpty(selectionValues)) {
      return selectionValues;
    }
    if (CollectionUtils.isNotEmpty(selections)) {
      for (Selection selection : selections) {
        if (selections != null && selection.getSelection() != null) {
          if (("." + locator.currentLoc() + "." + propertyDescriptor.getName() + "_").toLowerCase().contains(("." + selection.getSelection().getField() + "_").toLowerCase())) {
            selectionValues = selection.getSelection().getValues();
            return selectionValues;
          }
          //In the case of a SameValueField this selection could still apply
          if (containsType(appliedDescriptors, DescriptorType.SAME_VALUE)) {
            selectionValues = selection.getSelection().getValues();
            return selectionValues;
          }
        }
      }
    }
    return null;
  }