webkit  2cdf99a9e3038c7e01b3c37e8ad903ecbe5eecf1
https://github.com/WebKit/webkit
Classes | Public Types | Public Member Functions | Static Public Member Functions | Friends | List of all members
WebCore::MemoryCache Class Reference

#include <MemoryCache.h>

Classes

struct  Statistics
 
struct  TypeStatistic
 

Public Types

typedef HashSet< RefPtr< SecurityOrigin > > SecurityOriginSet
 
typedef HashSet< RefPtr< SecurityOrigin > > SecurityOriginSet
 

Public Member Functions

WEBCORE_EXPORT CachedResourceresourceForRequest (const ResourceRequest &, SessionID)
 
bool add (CachedResource &)
 
void remove (CachedResource &)
 
void revalidationSucceeded (CachedResource &revalidatingResource, const ResourceResponse &)
 
void revalidationFailed (CachedResource &revalidatingResource)
 
void forEachResource (const std::function< void(CachedResource &)> &)
 
void forEachSessionResource (SessionID, const std::function< void(CachedResource &)> &)
 
void destroyDecodedDataForAllImages ()
 
WEBCORE_EXPORT void setCapacities (unsigned minDeadBytes, unsigned maxDeadBytes, unsigned totalBytes)
 
WEBCORE_EXPORT void setDisabled (bool)
 
bool disabled () const
 
WEBCORE_EXPORT void evictResources ()
 
WEBCORE_EXPORT void evictResources (SessionID)
 
void prune ()
 
void pruneSoon ()
 
unsigned size () const
 
void setDeadDecodedDataDeletionInterval (std::chrono::milliseconds interval)
 
std::chrono::milliseconds deadDecodedDataDeletionInterval () const
 
void insertInLRUList (CachedResource &)
 
void removeFromLRUList (CachedResource &)
 
void adjustSize (bool live, long long delta)
 
void insertInLiveDecodedResourcesList (CachedResource &)
 
void removeFromLiveDecodedResourcesList (CachedResource &)
 
void addToLiveResourcesSize (CachedResource &)
 
void removeFromLiveResourcesSize (CachedResource &)
 
WEBCORE_EXPORT Statistics getStatistics ()
 
void resourceAccessed (CachedResource &)
 
bool inLiveDecodedResourcesList (CachedResource &resource) const
 
WEBCORE_EXPORT void removeResourcesWithOrigin (SecurityOrigin &)
 
WEBCORE_EXPORT void removeResourcesWithOrigins (SessionID, const HashSet< RefPtr< SecurityOrigin >> &)
 
WEBCORE_EXPORT void getOriginsWithCache (SecurityOriginSet &origins)
 
WEBCORE_EXPORT HashSet< RefPtr< SecurityOrigin > > originsWithCache (SessionID) const
 
WEBCORE_EXPORT bool addImageToCache (NativeImagePtr &&, const URL &, const String &domainForCachePartition)
 
WEBCORE_EXPORT void removeImageFromCache (const URL &, const String &domainForCachePartition)
 
WEBCORE_EXPORT void pruneDeadResources ()
 
WEBCORE_EXPORT void pruneLiveResources (bool shouldDestroyDecodedDataForAllLiveResources=false)
 
WEBCORE_EXPORT void pruneDeadResourcesToSize (unsigned targetSize)
 
WEBCORE_EXPORT void pruneLiveResourcesToSize (unsigned targetSize, bool shouldDestroyDecodedDataForAllLiveResources=false)
 
WEBCORE_EXPORT CachedResourceresourceForRequest (const ResourceRequest &, SessionID)
 
bool add (CachedResource &)
 
void remove (CachedResource &)
 
void revalidationSucceeded (CachedResource &revalidatingResource, const ResourceResponse &)
 
void revalidationFailed (CachedResource &revalidatingResource)
 
void forEachResource (const std::function< void(CachedResource &)> &)
 
void forEachSessionResource (SessionID, const std::function< void(CachedResource &)> &)
 
