Вызов пользовательского конвертера после дефолта в dozer

Может ли Dozer вызывать пользовательский преобразователь после значения по умолчанию? Я хочу создать что-то вроде цепочки. Сначала я хочу вызвать преобразователь по умолчанию, чтобы сделать большую часть преобразования, и только после этого вызвать пользовательский преобразователь для заполнения сложных полей?

ИЗМЕНИТЬ

по умолчанию, когда я создаю собственный конвертер, мне нужно переопределить два метода. Каждый из этих методов имеет 2 аргумента source object и target object. Но когда мы вызываем метод convertTo, второй аргумент (target object) равен нулю. Так что, может быть, мне нужно указать что-то в файле сопоставления, чтобы сделать конвертер процесса dozer по умолчанию перед пользовательским?

Извините за плохой английский


person Aleksei Bulgak    schedule 15.06.2014    source источник


Ответы (1)


После просмотра исходного кода я понимаю, что это, вероятно, невозможно. Вместо этой библиотеки бульдозеров предлагается использовать пользовательские преобразователи на уровне поля, например:

<mapping wildcard="false" >
        <class-a>package.A</class-a>
        <class-b>package.B</class-b>
        <field>
            <a>id</a>
            <b>id</b>
        </field>
        <field custom-converter="test.AtoBNameFieldCustomConverter">
            <a>name</a>
            <b>name</b>
        </field>
</mapping>

Может быть, это поможет кому-то.

person Aleksei Bulgak    schedule 22.09.2014