Moodle  2.2.1
http://www.collinsharper.com
backup_assignment_offline_subplugin Class Reference
Inheritance diagram for backup_assignment_offline_subplugin:
Collaboration diagram for backup_assignment_offline_subplugin:

Protected Member Functions

 define_assignment_subplugin_structure ()
 define_submission_subplugin_structure ()

Detailed Description

backup subplugin class that provides the necessary information needed to backup one assignment->offline subplugin.

Note: Offline assignments really haven't any special subplugin information to backup/restore, hence code below is skipped (return false) but it's a good example of sublugins supported at different elements (assignment and submission) and conditions

Definition at line 34 of file backup_assignment_offline_subplugin.class.php.


Member Function Documentation

Returns the subplugin information to attach at assignment element

Any activity sublugins is always rooted by one backup_subplugin_element() Those elements have some unique characteristics:

  • They are, basically, backup_nested_elements
  • They cannot have attributes
  • They don't have XML representations (only their final/child elements have
  • They are able to specify one condition in order to decide if the subplugin must be processed or no (usually we'll put the "type" condition here, but some activities, may prefer not to use any condition, see workshop)

Here we are defining the information that will be attached, within the "assignment" element when assignments of type "offline" are sent to backup, so we define the backup_subplugin_element as not having any final element (null) and with the condition of the '/assignment/assignmenttype' being 'offline' (that will be checked on execution)

Note that, while, we allow direct "injection" of final_elements at the "assignment" level (without any nesting, we usually pass 'null', and later enclose the real subplugin information into deeper levels (get_recommended_name() and 'config' in the example below). That will make things on restore easier, as far as subplugin information will be clearly separated from module information.

Here we define the real structure the subplugin is going to generate - see note above. Obviously the example below hasn't sense at all, we are exporting the whole config table that is 100% unrelated with assignments. Take it as just one example. The only important bit is that it's highly recommended to use some exclusive name in the main nested element (something that won't conflict with other subplugins/parts). So we are using 'subplugin_assignment_offline_assignment' as name here (the type of the subplugin, the name of the subplugin and the name of the connection point). get_recommended_name() will help, in any case ;-)

All the code below is 100% standard backup structure code, so you define the structure, the sources, annotations... whatever you need

Definition at line 39 of file backup_assignment_offline_subplugin.class.php.

Here is the call graph for this function:

Returns the subplugin information to attach at submission element

Definition at line 92 of file backup_assignment_offline_subplugin.class.php.

Here is the call graph for this function:


The documentation for this class was generated from the following file:
 All Data Structures Namespaces Files Functions Variables Enumerations