aboutsummaryrefslogtreecommitdiffhomepage
path: root/inc/3rdparty/htmlpurifier/HTMLPurifier/DefinitionCache/Decorator/Memory.php
diff options
context:
space:
mode:
authorNicolas LÅ“uillet <nicolas@loeuillet.org>2014-02-21 15:57:10 +0100
committerNicolas LÅ“uillet <nicolas@loeuillet.org>2014-02-21 15:57:10 +0100
commit99679d06884120c57f43b44e55e03595f1f87bed (patch)
treea3f2a1aa1afdaeca1386d0c6e8a75344fd2241fb /inc/3rdparty/htmlpurifier/HTMLPurifier/DefinitionCache/Decorator/Memory.php
parent655214ab30ee84884dc408488b85586f36263fcb (diff)
parentd3b47e94705e17b3ba3529cbb1dc6efe69c5d2b7 (diff)
downloadwallabag-99679d06884120c57f43b44e55e03595f1f87bed.tar.gz
wallabag-99679d06884120c57f43b44e55e03595f1f87bed.tar.zst
wallabag-99679d06884120c57f43b44e55e03595f1f87bed.zip
Merge pull request #481 from wallabag/dev1.5.2
1.5.2
Diffstat (limited to 'inc/3rdparty/htmlpurifier/HTMLPurifier/DefinitionCache/Decorator/Memory.php')
-rw-r--r--inc/3rdparty/htmlpurifier/HTMLPurifier/DefinitionCache/Decorator/Memory.php85
1 files changed, 85 insertions, 0 deletions
diff --git a/inc/3rdparty/htmlpurifier/HTMLPurifier/DefinitionCache/Decorator/Memory.php b/inc/3rdparty/htmlpurifier/HTMLPurifier/DefinitionCache/Decorator/Memory.php
new file mode 100644
index 00000000..1725d830
--- /dev/null
+++ b/inc/3rdparty/htmlpurifier/HTMLPurifier/DefinitionCache/Decorator/Memory.php
@@ -0,0 +1,85 @@
1<?php
2
3/**
4 * Definition cache decorator class that saves all cache retrievals
5 * to PHP's memory; good for unit tests or circumstances where
6 * there are lots of configuration objects floating around.
7 */
8class HTMLPurifier_DefinitionCache_Decorator_Memory extends HTMLPurifier_DefinitionCache_Decorator
9{
10 /**
11 * @type array
12 */
13 protected $definitions;
14
15 /**
16 * @type string
17 */
18 public $name = 'Memory';
19
20 /**
21 * @return HTMLPurifier_DefinitionCache_Decorator_Memory
22 */
23 public function copy()
24 {
25 return new HTMLPurifier_DefinitionCache_Decorator_Memory();
26 }
27
28 /**
29 * @param HTMLPurifier_Definition $def
30 * @param HTMLPurifier_Config $config
31 * @return mixed
32 */
33 public function add($def, $config)
34 {
35 $status = parent::add($def, $config);
36 if ($status) {
37 $this->definitions[$this->generateKey($config)] = $def;
38 }
39 return $status;
40 }
41
42 /**
43 * @param HTMLPurifier_Definition $def
44 * @param HTMLPurifier_Config $config
45 * @return mixed
46 */
47 public function set($def, $config)
48 {
49 $status = parent::set($def, $config);
50 if ($status) {
51 $this->definitions[$this->generateKey($config)] = $def;
52 }
53 return $status;
54 }
55
56 /**
57 * @param HTMLPurifier_Definition $def
58 * @param HTMLPurifier_Config $config
59 * @return mixed
60 */
61 public function replace($def, $config)
62 {
63 $status = parent::replace($def, $config);
64 if ($status) {
65 $this->definitions[$this->generateKey($config)] = $def;
66 }
67 return $status;
68 }
69
70 /**
71 * @param HTMLPurifier_Config $config
72 * @return mixed
73 */
74 public function get($config)
75 {
76 $key = $this->generateKey($config);
77 if (isset($this->definitions[$key])) {
78 return $this->definitions[$key];
79 }
80 $this->definitions[$key] = parent::get($config);
81 return $this->definitions[$key];
82 }
83}
84
85// vim: et sw=4 sts=4