Hi Hippo cms devs,

In our current project we are about to lean heavily on your content updating
mechanism, which concerns implementors primarily in terms of the:

- UpdaterModule -and-
- UpdaterContext interfaces

Implementing these interfaces, the following questions arose:

UpdaterModule
- what happens if an update fails, are changes rolled back?
- are updater modules performed simultaneously or in parallel?
- in case of parallel executions, what are the implications / things to be
aware of, for implementors of the interface?

UpdaterContext
- it's good to see that the documention on these interface methods
explicitly mention usage instructions, such as:

* The registerName method MUST be called EXACTLY ONCE by every class that
implements the UpdaterModule abstract base class.
* The registerBefore method MAY be called zero, once or multiple times

However, we feel it would be very useful to also describe the 'what they
do', as well as 'what happens when...' more explicitly. For example,

- what happens if we call registerBefore(...) multiple times with the same
argument?
- what happens to ordering?
- what happens if there is an ordering conflict?
- what happens if I don't call a registerX... lifecycle method that is
supposed to be called?

Also, consider changing the interface in such a way that implementing
classes are forced to 'do the right thing'.

Lastly, for the interfaces mentioned, maybe it is an idea to answer some of
these questions in the class level javadocs, as I am sure it would help
anyone using them.

Kind regards,

Rob van der Linden Vooren | Software Engineer | JTeam | T: +31(0)2-04862036
| www.jteam.nl
General conditions apply
********************************************
Hippocms-dev: Hippo CMS development public mailinglist

Searchable archives can be found at:
MarkMail: http://hippocms-dev.markmail.org
Nabble: http://www.nabble.com/Hippo-CMS-f26633.html

Reply via email to