Использование правильной логики перехватчика в Hybris - PullRequest
0 голосов
/ 07 июня 2018

У меня есть файл products.impex с атрибутом гендер = MALE или FEMALE в типе товара MyProduct (который расширяет продукт). У меня есть атрибут «выбор», который зависит от значений в столбце пола, поэтому я изначально написал PrepareInterceptor ипроверено условие isNew. Теперь оно отлично работает для новых строк, но при изменении значения оно не работает. Нужно ли просто удалить условие isNew или использовать InitDefaultsInterceptor?

1 Ответ

0 голосов
/ 08 июня 2018
if (ctx.isRemoved(productModel))
{
    //TODO
}
else if (ctx.isNew(productModel) || ctx.isModified(productModel, ProductModel.GENDER))
{
    //TODO
}

Что касается перехватчика, вы можете использовать PrepareInterceptor для подготовки значения поля, как он вызывался до ValidateInterceptor .Если вы просто хотите проверить свои поля, используйте ValidateInterceptor .Перехватчик инициализации по умолчанию вызывается, когда модель заполняется значениями по умолчанию.

Посмотрите на жизненный цикл перехватчика .

...