DiskCacheMonitor.h [plain text]
#ifndef DiskCacheMonitor_h
#define DiskCacheMonitor_h
#include "ResourceRequest.h"
#include "SessionID.h"
#include <wtf/PassRefPtr.h>
typedef const struct _CFCachedURLResponse* CFCachedURLResponseRef;
namespace WebCore {
class SharedBuffer;
class DiskCacheMonitor {
public:
static void monitorFileBackingStoreCreation(const ResourceRequest&, SessionID, CFCachedURLResponseRef);
static PassRefPtr<SharedBuffer> tryGetFileBackedSharedBufferFromCFURLCachedResponse(CFCachedURLResponseRef);
virtual ~DiskCacheMonitor() { }
protected:
DiskCacheMonitor(const ResourceRequest&, SessionID, CFCachedURLResponseRef);
virtual void resourceBecameFileBacked(PassRefPtr<SharedBuffer>);
const ResourceRequest& resourceRequest() const { return m_resourceRequest; }
SessionID sessionID() const { return m_sessionID; }
private:
ResourceRequest m_resourceRequest;
SessionID m_sessionID;
};
#if (PLATFORM(IOS) && __IPHONE_OS_VERSION_MIN_REQUIRED < 80000) || (PLATFORM(MAC) && __MAC_OS_X_VERSION_MIN_REQUIRED < 1090)
void DiskCacheMonitor::monitorFileBackingStoreCreation(const ResourceRequest&, SessionID, CFCachedURLResponseRef) { }
PassRefPtr<SharedBuffer> DiskCacheMonitor::tryGetFileBackedSharedBufferFromCFURLCachedResponse(CFCachedURLResponseRef) { return nullptr; }
#endif
}
#endif // DiskCacheMonitor_h