示例#1
0
 public function case_an_optional_argument_is_missing()
 {
     $this->given($router = new MockRouter(), $router->get('a', '(?<foo>foo)', __CLASS__, 'dispatchedMethodOptional'), $this->route($router, 'foo'), $dispatcher = new LUT\ClassMethod(), $dispatcher->getParameters()->setParameters(['synchronous.call' => '(:call:U:)', 'synchronous.able' => '(:able:)']))->when($dispatcher->dispatch($router));
 }
示例#2
0
                break;
            }
        }
    }
}
Core::enableErrorHandler();
Core::enableExceptionHandler();
/**
 * Here we go!
 */
try {
    $router = new Router\Cli();
    $router->get('g', '(?:(?<vendor>\\w+)\\s+)?(?<library>\\w+)?(?::(?<command>\\w+))?(?<_tail>.*?)', 'main', 'main', ['vendor' => 'hoa', 'library' => 'core', 'command' => 'welcome']);
    $dispatcher = new Dispatcher\ClassMethod(['synchronous.call' => '(:%variables.vendor:lU:)\\(:%variables.library:lU:)\\Bin\\(:%variables.command:lU:)', 'synchronous.able' => 'main']);
    $dispatcher->setKitName('Hoa\\Console\\Dispatcher\\Kit');
    exit((int) $dispatcher->dispatch($router));
} catch (Core\Exception $e) {
    $message = $e->raise(true);
    $code = 1;
} catch (\Exception $e) {
    $message = $e->getMessage();
    $code = 2;
}
ob_start();
Console\Cursor::colorize('foreground(white) background(red)');
echo $message, "\n";
Console\Cursor::colorize('normal');
$content = ob_get_contents();
ob_end_clean();
file_put_contents('php://stderr', $content);
exit($code);
示例#3
0
<?php

require_once dirname(__DIR__) . DIRECTORY_SEPARATOR . 'Bootstrap.php';
use Hoa\Exception;
use Hoa\Dispatcher;
use Hoa\Router;
Exception\Error::enableErrorHandler();
Exception\Idle::enableUncaughtHandler();
$dispatcher = new Dispatcher\ClassMethod(['synchronous.call' => 'Application\\Resource\\(:call:U:)', 'synchronous.able' => '(:%variables._method:U:)', 'asynchronous.call' => '(:%synchronous.call:)', 'asynchronous.able' => '(:%synchronous.able:)']);
$router = new Router\Http();
$router->_get('_resource', '/Static/(?<resource>)')->get('dates', '/api/dates(?:/(?<limit>\\d+))?', 'Dates')->get('discography', '/api/discography', 'Discography')->get('album', '/api/album/(?<albumId>.+)', 'Album')->get('videos', '/api/videos', 'Videos')->get('fallback', '/.*', 'Fallback');
$dispatcher->dispatch($router);
示例#4
0
文件: Jekxyl.php 项目: jekxyl/jekxyl
<?php

use Hoa\Console;
use Hoa\Dispatcher;
use Hoa\Exception;
use Hoa\Router;
Exception\Error::enableErrorHandler();
Exception::enableUncaughtHandler();
try {
    $router = new Router\Cli();
    $router->get('g', '(?<command>\\w+)?(?<_tail>.*?)', 'Main', 'Main', ['command' => 'welcome']);
    $dispatcher = new Dispatcher\ClassMethod(['synchronous.call' => 'Jekxyl\\Bin\\(:%variables.command:ls/new/_New/U:)', 'synchronous.able' => 'main']);
    $dispatcher->setKitName('Hoa\\Console\\Dispatcher\\Kit');
    exit($dispatcher->dispatch($router));
} catch (Core\Exception $e) {
    $message = $e->raise(true);
    $code = 1;
} catch (\Exception $e) {
    $message = $e->getMessage();
    $code = 2;
}
Console\Cursor::colorize('foreground(white) background(red)');
echo $message, "\n";
Console\Cursor::colorize('normal');
exit($code);