mabs / exceptionizer-bundle
This bundle provides a simple way to play with php Exceptions.
Installs: 7
Dependents: 0
Suggesters: 0
Security: 0
Stars: 1
Watchers: 1
Forks: 0
Open Issues: 0
Type:symfony-bundle
Requires
- php: >=5.3.9
- symfony/framework-bundle: >=2.1
This package is not auto-updated.
Last update: 2025-03-01 20:18:59 UTC
README
Play with Exceptions :D This bundle help to get a low coupling between exception class object in your code
Installation
Exceptionizer uses Composer, please checkout the composer website for more information.
The simple following command will install exceptionizer-bundle
into your project. It also add a new
entry in your composer.json
and update the composer.lock
as well.
$ composer require 'mabs/exceptionizer-bundle'
Then, you can enable it in your kernel:
// app/AppKernel.php public function registerBundles() { $bundles = array( ... new Mabs\ExceptionizerBundle\MabsExceptionizerBundle(), ...
Usage
Now you can use Exceptionizer service to throw Exceptions:
$this->container->get('exceptionizer') ->throwException('\\Symfony\\Component\\HttpKernel\\Exception\\NotFoundHttpException', array('Your message'));
OR define your Exception in your config.yml file like this :
mabs_exceptionizer: exceptions: bar_code_exception: class: Mabs\BarCodeBundle\Exception\BarCodeException arguments: # optional message: "bar code exception" # optional code: 0 # optional
and pass the config key to the service:
$this->container->get('exceptionizer')->throwException('bar_code_exception');
Events and listener:
ExceptionizerBundle provide two events:
namespace Mabs\ExceptionizerBundle; final class ExceptionizerEvents { const EXCEPTIONIZER_PRE_THROW = 'exceptionizer.pre_throw'; const EXCEPTIONIZER_POST_CATCH = 'exceptionizer.post_catch'; }
exceptionizer.pre_throw : before throw Exception
exceptionizer.post_catch: (will be documented later when we speak about the Exception Catcher)
Now you can create Listeners to do a specific job when an exception will be thrown ;) and to learn more about the EventDispatcher Component in symfony2 pleaze read the documentation
License
This bundle is available under the MIT license.