Action_Scheduler\Migration
LogMigrator{}
Class LogMigrator
No Hooks.
Usage
$LogMigrator = new LogMigrator(); // use class methods
Methods
- public __construct( ActionScheduler_Logger $source_logger, ActionScheduler_Logger $destination_logger )
- public migrate( $source_action_id, $destination_action_id )
Notes
- Package: Action_Scheduler\Migration
Changelog
| Since 3.0.0 | Introduced. |
LogMigrator{} LogMigrator{} code WC 10.7.0
class LogMigrator {
/**
* Source logger instance.
*
* @var ActionScheduler_Logger
*/
private $source;
/**
* Destination logger instance.
*
* @var ActionScheduler_Logger
*/
private $destination;
/**
* ActionMigrator constructor.
*
* @param ActionScheduler_Logger $source_logger Source logger object.
* @param ActionScheduler_Logger $destination_logger Destination logger object.
*/
public function __construct( ActionScheduler_Logger $source_logger, ActionScheduler_Logger $destination_logger ) {
$this->source = $source_logger;
$this->destination = $destination_logger;
}
/**
* Migrate an action log.
*
* @param int $source_action_id Source logger object.
* @param int $destination_action_id Destination logger object.
*/
public function migrate( $source_action_id, $destination_action_id ) {
$logs = $this->source->get_logs( $source_action_id );
foreach ( $logs as $log ) {
if ( absint( $log->get_action_id() ) === absint( $source_action_id ) ) {
$this->destination->log( $destination_action_id, $log->get_message(), $log->get_date() );
}
}
}
}