aboutsummaryrefslogtreecommitdiffstats
path: root/library/HTMLPurifier/Strategy/Composite.php
diff options
context:
space:
mode:
Diffstat (limited to 'library/HTMLPurifier/Strategy/Composite.php')
-rw-r--r--library/HTMLPurifier/Strategy/Composite.php25
1 files changed, 25 insertions, 0 deletions
diff --git a/library/HTMLPurifier/Strategy/Composite.php b/library/HTMLPurifier/Strategy/Composite.php
new file mode 100644
index 000000000..816490b79
--- /dev/null
+++ b/library/HTMLPurifier/Strategy/Composite.php
@@ -0,0 +1,25 @@
+<?php
+
+/**
+ * Composite strategy that runs multiple strategies on tokens.
+ */
+abstract class HTMLPurifier_Strategy_Composite extends HTMLPurifier_Strategy
+{
+
+ /**
+ * List of strategies to run tokens through.
+ */
+ protected $strategies = array();
+
+ abstract public function __construct();
+
+ public function execute($tokens, $config, $context) {
+ foreach ($this->strategies as $strategy) {
+ $tokens = $strategy->execute($tokens, $config, $context);
+ }
+ return $tokens;
+ }
+
+}
+
+// vim: et sw=4 sts=4