X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=inc%2Fclasses%2Fmain%2Ffilter%2Fclass_FilterChain.php;h=7004eb50f4563d5e56639dcabdcfffcab7f20daf;hb=75552231db513fd6657bdb232c5f3109aaa605d7;hp=a3353231bc25c74efd070392c231245212a99f9d;hpb=792542694524c78ffc47fb8c18ab9615f98c76ca;p=shipsimu.git
diff --git a/inc/classes/main/filter/class_FilterChain.php b/inc/classes/main/filter/class_FilterChain.php
index a335323..7004eb5 100644
--- a/inc/classes/main/filter/class_FilterChain.php
+++ b/inc/classes/main/filter/class_FilterChain.php
@@ -28,7 +28,7 @@ class FilterChain extends BaseFrameworkSystem {
private $filters = array();
/**
- * Private constructor
+ * Protected constructor
*
* @return void
*/
@@ -37,10 +37,10 @@ class FilterChain extends BaseFrameworkSystem {
parent::__construct(__CLASS__);
// Set part description
- $this->setObjectDescription("");
+ $this->setObjectDescription("A filter chain class");
// Create unique ID number
- $this->createUniqueID();
+ $this->generateUniqueId();
// Clean up a little
$this->removeNumberFormaters();
@@ -79,12 +79,18 @@ class FilterChain extends BaseFrameworkSystem {
*/
public function processFilters (Requestable $requestInstance, Responseable $responseInstance) {
// Run all filters
+ //* DEBUG */ echo "COUNT=".count($this->filters)."
\n";
foreach ($this->filters as $filterInstance) {
- // Execute this filter
- //* DEBUG */ echo "FILTER: ".$filterInstance->__toString().": Processing started.
\n";
+ // Try to execute this filter
+ try {
+ //* DEBUG */ echo "FILTER: ".$filterInstance->__toString().": Processing started.
\n";
$filterInstance->execute($requestInstance, $responseInstance);
- //* DEBUG */ echo "FILTER: ".$filterInstance->__toString().": Processing ended.
\n";
- }
+ //* DEBUG */ echo "FILTER: ".$filterInstance->__toString().": Processing ended.
\n";
+ } catch (FilterChainException $e) {
+ // This exception can be thrown to just skip any further processing
+ break;
+ }
+ } // END - foreach
}
}