4991777ce1a79de7e863aac1c5326fe2f36ca966
[yaffs-website] / vendor / ezyang / htmlpurifier / library / HTMLPurifier / DefinitionCache / Decorator / Cleanup.php
1 <?php
2
3 /**
4  * Definition cache decorator class that cleans up the cache
5  * whenever there is a cache miss.
6  */
7 class HTMLPurifier_DefinitionCache_Decorator_Cleanup extends HTMLPurifier_DefinitionCache_Decorator
8 {
9     /**
10      * @type string
11      */
12     public $name = 'Cleanup';
13
14     /**
15      * @return HTMLPurifier_DefinitionCache_Decorator_Cleanup
16      */
17     public function copy()
18     {
19         return new HTMLPurifier_DefinitionCache_Decorator_Cleanup();
20     }
21
22     /**
23      * @param HTMLPurifier_Definition $def
24      * @param HTMLPurifier_Config $config
25      * @return mixed
26      */
27     public function add($def, $config)
28     {
29         $status = parent::add($def, $config);
30         if (!$status) {
31             parent::cleanup($config);
32         }
33         return $status;
34     }
35
36     /**
37      * @param HTMLPurifier_Definition $def
38      * @param HTMLPurifier_Config $config
39      * @return mixed
40      */
41     public function set($def, $config)
42     {
43         $status = parent::set($def, $config);
44         if (!$status) {
45             parent::cleanup($config);
46         }
47         return $status;
48     }
49
50     /**
51      * @param HTMLPurifier_Definition $def
52      * @param HTMLPurifier_Config $config
53      * @return mixed
54      */
55     public function replace($def, $config)
56     {
57         $status = parent::replace($def, $config);
58         if (!$status) {
59             parent::cleanup($config);
60         }
61         return $status;
62     }
63
64     /**
65      * @param HTMLPurifier_Config $config
66      * @return mixed
67      */
68     public function get($config)
69     {
70         $ret = parent::get($config);
71         if (!$ret) {
72             parent::cleanup($config);
73         }
74         return $ret;
75     }
76 }
77
78 // vim: et sw=4 sts=4