2
* Copyright (C) 2010, 2011 Research In Motion Limited. All rights reserved.
4
* This library is free software; you can redistribute it and/or
5
* modify it under the terms of the GNU Lesser General Public
6
* License as published by the Free Software Foundation; either
7
* version 2 of the License, or (at your option) any later version.
9
* This library is distributed in the hope that it will be useful,
10
* but WITHOUT ANY WARRANTY; without even the implied warranty of
11
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12
* Lesser General Public License for more details.
14
* You should have received a copy of the GNU Lesser General Public
15
* License along with this library; if not, write to the Free Software
16
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
20
#include "CacheClientBlackBerry.h"
22
#include "MemoryCache.h"
23
#include <BlackBerryPlatformMisc.h>
24
#include <BlackBerryPlatformSettings.h>
28
CacheClientBlackBerry* CacheClientBlackBerry::get()
30
static CacheClientBlackBerry s_cacheClient;
31
return &s_cacheClient;
34
CacheClientBlackBerry::CacheClientBlackBerry()
38
void CacheClientBlackBerry::initialize()
40
#if ENABLE(BLACKBERRY_DEBUG_MEMORY)
41
bool isDisabled = true;
43
bool isDisabled = false;
45
memoryCache()->setDisabled(isDisabled);
47
// We have to set a non-zero interval to schedule cache pruning after a CachedImage becoming dead.
48
memoryCache()->setDeadDecodedDataDeletionInterval(0.01);
49
updateCacheCapacity();
53
void CacheClientBlackBerry::updateCacheCapacity()
55
#if ENABLE(BLACKBERRY_DEBUG_MEMORY)
56
// We're debugging memory usage. So keep it disabled.
58
unsigned cacheTotalCapacity = 64 * 1024 * 1024;
59
unsigned cacheMinDeadCapacity = cacheTotalCapacity / 4;
60
unsigned cacheMaxDeadCapacity = cacheTotalCapacity / 2;
62
memoryCache()->setCapacities(cacheMinDeadCapacity, cacheMaxDeadCapacity, cacheTotalCapacity);