LDEV-1109: Fixing bugs in the authoring support for tool output based branching and getting the progress engine working. A rough implementation of the condition checking down for one MCQ condition for demonstration purposes. Two new methods added to the tool contract.
LDEV-1109: Fixed up a couple of bugs with copying the learning design that crept in due to the addition of the tool output based branching - the branch mappings weren't being copied properly.
LDEV-1109: Implement more of the authoring support for tool output based branching. Added the table to store the conditions designed in authoring and refactored the branch mapping table to support the conditions. Modified the authoring code to expect the new objects from the authoring client.
LDEV-1109: Implement more of the authoring support for tool output based branching. Added the table to store the conditions designed in authoring and refactored the branch mapping table to support the conditions. Modified the authoring code to expect the new objects from the authoring client.
LDEV-1134: Adding more support for the tool output based branching. Added a couple of simple tool output definitions for MCQ and Forum and added a class to the core to help tools create the tool output definitions (OutputDefinitionFactory), which required a change to MessageService. Also added the call to the core tool service to support calling the tools for their output definitions.
Added validation for grouping activities - if the number of groups in the design is more than the specified number of groups then there is a validation error.
Fixing up Grouping related code so it will cope with more cases during grouping, and so that groupingDAO can better find all the groups in a learning design.