void destroyDecodedDataForAllImages ()
 
WEBCORE_EXPORT void setCapacities (unsigned minDeadBytes, unsigned maxDeadBytes, unsigned totalBytes)
 
WEBCORE_EXPORT void setDisabled (bool)
 
bool disabled () const
 
WEBCORE_EXPORT void evictResources ()
 
WEBCORE_EXPORT void evictResources (SessionID)
 
void prune ()
 
void pruneSoon ()
 
unsigned size () const
 
void setDeadDecodedDataDeletionInterval (std::chrono::milliseconds interval)
 
std::chrono::milliseconds deadDecodedDataDeletionInterval () const
 
void insertInLRUList (CachedResource &)
 
void removeFromLRUList (CachedResource &)
 
void adjustSize (bool live, long long delta)
 
void insertInLiveDecodedResourcesList (CachedResource &)
 
void removeFromLiveDecodedResourcesList (CachedResource &)
 
void addToLiveResourcesSize (CachedResource &)
 
void removeFromLiveResourcesSize (CachedResource &)
 
WEBCORE_EXPORT Statistics getStatistics ()
 
void resourceAccessed (CachedResource &)
 
bool inLiveDecodedResourcesList (CachedResource &resource) const
 
WEBCORE_EXPORT void removeResourcesWithOrigin (SecurityOrigin &)
 
WEBCORE_EXPORT void removeResourcesWithOrigins (SessionID, const HashSet< RefPtr< SecurityOrigin >> &)
 
WEBCORE_EXPORT void getOriginsWithCache (SecurityOriginSet &origins)
 
WEBCORE_EXPORT HashSet< RefPtr< SecurityOrigin > > originsWithCache (SessionID) const
 
WEBCORE_EXPORT bool addImageToCache (NativeImagePtr &&, const URL &, const String &domainForCachePartition)
 
WEBCORE_EXPORT void removeImageFromCache (const URL &, const String &domainForCachePartition)
 
WEBCORE_EXPORT void pruneDeadResources ()
 
WEBCORE_EXPORT void pruneLiveResources (bool shouldDestroyDecodedDataForAllLiveResources=false)
 
WEBCORE_EXPORT void pruneDeadResourcesToSize (unsigned targetSize)
 
WEBCORE_EXPORT void pruneLiveResourcesToSize (unsigned targetSize, bool shouldDestroyDecodedDataForAllLiveResources=false)
 

Static Public Member Functions

static WEBCORE_EXPORT MemoryCachesingleton ()
 
static bool shouldRemoveFragmentIdentifier (const URL &)
 
static URL removeFragmentIdentifierIfNeeded (const URL &)
 
static void removeRequestFromSessionCaches (ScriptExecutionContext &, const ResourceRequest &)
 
static WEBCORE_EXPORT MemoryCachesingleton ()
 
static bool shouldRemoveFragmentIdentifier (const URL &)
 
static URL removeFragmentIdentifierIfNeeded (const URL &)
 
static void removeRequestFromSessionCaches (ScriptExecutionContext &, const ResourceRequest &)
 

Friends

class Internals
 

Member Typedef Documentation

◆ SecurityOriginSet [1/2]

◆ SecurityOriginSet [2/2]

Member Function Documentation

◆ add() [1/2]

bool WebCore::MemoryCache::add ( CachedResource resource)

◆ add() [2/2]

bool WebCore::MemoryCache::add ( CachedResource )

◆ addImageToCache() [1/2]

WEBCORE_EXPORT bool WebCore::MemoryCache::addImageToCache ( NativeImagePtr &&  ,
const URL ,
const String domainForCachePartition 
)

◆ addImageToCache() [2/2]

bool WebCore::MemoryCache::addImageToCache ( NativeImagePtr &&  image,
const URL url,
const String domainForCachePartition 
)

◆ addToLiveResourcesSize() [1/2]

void WebCore::MemoryCache::addToLiveResourcesSize ( CachedResource )

◆ addToLiveResourcesSize() [2/2]

