Object Factory instance are used to specify how new object instances are created; use this mapping object type when your destination type requires use of a special constructor, a custom factory method, or some other special instantiation circumstances.
To define a custom object factory, implement the ma.glasnost.orika.ObjectFactory<T>
interface in your implementation class, like so:
public class PersonFactory implements ObjectFactory<Person> { public Person create(Object source, Type<Person> destinationType) { Person person = new Person(); // set the default address person.setAdress(new Address("Morocco", "Casablanca")); return person; } }
To be eligible for use by Orika, an instance of your custom object factory should be registered with the type it creates, like so:
mapperFactory.registerObjectFactory(new PersonFactory(), Person.class);