"A base class is defined that will be extended for any particular implementation that might be needed for a connectivity with a third party. On this base class all possible events are defined (action_*) and the specific class for connecting with an external system X only defines the needed methods as _action_*.