void DatabaseProcess::deleteIndexedDatabaseEntriesForOrigin(const SecurityOriginData& originData) { if (m_indexedDatabaseDirectory.isEmpty()) return; RefPtr<SecurityOrigin> origin = originData.securityOrigin(); String databaseIdentifier = origin->databaseIdentifier(); String originPath = pathByAppendingComponent(m_indexedDatabaseDirectory, databaseIdentifier); removeAllDatabasesForOriginPath(originPath, std::numeric_limits<double>::lowest(), std::numeric_limits<double>::max()); }
bool WebsiteData::Entry::decode(IPC::ArgumentDecoder& decoder, WebsiteData::Entry& result) { SecurityOriginData securityOriginData; if (!decoder.decode(securityOriginData)) return false; if (!decoder.decodeEnum(result.type)) return false; result.origin = securityOriginData.securityOrigin(); return true; }
void WebDatabaseManager::dispatchDidModifyDatabase(const SecurityOriginData& origin, const String& databaseName) { if (!isMainThread()) { DidModifyOriginData::dispatchToMainThread(this, origin); return; } static BSTR databaseDidModifyOriginName = SysAllocString(WebDatabaseDidModifyDatabaseNotification); IWebNotificationCenter* notifyCenter = WebNotificationCenter::defaultCenterInternal(); COMPtr<WebSecurityOrigin> securityOrigin(AdoptCOM, WebSecurityOrigin::createInstance(origin.securityOrigin().ptr())); HashMap<String, String> userInfo; userInfo.set(WebDatabaseNameKey, databaseName); COMPtr<IPropertyBag> userInfoBag(AdoptCOM, COMPropertyBag<String>::adopt(userInfo)); notifyCenter->postNotificationName(databaseDidModifyOriginName, securityOrigin.get(), userInfoBag.get()); }
void WebDatabaseManager::dispatchDidModifyOrigin(const SecurityOriginData& origin) { if (!isMainThread()) { DidModifyOriginData::dispatchToMainThread(this, origin); return; } static BSTR databaseDidModifyOriginName = SysAllocString(WebDatabaseDidModifyOriginNotification); IWebNotificationCenter* notifyCenter = WebNotificationCenter::defaultCenterInternal(); COMPtr<WebSecurityOrigin> securityOrigin(AdoptCOM, WebSecurityOrigin::createInstance(origin.securityOrigin().ptr())); notifyCenter->postNotificationName(databaseDidModifyOriginName, securityOrigin.get(), 0); }