wiki.techinc.nl/includes/CallableUpdate.php
bsitu 04a1021425 Add a deferrable update class for callback/closure udpates
Change-Id: Ifdf2a0937df50eb2f04d514b5cc2ef39a54ebe8f
2013-09-03 23:15:36 -07:00

30 lines
491 B
PHP

<?php
/**
* Deferrable Update for closure/callback
*/
class MWCallableUpdate implements DeferrableUpdate {
/**
* @var closure/callabck
*/
private $callback;
/**
* @param callable $callback
*/
public function __construct( $callback ) {
if ( !is_callable( $callback ) ) {
throw new MWException( 'Not a valid callback/closure!' );
}
$this->callback = $callback;
}
/**
* Run the update
*/
public function doUpdate() {
call_user_func( $this->callback );
}
}