abstract class MigrateDestination in Migrate 7.2
Same name and namespace in other branches
- 6.2 includes/destination.inc \MigrateDestination
Abstract base class for destination handling.
Derived classes are expected to define __toString(), returning a string describing the type of destination and significant options. See MigrateDestinationEntity for an example.
Hierarchy
- class \MigrateDestination
Expanded class hierarchy of MigrateDestination
File
- includes/
destination.inc, line 15 - Defines base for migration destinations.
View source
abstract class MigrateDestination {
/**
* To support MigrateSQLMap maps, derived destination classes should return
* schema field definition(s) corresponding to the primary key of the
* destination being implemented. These are used to construct the destination
* key fields of the map table for a migration using this destination.
*
* abstract static public function getKeySchema()
*/
/**
* Derived classes must implement __toString().
*
* @return string
* Description of the destination being migrated into
*/
public abstract function __toString();
/**
* Derived classes must implement fields(), returning a list of available
* destination fields.
*
* @param Migration $migration
* Optionally, the migration containing this destination.
*
* @return array
* Keys: machine names of the fields (to be passed to addFieldMapping)
* Values: Human-friendly descriptions of the fields.
*/
public abstract function fields();
/**
* Derived classes must implement either bulkRollback or rollback() according
* to the signatures below, to rollback (usually by deletion)
* previously-migrated items.
*
* $ids is an array of single-field keys to be deleted
* abstract public function bulkRollback(array $ids);
*
* $key is an array of fields keying a single entry to delete
* abstract public function rollback(array $key);
*/
/**
* Derived classes must implement import(), to construct one new object
* (pre-pppulated using field mappings in the Migration). It is expected to
* call prepare and complete handlers, passing them $row (the raw data from
* the source).
*/
public abstract function import(stdClass $object, stdClass $row);
/**
* Derived classes may implement preImport() and/or postImport(), to do any
* processing they need done before or after looping over all source rows.
* Similarly, preRollback() or postRollback() may be implemented.
*
* abstract public function preImport();
* abstract public function postImport();
* abstract public function preRollback();
* abstract public function postRollback();
*/
/**
* Maintain stats on the number of destination objects created or updated.
*
* @var int
*/
protected $numCreated = 0;
public function getCreated() {
return $this->numCreated;
}
protected $numUpdated = 0;
public function getUpdated() {
return $this->numUpdated;
}
/**
* Reset numCreated and numUpdated back to 0.
*/
public function resetStats() {
$this->numCreated = 0;
$this->numUpdated = 0;
}
/**
* Null constructor
*/
public function __construct() {
}
}
Members
Name | Modifiers | Type | Description | Overrides |
---|---|---|---|---|
MigrateDestination:: |
protected | property | Maintain stats on the number of destination objects created or updated. | |
MigrateDestination:: |
protected | property | ||
MigrateDestination:: |
abstract public | function | Derived classes must implement fields(), returning a list of available destination fields. | 11 |
MigrateDestination:: |
public | function | ||
MigrateDestination:: |
public | function | ||
MigrateDestination:: |
abstract public | function | Derived classes must implement import(), to construct one new object (pre-pppulated using field mappings in the Migration). It is expected to call prepare and complete handlers, passing them $row (the raw data from the source). | 11 |
MigrateDestination:: |
public | function | Reset numCreated and numUpdated back to 0. | |
MigrateDestination:: |
public | function | Null constructor | 7 |
MigrateDestination:: |
abstract public | function | Derived classes must implement __toString(). | 7 |