void WebCore::MemoryCache::addToLiveResourcesSize ( CachedResource resource)

◆ adjustSize() [1/2]

void WebCore::MemoryCache::adjustSize ( bool  live,
long long  delta 
)

◆ adjustSize() [2/2]

void WebCore::MemoryCache::adjustSize ( bool  live,
long long  delta 
)

◆ deadDecodedDataDeletionInterval() [1/2]

std::chrono::milliseconds WebCore::MemoryCache::deadDecodedDataDeletionInterval ( ) const
inline

◆ deadDecodedDataDeletionInterval() [2/2]

std::chrono::milliseconds WebCore::MemoryCache::deadDecodedDataDeletionInterval ( ) const
inline

◆ destroyDecodedDataForAllImages() [1/2]

void WebCore::MemoryCache::destroyDecodedDataForAllImages ( )

◆ destroyDecodedDataForAllImages() [2/2]

void WebCore::MemoryCache::destroyDecodedDataForAllImages ( )

◆ disabled() [1/2]

bool WebCore::MemoryCache::disabled ( ) const
inline

◆ disabled() [2/2]

bool WebCore::MemoryCache::disabled ( ) const
inline

◆ evictResources() [1/4]

void WebCore::MemoryCache::evictResources ( )

◆ evictResources() [2/4]

WEBCORE_EXPORT void WebCore::MemoryCache::evictResources ( )

◆ evictResources() [3/4]

void WebCore::MemoryCache::evictResources ( SessionID  sessionID)

◆ evictResources() [4/4]

WEBCORE_EXPORT void WebCore::MemoryCache::evictResources ( SessionID  )

◆ forEachResource() [1/2]

void WebCore::MemoryCache::forEachResource ( const std::function< void(CachedResource &)> &  function)

◆ forEachResource() [2/2]

void WebCore::MemoryCache::forEachResource ( const std::function< void(CachedResource &)> &  )

◆ forEachSessionResource() [1/2]

void WebCore::MemoryCache::forEachSessionResource ( SessionID  sessionID,
const std::function< void(CachedResource &)> &  function 
)

◆ forEachSessionResource() [2/2]

void WebCore::MemoryCache::forEachSessionResource ( SessionID  ,
const std::function< void(CachedResource &)> &   
)

◆ getOriginsWithCache() [1/2]

void WebCore::MemoryCache::getOriginsWithCache ( SecurityOriginSet origins)

◆ getOriginsWithCache() [2/2]

WEBCORE_EXPORT void WebCore::MemoryCache::getOriginsWithCache ( SecurityOriginSet origins)

◆ getStatistics() [1/2]

WEBCORE_EXPORT Statistics WebCore::MemoryCache::getStatistics ( )

◆ getStatistics() [2/2]

MemoryCache::Statistics WebCore::MemoryCache::getStatistics ( )

◆ inLiveDecodedResourcesList() [1/2]

bool WebCore::MemoryCache::inLiveDecodedResourcesList ( CachedResource resource) const
inline

◆ inLiveDecodedResourcesList() [2/2]

bool WebCore::MemoryCache::inLiveDecodedResourcesList ( CachedResource resource) const
inline

◆ insertInLiveDecodedResourcesList() [1/2]

void WebCore::MemoryCache::insertInLiveDecodedResourcesList ( CachedResource )

◆ insertInLiveDecodedResourcesList() [2/2]

void WebCore::MemoryCache::insertInLiveDecodedResourcesList ( CachedResource resource)

◆ insertInLRUList() [1/2]

void WebCore::MemoryCache::insertInLRUList ( CachedResource )

◆ insertInLRUList() [2/2]

void WebCore::MemoryCache::insertInLRUList ( CachedResource resource)

◆ originsWithCache() [1/2]

HashSet< RefPtr< SecurityOrigin > > WebCore::MemoryCache::originsWithCache ( SessionID  sessionID) const

◆ originsWithCache() [2/2]

WEBCORE_EXPORT HashSet<RefPtr<SecurityOrigin> > WebCore::MemoryCache::originsWithCache ( SessionID  ) const

