Moodle APIs 3.9
Moodle 3.9.13+ (Build: 20220325)
|
Public Member Functions | |
add_logger (base_logger $logger) | |
Inserts a new logger at end of logging chain. More... | |
calculate_checksum () | |
This function will return one unique and stable checksum for one instance of the class implementing it. More... | |
get_copy () | |
Get the course copy data. More... | |
get_logger () | |
Gets first logger in logging chain. More... | |
get_progress () | |
Gets the progress reporter, which can be used to report progress within the backup or restore process. More... | |
get_releasesession () | |
Returns the set value of releasesession. More... | |
is_checksum_correct ($checksum) | |
Given one checksum, returns if matches object's checksum (true) or no (false) More... | |
log ($message, $level, $a=null, $depth=null, $display=false) | |
Logs data to the logger chain. More... | |
set_copy (\stdClass $data) | |
Store extra data for course copy operations. More... | |
set_progress (\core\progress\base $progress) | |
Sets the progress reporter. More... | |
Public Attributes | |
const | CIPHER = 'aes-256-cbc' |
Cipher to be used in backup and restore operations. | |
const | CIPHERKEYLEN = 32 |
Bytes enforced for key, using the cypher above. More... | |
const | ENROL_ALWAYS = 2 |
const | ENROL_NEVER = 0 |
const | ENROL_WITHUSERS = 1 |
const | EXECUTION_DELAYED = 2 |
const | EXECUTION_INMEDIATE = 1 |
const | FORMAT_IMSCC1 = 'imscc1' |
const | FORMAT_IMSCC11 = 'imscc11' |
const | FORMAT_MOODLE = 'moodle2' |
const | FORMAT_MOODLE1 = 'moodle1' |
const | FORMAT_UNKNOWN = 'unknown' |
const | INTERACTIVE_NO = false |
const | INTERACTIVE_YES = true |
const | LOG_DEBUG = 50 |
const | LOG_ERROR = 20 |
const | LOG_INFO = 40 |
const | LOG_NONE = 10 |
const | LOG_WARNING = 30 |
const | MODE_ASYNC = 70 |
This mode is for asynchronous backups. More... | |
const | MODE_AUTOMATED = 50 |
const | MODE_CONVERTED = 60 |
const | MODE_COPY = 80 |
This mode is for course copies. More... | |
const | MODE_GENERAL = 10 |
const | MODE_HUB = 30 |
const | MODE_IMPORT = 20 |
This is used for importing courses, and for duplicating activities. More... | |
const | MODE_SAMESITE = 40 |
This mode is intended for duplicating courses and cases where the backup target is within the same site. More... | |
const | OPERATION_BACKUP ='backup' |
const | OPERATION_RESTORE ='restore' |
const | RELEASE = '3.9' |
Usually same than major release zero version, mainly for informative/historic purposes. | |
const | RELEASESESSION_NO = false |
Don't release the session during backup/restore. | |
const | RELEASESESSION_YES = true |
Release the session during backup/restore. | |
const | STATUS_AWAITING = 700 |
const | STATUS_CONFIGURED = 400 |
const | STATUS_CREATED = 100 |
const | STATUS_EXECUTING = 800 |
const | STATUS_FINISHED_ERR = 900 |
const | STATUS_FINISHED_OK =1000 |
const | STATUS_NEED_PRECHECK =600 |
const | STATUS_PLANNED = 300 |
const | STATUS_REQUIRE_CONV = 200 |
const | STATUS_SETTING_UI = 500 |
const | TARGET_CURRENT_ADDING = 1 |
const | TARGET_CURRENT_DELETING = 0 |
const | TARGET_EXISTING_ADDING = 4 |
const | TARGET_EXISTING_DELETING = 3 |
const | TARGET_NEW_COURSE = 2 |
const | TYPE_1ACTIVITY = 'activity' |
const | TYPE_1COURSE = 'course' |
const | TYPE_1SECTION = 'section' |
const | VAR_ACTIVITYID = -21 |
const | VAR_BACKUPID = -1001 |
const | VAR_BASEPATH = -1011 |
const | VAR_BLOCKID = -51 |
const | VAR_BLOCKNAME = -61 |
const | VAR_CONTEXTID = -71 |
const | VAR_COURSEID = -1 |
const | VAR_MODID = -31 |
const | VAR_MODNAME = -41 |
const | VAR_PARENTID = -81 |
const | VAR_SECTIONID = -11 |
const | VERSION = 2020061500 |
Usually same than major release version, this is used to mark important point is backup when some behavior/approach channged, in order to allow conditional coding based on it. | |
Protected Attributes | |
stdClass | $copy |
Holds the relevant destination information for course copy operations. | |
base_logger | $logger |
Logging chain object (moodle, inline, fs, db, syslog) | |
core progress base | $progress |
Progress reporting object. | |
bool | $releasesession = backup::RELEASESESSION_NO |
Whether this backup should release the session. | |
base_controller::add_logger | ( | base_logger | $logger | ) |
Inserts a new logger at end of logging chain.
base_logger | $logger | New logger to add |
|
inherited |
This function will return one unique and stable checksum for one instance of the class implementing it.
It's each implementation responsibility to do it recursively if needed and use optional store (caching) of the checksum if necessary/possible
Implemented in backup_controller, restore_controller, base_logger, base_plan, base_task, and backup_setting.
base_controller::get_copy | ( | ) |
Get the course copy data.
stdClass |
base_controller::get_logger | ( | ) |
Gets first logger in logging chain.
base_logger | Logger |
base_controller::get_progress | ( | ) |
Gets the progress reporter, which can be used to report progress within the backup or restore process.
core::progress::base | Progress reporting object |
base_controller::get_releasesession | ( | ) |
Returns the set value of releasesession.
This is used to indicate if the session should be closed during the backup/restore.
bool | Indicates whether the session should be released. |
|
inherited |
Given one checksum, returns if matches object's checksum (true) or no (false)
Implemented in backup_controller, restore_controller, base_logger, base_plan, base_task, and backup_setting.
base_controller::log | ( | $message, | |
$level, | |||
$a = null , |
|||
$depth = null , |
|||
$display = false |
|||
) |
base_controller::set_copy | ( | \stdClass | $data | ) |
Store extra data for course copy operations.
For a course copying these is data required to be passed to the restore step. We store this data in its own section of the backup controller
stdClass | $data | The course copy data. |
backup_controller_exception |
base_controller::set_progress | ( | \core\progress\base | $progress | ) |
Sets the progress reporter.
core::progress::base | $progress | Progress reporting object |
|
inherited |
Bytes enforced for key, using the cypher above.
Restrictive? Yes, but better than unsafe lengths
|
inherited |
This mode is for asynchronous backups.
These backups will run via adhoc scheduled tasks.
|
inherited |
This mode is for course copies.
It is similar to async, but identifies back up and restore tasks as course copies.
These copies will run via adhoc scheduled tasks.
|
inherited |
This is used for importing courses, and for duplicating activities.
This mode will ensure that files are not included in the backup generation, and during a restore they are copied from the existing file record.
|
inherited |
This mode is intended for duplicating courses and cases where the backup target is within the same site.
This mode will ensure that files are not included in the backup generation, and during a restore they are copied from the existing file record.
For creating a backup for archival purposes or greater longevity, use MODE_GENERAL.