View source
<?php
function memcache_test_menu() {
$items['memcache-test/lock-acquire'] = array(
'title' => 'Lock acquire',
'page callback' => 'memcache_test_lock_acquire',
'access callback' => TRUE,
'type' => MENU_CALLBACK,
);
$items['memcache-test/lock-exit'] = array(
'title' => 'Lock acquire then exit',
'page callback' => 'memcache_test_lock_exit',
'access callback' => TRUE,
'type' => MENU_CALLBACK,
);
$items['memcache-test/set/%/%'] = array(
'title' => 'Set a value with a key',
'page callback' => 'memcache_test_set',
'page arguments' => array(
2,
3,
),
'access callback' => TRUE,
'type' => MENU_CALLBACK,
);
$items['memcache-test/get/%'] = array(
'title' => 'Get a value from the cache',
'page callback' => 'memcache_test_get',
'page arguments' => array(
2,
),
'access callback' => TRUE,
'type' => MENU_CALLBACK,
);
$items['memcache-test/wildcard-clear/%'] = array(
'title' => 'Clear the cache with a wildcard',
'page callback' => 'memcache_test_wildcard_flush',
'page arguments' => array(
2,
),
'access callback' => TRUE,
'type' => MENU_CALLBACK,
);
$items['memcache-test/clear/%'] = array(
'title' => 'Clear the cache with a wildcard',
'page callback' => 'memcache_test_clear',
'page arguments' => array(
2,
),
'access callback' => TRUE,
'type' => MENU_CALLBACK,
);
$items['memcache-test/clear-cache'] = array(
'title' => 'Clear the cache with a wildcard',
'page callback' => 'memcache_test_clear_cache',
'access callback' => TRUE,
'type' => MENU_CALLBACK,
);
return $items;
}
function memcache_test_lock_acquire() {
if (lock_acquire('memcache_test_lock_acquire')) {
lock_release('memcache_test_lock_acquire');
return 'TRUE: Lock successfully acquired in memcache_test_lock_acquire()';
}
else {
return 'FALSE: Lock not acquired in memcache_test_lock_acquire()';
}
}
function memcache_test_lock_exit() {
if (lock_acquire('memcache_test_lock_exit', 900)) {
echo 'TRUE: Lock successfully acquired in memcache_test_lock_exit()';
exit;
}
else {
return 'FALSE: Lock not acquired in memcache_test_lock_exit()';
}
}
function memcache_test_set($key, $value) {
$cache = cache_set($key, $value, 'memcache');
drupal_json_output(cache_get($key, 'memcache'));
}
function memcache_test_get($key) {
$GLOBALS['in_test'] = TRUE;
drupal_json_output(cache_get($key, 'memcache'));
}
function memcache_test_wildcard_flush($key) {
cache_clear_all($key, 'memcache', TRUE);
drupal_json_output($key);
}
function memcache_test_clear($key) {
cache_clear_all($key, 'memcache');
drupal_json_output($key);
}
function memcache_test_clear_cache() {
cache_clear_all(NULL, 'memcache');
drupal_json_output();
}