forked from kevinowino869/mitrobill
Sample
admin
docs
pages_template
qrcode
system
autoload
PEAR2
Cache
Console
Color
CommandLine
Action
MessageProvider
Outputter
Renderer
Action.php
Argument.php
Command.php
CustomMessageProvider.php
Element.php
Exception.php
MessageProvider.php
Option.php
Outputter.php
Renderer.php
Result.php
XmlParser.php
Color.php
CommandLine.php
Net
Autoload.php
Admin.php
App.php
Http.php
Lang.php
PGTripay.php
PGXendit.php
Package.php
Paginator.php
Password.php
Router.php
Timezone.php
User.php
Validator.php
index.html
controllers
install
lan
paymentgateway
uploads
vendors
boot.php
config.sample.php
cron.php
index.html
orm.php
radius.php
ui
.gitignore
LICENSE
README.md
index.php
91 lines
2.8 KiB
PHP
91 lines
2.8 KiB
PHP
<?php
|
|
|
|
/* vim: set expandtab tabstop=4 shiftwidth=4 softtabstop=4: */
|
|
|
|
/**
|
|
* This file is part of the PEAR2\Console\CommandLine package.
|
|
*
|
|
* PHP version 5
|
|
*
|
|
* LICENSE: This source file is subject to the MIT license that is available
|
|
* through the world-wide-web at the following URI:
|
|
* http://opensource.org/licenses/mit-license.php
|
|
*
|
|
* @category Console
|
|
* @package PEAR2\Console\CommandLine
|
|
* @author David JEAN LOUIS <izimobil@gmail.com>
|
|
* @copyright 2007-2009 David JEAN LOUIS
|
|
* @license http://opensource.org/licenses/mit-license.php MIT License
|
|
* @version 0.2.1
|
|
* @link http://pear2.php.net/PEAR2_Console_CommandLine
|
|
* @since File available since release 0.1.0
|
|
* @filesource
|
|
*/
|
|
|
|
namespace PEAR2\Console\CommandLine;
|
|
|
|
use Exception as E;
|
|
|
|
/**
|
|
* Class for exceptions raised by the PEAR2\Console\CommandLine package.
|
|
*
|
|
* @category Console
|
|
* @package PEAR2\Console\CommandLine
|
|
* @author David JEAN LOUIS <izimobil@gmail.com>
|
|
* @copyright 2007-2009 David JEAN LOUIS
|
|
* @license http://opensource.org/licenses/mit-license.php MIT License
|
|
* @link http://pear2.php.net/PEAR2_Console_CommandLine
|
|
* @since Class available since release 0.1.0
|
|
*/
|
|
class Exception extends E
|
|
{
|
|
// Codes constants {{{
|
|
|
|
/**#@+
|
|
* Exception code constants.
|
|
*/
|
|
const OPTION_VALUE_REQUIRED = 1;
|
|
const OPTION_VALUE_UNEXPECTED = 2;
|
|
const OPTION_VALUE_TYPE_ERROR = 3;
|
|
const OPTION_UNKNOWN = 4;
|
|
const ARGUMENT_REQUIRED = 5;
|
|
const INVALID_SUBCOMMAND = 6;
|
|
/**#@-*/
|
|
|
|
// }}}
|
|
// factory() {{{
|
|
|
|
/**
|
|
* Convenience method that builds the exception with the array of params by
|
|
* calling the message provider class.
|
|
*
|
|
* @param string $code The string identifier of the
|
|
* exception.
|
|
* @param array $params Array of template vars/values
|
|
* @param PEAR2\Console\CommandLine $parser An instance of the parser
|
|
* @param array $messages An optional array of messages
|
|
* passed to the message provider.
|
|
*
|
|
* @return PEAR2\Console\CommandLine\Exception The exception instance
|
|
*/
|
|
public static function factory(
|
|
$code, $params, $parser, array $messages = array()
|
|
) {
|
|
$provider = $parser->message_provider;
|
|
if ($provider instanceof CommandLine\CustomMessageProvider) {
|
|
$msg = $provider->getWithCustomMessages(
|
|
$code,
|
|
$params,
|
|
$messages
|
|
);
|
|
} else {
|
|
$msg = $provider->get($code, $params);
|
|
}
|
|
$const = '\PEAR2\Console\CommandLine\Exception::' . $code;
|
|
$code = defined($const) ? constant($const) : 0;
|
|
return new static($msg, $code);
|
|
}
|
|
|
|
// }}}
|
|
}
|