◆ prune() [1/2]

void WebCore::MemoryCache::prune ( )

◆ prune() [2/2]

void WebCore::MemoryCache::prune ( )

◆ pruneDeadResources() [1/2]

void WebCore::MemoryCache::pruneDeadResources ( )

◆ pruneDeadResources() [2/2]

WEBCORE_EXPORT void WebCore::MemoryCache::pruneDeadResources ( )

◆ pruneDeadResourcesToSize() [1/2]

void WebCore::MemoryCache::pruneDeadResourcesToSize ( unsigned  targetSize)

◆ pruneDeadResourcesToSize() [2/2]

WEBCORE_EXPORT void WebCore::MemoryCache::pruneDeadResourcesToSize ( unsigned  targetSize)

◆ pruneLiveResources() [1/2]

WEBCORE_EXPORT void WebCore::MemoryCache::pruneLiveResources ( bool  shouldDestroyDecodedDataForAllLiveResources = false)

◆ pruneLiveResources() [2/2]

void WebCore::MemoryCache::pruneLiveResources ( bool  shouldDestroyDecodedDataForAllLiveResources = false)

◆ pruneLiveResourcesToSize() [1/2]

void WebCore::MemoryCache::pruneLiveResourcesToSize ( unsigned  targetSize,
bool  shouldDestroyDecodedDataForAllLiveResources = false 
)

◆ pruneLiveResourcesToSize() [2/2]

WEBCORE_EXPORT void WebCore::MemoryCache::pruneLiveResourcesToSize ( unsigned  targetSize,
bool  shouldDestroyDecodedDataForAllLiveResources = false 
)

◆ pruneSoon() [1/2]

void WebCore::MemoryCache::pruneSoon ( )

◆ pruneSoon() [2/2]

void WebCore::MemoryCache::pruneSoon ( )

◆ remove() [1/2]

void WebCore::MemoryCache::remove ( CachedResource resource)

◆ remove() [2/2]

void WebCore::MemoryCache::remove ( CachedResource )

◆ removeFragmentIdentifierIfNeeded() [1/2]

static URL WebCore::MemoryCache::removeFragmentIdentifierIfNeeded ( const URL )
static

◆ removeFragmentIdentifierIfNeeded() [2/2]

URL WebCore::MemoryCache::removeFragmentIdentifierIfNeeded ( const URL originalURL)
static

◆ removeFromLiveDecodedResourcesList() [1/2]

void WebCore::MemoryCache::removeFromLiveDecodedResourcesList ( CachedResource )

◆ removeFromLiveDecodedResourcesList() [2/2]

void WebCore::MemoryCache::removeFromLiveDecodedResourcesList ( CachedResource resource)

◆ removeFromLiveResourcesSize() [1/2]

void WebCore::MemoryCache::removeFromLiveResourcesSize ( CachedResource )

◆ removeFromLiveResourcesSize() [2/2]

void WebCore::MemoryCache::removeFromLiveResourcesSize ( CachedResource resource)

◆ removeFromLRUList() [1/2]

void WebCore::MemoryCache::removeFromLRUList ( CachedResource )

◆ removeFromLRUList() [2/2]

void WebCore::MemoryCache::removeFromLRUList ( CachedResource resource)

◆ removeImageFromCache() [1/2]

void WebCore::MemoryCache::removeImageFromCache ( const URL url,
const String domainForCachePartition 
)

◆ removeImageFromCache() [2/2]

WEBCORE_EXPORT void WebCore::MemoryCache::removeImageFromCache ( const URL ,
const String domainForCachePartition 
)

◆ removeRequestFromSessionCaches() [1/2]

void WebCore::MemoryCache::removeRequestFromSessionCaches ( ScriptExecutionContext context,
const ResourceRequest request 
)
static

◆ removeRequestFromSessionCaches() [2/2]

static void WebCore::MemoryCache::removeRequestFromSessionCaches ( ScriptExecutionContext ,
const ResourceRequest  
)
static

