Moodle PHP Documentation 4.5
Moodle 4.5dev (Build: 20240606) (d3ae1391abe)
backup_lti_activity_structure_step Class Reference

Define the complete assignment structure for backup, with file and id annotations. More...

Inheritance diagram for backup_lti_activity_structure_step:
backup_activity_structure_step backup_structure_step backup_step base_step executable loggable

Public Member Functions

 destroy ()
 Destroy all circular references.
 
 execute ()
 This function will perform all the actions necessary to achieve the execution of the plan/part/task.
 
 get_name ()
 
 get_task ()
 As far as backup structure steps are implementing backup_plugin stuff, they need to have the parent task available for wrapping purposes (get course/context....)
 
 log ($message, $level, $a=null, $depth=null, $display=false)
 This function will be responsible for handling the params, and to call to the corresponding logger->process() once all modifications in params have been performed.
 
 set_task ($task)
 

Protected Member Functions

 add_plugin_structure ($plugintype, $element, $multiple)
 Add plugin structure to any element in the structure backup tree.
 
 add_subplugin_structure ($subplugintype, $element, $multiple, $plugintype=null, $pluginname=null)
 Add subplugin structure for a given plugin to any element in the structure backup tree.
 
 define_structure ()
 Defines structure of activity backup.
 
 execute_condition ()
 To conditionally decide if one step will be executed or no.
 
 get_backupid ()
 
 get_basepath ()
 
 get_courseid ()
 
 get_logger ()
 
 get_setting ($name)
 
 get_setting_value ($name)
 
 get_settings ()
 Protected API starts here.
 
 prepare_activity_structure ($activitystructure)
 Wraps any activity backup structure within the common 'activity' element that will include common to all activities information like id, context...
 
 retrieve_lti_coursevisible (stdClass $ltirecord)
 Retrieves a record from {lti_coursevisible} table associated with the current type.
 
 retrieve_lti_type ($ltirecord)
 Retrieves a record from {lti_type} table associated with the current activity.
 
 setting_exists ($name)
 

Protected Attributes

backup_xml_transformer null $contenttransformer
 xml content transformer being used (need it here, apart from xml_writer, thanks to serialized data to process - say thanks to blocks!)
 
string $filename
 Name of the file to be generated.
 
string $name
 One simple name for identification purposes.
 
base_task null $task
 Task this is part of.
 

Detailed Description

Define the complete assignment structure for backup, with file and id annotations.

Member Function Documentation

◆ add_plugin_structure()

backup_structure_step::add_plugin_structure ( $plugintype,
$element,
$multiple )
protectedinherited

Add plugin structure to any element in the structure backup tree.

Parameters
string$plugintypetype of plugin as defined by core_component\get_plugin_types()
backup_nested_element$elementelement in the structure backup tree that we are going to add plugin information to
bool$multipleto define if multiple plugins can produce information for each instance of $element (true) or no (false)

◆ add_subplugin_structure()

backup_structure_step::add_subplugin_structure ( $subplugintype,
$element,
$multiple,
$plugintype = null,
$pluginname = null )
protectedinherited

Add subplugin structure for a given plugin to any element in the structure backup tree.

This method allows the injection of subplugins (of a specified plugin) data to any element in any backup structure.

NOTE: Initially subplugins were only available for activities (mod), so only the backup_activity_structure_step class had support for them, always looking for /mod/modulenanme subplugins. This new method is a generalization of the existing one for activities, supporting all subplugins injecting information everywhere.

Parameters
string$subplugintypetype of subplugin as defined in plugin's db/subplugins.json.
backup_nested_element$elementelement in the backup tree (anywhere) that we are going to add subplugin information to.
bool$multipleto define if multiple subplugins can produce information for each instance of $element (true) or no (false).
string$plugintypetype of the plugin.
string$pluginnamename of the plugin.
Return values
void

◆ define_structure()

backup_lti_activity_structure_step::define_structure ( )
protected

Defines structure of activity backup.

Return values
backup_nested_element

Reimplemented from backup_structure_step.

◆ destroy()

base_step::destroy ( )
inherited

Destroy all circular references.

It helps PHP 5.2 a lot!

◆ execute()

backup_structure_step::execute ( )
inherited

This function will perform all the actions necessary to achieve the execution of the plan/part/task.

Implements executable.

◆ execute_condition()

backup_structure_step::execute_condition ( )
protectedinherited

To conditionally decide if one step will be executed or no.

For steps needing to be executed conditionally, based in dynamic conditions (at execution time vs at declaration time) you must override this function. It will return true if the step must be executed and false if not

◆ log()

base_step::log ( $message,
$level,
$a = null,
$depth = null,
$display = false )
inherited

This function will be responsible for handling the params, and to call to the corresponding logger->process() once all modifications in params have been performed.

Implements loggable.

◆ prepare_activity_structure()

backup_activity_structure_step::prepare_activity_structure ( $activitystructure)
protectedinherited

Wraps any activity backup structure within the common 'activity' element that will include common to all activities information like id, context...

Parameters
backup_nested_element$activitystructurethe element to wrap
Return values
backup_nested_elementthe $activitystructure wrapped by the common 'activity' element

◆ retrieve_lti_coursevisible()

backup_lti_activity_structure_step::retrieve_lti_coursevisible ( stdClass $ltirecord)
protected

Retrieves a record from {lti_coursevisible} table associated with the current type.

Parameters
stdClass$ltirecordrecord from {lti} table
Return values
mixed

◆ retrieve_lti_type()

backup_lti_activity_structure_step::retrieve_lti_type ( $ltirecord)
protected

Retrieves a record from {lti_type} table associated with the current activity.

Information about site tools is not returned because it is insecure to back it up, only fields necessary for same-site tool matching are left in the record

Parameters
stdClass$ltirecordrecord from {lti} table
Return values
stdClass|null

The documentation for this class was generated from the following file: