WebStorageQuotaCallbacksImpl.cpp [plain text]
#include "config.h"
#include "WebStorageQuotaCallbacksImpl.h"
#if ENABLE(QUOTA)
#include "DOMCoreException.h"
#include "ExceptionCode.h"
#include "StorageInfoErrorCallback.h"
#include "StorageInfoQuotaCallback.h"
#include "StorageInfoUsageCallback.h"
using namespace WebCore;
namespace WebKit {
WebStorageQuotaCallbacksImpl::WebStorageQuotaCallbacksImpl(PassRefPtr<WebCore::StorageInfoUsageCallback> usageCallback, PassRefPtr<WebCore::StorageInfoErrorCallback> errorCallback)
: m_usageCallback(usageCallback)
, m_errorCallback(errorCallback)
{
}
WebStorageQuotaCallbacksImpl::WebStorageQuotaCallbacksImpl(PassRefPtr<WebCore::StorageInfoQuotaCallback> quotaCallback, PassRefPtr<WebCore::StorageInfoErrorCallback> errorCallback)
: m_quotaCallback(quotaCallback)
, m_errorCallback(errorCallback)
{
}
WebStorageQuotaCallbacksImpl::~WebStorageQuotaCallbacksImpl()
{
}
void WebStorageQuotaCallbacksImpl::didQueryStorageUsageAndQuota(unsigned long long usageInBytes, unsigned long long quotaInBytes)
{
if (m_usageCallback)
m_usageCallback->handleEvent(usageInBytes, quotaInBytes);
delete this;
}
void WebStorageQuotaCallbacksImpl::didGrantStorageQuota(unsigned long long grantedQuotaInBytes)
{
if (m_quotaCallback)
m_quotaCallback->handleEvent(grantedQuotaInBytes);
delete this;
}
void WebStorageQuotaCallbacksImpl::didFail(WebStorageQuotaError error)
{
if (m_errorCallback) {
ExceptionCodeDescription description;
getExceptionCodeDescription(static_cast<ExceptionCode>(error), description);
m_errorCallback->handleEvent(DOMCoreException::create(description).get());
}
delete this;
}
}
#endif // ENABLE(QUOTA)