◆ removeResourcesWithOrigin() [1/2]

WEBCORE_EXPORT void WebCore::MemoryCache::removeResourcesWithOrigin ( SecurityOrigin )

◆ removeResourcesWithOrigin() [2/2]

void WebCore::MemoryCache::removeResourcesWithOrigin ( SecurityOrigin origin)

◆ removeResourcesWithOrigins() [1/2]

WEBCORE_EXPORT void WebCore::MemoryCache::removeResourcesWithOrigins ( SessionID  ,
const HashSet< RefPtr< SecurityOrigin >> &   
)

◆ removeResourcesWithOrigins() [2/2]

void WebCore::MemoryCache::removeResourcesWithOrigins ( SessionID  sessionID,
const HashSet< RefPtr< SecurityOrigin >> &  origins 
)

◆ resourceAccessed() [1/2]

void WebCore::MemoryCache::resourceAccessed ( CachedResource )

◆ resourceAccessed() [2/2]

void WebCore::MemoryCache::resourceAccessed ( CachedResource resource)

◆ resourceForRequest() [1/2]

CachedResource * WebCore::MemoryCache::resourceForRequest ( const ResourceRequest request,
SessionID  sessionID 
)

◆ resourceForRequest() [2/2]

WEBCORE_EXPORT CachedResource* WebCore::MemoryCache::resourceForRequest ( const ResourceRequest ,
SessionID   
)

◆ revalidationFailed() [1/2]

void WebCore::MemoryCache::revalidationFailed ( CachedResource revalidatingResource)

◆ revalidationFailed() [2/2]

void WebCore::MemoryCache::revalidationFailed ( CachedResource revalidatingResource)

◆ revalidationSucceeded() [1/2]

void WebCore::MemoryCache::revalidationSucceeded ( CachedResource revalidatingResource,
const ResourceResponse response 
)

◆ revalidationSucceeded() [2/2]

void WebCore::MemoryCache::revalidationSucceeded ( CachedResource revalidatingResource,
const ResourceResponse  
)

◆ setCapacities() [1/2]

WEBCORE_EXPORT void WebCore::MemoryCache::setCapacities ( unsigned  minDeadBytes,
unsigned  maxDeadBytes,
unsigned  totalBytes 
)

◆ setCapacities() [2/2]

void WebCore::MemoryCache::setCapacities ( unsigned  minDeadBytes,
unsigned  maxDeadBytes,
unsigned  totalBytes 
)

◆ setDeadDecodedDataDeletionInterval() [1/2]

void WebCore::MemoryCache::setDeadDecodedDataDeletionInterval ( std::chrono::milliseconds  interval)
inline

◆ setDeadDecodedDataDeletionInterval() [2/2]

void WebCore::MemoryCache::setDeadDecodedDataDeletionInterval ( std::chrono::milliseconds  interval)
inline

◆ setDisabled() [1/2]

void WebCore::MemoryCache::setDisabled ( bool  disabled)

◆ setDisabled() [2/2]

WEBCORE_EXPORT void WebCore::MemoryCache::setDisabled ( bool  )

◆ shouldRemoveFragmentIdentifier() [1/2]

bool WebCore::MemoryCache::shouldRemoveFragmentIdentifier ( const URL originalURL)
static

◆ shouldRemoveFragmentIdentifier() [2/2]

static bool WebCore::MemoryCache::shouldRemoveFragmentIdentifier ( const URL )
static

◆ singleton() [1/2]

MemoryCache & WebCore::MemoryCache::singleton ( )
static

◆ singleton() [2/2]

static WEBCORE_EXPORT MemoryCache& WebCore::MemoryCache::singleton ( )
static

◆ size() [1/2]

unsigned WebCore::MemoryCache::size ( ) const
inline

◆ size() [2/2]

unsigned WebCore::MemoryCache::size ( ) const
inline

Friends And Related Function Documentation

◆ Internals

Internals
friend

The documentation for this class was generated from the following files: