code: private Object getEnumValue(Class<?> type, Object value) {
          Object[] enumValues = type.getEnumConstants();
          for (Object enumValue : enumValues) {
              if (enumValue.toString().equals(value.toString())) {
                  value = enumValue;
                  break;
              }
          }
          return value;
      }
docs: Gets an enum value out of an object.