-
Notifications
You must be signed in to change notification settings - Fork 0
Usage Example
Hovhannes Ghurshudyan edited this page Jul 4, 2019
·
3 revisions
if( class_exists( 'BTM_Plugin', false ) ){
$task1 = new BTM_Task(
'do_something1',
array( 'arg_1' => 'Arg 1', 'arg_2' => 'Arg 2', 'arg_3' => 'Arg 3' ),
10,
16
);
$bulk_argument_to_keep_higher_priority = array();
$bulk_argument_to_overwrite = array();
$bulk_argument_to_keep_higher_priority[] = new BTM_Task_Bulk_Argument( array(1, 2, 3), 10 );
$bulk_argument_to_keep_higher_priority[] = new BTM_Task_Bulk_Argument( array(1, 2), 5 );
$bulk_argument_to_keep_higher_priority[] = new BTM_Task_Bulk_Argument( array(1, 2), 6 );
$bulk_argument_to_keep_higher_priority[] = new BTM_Task_Bulk_Argument( array(1, 2), 4 );
$bulk_argument_to_keep_higher_priority[] = new BTM_Task_Bulk_Argument( array(5, 6, 7), 5 );
$bulk_argument_to_overwrite[] = new BTM_Task_Bulk_Argument( array(5, 6, 7), 9 );
BTM_Task_Manager::get_instance()->register_task(
$task1,
$bulk_argument_to_keep_higher_priority,
$bulk_argument_to_overwrite
);
/**
* @param BTM_Task_Run_Filter_Log $task_run_filter_log
* @param mixed[] $args
* @param BTM_Task_Bulk_Argument[] $bulk_args
*
* @return BTM_Task_Run_Filter_Log
*/
function do_something1( BTM_Task_Run_Filter_Log $task_run_filter_log, array $args, array $bulk_args ){
$logs[] = 'Working on something 111111111';
$logs[] = 'doing something 111111111';
$logs[] = 'everything is done on something 111111111';
// sleep( 3 );
$task_run_filter_log->add_logs( $logs );
$task_run_filter_log->add_log( json_encode( $args ) );
$task_run_filter_log->set_bulk_fail( $bulk_args[0] );
return $task_run_filter_log;
}
add_filter( BTM_Plugin_Options::get_instance()->get_task_filter_name_prefix() . 'do_something1', 'do_something1', 10, 3 );
}