summaryrefslogtreecommitdiff
path: root/tests/UnitTests/CacheResourceTests/_shared/cacheresources/cacheresource.pdo_gzip.php
diff options
context:
space:
mode:
Diffstat (limited to 'tests/UnitTests/CacheResourceTests/_shared/cacheresources/cacheresource.pdo_gzip.php')
-rw-r--r--tests/UnitTests/CacheResourceTests/_shared/cacheresources/cacheresource.pdo_gzip.php42
1 files changed, 42 insertions, 0 deletions
diff --git a/tests/UnitTests/CacheResourceTests/_shared/cacheresources/cacheresource.pdo_gzip.php b/tests/UnitTests/CacheResourceTests/_shared/cacheresources/cacheresource.pdo_gzip.php
new file mode 100644
index 00000000..89818abb
--- /dev/null
+++ b/tests/UnitTests/CacheResourceTests/_shared/cacheresources/cacheresource.pdo_gzip.php
@@ -0,0 +1,42 @@
+<?php
+
+require_once __DIR__ . '/cacheresource.pdo.php';
+
+/**
+ * PDO Cache Handler with GZIP support
+ * Example usage :
+ * $cnx = new PDO("mysql:host=localhost;dbname=mydb", "username", "password");
+ * $smarty->setCachingType('pdo_gzip');
+ * $smarty->registerCacheResource('pdo_gzip', new Smarty_CacheResource_Pdo_Gzip($cnx, 'smarty_cache'));
+ *
+ * @require Smarty_CacheResource_Pdo class
+ * @author Beno!t POLASZEK - 2014
+ */
+class Smarty_CacheResource_Pdo_Gzip extends Smarty_CacheResource_Pdo
+{
+ /**
+ * Encodes the content before saving to database
+ *
+ * @param string $content
+ *
+ * @return string $content
+ * @access protected
+ */
+ protected function inputContent($content)
+ {
+ return gzdeflate($content);
+ }
+
+ /**
+ * Decodes the content before saving to database
+ *
+ * @param string $content
+ *
+ * @return string $content
+ * @access protected
+ */
+ protected function outputContent($content)
+ {
+ return gzinflate($content);
+ }
+}