Class MappingProcessor

java.lang.Object
net.n2oapp.framework.engine.util.MappingProcessor

public class MappingProcessor extends Object
Утилитный класс для маппинга данных.
  • Constructor Details

    • MappingProcessor

      public MappingProcessor()
  • Method Details

    • inMap

      public static void inMap(Object target, String fieldId, String mapping, Object value)
      Входящее преобразование value согласно выражению mapping в объект target
      Parameters:
      target - результирующий объект
      mapping - выражение преобразования
      value - значение
    • inMap

      public static void inMap(Object target, String fieldId, String mapping, Object value, String userMapping)
      Входящее преобразование value согласно выражению mapping в объект target
      Parameters:
      target - результирующий объект
      mapping - выражение преобразования
      value - значение
      userMapping - выражение преобразования, используемое для формирования сообщения об ошибке
    • outMap

      public static <T> T outMap(Object target, String mapping, Class<T> clazz)
      Исходящее преобразование target согласно mapping выражению
      Parameters:
      target - исходное значение
      mapping - выражения преобразования
      Returns:
      результат преобразования
    • outMap

      public static void outMap(DataSet target, Object value, String fieldId, String mapping, Object defaultValue, ContextProcessor contextProcessor)
      Исходящее преобразование value согласно mapping и в target под ключом fieldId В случае если результат после маппинга = null, в target добавляется defaultValue
      Parameters:
      target - данные результирующие
      value - исходное значение
      fieldId - идентификатор поля
      mapping - выражение преобразования
      defaultValue - значение по умолчанию
    • mapParameter

      public static void mapParameter(ObjectReferenceField parameter, DataSet dataSet)
      Заменяет в inDataSet значение созданным объектом
      Parameters:
      parameter - параметр операции
      dataSet - исходные данные
    • mapChildParameters

      public static Object mapChildParameters(ObjectReferenceField parameter, DataSet dataSet)
      Создает инстанс и мапит его поля из dataSet
      Parameters:
      parameter - Параметр операции
      dataSet - Исходные данные
    • extractFieldMapping

      public static Map<String,FieldMapping> extractFieldMapping(Collection<AbstractParameter> parameters)
      Получение структуры маппингов полей
      Parameters:
      parameters - Список полей
      Returns:
      Структура маппингов полей
    • normalizeValue

      public static Object normalizeValue(Object value, String normalizer, DataSet allData, org.springframework.expression.ExpressionParser parser, org.springframework.beans.factory.BeanFactory beanFactory)
      Нормализация значения по SpEL выражению
      Parameters:
      value - Значение для нормализации
      normalizer - Нормализируещее выражение
      allData - Данные, используемые для нормализации (нужно для #data)
      parser - Парсер SpEL выражений
      beanFactory - Фабрика бинов спринга
      Returns:
      Нормализированное значение
    • normalizeValue

      public static Object normalizeValue(Object value, String normalizer, DataSet allData, DataSet parentData, org.springframework.expression.ExpressionParser parser, org.springframework.beans.factory.BeanFactory beanFactory)
      Нормализация значения по SpEL выражению
      Parameters:
      value - Значение для нормализации
      normalizer - Нормализируещее выражение
      allData - Данные, используемые для нормализации
      parser - Парсер SpEL выражений
      beanFactory - Фабрика бинов спринга
      Returns:
      Нормализированное значение
    • resolveCondition

      public static Boolean resolveCondition(String condition, Map<String,Object> data)
      Вычисление значения условия SpEl выражения
      Parameters:
      condition - Условное SpEl выражение
      data - Исходные данные
      Returns:
      true/false
    • isMappingEnabled

      public static boolean isMappingEnabled(String enabled, DataSet inDataSet)
      Проверка условия доступности выполнения маппинга
      Parameters:
      enabled - Условие доступности
      inDataSet - Исходные данные
      Returns:
      Возвращает true, если маппинг разрешено выполнить, иначе - false