Base class for database import operations.  
 More...
Base class for database import operations. 
This class implements basic callbacks for import operations and defines the 
- See also
- import_database method as a common method for all importers. In general, subclasses will override import_database and call other methods in appropriate moments. Between a single pair of calls to 
- 
begin_database_import and 
- 
finish_database_import, multiple non-overlapping pairs of calls may be made to 
- 
begin_table_import and 
- 
finish_database_import for different tables. Between one pair of calls to 
- 
begin_table_import and 
- 
finish_database_import multiple calls may be made to 
- 
import_table_data for the same table. This class can be used directly, if the standard control flow (defined above) is respected. 
◆ __construct()
      
        
          | database_importer::__construct | ( | moodle_database | $mdb, | 
        
          |  |  |  | $check_schema = true ) | 
      
 
Object constructor. 
- Parameters
- 
  
  
- See also
- moodle_database object). Use null to use the current $DB connection. 
- Parameters
- 
  
    | boolean | $check_schema | - whether or not to check that XML database schema matches the RDBMS database schema before importing (inside |  
 
- See also
- begin_database_import). 
 
 
◆ begin_database_import()
      
        
          | database_importer::begin_database_import | ( |  | $version, | 
        
          |  |  |  | $timestamp ) | 
      
 
Callback function. 
Should be called only once database per import operation, before any database changes are made. It will check the database schema if 
- See also
- check_schema is true
- Exceptions
- 
  
  
- Parameters
- 
  
    | float | $version | the version of the system which generated the data |  | string | $timestamp | the timestamp of the data (in ISO 8601) format. |  
 
- Return values
- 
  
  
 
 
◆ begin_table_import()
      
        
          | database_importer::begin_table_import | ( |  | $tablename, | 
        
          |  |  |  | $schemaHash ) | 
      
 
Callback function. 
Should be called only once per table import operation, before any table changes are made. It will delete all table data.
- Exceptions
- 
  
  
- Parameters
- 
  
    | string | $tablename | - the name of the table that will be imported |  | string | $schemaHash | - the hash of the xmldb_table schema of the table |  
 
- Return values
- 
  
  
 
 
◆ finish_database_import()
      
        
          | database_importer::finish_database_import | ( |  | ) |  | 
      
 
Callback function. 
Should be called only once database per import operation, after all database changes are made. It will commit changes. 
- Return values
- 
  
  
 
 
◆ finish_table_import()
      
        
          | database_importer::finish_table_import | ( |  | $tablename | ) |  | 
      
 
Callback function. 
Should be called only once per table import operation, after all table changes are made. It will reset table sequences if any. 
- Parameters
- 
  
  
- Return values
- 
  
  
 
 
◆ import_database()
      
        
          | database_importer::import_database | ( |  | ) |  | 
      
 
 
◆ import_table_data()
      
        
          | database_importer::import_table_data | ( |  | $tablename, | 
        
          |  |  |  | $data ) | 
      
 
Callback function. 
Should be called only once per record import operation, only between 
- See also
- begin_table_import and 
- 
finish_table_import calls. It will insert table data.
- Exceptions
- 
  
  
- Parameters
- 
  
    | string | $tablename | - the name of the table in which data will be imported |  | object | $data | - data object (fields and values will be inserted into table) |  
 
- Return values
- 
  
  
 
 
◆ set_transaction_mode()
      
        
          | database_importer::set_transaction_mode | ( |  | $mode | ) |  | 
      
 
How to use transactions during the import. 
- Parameters
- 
  
    | string | $mode | 'pertable', 'allinone' or 'none'. |  
 
 
 
◆ $check_schema
  
  | 
        
          | bool database_importer::$check_schema |  | protected | 
 
Boolean flag - whether or not to check that XML database schema matches the RDBMS database schema before importing (used by. 
- See also
- begin_database_import). 
 
 
◆ $manager
◆ $mdb
◆ $schema
Target database schema in XMLDB format (a. 
- See also
- xmldb_structure object). 
 
 
The documentation for this class was generated from the following file: