4 * StatusNet - the distributed open-source microblogging tool
5 * Copyright (C) 2009, StatusNet, Inc.
7 * This program is free software: you can redistribute it and/or modify
8 * it under the terms of the GNU Affero General Public License as published by
9 * the Free Software Foundation, either version 3 of the License, or
10 * (at your option) any later version.
12 * This program is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 * GNU Affero General Public License for more details.
17 * You should have received a copy of the GNU Affero General Public License
18 * along with this program. If not, see <http://www.gnu.org/licenses/>.
21 define('INSTALLDIR', realpath(dirname(__FILE__) . '/..'));
23 $shortoptions = "t:l:v:k:";
25 $helptext = <<<END_OF_CLEARCACHE_HELP
26 USAGE: clearcache.php <args>
27 clears the cached object based on the args
29 -t table Table to look up
30 -l column Column to look up, default "id"
31 -v value Value to look up
32 -k key Key to look up; other args are ignored
34 END_OF_CLEARCACHE_HELP;
36 require_once INSTALLDIR.'/scripts/commandline.inc.php';
38 $karg = get_option_value('k', 'key');
41 $k = Cache::key($karg);
43 $table = get_option_value('t', 'table');
45 die("No table or key specified\n");
47 $column = get_option_value('l', 'column');
51 $value = get_option_value('v', 'value');
53 $k = Memcached_DataObject::cacheKey($table, $column, $value);
56 print "Clearing key '$k'...";
58 $c = Cache::instance();
61 die("Can't initialize cache object!\n");
64 $result = $c->delete($k);