File "ActionScheduler_Action.php"
Full Path: /home/warrior1/public_html/plugins/mailpoet/vendor/woocommerce/action-scheduler/classes/actions/ActionScheduler_Action.php
File size: 1.36 KB
MIME-type: text/x-php
Charset: utf-8
<?php
if (!defined('ABSPATH')) exit;
class ActionScheduler_Action {
protected $hook = '';
protected $args = array();
protected $schedule = NULL;
protected $group = '';
public function __construct( $hook, array $args = array(), ActionScheduler_Schedule $schedule = NULL, $group = '' ) {
$schedule = empty( $schedule ) ? new ActionScheduler_NullSchedule() : $schedule;
$this->set_hook($hook);
$this->set_schedule($schedule);
$this->set_args($args);
$this->set_group($group);
}
public function execute() {
$hook = $this->get_hook();
if ( ! has_action( $hook ) ) {
throw new Exception(
sprintf(
__( 'Scheduled action for %1$s will not be executed as no callbacks are registered.', 'action-scheduler' ),
$hook
)
);
}
do_action_ref_array( $hook, array_values( $this->get_args() ) );
}
protected function set_hook( $hook ) {
$this->hook = $hook;
}
public function get_hook() {
return $this->hook;
}
protected function set_schedule( ActionScheduler_Schedule $schedule ) {
$this->schedule = $schedule;
}
public function get_schedule() {
return $this->schedule;
}
protected function set_args( array $args ) {
$this->args = $args;
}
public function get_args() {
return $this->args;
}
protected function set_group( $group ) {
$this->group = $group;
}
public function get_group() {
return $this->group;
}
public function is_finished() {
return FALSE;
}
}