void registerMapper(final PersistentObjectMapper mapper);
Most of the stores simply proxy the call to their persistent delegates and do nothing more.
With the introduction of io.vlingo.symbio.store.dispatch.Dispatchable
the store has to have the mapping for it. Also a copy of the store delegate is usually used by DispatcherControlActor
actor. More details in this discussion: vlingo/xoom-symbio-jdbc#14 (comment)
It makes more sense to register the mapping directly with the persistent delegate.
The idea is to create an interface, for example ObjectStoreDelegate
that defines the registerMapper
implementation.
This will allow the clients to register all the necessary mappings, including the one for io.vlingo.symbio.store.dispatch.Dispatchable
before creating the actor.
With the new Object store delegate interface, the following projects must also be changed: