Currently extending Cayenne via contribution to DI collections and maps is not easy, as locating the corresponding map/collection is not transparent. It requires the knowledge of a String key for a given collection, and doesn't tell the user the type of the objects in the collection. E.g.:
Let's wrap this in a static contribution API similar to what was developed in bootique.io. E.g.:
This way the users will have explicit API to access all module collections / maps and will know the type of objects they expect.