クラス
Routes
ソース ソース
ファイル: src/Routes/Routes.php
class Routes extends Router
{
/**
* LINE Pay module object
*
* @var LinePay
*/
private $module;
/**
* Instantiates Router
*
* @author Evan D Shaw <evandanielshaw@gmail.com>
* @param LinePay $module
*/
public function __construct(LinePay $module) {
$this->module = $module;
parent::__construct('/wcexalp', Constants::NONCE_KEY, Constants::NONCE_NAME);
}
/**
* Contains declarations for all REST routes
*
* @author Evan D Shaw <evandanielshaw@gmail.com>
* @param WordPressRouteCollector $r
* @return void
*/
public function declareRoutes(WordPressRouteCollector $r) {
// REST handlers
$request = new Api\Request($this->module);
$capture = new Api\Capture($this->module);
$cancel = new Api\Cancel($this->module);
$refund = new Api\Refund($this->module);
$adminroles = ['administrator', 'editor', 'wc_management'];
// REST middleware
$requestm = [$request->checkTotalPriceMiddleware(), $request->furiganaCheckMiddleware()];
// REST routes
$r->post('/request', [$request, 'request'], $requestm);
$r->add('POST', '/capture/{orderId}', [$capture, 'capture'], [], [], $adminroles);
$r->add('POST', '/void/{orderId}', [$cancel, 'cancel'], [], [], $adminroles);
$r->add('POST', '/refund/{orderId}', [$refund, 'refund'], [], [], $adminroles);
}
}
- __construct — Instantiates Router
- declareRoutes — Contains declarations for all REST routes