Changeset 249614 in webkit


Ignore:
Timestamp:
Sep 7, 2019 9:04:00 AM (5 years ago)
Author:
achristensen@apple.com
Message:

Deprecate WKContextGetWebsiteDataStore
https://bugs.webkit.org/show_bug.cgi?id=200050

Reviewed by Geoff Garen.

Source/WebCore:

  • platform/network/CacheValidation.cpp:

(WebCore::collectVaryingRequestHeaders):
(WebCore::verifyVaryingRequestHeaders):

  • platform/network/CacheValidation.h:

Replace a few NetworkStorageSession& with NetworkStorageSession*
so I can replace defaultStorageSession with the correct NetworkStorageSession in NetworkCache.cpp.

Source/WebKit:

The last use of it was removed in rdar://problem/47030981
In order to remove its use in WebKitTestRunner, I needed to make WKWebsiteDataStoreConfigurationRef
to replace the WKContextConfigurationRef members that should've been associated with the WebsiteDataStore the whole time.
There is one use of WKContextGetWebsiteDataStore in TestWebKitAPI still I'll investigate later.

  • Shared/API/c/WKBase.h:
  • Sources.txt:
  • UIProcess/API/APIWebsiteDataStore.cpp:

(API::WebsiteDataStore::create):

  • UIProcess/API/APIWebsiteDataStore.h:
  • UIProcess/API/C/WKAPICast.h:
  • UIProcess/API/C/WKContext.cpp:

(WKContextGetApplicationCacheManager):
(WKContextGetKeyValueStorageManager):
(WKContextGetResourceCacheManager):

  • UIProcess/API/C/WKContext.h:
  • UIProcess/API/C/WKContextConfigurationRef.cpp:

(WKContextConfigurationCopyDiskCacheDirectory):
(WKContextConfigurationSetDiskCacheDirectory):
(WKContextConfigurationCopyApplicationCacheDirectory):
(WKContextConfigurationSetApplicationCacheDirectory):
(WKContextConfigurationCopyIndexedDBDatabaseDirectory):
(WKContextConfigurationSetIndexedDBDatabaseDirectory):
(WKContextConfigurationCopyLocalStorageDirectory):
(WKContextConfigurationSetLocalStorageDirectory):
(WKContextConfigurationCopyWebSQLDatabaseDirectory):
(WKContextConfigurationSetWebSQLDatabaseDirectory):
(WKContextConfigurationCopyMediaKeysStorageDirectory):
(WKContextConfigurationSetMediaKeysStorageDirectory):
(WKContextConfigurationCopyResourceLoadStatisticsDirectory):
(WKContextConfigurationSetResourceLoadStatisticsDirectory):

  • UIProcess/API/C/WKContextConfigurationRef.h:
  • UIProcess/API/C/WKWebsiteDataStoreConfigurationRef.cpp: Added.

(WKWebsiteDataStoreConfigurationGetTypeID):
(WKWebsiteDataStoreConfigurationCreate):
(WKWebsiteDataStoreConfigurationCopyApplicationCacheDirectory):
(WKWebsiteDataStoreConfigurationSetApplicationCacheDirectory):
(WKWebsiteDataStoreConfigurationCopyNetworkCacheDirectory):
(WKWebsiteDataStoreConfigurationSetNetworkCacheDirectory):
(WKWebsiteDataStoreConfigurationCopyIndexedDBDatabaseDirectory):
(WKWebsiteDataStoreConfigurationSetIndexedDBDatabaseDirectory):
(WKWebsiteDataStoreConfigurationCopyLocalStorageDirectory):
(WKWebsiteDataStoreConfigurationSetLocalStorageDirectory):
(WKWebsiteDataStoreConfigurationCopyWebSQLDatabaseDirectory):
(WKWebsiteDataStoreConfigurationSetWebSQLDatabaseDirectory):
(WKWebsiteDataStoreConfigurationCopyMediaKeysStorageDirectory):
(WKWebsiteDataStoreConfigurationSetMediaKeysStorageDirectory):
(WKWebsiteDataStoreConfigurationCopyResourceLoadStatisticsDirectory):
(WKWebsiteDataStoreConfigurationSetResourceLoadStatisticsDirectory):

  • UIProcess/API/C/WKWebsiteDataStoreConfigurationRef.h: Added.
  • UIProcess/API/C/WKWebsiteDataStoreRef.cpp:

(WKWebsiteDataStoreCreateWithConfiguration):

  • UIProcess/API/C/WKWebsiteDataStoreRef.h:
  • WebKit.xcodeproj/project.pbxproj:

Tools:

  • MiniBrowser/win/WebKitBrowserWindow.cpp:

(WebKitBrowserWindow::updateProxySettings):

  • TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
  • WebKitTestRunner/TestController.cpp:

(WTR::TestController::generateContextConfiguration const):
(WTR::TestController::websiteDataStore):
(WTR::TestController::generatePageConfiguration):
(WTR::TestController::resetStateToConsistentValues):
(WTR::TestController::platformAdjustContext):
(WTR::TestController::clearServiceWorkerRegistrations):
(WTR::TestController::clearDOMCache):
(WTR::TestController::clearDOMCaches):
(WTR::TestController::ClearIndexedDatabases):
(WTR::TestController::hasDOMCache):
(WTR::TestController::domCacheSize):
(WTR::TestController::setStatisticsDebugMode):
(WTR::TestController::setStatisticsPrevalentResourceForDebugMode):
(WTR::TestController::setStatisticsLastSeen):
(WTR::TestController::setStatisticsPrevalentResource):
(WTR::TestController::setStatisticsVeryPrevalentResource):
(WTR::TestController::dumpResourceLoadStatistics):
(WTR::TestController::isStatisticsPrevalentResource):
(WTR::TestController::isStatisticsVeryPrevalentResource):
(WTR::TestController::isStatisticsRegisteredAsSubresourceUnder):
(WTR::TestController::isStatisticsRegisteredAsSubFrameUnder):
(WTR::TestController::isStatisticsRegisteredAsRedirectingTo):
(WTR::TestController::setStatisticsHasHadUserInteraction):
(WTR::TestController::isStatisticsHasHadUserInteraction):
(WTR::TestController::setStatisticsGrandfathered):
(WTR::TestController::isStatisticsGrandfathered):
(WTR::TestController::setStatisticsSubframeUnderTopFrameOrigin):
(WTR::TestController::setStatisticsSubresourceUnderTopFrameOrigin):
(WTR::TestController::setStatisticsSubresourceUniqueRedirectTo):
(WTR::TestController::setStatisticsSubresourceUniqueRedirectFrom):
(WTR::TestController::setStatisticsTopFrameUniqueRedirectTo):
(WTR::TestController::setStatisticsTopFrameUniqueRedirectFrom):
(WTR::TestController::setStatisticsCrossSiteLoadWithLinkDecoration):
(WTR::TestController::setStatisticsTimeToLiveUserInteraction):
(WTR::TestController::statisticsProcessStatisticsAndDataRecords):
(WTR::TestController::statisticsUpdateCookieBlocking):
(WTR::TestController::statisticsSubmitTelemetry):
(WTR::TestController::setStatisticsNotifyPagesWhenDataRecordsWereScanned):
(WTR::TestController::setStatisticsIsRunningTest):
(WTR::TestController::setStatisticsShouldClassifyResourcesBeforeDataRecordsRemoval):
(WTR::TestController::setStatisticsNotifyPagesWhenTelemetryWasCaptured):
(WTR::TestController::setStatisticsMinimumTimeBetweenDataRecordsRemoval):
(WTR::TestController::setStatisticsGrandfatheringTime):
(WTR::TestController::setStatisticsMaxStatisticsEntries):
(WTR::TestController::setStatisticsPruneEntriesDownTo):
(WTR::TestController::statisticsClearInMemoryAndPersistentStore):
(WTR::TestController::statisticsClearInMemoryAndPersistentStoreModifiedSinceHours):
(WTR::TestController::statisticsClearThroughWebsiteDataRemoval):
(WTR::TestController::statisticsDeleteCookiesForHost):
(WTR::TestController::isStatisticsHasLocalStorage):
(WTR::TestController::setStatisticsCacheMaxAgeCap):
(WTR::TestController::statisticsResetToConsistentState):
(WTR::TestController::setWebAuthenticationMockConfiguration):
(WTR::TestController::clearAdClickAttributionsThroughWebsiteDataRemoval):

  • WebKitTestRunner/TestController.h:
  • WebKitTestRunner/TestInvocation.cpp:

(WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):

  • WebKitTestRunner/cocoa/TestControllerCocoa.mm:

(WTR::initializeWebViewConfiguration):

LayoutTests:

Rebase some accessibility tests that were printing the SessionID since we're using SessionID 2 for testing now.

  • accessibility/mac/document-attributes-expected.txt:
  • platform/mac/accessibility/parent-delete-expected.txt:
Location:
trunk
Files:
2 added
33 edited

Legend:

Unmodified
Added
Removed
  • trunk/LayoutTests/ChangeLog

    r249607 r249614  
     12019-09-07  Alex Christensen  <achristensen@webkit.org>
     2
     3        Deprecate WKContextGetWebsiteDataStore
     4        https://bugs.webkit.org/show_bug.cgi?id=200050
     5
     6        Reviewed by Geoff Garen.
     7
     8        Rebase some accessibility tests that were printing the SessionID since we're using SessionID 2 for testing now.
     9
     10        * accessibility/mac/document-attributes-expected.txt:
     11        * platform/mac/accessibility/parent-delete-expected.txt:
     12
    1132019-09-06  Devin Rousso  <drousso@apple.com>
    214
  • trunk/LayoutTests/accessibility/mac/document-attributes-expected.txt

    r227526 r249614  
    2929AXCaretBrowsingEnabled: 0
    3030AXPreventKeyboardDOMEventDispatch: 0
    31 AXWebSessionID: 1
     31AXWebSessionID: 2
    3232AXElementBusy: 0
    3333
  • trunk/LayoutTests/platform/mac/accessibility/parent-delete-expected.txt

    r227526 r249614  
    3030AXCaretBrowsingEnabled: 0
    3131AXPreventKeyboardDOMEventDispatch: 0
    32 AXWebSessionID: 1
     32AXWebSessionID: 2
    3333AXElementBusy: 0
    3434
  • trunk/Source/WebCore/ChangeLog

    r249609 r249614  
     12019-09-07  Alex Christensen  <achristensen@webkit.org>
     2
     3        Deprecate WKContextGetWebsiteDataStore
     4        https://bugs.webkit.org/show_bug.cgi?id=200050
     5
     6        Reviewed by Geoff Garen.
     7
     8        * platform/network/CacheValidation.cpp:
     9        (WebCore::collectVaryingRequestHeaders):
     10        (WebCore::verifyVaryingRequestHeaders):
     11        * platform/network/CacheValidation.h:
     12        Replace a few NetworkStorageSession& with NetworkStorageSession*
     13        so I can replace defaultStorageSession with the correct NetworkStorageSession in NetworkCache.cpp.
     14
    1152019-09-06  Brent Fulgham  <bfulgham@apple.com>
    216
  • trunk/Source/WebCore/platform/network/CacheValidation.cpp

    r242776 r249614  
    369369}
    370370
    371 Vector<std::pair<String, String>> collectVaryingRequestHeaders(NetworkStorageSession& storageSession, const ResourceRequest& request, const ResourceResponse& response)
    372 {
     371Vector<std::pair<String, String>> collectVaryingRequestHeaders(NetworkStorageSession* storageSession, const ResourceRequest& request, const ResourceResponse& response)
     372{
     373    if (!storageSession)
     374        return { };
    373375    return collectVaryingRequestHeadersInternal(response, [&] (const String& headerName) {
    374376        return headerValueForVary(request, headerName, [&] {
    375             return cookieRequestHeaderFieldValue(storageSession, request);
     377            return cookieRequestHeaderFieldValue(*storageSession, request);
    376378        });
    377379    });
     
    399401}
    400402
    401 bool verifyVaryingRequestHeaders(NetworkStorageSession& storageSession, const Vector<std::pair<String, String>>& varyingRequestHeaders, const ResourceRequest& request)
    402 {
     403bool verifyVaryingRequestHeaders(NetworkStorageSession* storageSession, const Vector<std::pair<String, String>>& varyingRequestHeaders, const ResourceRequest& request)
     404{
     405    if (!storageSession)
     406        return false;
    403407    return verifyVaryingRequestHeadersInternal(varyingRequestHeaders, [&] (const String& headerName) {
    404408        return headerValueForVary(request, headerName, [&] {
    405             return cookieRequestHeaderFieldValue(storageSession, request);
     409            return cookieRequestHeaderFieldValue(*storageSession, request);
    406410        });
    407411    });
  • trunk/Source/WebCore/platform/network/CacheValidation.h

    r242776 r249614  
    7777WEBCORE_EXPORT CacheControlDirectives parseCacheControlDirectives(const HTTPHeaderMap&);
    7878
    79 WEBCORE_EXPORT Vector<std::pair<String, String>> collectVaryingRequestHeaders(NetworkStorageSession&, const ResourceRequest&, const ResourceResponse&);
     79WEBCORE_EXPORT Vector<std::pair<String, String>> collectVaryingRequestHeaders(NetworkStorageSession*, const ResourceRequest&, const ResourceResponse&);
    8080WEBCORE_EXPORT Vector<std::pair<String, String>> collectVaryingRequestHeaders(const CookieJar*, const ResourceRequest&, const ResourceResponse&, const PAL::SessionID&);
    81 WEBCORE_EXPORT bool verifyVaryingRequestHeaders(NetworkStorageSession&, const Vector<std::pair<String, String>>& varyingRequestHeaders, const ResourceRequest&);
     81WEBCORE_EXPORT bool verifyVaryingRequestHeaders(NetworkStorageSession*, const Vector<std::pair<String, String>>& varyingRequestHeaders, const ResourceRequest&);
    8282WEBCORE_EXPORT bool verifyVaryingRequestHeaders(const CookieJar*, const Vector<std::pair<String, String>>& varyingRequestHeaders, const ResourceRequest&, const PAL::SessionID&);
    8383
  • trunk/Source/WebKit/ChangeLog

    r249608 r249614  
     12019-09-07  Alex Christensen  <achristensen@webkit.org>
     2
     3        Deprecate WKContextGetWebsiteDataStore
     4        https://bugs.webkit.org/show_bug.cgi?id=200050
     5
     6        Reviewed by Geoff Garen.
     7
     8        The last use of it was removed in rdar://problem/47030981
     9        In order to remove its use in WebKitTestRunner, I needed to make WKWebsiteDataStoreConfigurationRef
     10        to replace the WKContextConfigurationRef members that should've been associated with the WebsiteDataStore the whole time.
     11        There is one use of WKContextGetWebsiteDataStore in TestWebKitAPI still I'll investigate later.
     12
     13        * Shared/API/c/WKBase.h:
     14        * Sources.txt:
     15        * UIProcess/API/APIWebsiteDataStore.cpp:
     16        (API::WebsiteDataStore::create):
     17        * UIProcess/API/APIWebsiteDataStore.h:
     18        * UIProcess/API/C/WKAPICast.h:
     19        * UIProcess/API/C/WKContext.cpp:
     20        (WKContextGetApplicationCacheManager):
     21        (WKContextGetKeyValueStorageManager):
     22        (WKContextGetResourceCacheManager):
     23        * UIProcess/API/C/WKContext.h:
     24        * UIProcess/API/C/WKContextConfigurationRef.cpp:
     25        (WKContextConfigurationCopyDiskCacheDirectory):
     26        (WKContextConfigurationSetDiskCacheDirectory):
     27        (WKContextConfigurationCopyApplicationCacheDirectory):
     28        (WKContextConfigurationSetApplicationCacheDirectory):
     29        (WKContextConfigurationCopyIndexedDBDatabaseDirectory):
     30        (WKContextConfigurationSetIndexedDBDatabaseDirectory):
     31        (WKContextConfigurationCopyLocalStorageDirectory):
     32        (WKContextConfigurationSetLocalStorageDirectory):
     33        (WKContextConfigurationCopyWebSQLDatabaseDirectory):
     34        (WKContextConfigurationSetWebSQLDatabaseDirectory):
     35        (WKContextConfigurationCopyMediaKeysStorageDirectory):
     36        (WKContextConfigurationSetMediaKeysStorageDirectory):
     37        (WKContextConfigurationCopyResourceLoadStatisticsDirectory):
     38        (WKContextConfigurationSetResourceLoadStatisticsDirectory):
     39        * UIProcess/API/C/WKContextConfigurationRef.h:
     40        * UIProcess/API/C/WKWebsiteDataStoreConfigurationRef.cpp: Added.
     41        (WKWebsiteDataStoreConfigurationGetTypeID):
     42        (WKWebsiteDataStoreConfigurationCreate):
     43        (WKWebsiteDataStoreConfigurationCopyApplicationCacheDirectory):
     44        (WKWebsiteDataStoreConfigurationSetApplicationCacheDirectory):
     45        (WKWebsiteDataStoreConfigurationCopyNetworkCacheDirectory):
     46        (WKWebsiteDataStoreConfigurationSetNetworkCacheDirectory):
     47        (WKWebsiteDataStoreConfigurationCopyIndexedDBDatabaseDirectory):
     48        (WKWebsiteDataStoreConfigurationSetIndexedDBDatabaseDirectory):
     49        (WKWebsiteDataStoreConfigurationCopyLocalStorageDirectory):
     50        (WKWebsiteDataStoreConfigurationSetLocalStorageDirectory):
     51        (WKWebsiteDataStoreConfigurationCopyWebSQLDatabaseDirectory):
     52        (WKWebsiteDataStoreConfigurationSetWebSQLDatabaseDirectory):
     53        (WKWebsiteDataStoreConfigurationCopyMediaKeysStorageDirectory):
     54        (WKWebsiteDataStoreConfigurationSetMediaKeysStorageDirectory):
     55        (WKWebsiteDataStoreConfigurationCopyResourceLoadStatisticsDirectory):
     56        (WKWebsiteDataStoreConfigurationSetResourceLoadStatisticsDirectory):
     57        * UIProcess/API/C/WKWebsiteDataStoreConfigurationRef.h: Added.
     58        * UIProcess/API/C/WKWebsiteDataStoreRef.cpp:
     59        (WKWebsiteDataStoreCreateWithConfiguration):
     60        * UIProcess/API/C/WKWebsiteDataStoreRef.h:
     61        * WebKit.xcodeproj/project.pbxproj:
     62
    1632019-09-06  Mark Lam  <mark.lam@apple.com>
    264
  • trunk/Source/WebKit/NetworkProcess/NetworkProcess.cpp

    r249501 r249614  
    308308    setCanHandleHTTPSServerTrustEvaluation(parameters.canHandleHTTPSServerTrustEvaluation);
    309309
    310     if (parameters.shouldUseTestingNetworkSession)
    311         switchToNewTestingSession();
     310    if (parameters.shouldUseTestingNetworkSession) {
     311        m_shouldUseTestingNetworkStorageSession = true;
     312        m_defaultNetworkStorageSession = newTestingSession(PAL::SessionID::defaultSessionID());
     313    }
    312314
    313315    WebCore::RuntimeEnabledFeatures::sharedFeatures().setIsITPDatabaseEnabled(parameters.shouldEnableITPDatabase);
     
    461463    else
    462464        ASSERT_NOT_REACHED();
     465
     466    forEachNetworkSession([] (auto& networkSession) {
     467        if (auto storageSession = networkSession.networkStorageSession())
     468            storageSession->credentialStorage().clearCredentials();
     469        networkSession.clearCredentials();
     470        networkSession.clearCookies();
     471    });
    463472}
    464473
     
    495504}
    496505
    497 void NetworkProcess::switchToNewTestingSession()
     506std::unique_ptr<WebCore::NetworkStorageSession> NetworkProcess::newTestingSession(const PAL::SessionID& sessionID)
    498507{
    499508#if PLATFORM(COCOA)
     
    510519    }
    511520
    512     m_defaultNetworkStorageSession = makeUnique<WebCore::NetworkStorageSession>(PAL::SessionID::defaultSessionID(), WTFMove(session), WTFMove(cookieStorage));
     521    return makeUnique<WebCore::NetworkStorageSession>(sessionID, WTFMove(session), WTFMove(cookieStorage));
    513522#elif USE(CURL) || USE(SOUP)
    514     m_defaultNetworkStorageSession = makeUnique<WebCore::NetworkStorageSession>(PAL::SessionID::defaultSessionID());
     523    return makeUnique<WebCore::NetworkStorageSession>(sessionID);
    515524#endif
    516525}
     
    528537        return;
    529538
     539    if (m_shouldUseTestingNetworkStorageSession) {
     540        addResult.iterator->value = newTestingSession(sessionID);
     541        return;
     542    }
     543   
    530544#if PLATFORM(COCOA)
    531545    RetainPtr<CFURLStorageSessionRef> storageSession;
  • trunk/Source/WebKit/NetworkProcess/NetworkProcess.h

    r249501 r249614  
    173173    WebCore::NetworkStorageSession* storageSession(const PAL::SessionID&) const;
    174174    WebCore::NetworkStorageSession& defaultStorageSession() const;
    175     void switchToNewTestingSession();
     175    std::unique_ptr<WebCore::NetworkStorageSession> newTestingSession(const PAL::SessionID&);
    176176#if PLATFORM(COCOA)
    177177    void ensureSession(const PAL::SessionID&, const String& identifier, RetainPtr<CFHTTPCookieStorageRef>&&);
     
    507507    HashMap<PAL::SessionID, std::unique_ptr<WebCore::NetworkStorageSession>> m_networkStorageSessions;
    508508    mutable std::unique_ptr<WebCore::NetworkStorageSession> m_defaultNetworkStorageSession;
     509    bool m_shouldUseTestingNetworkStorageSession { false };
    509510
    510511    RefPtr<StorageManagerSet> m_storageManagerSet;
  • trunk/Source/WebKit/NetworkProcess/NetworkSession.h

    r248956 r249614  
    7272    virtual void invalidateAndCancel();
    7373    virtual void clearCredentials() { };
     74    virtual void clearCookies() { };
    7475    virtual bool shouldLogCookieInformation() const { return false; }
    7576    virtual Seconds loadThrottleLatency() const { return { }; }
  • trunk/Source/WebKit/NetworkProcess/cache/NetworkCache.cpp

    r249313 r249614  
    183183}
    184184
    185 static UseDecision makeUseDecision(NetworkProcess& networkProcess, const Entry& entry, const WebCore::ResourceRequest& request)
     185static UseDecision makeUseDecision(NetworkProcess& networkProcess, const PAL::SessionID& sessionID, const Entry& entry, const WebCore::ResourceRequest& request)
    186186{
    187187    // The request is conditional so we force revalidation from the network. We merely check the disk cache
     
    190190        return UseDecision::Validate;
    191191
    192     if (!WebCore::verifyVaryingRequestHeaders(networkProcess.defaultStorageSession(), entry.varyingRequestHeaders(), request))
     192    if (!WebCore::verifyVaryingRequestHeaders(networkProcess.storageSession(sessionID), entry.varyingRequestHeaders(), request))
    193193        return UseDecision::NoDueToVaryingHeaderMismatch;
    194194
     
    323323#if ENABLE(NETWORK_CACHE_SPECULATIVE_REVALIDATION)
    324324    if (canUseSpeculativeRevalidation && m_speculativeLoadManager->canRetrieve(storageKey, request, frameID)) {
    325         m_speculativeLoadManager->retrieve(storageKey, [networkProcess = makeRef(networkProcess()), request, completionHandler = WTFMove(completionHandler), info = WTFMove(info)](std::unique_ptr<Entry> entry) mutable {
     325        m_speculativeLoadManager->retrieve(storageKey, [networkProcess = makeRef(networkProcess()), request, completionHandler = WTFMove(completionHandler), info = WTFMove(info), sessionID = m_sessionID](std::unique_ptr<Entry> entry) mutable {
    326326            info.wasSpeculativeLoad = true;
    327             if (entry && WebCore::verifyVaryingRequestHeaders(networkProcess->defaultStorageSession(), entry->varyingRequestHeaders(), request))
     327            if (entry && WebCore::verifyVaryingRequestHeaders(networkProcess->storageSession(sessionID), entry->varyingRequestHeaders(), request))
    328328                completeRetrieve(WTFMove(completionHandler), WTFMove(entry), info);
    329329            else
     
    334334#endif
    335335
    336     m_storage->retrieve(storageKey, priority, [request, completionHandler = WTFMove(completionHandler), info = WTFMove(info), storageKey, networkProcess = makeRef(networkProcess())](auto record, auto timings) mutable {
     336    m_storage->retrieve(storageKey, priority, [request, completionHandler = WTFMove(completionHandler), info = WTFMove(info), storageKey, networkProcess = makeRef(networkProcess()), sessionID = m_sessionID](auto record, auto timings) mutable {
    337337        info.storageTimings = timings;
    338338
     
    348348        auto entry = Entry::decodeStorageRecord(*record);
    349349
    350         auto useDecision = entry ? makeUseDecision(networkProcess, *entry, request) : UseDecision::NoDueToDecodeFailure;
     350        auto useDecision = entry ? makeUseDecision(networkProcess, sessionID, *entry, request) : UseDecision::NoDueToDecodeFailure;
    351351        switch (useDecision) {
    352352        case UseDecision::Use:
     
    377377std::unique_ptr<Entry> Cache::makeEntry(const WebCore::ResourceRequest& request, const WebCore::ResourceResponse& response, RefPtr<WebCore::SharedBuffer>&& responseData)
    378378{
    379     return makeUnique<Entry>(makeCacheKey(request), response, WTFMove(responseData), WebCore::collectVaryingRequestHeaders(networkProcess().defaultStorageSession(), request, response));
     379    return makeUnique<Entry>(makeCacheKey(request), response, WTFMove(responseData), WebCore::collectVaryingRequestHeaders(networkProcess().storageSession(m_sessionID), request, response));
    380380}
    381381
    382382std::unique_ptr<Entry> Cache::makeRedirectEntry(const WebCore::ResourceRequest& request, const WebCore::ResourceResponse& response, const WebCore::ResourceRequest& redirectRequest)
    383383{
    384     return makeUnique<Entry>(makeCacheKey(request), response, redirectRequest, WebCore::collectVaryingRequestHeaders(networkProcess().defaultStorageSession(), request, response));
     384    return makeUnique<Entry>(makeCacheKey(request), response, redirectRequest, WebCore::collectVaryingRequestHeaders(networkProcess().storageSession(m_sessionID), request, response));
    385385}
    386386
     
    460460    WebCore::updateResponseHeadersAfterRevalidation(response, validatingResponse);
    461461
    462     auto updateEntry = makeUnique<Entry>(existingEntry.key(), response, existingEntry.buffer(), WebCore::collectVaryingRequestHeaders(networkProcess().defaultStorageSession(), originalRequest, response));
     462    auto updateEntry = makeUnique<Entry>(existingEntry.key(), response, existingEntry.buffer(), WebCore::collectVaryingRequestHeaders(networkProcess().storageSession(m_sessionID), originalRequest, response));
    463463    auto updateRecord = updateEntry->encodeAsStorageRecord();
    464464
  • trunk/Source/WebKit/NetworkProcess/cocoa/NetworkSessionCocoa.h

    r248640 r249614  
    9494    void invalidateAndCancel() override;
    9595    void clearCredentials() override;
     96    void clearCookies() override;
    9697    bool shouldLogCookieInformation() const override { return m_shouldLogCookieInformation; }
    9798    Seconds loadThrottleLatency() const override { return m_loadThrottleLatency; }
  • trunk/Source/WebKit/NetworkProcess/cocoa/NetworkSessionCocoa.mm

    r249343 r249614  
    11731173}
    11741174
     1175void NetworkSessionCocoa::clearCookies()
     1176{
     1177    if (auto storageSession = networkStorageSession()) {
     1178        NSHTTPCookieStorage *cookieStorage = storageSession->nsCookieStorage();
     1179        for (NSHTTPCookie *cookie in cookieStorage.cookies)
     1180            [cookieStorage deleteCookie:cookie];
     1181    }
     1182}
     1183
    11751184NetworkDataTaskCocoa* NetworkSessionCocoa::dataTaskForIdentifier(NetworkDataTaskCocoa::TaskIdentifier taskIdentifier, WebCore::StoredCredentialsPolicy storedCredentialsPolicy)
    11761185{
  • trunk/Source/WebKit/Shared/API/c/WKBase.h

    r249589 r249614  
    140140typedef const struct OpaqueWKUserScript* WKUserScriptRef;
    141141typedef const struct OpaqueWKViewportAttributes* WKViewportAttributesRef;
     142typedef const struct OpaqueWKWebsiteDataConfigurationStore* WKWebsiteDataStoreConfigurationRef;
    142143typedef const struct OpaqueWKWebsiteDataStore* WKWebsiteDataStoreRef;
    143144typedef const struct OpaqueWKWebsitePolicies* WKWebsitePoliciesRef;
  • trunk/Source/WebKit/Sources.txt

    r249603 r249614  
    372372UIProcess/API/C/WKUserMediaPermissionCheck.cpp
    373373UIProcess/API/C/WKUserMediaPermissionRequest.cpp
     374UIProcess/API/C/WKWebsiteDataStoreConfigurationRef.cpp
    374375UIProcess/API/C/WKWebsiteDataStoreRef.cpp
    375376UIProcess/API/C/WKWebsitePolicies.cpp
  • trunk/Source/WebKit/UIProcess/API/APIWebsiteDataStore.cpp

    r245979 r249614  
    6969    configuration->setIndexedDBDatabaseDirectory(legacyDefaultIndexedDBDatabaseDirectory());
    7070    return adoptRef(*new WebsiteDataStore(WTFMove(configuration), PAL::SessionID::defaultSessionID()));
     71}
     72
     73Ref<WebsiteDataStore> WebsiteDataStore::create(Ref<WebKit::WebsiteDataStoreConfiguration>&& configuration, const PAL::SessionID& sessionID)
     74{
     75    return adoptRef(*new WebsiteDataStore(WTFMove(configuration), sessionID));
    7176}
    7277
  • trunk/Source/WebKit/UIProcess/API/APIWebsiteDataStore.h

    r249192 r249614  
    3939    static void deleteDefaultDataStoreForTesting();
    4040
     41    static Ref<WebsiteDataStore> create(Ref<WebKit::WebsiteDataStoreConfiguration>&&, const PAL::SessionID&);
    4142    static Ref<WebsiteDataStore> createNonPersistentDataStore();
    4243    static Ref<WebsiteDataStore> createLegacy(Ref<WebKit::WebsiteDataStoreConfiguration>&&);
  • trunk/Source/WebKit/UIProcess/API/C/WKAPICast.h

    r249589 r249614  
    114114class WebUserContentControllerProxy;
    115115class WebViewportAttributes;
     116class WebsiteDataStoreConfiguration;
    116117
    117118WK_ADD_API_MAPPING(WKAuthenticationChallengeRef, AuthenticationChallengeProxy)
     
    170171WK_ADD_API_MAPPING(WKViewportAttributesRef, WebViewportAttributes)
    171172WK_ADD_API_MAPPING(WKWebsiteDataStoreRef, API::WebsiteDataStore)
     173WK_ADD_API_MAPPING(WKWebsiteDataStoreConfigurationRef, WebKit::WebsiteDataStoreConfiguration)
    172174WK_ADD_API_MAPPING(WKWebsitePoliciesRef, API::WebsitePolicies)
    173175WK_ADD_API_MAPPING(WKWindowFeaturesRef, API::WindowFeatures)
  • trunk/Source/WebKit/UIProcess/API/C/WKContext.cpp

    r249589 r249614  
    4141#include "WKRetainPtr.h"
    4242#include "WKString.h"
     43#include "WKWebsiteDataStoreRef.h"
    4344#include "WebCertificateInfo.h"
    4445#include "WebContextInjectedBundleClient.h"
     
    457458WKApplicationCacheManagerRef WKContextGetApplicationCacheManager(WKContextRef context)
    458459{
    459     return reinterpret_cast<WKApplicationCacheManagerRef>(WKContextGetWebsiteDataStore(context));
     460    return reinterpret_cast<WKApplicationCacheManagerRef>(WKWebsiteDataStoreGetDefaultDataStore());
    460461}
    461462
     
    472473WKKeyValueStorageManagerRef WKContextGetKeyValueStorageManager(WKContextRef context)
    473474{
    474     return reinterpret_cast<WKKeyValueStorageManagerRef>(WKContextGetWebsiteDataStore(context));
     475    return reinterpret_cast<WKKeyValueStorageManagerRef>(WKWebsiteDataStoreGetDefaultDataStore());
    475476}
    476477
     
    492493WKResourceCacheManagerRef WKContextGetResourceCacheManager(WKContextRef context)
    493494{
    494     return reinterpret_cast<WKResourceCacheManagerRef>(WKContextGetWebsiteDataStore(context));
     495    return reinterpret_cast<WKResourceCacheManagerRef>(WKWebsiteDataStoreGetDefaultDataStore());
    495496}
    496497
  • trunk/Source/WebKit/UIProcess/API/C/WKContext.h

    r249589 r249614  
    143143WK_EXPORT void WKContextStopMemorySampler(WKContextRef context);
    144144
    145 WK_EXPORT WKWebsiteDataStoreRef WKContextGetWebsiteDataStore(WKContextRef context);
     145WK_EXPORT WKWebsiteDataStoreRef WKContextGetWebsiteDataStore(WKContextRef context) WK_C_API_DEPRECATED_WITH_REPLACEMENT(WKWebsiteDataStoreGetDefaultDataStore);
    146146
    147 WK_EXPORT WKApplicationCacheManagerRef WKContextGetApplicationCacheManager(WKContextRef context);
     147WK_EXPORT WKApplicationCacheManagerRef WKContextGetApplicationCacheManager(WKContextRef context) WK_C_API_DEPRECATED_WITH_REPLACEMENT(WKWebsiteDataStoreGetDefaultDataStore);
    148148WK_EXPORT WKCookieManagerRef WKContextGetCookieManager(WKContextRef context) WK_C_API_DEPRECATED;
    149149WK_EXPORT WKGeolocationManagerRef WKContextGetGeolocationManager(WKContextRef context);
    150150WK_EXPORT WKIconDatabaseRef WKContextGetIconDatabase(WKContextRef context);
    151 WK_EXPORT WKKeyValueStorageManagerRef WKContextGetKeyValueStorageManager(WKContextRef context);
     151WK_EXPORT WKKeyValueStorageManagerRef WKContextGetKeyValueStorageManager(WKContextRef context) WK_C_API_DEPRECATED_WITH_REPLACEMENT(WKWebsiteDataStoreGetDefaultDataStore);
    152152WK_EXPORT WKMediaSessionFocusManagerRef WKContextGetMediaSessionFocusManager(WKContextRef context);
    153153WK_EXPORT WKNotificationManagerRef WKContextGetNotificationManager(WKContextRef context);
    154 WK_EXPORT WKResourceCacheManagerRef WKContextGetResourceCacheManager(WKContextRef context);
     154WK_EXPORT WKResourceCacheManagerRef WKContextGetResourceCacheManager(WKContextRef context) WK_C_API_DEPRECATED_WITH_REPLACEMENT(WKWebsiteDataStoreGetDefaultDataStore);
    155155
    156156typedef void (*WKContextGetStatisticsFunction)(WKDictionaryRef statistics, WKErrorRef error, void* functionContext);
  • trunk/Source/WebKit/UIProcess/API/C/WKContextConfigurationRef.cpp

    r241556 r249614  
    4949}
    5050
    51 WKStringRef WKContextConfigurationCopyDiskCacheDirectory(WKContextConfigurationRef configuration)
    52 {
    53     return toCopiedAPI(toImpl(configuration)->diskCacheDirectory());
    54 }
    55 
    56 void WKContextConfigurationSetDiskCacheDirectory(WKContextConfigurationRef configuration, WKStringRef diskCacheDirectory)
    57 {
    58     toImpl(configuration)->setDiskCacheDirectory(toImpl(diskCacheDirectory)->string());
    59 }
    60 
    61 WKStringRef WKContextConfigurationCopyApplicationCacheDirectory(WKContextConfigurationRef configuration)
    62 {
    63     return toCopiedAPI(toImpl(configuration)->applicationCacheDirectory());
    64 }
    65 
    66 void WKContextConfigurationSetApplicationCacheDirectory(WKContextConfigurationRef configuration, WKStringRef applicationCacheDirectory)
    67 {
    68     toImpl(configuration)->setApplicationCacheDirectory(toImpl(applicationCacheDirectory)->string());
    69 }
    70 
    71 WKStringRef WKContextConfigurationCopyIndexedDBDatabaseDirectory(WKContextConfigurationRef configuration)
    72 {
    73     return toCopiedAPI(toImpl(configuration)->indexedDBDatabaseDirectory());
    74 }
    75 
    76 void WKContextConfigurationSetIndexedDBDatabaseDirectory(WKContextConfigurationRef configuration, WKStringRef indexedDBDatabaseDirectory)
    77 {
    78     toImpl(configuration)->setIndexedDBDatabaseDirectory(toImpl(indexedDBDatabaseDirectory)->string());
     51WKStringRef WKContextConfigurationCopyDiskCacheDirectory(WKContextConfigurationRef)
     52{
     53    return nullptr;
     54}
     55
     56void WKContextConfigurationSetDiskCacheDirectory(WKContextConfigurationRef, WKStringRef)
     57{
     58}
     59
     60WKStringRef WKContextConfigurationCopyApplicationCacheDirectory(WKContextConfigurationRef)
     61{
     62    return nullptr;
     63}
     64
     65void WKContextConfigurationSetApplicationCacheDirectory(WKContextConfigurationRef, WKStringRef)
     66{
     67}
     68
     69WKStringRef WKContextConfigurationCopyIndexedDBDatabaseDirectory(WKContextConfigurationRef)
     70{
     71    return nullptr;
     72}
     73
     74void WKContextConfigurationSetIndexedDBDatabaseDirectory(WKContextConfigurationRef, WKStringRef)
     75{
    7976}
    8077
     
    8986}
    9087
    91 WKStringRef WKContextConfigurationCopyLocalStorageDirectory(WKContextConfigurationRef configuration)
    92 {
    93     return toCopiedAPI(toImpl(configuration)->localStorageDirectory());
    94 }
    95 
    96 void WKContextConfigurationSetLocalStorageDirectory(WKContextConfigurationRef configuration, WKStringRef localStorageDirectory)
    97 {
    98     toImpl(configuration)->setLocalStorageDirectory(toImpl(localStorageDirectory)->string());
    99 }
    100 
    101 WKStringRef WKContextConfigurationCopyWebSQLDatabaseDirectory(WKContextConfigurationRef configuration)
    102 {
    103     return toCopiedAPI(toImpl(configuration)->webSQLDatabaseDirectory());
    104 }
    105 
    106 void WKContextConfigurationSetWebSQLDatabaseDirectory(WKContextConfigurationRef configuration, WKStringRef webSQLDatabaseDirectory)
    107 {
    108     toImpl(configuration)->setWebSQLDatabaseDirectory(toImpl(webSQLDatabaseDirectory)->string());
    109 }
    110 
    111 WKStringRef WKContextConfigurationCopyMediaKeysStorageDirectory(WKContextConfigurationRef configuration)
    112 {
    113     return toCopiedAPI(toImpl(configuration)->mediaKeysStorageDirectory());
    114 }
    115 
    116 void WKContextConfigurationSetMediaKeysStorageDirectory(WKContextConfigurationRef configuration, WKStringRef mediaKeysStorageDirectory)
    117 {
    118     toImpl(configuration)->setMediaKeysStorageDirectory(toImpl(mediaKeysStorageDirectory)->string());
    119 }
    120 
    121 WKStringRef WKContextConfigurationCopyResourceLoadStatisticsDirectory(WKContextConfigurationRef configuration)
    122 {
    123     return toCopiedAPI(toImpl(configuration)->resourceLoadStatisticsDirectory());
    124 }
    125 
    126 void WKContextConfigurationSetResourceLoadStatisticsDirectory(WKContextConfigurationRef configuration, WKStringRef resourceLoadStatisticsDirectory)
    127 {
    128     toImpl(configuration)->setResourceLoadStatisticsDirectory(toImpl(resourceLoadStatisticsDirectory)->string());
     88WKStringRef WKContextConfigurationCopyLocalStorageDirectory(WKContextConfigurationRef)
     89{
     90    return nullptr;
     91}
     92
     93void WKContextConfigurationSetLocalStorageDirectory(WKContextConfigurationRef, WKStringRef)
     94{
     95}
     96
     97WKStringRef WKContextConfigurationCopyWebSQLDatabaseDirectory(WKContextConfigurationRef)
     98{
     99    return nullptr;
     100}
     101
     102void WKContextConfigurationSetWebSQLDatabaseDirectory(WKContextConfigurationRef, WKStringRef)
     103{
     104}
     105
     106WKStringRef WKContextConfigurationCopyMediaKeysStorageDirectory(WKContextConfigurationRef)
     107{
     108    return nullptr;
     109}
     110
     111void WKContextConfigurationSetMediaKeysStorageDirectory(WKContextConfigurationRef, WKStringRef)
     112{
     113}
     114
     115WKStringRef WKContextConfigurationCopyResourceLoadStatisticsDirectory(WKContextConfigurationRef)
     116{
     117    return nullptr;
     118}
     119
     120void WKContextConfigurationSetResourceLoadStatisticsDirectory(WKContextConfigurationRef, WKStringRef)
     121{
    129122}
    130123
  • trunk/Source/WebKit/UIProcess/API/C/WKContextConfigurationRef.h

    r241556 r249614  
    3737WK_EXPORT WKContextConfigurationRef WKContextConfigurationCreateWithLegacyOptions();
    3838
    39 WK_EXPORT WKStringRef WKContextConfigurationCopyApplicationCacheDirectory(WKContextConfigurationRef configuration);
    40 WK_EXPORT void WKContextConfigurationSetApplicationCacheDirectory(WKContextConfigurationRef configuration, WKStringRef applicationCacheDirectory);
     39WK_EXPORT WKStringRef WKContextConfigurationCopyApplicationCacheDirectory(WKContextConfigurationRef configuration) WK_C_API_DEPRECATED_WITH_REPLACEMENT(WKWebsiteDataStoreConfigurationCopyApplicationCacheDirectory);
     40WK_EXPORT void WKContextConfigurationSetApplicationCacheDirectory(WKContextConfigurationRef configuration, WKStringRef applicationCacheDirectory) WK_C_API_DEPRECATED_WITH_REPLACEMENT(WKWebsiteDataStoreConfigurationSetApplicationCacheDirectory);
    4141
    42 WK_EXPORT WKStringRef WKContextConfigurationCopyDiskCacheDirectory(WKContextConfigurationRef configuration);
    43 WK_EXPORT void WKContextConfigurationSetDiskCacheDirectory(WKContextConfigurationRef configuration, WKStringRef diskCacheDirectory);
     42WK_EXPORT WKStringRef WKContextConfigurationCopyDiskCacheDirectory(WKContextConfigurationRef configuration) WK_C_API_DEPRECATED_WITH_REPLACEMENT(WKWebsiteDataStoreConfigurationCopyNetworkCacheDirectory);
     43WK_EXPORT void WKContextConfigurationSetDiskCacheDirectory(WKContextConfigurationRef configuration, WKStringRef diskCacheDirectory) WK_C_API_DEPRECATED_WITH_REPLACEMENT(WKWebsiteDataStoreConfigurationSetNetworkCacheDirectory);
    4444
    45 WK_EXPORT WKStringRef WKContextConfigurationCopyIndexedDBDatabaseDirectory(WKContextConfigurationRef configuration);
    46 WK_EXPORT void WKContextConfigurationSetIndexedDBDatabaseDirectory(WKContextConfigurationRef configuration, WKStringRef indexedDBDatabaseDirectory);
     45WK_EXPORT WKStringRef WKContextConfigurationCopyIndexedDBDatabaseDirectory(WKContextConfigurationRef configuration) WK_C_API_DEPRECATED_WITH_REPLACEMENT(WKWebsiteDataStoreConfigurationCopyIndexedDBDatabaseDirectory);
     46WK_EXPORT void WKContextConfigurationSetIndexedDBDatabaseDirectory(WKContextConfigurationRef configuration, WKStringRef indexedDBDatabaseDirectory) WK_C_API_DEPRECATED_WITH_REPLACEMENT(WKWebsiteDataStoreConfigurationSetIndexedDBDatabaseDirectory);
    4747
    4848WK_EXPORT WKStringRef WKContextConfigurationCopyInjectedBundlePath(WKContextConfigurationRef configuration);
    4949WK_EXPORT void WKContextConfigurationSetInjectedBundlePath(WKContextConfigurationRef configuration, WKStringRef injectedBundlePath);
    5050
    51 WK_EXPORT WKStringRef WKContextConfigurationCopyLocalStorageDirectory(WKContextConfigurationRef configuration);
    52 WK_EXPORT void WKContextConfigurationSetLocalStorageDirectory(WKContextConfigurationRef configuration, WKStringRef localStorageDirectory);
     51WK_EXPORT WKStringRef WKContextConfigurationCopyLocalStorageDirectory(WKContextConfigurationRef configuration) WK_C_API_DEPRECATED_WITH_REPLACEMENT(WKWebsiteDataStoreConfigurationCopyLocalStorageDirectory);
     52WK_EXPORT void WKContextConfigurationSetLocalStorageDirectory(WKContextConfigurationRef configuration, WKStringRef localStorageDirectory) WK_C_API_DEPRECATED_WITH_REPLACEMENT(WKWebsiteDataStoreConfigurationSetLocalStorageDirectory);
    5353
    54 WK_EXPORT WKStringRef WKContextConfigurationCopyWebSQLDatabaseDirectory(WKContextConfigurationRef configuration);
    55 WK_EXPORT void WKContextConfigurationSetWebSQLDatabaseDirectory(WKContextConfigurationRef configuration, WKStringRef webSQLDatabaseDirectory);
     54WK_EXPORT WKStringRef WKContextConfigurationCopyWebSQLDatabaseDirectory(WKContextConfigurationRef configuration) WK_C_API_DEPRECATED_WITH_REPLACEMENT(WKWebsiteDataStoreConfigurationCopyWebSQLDatabaseDirectory);
     55WK_EXPORT void WKContextConfigurationSetWebSQLDatabaseDirectory(WKContextConfigurationRef configuration, WKStringRef webSQLDatabaseDirectory) WK_C_API_DEPRECATED_WITH_REPLACEMENT(WKWebsiteDataStoreConfigurationSetWebSQLDatabaseDirectory);
    5656
    57 WK_EXPORT WKStringRef WKContextConfigurationCopyMediaKeysStorageDirectory(WKContextConfigurationRef configuration);
    58 WK_EXPORT void WKContextConfigurationSetMediaKeysStorageDirectory(WKContextConfigurationRef configuration, WKStringRef mediaKeysStorageDirectory);
     57WK_EXPORT WKStringRef WKContextConfigurationCopyMediaKeysStorageDirectory(WKContextConfigurationRef configuration) WK_C_API_DEPRECATED_WITH_REPLACEMENT(WKWebsiteDataStoreConfigurationCopyMediaKeysStorageDirectory);
     58WK_EXPORT void WKContextConfigurationSetMediaKeysStorageDirectory(WKContextConfigurationRef configuration, WKStringRef mediaKeysStorageDirectory) WK_C_API_DEPRECATED_WITH_REPLACEMENT(WKWebsiteDataStoreConfigurationSetMediaKeysStorageDirectory);
    5959
    60 WK_EXPORT WKStringRef WKContextConfigurationCopyResourceLoadStatisticsDirectory(WKContextConfigurationRef configuration);
    61 WK_EXPORT void WKContextConfigurationSetResourceLoadStatisticsDirectory(WKContextConfigurationRef configuration, WKStringRef resourceLoadStatisticsDirectory);
     60WK_EXPORT WKStringRef WKContextConfigurationCopyResourceLoadStatisticsDirectory(WKContextConfigurationRef configuration) WK_C_API_DEPRECATED_WITH_REPLACEMENT(WKWebsiteDataStoreConfigurationCopyResourceLoadStatisticsDirectory);
     61WK_EXPORT void WKContextConfigurationSetResourceLoadStatisticsDirectory(WKContextConfigurationRef configuration, WKStringRef resourceLoadStatisticsDirectory) WK_C_API_DEPRECATED_WITH_REPLACEMENT(WKWebsiteDataStoreConfigurationSetResourceLoadStatisticsDirectory);
    6262
    6363WK_EXPORT bool WKContextConfigurationFullySynchronousModeIsAllowedForTesting(WKContextConfigurationRef configuration);
  • trunk/Source/WebKit/UIProcess/API/C/WKWebsiteDataStoreRef.cpp

    r249589 r249614  
    6161}
    6262
     63WKWebsiteDataStoreRef WKWebsiteDataStoreCreateWithConfiguration(WKWebsiteDataStoreConfigurationRef configuration)
     64{
     65    auto sessionID = WebKit::toImpl(configuration)->isPersistent() ? PAL::SessionID::generatePersistentSessionID() : PAL::SessionID::generateEphemeralSessionID();
     66    return WebKit::toAPI(&API::WebsiteDataStore::create(*WebKit::toImpl(configuration), sessionID).leakRef());
     67}
     68
    6369void WKWebsiteDataStoreSetResourceLoadStatisticsEnabled(WKWebsiteDataStoreRef dataStoreRef, bool enable)
    6470{
  • trunk/Source/WebKit/UIProcess/API/C/WKWebsiteDataStoreRef.h

    r249589 r249614  
    3737WK_EXPORT WKWebsiteDataStoreRef WKWebsiteDataStoreGetDefaultDataStore();
    3838WK_EXPORT WKWebsiteDataStoreRef WKWebsiteDataStoreCreateNonPersistentDataStore();
     39WK_EXPORT WKWebsiteDataStoreRef WKWebsiteDataStoreCreateWithConfiguration(WKWebsiteDataStoreConfigurationRef configuration);
    3940
    4041WK_EXPORT WKHTTPCookieStoreRef WKWebsiteDataStoreGetHTTPCookieStore(WKWebsiteDataStoreRef dataStoreRef);
  • trunk/Source/WebKit/UIProcess/WebsiteData/Cocoa/WebsiteDataStoreCocoa.mm

    r249019 r249614  
    133133        WTFMove(resourceLoadStatisticsDirectory),
    134134        WTFMove(resourceLoadStatisticsDirectoryHandle),
    135         false,
    136         false,
     135        resourceLoadStatisticsEnabled(),
     136        hasStatisticsTestingCallback(),
    137137        shouldIncludeLocalhostInResourceLoadStatistics,
    138138        enableResourceLoadStatisticsDebugMode,
  • trunk/Source/WebKit/WebKit.xcodeproj/project.pbxproj

    r249603 r249614  
    11051105                5C62FDF91EFC271C00CE072E /* WKURLSchemeTaskPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = 5C62FDF81EFC263C00CE072E /* WKURLSchemeTaskPrivate.h */; settings = {ATTRIBUTES = (Private, ); }; };
    11061106                5C66A4B52320962400EA4D44 /* WKHTTPCookieStoreRef.h in Headers */ = {isa = PBXBuildFile; fileRef = 5C66A4B42320961400EA4D44 /* WKHTTPCookieStoreRef.h */; settings = {ATTRIBUTES = (Private, ); }; };
     1107                5C6E7D882323620500C2159D /* WKWebsiteDataStoreConfigurationRef.h in Headers */ = {isa = PBXBuildFile; fileRef = 5C6E7D86232361E700C2159D /* WKWebsiteDataStoreConfigurationRef.h */; settings = {ATTRIBUTES = (Private, ); }; };
    11071108                5C795D70229F373F003FF1C4 /* WKContextMenuElementInfo.h in Headers */ = {isa = PBXBuildFile; fileRef = 5CE0C369229F2D4A003695F0 /* WKContextMenuElementInfo.h */; settings = {ATTRIBUTES = (Public, ); }; };
    11081109                5C795D71229F3757003FF1C4 /* WKContextMenuElementInfoPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = 5CE0C36A229F2D4A003695F0 /* WKContextMenuElementInfoPrivate.h */; settings = {ATTRIBUTES = (Private, ); }; };
     
    36433644                5C6CE6D01F59BC460007C6CB /* PageClientImplCocoa.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = PageClientImplCocoa.mm; sourceTree = "<group>"; };
    36443645                5C6CE6D31F59EA350007C6CB /* PageClientImplCocoa.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PageClientImplCocoa.h; sourceTree = "<group>"; };
     3646                5C6E7D86232361E700C2159D /* WKWebsiteDataStoreConfigurationRef.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WKWebsiteDataStoreConfigurationRef.h; sourceTree = "<group>"; };
     3647                5C6E7D87232361E700C2159D /* WKWebsiteDataStoreConfigurationRef.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WKWebsiteDataStoreConfigurationRef.cpp; sourceTree = "<group>"; };
    36453648                5C74300E21500492004BFA17 /* WKWebProcess.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WKWebProcess.h; sourceTree = "<group>"; };
    36463649                5C74300F21500492004BFA17 /* WKWebProcess.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WKWebProcess.cpp; sourceTree = "<group>"; };
     
    81338136                                7C89D2A11A678875003A5FDE /* WKUserScriptRef.cpp */,
    81348137                                7C89D2A21A678875003A5FDE /* WKUserScriptRef.h */,
     8138                                5C6E7D87232361E700C2159D /* WKWebsiteDataStoreConfigurationRef.cpp */,
     8139                                5C6E7D86232361E700C2159D /* WKWebsiteDataStoreConfigurationRef.h */,
    81358140                                1A57109C1ABA0027002FABBE /* WKWebsiteDataStoreRef.cpp */,
    81368141                                1A57109D1ABA0027002FABBE /* WKWebsiteDataStoreRef.h */,
     
    1042810433                                1AA654D11B14F71400BF1D3E /* WKWebsiteDataRecordPrivate.h in Headers */,
    1042910434                                75A8D2C8187CCFAB00C39C9E /* WKWebsiteDataStore.h in Headers */,
     10435                                5C6E7D882323620500C2159D /* WKWebsiteDataStoreConfigurationRef.h in Headers */,
    1043010436                                75A8D2D6187D1C0E00C39C9E /* WKWebsiteDataStoreInternal.h in Headers */,
    1043110437                                1AE2867A1C7F7BA60069AC4F /* WKWebsiteDataStorePrivate.h in Headers */,
  • trunk/Tools/ChangeLog

    r249605 r249614  
     12019-09-07  Alex Christensen  <achristensen@webkit.org>
     2
     3        Deprecate WKContextGetWebsiteDataStore
     4        https://bugs.webkit.org/show_bug.cgi?id=200050
     5
     6        Reviewed by Geoff Garen.
     7
     8        * MiniBrowser/win/WebKitBrowserWindow.cpp:
     9        (WebKitBrowserWindow::updateProxySettings):
     10        * TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
     11        * WebKitTestRunner/TestController.cpp:
     12        (WTR::TestController::generateContextConfiguration const):
     13        (WTR::TestController::websiteDataStore):
     14        (WTR::TestController::generatePageConfiguration):
     15        (WTR::TestController::resetStateToConsistentValues):
     16        (WTR::TestController::platformAdjustContext):
     17        (WTR::TestController::clearServiceWorkerRegistrations):
     18        (WTR::TestController::clearDOMCache):
     19        (WTR::TestController::clearDOMCaches):
     20        (WTR::TestController::ClearIndexedDatabases):
     21        (WTR::TestController::hasDOMCache):
     22        (WTR::TestController::domCacheSize):
     23        (WTR::TestController::setStatisticsDebugMode):
     24        (WTR::TestController::setStatisticsPrevalentResourceForDebugMode):
     25        (WTR::TestController::setStatisticsLastSeen):
     26        (WTR::TestController::setStatisticsPrevalentResource):
     27        (WTR::TestController::setStatisticsVeryPrevalentResource):
     28        (WTR::TestController::dumpResourceLoadStatistics):
     29        (WTR::TestController::isStatisticsPrevalentResource):
     30        (WTR::TestController::isStatisticsVeryPrevalentResource):
     31        (WTR::TestController::isStatisticsRegisteredAsSubresourceUnder):
     32        (WTR::TestController::isStatisticsRegisteredAsSubFrameUnder):
     33        (WTR::TestController::isStatisticsRegisteredAsRedirectingTo):
     34        (WTR::TestController::setStatisticsHasHadUserInteraction):
     35        (WTR::TestController::isStatisticsHasHadUserInteraction):
     36        (WTR::TestController::setStatisticsGrandfathered):
     37        (WTR::TestController::isStatisticsGrandfathered):
     38        (WTR::TestController::setStatisticsSubframeUnderTopFrameOrigin):
     39        (WTR::TestController::setStatisticsSubresourceUnderTopFrameOrigin):
     40        (WTR::TestController::setStatisticsSubresourceUniqueRedirectTo):
     41        (WTR::TestController::setStatisticsSubresourceUniqueRedirectFrom):
     42        (WTR::TestController::setStatisticsTopFrameUniqueRedirectTo):
     43        (WTR::TestController::setStatisticsTopFrameUniqueRedirectFrom):
     44        (WTR::TestController::setStatisticsCrossSiteLoadWithLinkDecoration):
     45        (WTR::TestController::setStatisticsTimeToLiveUserInteraction):
     46        (WTR::TestController::statisticsProcessStatisticsAndDataRecords):
     47        (WTR::TestController::statisticsUpdateCookieBlocking):
     48        (WTR::TestController::statisticsSubmitTelemetry):
     49        (WTR::TestController::setStatisticsNotifyPagesWhenDataRecordsWereScanned):
     50        (WTR::TestController::setStatisticsIsRunningTest):
     51        (WTR::TestController::setStatisticsShouldClassifyResourcesBeforeDataRecordsRemoval):
     52        (WTR::TestController::setStatisticsNotifyPagesWhenTelemetryWasCaptured):
     53        (WTR::TestController::setStatisticsMinimumTimeBetweenDataRecordsRemoval):
     54        (WTR::TestController::setStatisticsGrandfatheringTime):
     55        (WTR::TestController::setStatisticsMaxStatisticsEntries):
     56        (WTR::TestController::setStatisticsPruneEntriesDownTo):
     57        (WTR::TestController::statisticsClearInMemoryAndPersistentStore):
     58        (WTR::TestController::statisticsClearInMemoryAndPersistentStoreModifiedSinceHours):
     59        (WTR::TestController::statisticsClearThroughWebsiteDataRemoval):
     60        (WTR::TestController::statisticsDeleteCookiesForHost):
     61        (WTR::TestController::isStatisticsHasLocalStorage):
     62        (WTR::TestController::setStatisticsCacheMaxAgeCap):
     63        (WTR::TestController::statisticsResetToConsistentState):
     64        (WTR::TestController::setWebAuthenticationMockConfiguration):
     65        (WTR::TestController::clearAdClickAttributionsThroughWebsiteDataRemoval):
     66        * WebKitTestRunner/TestController.h:
     67        * WebKitTestRunner/TestInvocation.cpp:
     68        (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
     69        * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
     70        (WTR::initializeWebViewConfiguration):
     71
    1722019-09-06  Wenson Hsieh  <wenson_hsieh@apple.com>
    273
  • trunk/Tools/MiniBrowser/win/WebKitBrowserWindow.cpp

    r249371 r249614  
    3636#include <WebKit/WKProtectionSpace.h>
    3737#include <WebKit/WKProtectionSpaceCurl.h>
     38#include <WebKit/WKWebsiteDataStoreRef.h>
    3839#include <WebKit/WKWebsiteDataStoreRefCurl.h>
    3940#include <vector>
     
    166167{
    167168    auto context = WKPageGetContext(WKViewGetPage(m_view.get()));
    168     auto store = WKContextGetWebsiteDataStore(context);
     169    auto store = WKWebsiteDataStoreGetDefaultDataStore();
    169170
    170171    if (!m_proxy.enable) {
  • trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm

    r249035 r249614  
    974974    [pool _registerURLSchemeServiceWorkersCanHandle:@"sw"];
    975975
     976    // FIXME: Investigate and remove this last use of WKContextGetWebsiteDataStore.
    976977    configuration.websiteDataStore = (WKWebsiteDataStore *)WKContextGetWebsiteDataStore(context.get());
    977978}
  • trunk/Tools/WebKitTestRunner/TestController.cpp

    r249589 r249614  
    6767#include <WebKit/WKUserContentExtensionStoreRef.h>
    6868#include <WebKit/WKUserMediaPermissionCheck.h>
     69#include <WebKit/WKWebsiteDataStoreConfigurationRef.h>
    6970#include <WebKit/WKWebsiteDataStoreRef.h>
    7071#include <algorithm>
     
    502503    }
    503504
    504     if (const char* dumpRenderTreeTemp = libraryPathForTesting()) {
    505         String temporaryFolder = String::fromUTF8(dumpRenderTreeTemp);
    506 
    507         WKContextConfigurationSetApplicationCacheDirectory(configuration.get(), toWK(temporaryFolder + pathSeparator + "ApplicationCache").get());
    508         WKContextConfigurationSetDiskCacheDirectory(configuration.get(), toWK(temporaryFolder + pathSeparator + "Cache").get());
    509         WKContextConfigurationSetIndexedDBDatabaseDirectory(configuration.get(), toWK(temporaryFolder + pathSeparator + "Databases" + pathSeparator + "IndexedDB").get());
    510         WKContextConfigurationSetLocalStorageDirectory(configuration.get(), toWK(temporaryFolder + pathSeparator + "LocalStorage").get());
    511         WKContextConfigurationSetWebSQLDatabaseDirectory(configuration.get(), toWK(temporaryFolder + pathSeparator + "Databases" + pathSeparator + "WebSQL").get());
    512         WKContextConfigurationSetMediaKeysStorageDirectory(configuration.get(), toWK(temporaryFolder + pathSeparator + "MediaKeys").get());
    513         WKContextConfigurationSetResourceLoadStatisticsDirectory(configuration.get(), toWK(temporaryFolder + pathSeparator + "ResourceLoadStatistics").get());
    514     }
    515505    return configuration;
     506}
     507
     508WKWebsiteDataStoreRef TestController::websiteDataStore()
     509{
     510    static WKWebsiteDataStoreRef dataStore = nullptr;
     511    if (!dataStore) {
     512        auto configuration = adoptWK(WKWebsiteDataStoreConfigurationCreate());
     513        if (const char* dumpRenderTreeTemp = libraryPathForTesting()) {
     514            String temporaryFolder = String::fromUTF8(dumpRenderTreeTemp);
     515
     516            WKWebsiteDataStoreConfigurationSetApplicationCacheDirectory(configuration.get(), toWK(temporaryFolder + pathSeparator + "ApplicationCache").get());
     517            WKWebsiteDataStoreConfigurationSetNetworkCacheDirectory(configuration.get(), toWK(temporaryFolder + pathSeparator + "Cache").get());
     518            WKWebsiteDataStoreConfigurationSetIndexedDBDatabaseDirectory(configuration.get(), toWK(temporaryFolder + pathSeparator + "Databases" + pathSeparator + "IndexedDB").get());
     519            WKWebsiteDataStoreConfigurationSetLocalStorageDirectory(configuration.get(), toWK(temporaryFolder + pathSeparator + "LocalStorage").get());
     520            WKWebsiteDataStoreConfigurationSetWebSQLDatabaseDirectory(configuration.get(), toWK(temporaryFolder + pathSeparator + "Databases" + pathSeparator + "WebSQL").get());
     521            WKWebsiteDataStoreConfigurationSetMediaKeysStorageDirectory(configuration.get(), toWK(temporaryFolder + pathSeparator + "MediaKeys").get());
     522            WKWebsiteDataStoreConfigurationSetResourceLoadStatisticsDirectory(configuration.get(), toWK(temporaryFolder + pathSeparator + "ResourceLoadStatistics").get());
     523        }
     524        dataStore = WKWebsiteDataStoreCreateWithConfiguration(configuration.get());
     525    }
     526    return dataStore;
    516527}
    517528
     
    538549        WKContextSetCacheModel(m_context.get(), kWKCacheModelDocumentBrowser);
    539550
    540         auto* websiteDataStore = WKContextGetWebsiteDataStore(m_context.get());
    541         WKWebsiteDataStoreSetPerOriginStorageQuota(websiteDataStore, 400 * 1024);
     551        WKWebsiteDataStoreSetPerOriginStorageQuota(TestController::websiteDataStore(), 400 * 1024);
    542552
    543553        platformInitializeContext();
     
    944954    WKContextClearCachedCredentials(TestController::singleton().context());
    945955
    946     auto websiteDataStore = WKContextGetWebsiteDataStore(TestController::singleton().context());
    947     WKWebsiteDataStoreClearAllDeviceOrientationPermissions(websiteDataStore);
     956    WKWebsiteDataStoreClearAllDeviceOrientationPermissions(TestController::websiteDataStore());
    948957
    949958    clearIndexedDatabases();
     
    29682977WKContextRef TestController::platformAdjustContext(WKContextRef context, WKContextConfigurationRef contextConfiguration)
    29692978{
    2970     auto* dataStore = WKContextGetWebsiteDataStore(context);
     2979    auto* dataStore = TestController::websiteDataStore();
    29712980    WKWebsiteDataStoreSetResourceLoadStatisticsEnabled(dataStore, true);
    29722981
     
    30183027void TestController::clearServiceWorkerRegistrations()
    30193028{
    3020     auto websiteDataStore = WKContextGetWebsiteDataStore(platformContext());
    30213029    ClearServiceWorkerRegistrationsCallbackContext context(*this);
    30223030
    3023     WKWebsiteDataStoreRemoveAllServiceWorkerRegistrations(websiteDataStore, &context, clearServiceWorkerRegistrationsCallback);
     3031    WKWebsiteDataStoreRemoveAllServiceWorkerRegistrations(TestController::websiteDataStore(), &context, clearServiceWorkerRegistrationsCallback);
    30243032    runUntil(context.done, noTimeout);
    30253033}
     
    30443052void TestController::clearDOMCache(WKStringRef origin)
    30453053{
    3046     auto websiteDataStore = WKContextGetWebsiteDataStore(platformContext());
    30473054    ClearDOMCacheCallbackContext context(*this);
    30483055
    30493056    auto cacheOrigin = adoptWK(WKSecurityOriginCreateFromString(origin));
    3050     WKWebsiteDataStoreRemoveFetchCacheForOrigin(websiteDataStore, cacheOrigin.get(), &context, clearDOMCacheCallback);
     3057    WKWebsiteDataStoreRemoveFetchCacheForOrigin(TestController::websiteDataStore(), cacheOrigin.get(), &context, clearDOMCacheCallback);
    30513058    runUntil(context.done, noTimeout);
    30523059}
     
    30543061void TestController::clearDOMCaches()
    30553062{
    3056     auto websiteDataStore = WKContextGetWebsiteDataStore(platformContext());
    30573063    ClearDOMCacheCallbackContext context(*this);
    30583064
    3059     WKWebsiteDataStoreRemoveAllFetchCaches(websiteDataStore, &context, clearDOMCacheCallback);
     3065    WKWebsiteDataStoreRemoveAllFetchCaches(TestController::websiteDataStore(), &context, clearDOMCacheCallback);
    30603066    runUntil(context.done, noTimeout);
    30613067}
     
    30803086void TestController::clearIndexedDatabases()
    30813087{
    3082     auto websiteDataStore = WKContextGetWebsiteDataStore(platformContext());
    30833088    StorageVoidCallbackContext context(*this);
    3084     WKWebsiteDataStoreRemoveAllIndexedDatabases(websiteDataStore, &context, StorageVoidCallback);
     3089    WKWebsiteDataStoreRemoveAllIndexedDatabases(TestController::websiteDataStore(), &context, StorageVoidCallback);
    30853090    runUntil(context.done, noTimeout);
    30863091}
     
    30883093void TestController::clearLocalStorage()
    30893094{
    3090     auto websiteDataStore = WKContextGetWebsiteDataStore(platformContext());
    30913095    StorageVoidCallbackContext context(*this);
    3092     WKWebsiteDataStoreRemoveLocalStorage(websiteDataStore, &context, StorageVoidCallback);
     3096    WKWebsiteDataStoreRemoveLocalStorage(TestController::websiteDataStore(), &context, StorageVoidCallback);
    30933097    runUntil(context.done, noTimeout);
    30943098
     
    31353139bool TestController::hasDOMCache(WKStringRef origin)
    31363140{
    3137     auto* dataStore = WKContextGetWebsiteDataStore(platformContext());
    31383141    FetchCacheOriginsCallbackContext context(*this, origin);
    3139     WKWebsiteDataStoreGetFetchCacheOrigins(dataStore, &context, fetchCacheOriginsCallback);
     3142    WKWebsiteDataStoreGetFetchCacheOrigins(TestController::websiteDataStore(), &context, fetchCacheOriginsCallback);
    31403143    runUntil(context.done, noTimeout);
    31413144    return context.result;
     
    31643167uint64_t TestController::domCacheSize(WKStringRef origin)
    31653168{
    3166     auto* dataStore = WKContextGetWebsiteDataStore(platformContext());
    31673169    FetchCacheSizeForOriginCallbackContext context(*this);
    3168     WKWebsiteDataStoreGetFetchCacheSizeForOrigin(dataStore, origin, &context, fetchCacheSizeForOriginCallback);
     3170    WKWebsiteDataStoreGetFetchCacheSizeForOrigin(TestController::websiteDataStore(), origin, &context, fetchCacheSizeForOriginCallback);
    31693171    runUntil(context.done, noTimeout);
    31703172    return context.result;
     
    32213223void TestController::setStatisticsDebugMode(bool value)
    32223224{
    3223     auto* dataStore = WKContextGetWebsiteDataStore(platformContext());
    32243225    ResourceStatisticsCallbackContext context(*this);
    3225     WKWebsiteDataStoreSetResourceLoadStatisticsDebugModeWithCompletionHandler(dataStore, value, &context, resourceStatisticsVoidResultCallback);
     3226    WKWebsiteDataStoreSetResourceLoadStatisticsDebugModeWithCompletionHandler(TestController::websiteDataStore(), value, &context, resourceStatisticsVoidResultCallback);
    32263227    runUntil(context.done, noTimeout);
    32273228    m_currentInvocation->didSetStatisticsDebugMode();
     
    32303231void TestController::setStatisticsPrevalentResourceForDebugMode(WKStringRef hostName)
    32313232{
    3232     auto* dataStore = WKContextGetWebsiteDataStore(platformContext());
    32333233    ResourceStatisticsCallbackContext context(*this);
    3234     WKWebsiteDataStoreSetResourceLoadStatisticsPrevalentResourceForDebugMode(dataStore, hostName, &context, resourceStatisticsVoidResultCallback);
     3234    WKWebsiteDataStoreSetResourceLoadStatisticsPrevalentResourceForDebugMode(TestController::websiteDataStore(), hostName, &context, resourceStatisticsVoidResultCallback);
    32353235    runUntil(context.done, noTimeout);
    32363236    m_currentInvocation->didSetPrevalentResourceForDebugMode();
     
    32393239void TestController::setStatisticsLastSeen(WKStringRef host, double seconds)
    32403240{
    3241     auto* dataStore = WKContextGetWebsiteDataStore(platformContext());
    32423241    ResourceStatisticsCallbackContext context(*this);
    3243     WKWebsiteDataStoreSetStatisticsLastSeen(dataStore, host, seconds, &context, resourceStatisticsVoidResultCallback);
     3242    WKWebsiteDataStoreSetStatisticsLastSeen(TestController::websiteDataStore(), host, seconds, &context, resourceStatisticsVoidResultCallback);
    32443243    runUntil(context.done, noTimeout);
    32453244    m_currentInvocation->didSetLastSeen();
     
    32483247void TestController::setStatisticsPrevalentResource(WKStringRef host, bool value)
    32493248{
    3250     auto* dataStore = WKContextGetWebsiteDataStore(platformContext());
    32513249    ResourceStatisticsCallbackContext context(*this);
    3252     WKWebsiteDataStoreSetStatisticsPrevalentResource(dataStore, host, value, &context, resourceStatisticsVoidResultCallback);
     3250    WKWebsiteDataStoreSetStatisticsPrevalentResource(TestController::websiteDataStore(), host, value, &context, resourceStatisticsVoidResultCallback);
    32533251    runUntil(context.done, noTimeout);
    32543252    m_currentInvocation->didSetPrevalentResource();
     
    32573255void TestController::setStatisticsVeryPrevalentResource(WKStringRef host, bool value)
    32583256{
    3259     auto* dataStore = WKContextGetWebsiteDataStore(platformContext());
    32603257    ResourceStatisticsCallbackContext context(*this);
    3261     WKWebsiteDataStoreSetStatisticsVeryPrevalentResource(dataStore, host, value, &context, resourceStatisticsVoidResultCallback);
     3258    WKWebsiteDataStoreSetStatisticsVeryPrevalentResource(TestController::websiteDataStore(), host, value, &context, resourceStatisticsVoidResultCallback);
    32623259    runUntil(context.done, noTimeout);
    32633260    m_currentInvocation->didSetVeryPrevalentResource();
     
    32663263String TestController::dumpResourceLoadStatistics()
    32673264{
    3268     auto* dataStore = WKContextGetWebsiteDataStore(platformContext());
    32693265    ResourceStatisticsCallbackContext context(*this);
    3270     WKWebsiteDataStoreDumpResourceLoadStatistics(dataStore, &context, resourceStatisticsStringResultCallback);
     3266    WKWebsiteDataStoreDumpResourceLoadStatistics(TestController::websiteDataStore(), &context, resourceStatisticsStringResultCallback);
    32713267    runUntil(context.done, noTimeout);
    32723268    return toWTFString(context.resourceLoadStatisticsRepresentation.get());
     
    32753271bool TestController::isStatisticsPrevalentResource(WKStringRef host)
    32763272{
    3277     auto* dataStore = WKContextGetWebsiteDataStore(platformContext());
    32783273    ResourceStatisticsCallbackContext context(*this);
    3279     WKWebsiteDataStoreIsStatisticsPrevalentResource(dataStore, host, &context, resourceStatisticsBooleanResultCallback);
     3274    WKWebsiteDataStoreIsStatisticsPrevalentResource(TestController::websiteDataStore(), host, &context, resourceStatisticsBooleanResultCallback);
    32803275    runUntil(context.done, noTimeout);
    32813276    return context.result;
     
    32843279bool TestController::isStatisticsVeryPrevalentResource(WKStringRef host)
    32853280{
    3286     auto* dataStore = WKContextGetWebsiteDataStore(platformContext());
    32873281    ResourceStatisticsCallbackContext context(*this);
    3288     WKWebsiteDataStoreIsStatisticsVeryPrevalentResource(dataStore, host, &context, resourceStatisticsBooleanResultCallback);
     3282    WKWebsiteDataStoreIsStatisticsVeryPrevalentResource(TestController::websiteDataStore(), host, &context, resourceStatisticsBooleanResultCallback);
    32893283    runUntil(context.done, noTimeout);
    32903284    return context.result;
     
    32933287bool TestController::isStatisticsRegisteredAsSubresourceUnder(WKStringRef subresourceHost, WKStringRef topFrameHost)
    32943288{
    3295     auto* dataStore = WKContextGetWebsiteDataStore(platformContext());
    32963289    ResourceStatisticsCallbackContext context(*this);
    3297     WKWebsiteDataStoreIsStatisticsRegisteredAsSubresourceUnder(dataStore, subresourceHost, topFrameHost, &context, resourceStatisticsBooleanResultCallback);
     3290    WKWebsiteDataStoreIsStatisticsRegisteredAsSubresourceUnder(TestController::websiteDataStore(), subresourceHost, topFrameHost, &context, resourceStatisticsBooleanResultCallback);
    32983291    runUntil(context.done, noTimeout);
    32993292    return context.result;
     
    33023295bool TestController::isStatisticsRegisteredAsSubFrameUnder(WKStringRef subFrameHost, WKStringRef topFrameHost)
    33033296{
    3304     auto* dataStore = WKContextGetWebsiteDataStore(platformContext());
    33053297    ResourceStatisticsCallbackContext context(*this);
    3306     WKWebsiteDataStoreIsStatisticsRegisteredAsSubFrameUnder(dataStore, subFrameHost, topFrameHost, &context, resourceStatisticsBooleanResultCallback);
     3298    WKWebsiteDataStoreIsStatisticsRegisteredAsSubFrameUnder(TestController::websiteDataStore(), subFrameHost, topFrameHost, &context, resourceStatisticsBooleanResultCallback);
    33073299    runUntil(context.done, noTimeout);
    33083300    return context.result;
     
    33113303bool TestController::isStatisticsRegisteredAsRedirectingTo(WKStringRef hostRedirectedFrom, WKStringRef hostRedirectedTo)
    33123304{
    3313     auto* dataStore = WKContextGetWebsiteDataStore(platformContext());
    33143305    ResourceStatisticsCallbackContext context(*this);
    3315     WKWebsiteDataStoreIsStatisticsRegisteredAsRedirectingTo(dataStore, hostRedirectedFrom, hostRedirectedTo, &context, resourceStatisticsBooleanResultCallback);
     3306    WKWebsiteDataStoreIsStatisticsRegisteredAsRedirectingTo(TestController::websiteDataStore(), hostRedirectedFrom, hostRedirectedTo, &context, resourceStatisticsBooleanResultCallback);
    33163307    runUntil(context.done, noTimeout);
    33173308    return context.result;
     
    33203311void TestController::setStatisticsHasHadUserInteraction(WKStringRef host, bool value)
    33213312{
    3322     auto* dataStore = WKContextGetWebsiteDataStore(platformContext());
    33233313    ResourceStatisticsCallbackContext context(*this);
    3324     WKWebsiteDataStoreSetStatisticsHasHadUserInteraction(dataStore, host, value, &context, resourceStatisticsVoidResultCallback);
     3314    WKWebsiteDataStoreSetStatisticsHasHadUserInteraction(TestController::websiteDataStore(), host, value, &context, resourceStatisticsVoidResultCallback);
    33253315    runUntil(context.done, noTimeout);
    33263316    m_currentInvocation->didSetHasHadUserInteraction();
     
    33293319bool TestController::isStatisticsHasHadUserInteraction(WKStringRef host)
    33303320{
    3331     auto* dataStore = WKContextGetWebsiteDataStore(platformContext());
    33323321    ResourceStatisticsCallbackContext context(*this);
    3333     WKWebsiteDataStoreIsStatisticsHasHadUserInteraction(dataStore, host, &context, resourceStatisticsBooleanResultCallback);
     3322    WKWebsiteDataStoreIsStatisticsHasHadUserInteraction(TestController::websiteDataStore(), host, &context, resourceStatisticsBooleanResultCallback);
    33343323    runUntil(context.done, noTimeout);
    33353324    return context.result;
     
    33383327void TestController::setStatisticsGrandfathered(WKStringRef host, bool value)
    33393328{
    3340     auto* dataStore = WKContextGetWebsiteDataStore(platformContext());
    3341     WKWebsiteDataStoreSetStatisticsGrandfathered(dataStore, host, value);
     3329    WKWebsiteDataStoreSetStatisticsGrandfathered(TestController::websiteDataStore(), host, value);
    33423330}
    33433331
    33443332bool TestController::isStatisticsGrandfathered(WKStringRef host)
    33453333{
    3346     auto* dataStore = WKContextGetWebsiteDataStore(platformContext());
    33473334    ResourceStatisticsCallbackContext context(*this);
    3348     WKWebsiteDataStoreIsStatisticsGrandfathered(dataStore, host, &context, resourceStatisticsBooleanResultCallback);
     3335    WKWebsiteDataStoreIsStatisticsGrandfathered(TestController::websiteDataStore(), host, &context, resourceStatisticsBooleanResultCallback);
    33493336    runUntil(context.done, noTimeout);
    33503337    return context.result;
     
    33533340void TestController::setStatisticsSubframeUnderTopFrameOrigin(WKStringRef host, WKStringRef topFrameHost)
    33543341{
    3355     auto* dataStore = WKContextGetWebsiteDataStore(platformContext());
    3356     WKWebsiteDataStoreSetStatisticsSubframeUnderTopFrameOrigin(dataStore, host, topFrameHost);
     3342    WKWebsiteDataStoreSetStatisticsSubframeUnderTopFrameOrigin(TestController::websiteDataStore(), host, topFrameHost);
    33573343}
    33583344
    33593345void TestController::setStatisticsSubresourceUnderTopFrameOrigin(WKStringRef host, WKStringRef topFrameHost)
    33603346{
    3361     auto* dataStore = WKContextGetWebsiteDataStore(platformContext());
    3362     WKWebsiteDataStoreSetStatisticsSubresourceUnderTopFrameOrigin(dataStore, host, topFrameHost);
     3347    WKWebsiteDataStoreSetStatisticsSubresourceUnderTopFrameOrigin(TestController::websiteDataStore(), host, topFrameHost);
    33633348}
    33643349
    33653350void TestController::setStatisticsSubresourceUniqueRedirectTo(WKStringRef host, WKStringRef hostRedirectedTo)
    33663351{
    3367     auto* dataStore = WKContextGetWebsiteDataStore(platformContext());
    3368     WKWebsiteDataStoreSetStatisticsSubresourceUniqueRedirectTo(dataStore, host, hostRedirectedTo);
     3352    WKWebsiteDataStoreSetStatisticsSubresourceUniqueRedirectTo(TestController::websiteDataStore(), host, hostRedirectedTo);
    33693353}
    33703354
    33713355void TestController::setStatisticsSubresourceUniqueRedirectFrom(WKStringRef host, WKStringRef hostRedirectedFrom)
    33723356{
    3373     auto* dataStore = WKContextGetWebsiteDataStore(platformContext());
    3374     WKWebsiteDataStoreSetStatisticsSubresourceUniqueRedirectFrom(dataStore, host, hostRedirectedFrom);
     3357    WKWebsiteDataStoreSetStatisticsSubresourceUniqueRedirectFrom(TestController::websiteDataStore(), host, hostRedirectedFrom);
    33753358}
    33763359
    33773360void TestController::setStatisticsTopFrameUniqueRedirectTo(WKStringRef host, WKStringRef hostRedirectedTo)
    33783361{
    3379     auto* dataStore = WKContextGetWebsiteDataStore(platformContext());
    3380     WKWebsiteDataStoreSetStatisticsTopFrameUniqueRedirectTo(dataStore, host, hostRedirectedTo);
     3362    WKWebsiteDataStoreSetStatisticsTopFrameUniqueRedirectTo(TestController::websiteDataStore(), host, hostRedirectedTo);
    33813363}
    33823364
    33833365void TestController::setStatisticsTopFrameUniqueRedirectFrom(WKStringRef host, WKStringRef hostRedirectedFrom)
    33843366{
    3385     auto* dataStore = WKContextGetWebsiteDataStore(platformContext());
    3386     WKWebsiteDataStoreSetStatisticsTopFrameUniqueRedirectFrom(dataStore, host, hostRedirectedFrom);
     3367    WKWebsiteDataStoreSetStatisticsTopFrameUniqueRedirectFrom(TestController::websiteDataStore(), host, hostRedirectedFrom);
    33873368}
    33883369
    33893370void TestController::setStatisticsCrossSiteLoadWithLinkDecoration(WKStringRef fromHost, WKStringRef toHost)
    33903371{
    3391     auto* dataStore = WKContextGetWebsiteDataStore(platformContext());
    33923372    ResourceStatisticsCallbackContext context(*this);
    3393     WKWebsiteDataStoreSetStatisticsCrossSiteLoadWithLinkDecoration(dataStore, fromHost, toHost, &context, resourceStatisticsVoidResultCallback);
     3373    WKWebsiteDataStoreSetStatisticsCrossSiteLoadWithLinkDecoration(TestController::websiteDataStore(), fromHost, toHost, &context, resourceStatisticsVoidResultCallback);
    33943374    runUntil(context.done, noTimeout);
    33953375}
     
    33973377void TestController::setStatisticsTimeToLiveUserInteraction(double seconds)
    33983378{
    3399     auto* dataStore = WKContextGetWebsiteDataStore(platformContext());
    34003379    ResourceStatisticsCallbackContext context(*this);
    3401     WKWebsiteDataStoreSetStatisticsTimeToLiveUserInteraction(dataStore, seconds, &context, resourceStatisticsVoidResultCallback);
     3380    WKWebsiteDataStoreSetStatisticsTimeToLiveUserInteraction(TestController::websiteDataStore(), seconds, &context, resourceStatisticsVoidResultCallback);
    34023381    runUntil(context.done, noTimeout);
    34033382}
     
    34053384void TestController::statisticsProcessStatisticsAndDataRecords()
    34063385{
    3407     auto* dataStore = WKContextGetWebsiteDataStore(platformContext());
    34083386    ResourceStatisticsCallbackContext context(*this);
    3409     WKWebsiteDataStoreStatisticsProcessStatisticsAndDataRecords(dataStore, &context, resourceStatisticsVoidResultCallback);
     3387    WKWebsiteDataStoreStatisticsProcessStatisticsAndDataRecords(TestController::websiteDataStore(), &context, resourceStatisticsVoidResultCallback);
    34103388    runUntil(context.done, noTimeout);
    34113389}
     
    34133391void TestController::statisticsUpdateCookieBlocking()
    34143392{
    3415     auto* dataStore = WKContextGetWebsiteDataStore(platformContext());
    34163393    ResourceStatisticsCallbackContext context(*this);
    3417     WKWebsiteDataStoreStatisticsUpdateCookieBlocking(dataStore, &context, resourceStatisticsVoidResultCallback);
     3394    WKWebsiteDataStoreStatisticsUpdateCookieBlocking(TestController::websiteDataStore(), &context, resourceStatisticsVoidResultCallback);
    34183395    runUntil(context.done, noTimeout);
    34193396    m_currentInvocation->didSetBlockCookiesForHost();
     
    34223399void TestController::statisticsSubmitTelemetry()
    34233400{
    3424     auto* dataStore = WKContextGetWebsiteDataStore(platformContext());
    3425     WKWebsiteDataStoreStatisticsSubmitTelemetry(dataStore);
     3401    WKWebsiteDataStoreStatisticsSubmitTelemetry(TestController::websiteDataStore());
    34263402}
    34273403
    34283404void TestController::setStatisticsNotifyPagesWhenDataRecordsWereScanned(bool value)
    34293405{
    3430     auto* dataStore = WKContextGetWebsiteDataStore(platformContext());
    3431     WKWebsiteDataStoreSetStatisticsNotifyPagesWhenDataRecordsWereScanned(dataStore, value);
     3406    WKWebsiteDataStoreSetStatisticsNotifyPagesWhenDataRecordsWereScanned(TestController::websiteDataStore(), value);
    34323407}
    34333408
    34343409void TestController::setStatisticsIsRunningTest(bool value)
    34353410{
    3436     auto* dataStore = WKContextGetWebsiteDataStore(platformContext());
    34373411    ResourceStatisticsCallbackContext context(*this);
    3438     WKWebsiteDataStoreSetStatisticsIsRunningTest(dataStore, value, &context, resourceStatisticsVoidResultCallback);
     3412    WKWebsiteDataStoreSetStatisticsIsRunningTest(TestController::websiteDataStore(), value, &context, resourceStatisticsVoidResultCallback);
    34393413    runUntil(context.done, noTimeout);
    34403414}
     
    34423416void TestController::setStatisticsShouldClassifyResourcesBeforeDataRecordsRemoval(bool value)
    34433417{
    3444     auto* dataStore = WKContextGetWebsiteDataStore(platformContext());
    3445     WKWebsiteDataStoreSetStatisticsShouldClassifyResourcesBeforeDataRecordsRemoval(dataStore, value);
     3418    WKWebsiteDataStoreSetStatisticsShouldClassifyResourcesBeforeDataRecordsRemoval(TestController::websiteDataStore(), value);
    34463419}
    34473420
    34483421void TestController::setStatisticsNotifyPagesWhenTelemetryWasCaptured(bool value)
    34493422{
    3450     auto* dataStore = WKContextGetWebsiteDataStore(platformContext());
    3451     WKWebsiteDataStoreSetStatisticsNotifyPagesWhenTelemetryWasCaptured(dataStore, value);
     3423    WKWebsiteDataStoreSetStatisticsNotifyPagesWhenTelemetryWasCaptured(TestController::websiteDataStore(), value);
    34523424}
    34533425
    34543426void TestController::setStatisticsMinimumTimeBetweenDataRecordsRemoval(double seconds)
    34553427{
    3456     auto* dataStore = WKContextGetWebsiteDataStore(platformContext());
    3457     WKWebsiteDataStoreSetStatisticsMinimumTimeBetweenDataRecordsRemoval(dataStore, seconds);
     3428    WKWebsiteDataStoreSetStatisticsMinimumTimeBetweenDataRecordsRemoval(TestController::websiteDataStore(), seconds);
    34583429}
    34593430
    34603431void TestController::setStatisticsGrandfatheringTime(double seconds)
    34613432{
    3462     auto* dataStore = WKContextGetWebsiteDataStore(platformContext());
    3463     WKWebsiteDataStoreSetStatisticsGrandfatheringTime(dataStore, seconds);
     3433    WKWebsiteDataStoreSetStatisticsGrandfatheringTime(TestController::websiteDataStore(), seconds);
    34643434}
    34653435
    34663436void TestController::setStatisticsMaxStatisticsEntries(unsigned entries)
    34673437{
    3468     auto* dataStore = WKContextGetWebsiteDataStore(platformContext());
    3469     WKWebsiteDataStoreSetStatisticsMaxStatisticsEntries(dataStore, entries);
     3438    WKWebsiteDataStoreSetStatisticsMaxStatisticsEntries(TestController::websiteDataStore(), entries);
    34703439}
    34713440
    34723441void TestController::setStatisticsPruneEntriesDownTo(unsigned entries)
    34733442{
    3474     auto* dataStore = WKContextGetWebsiteDataStore(platformContext());
    3475     WKWebsiteDataStoreSetStatisticsPruneEntriesDownTo(dataStore, entries);
     3443    WKWebsiteDataStoreSetStatisticsPruneEntriesDownTo(TestController::websiteDataStore(), entries);
    34763444}
    34773445
    34783446void TestController::statisticsClearInMemoryAndPersistentStore()
    34793447{
    3480     auto* dataStore = WKContextGetWebsiteDataStore(platformContext());
    34813448    ResourceStatisticsCallbackContext context(*this);
    3482     WKWebsiteDataStoreStatisticsClearInMemoryAndPersistentStore(dataStore, &context, resourceStatisticsVoidResultCallback);
     3449    WKWebsiteDataStoreStatisticsClearInMemoryAndPersistentStore(TestController::websiteDataStore(), &context, resourceStatisticsVoidResultCallback);
    34833450    runUntil(context.done, noTimeout);
    34843451    m_currentInvocation->didClearStatisticsThroughWebsiteDataRemoval();
     
    34873454void TestController::statisticsClearInMemoryAndPersistentStoreModifiedSinceHours(unsigned hours)
    34883455{
    3489     auto* dataStore = WKContextGetWebsiteDataStore(platformContext());
    34903456    ResourceStatisticsCallbackContext context(*this);
    3491     WKWebsiteDataStoreStatisticsClearInMemoryAndPersistentStoreModifiedSinceHours(dataStore, hours, &context, resourceStatisticsVoidResultCallback);
     3457    WKWebsiteDataStoreStatisticsClearInMemoryAndPersistentStoreModifiedSinceHours(TestController::websiteDataStore(), hours, &context, resourceStatisticsVoidResultCallback);
    34923458    runUntil(context.done, noTimeout);
    34933459    m_currentInvocation->didClearStatisticsThroughWebsiteDataRemoval();
     
    34963462void TestController::statisticsClearThroughWebsiteDataRemoval()
    34973463{
    3498     auto* dataStore = WKContextGetWebsiteDataStore(platformContext());
    34993464    ResourceStatisticsCallbackContext context(*this);
    3500     WKWebsiteDataStoreStatisticsClearThroughWebsiteDataRemoval(dataStore, &context, resourceStatisticsVoidResultCallback);
     3465    WKWebsiteDataStoreStatisticsClearThroughWebsiteDataRemoval(TestController::websiteDataStore(), &context, resourceStatisticsVoidResultCallback);
    35013466    runUntil(context.done, noTimeout);
    35023467    m_currentInvocation->didClearStatisticsThroughWebsiteDataRemoval();
     
    35053470void TestController::statisticsDeleteCookiesForHost(WKStringRef host, bool includeHttpOnlyCookies)
    35063471{
    3507     auto* dataStore = WKContextGetWebsiteDataStore(platformContext());
    35083472    ResourceStatisticsCallbackContext context(*this);
    3509     WKWebsiteDataStoreStatisticsDeleteCookiesForTesting(dataStore, host, includeHttpOnlyCookies, &context, resourceStatisticsVoidResultCallback);
     3473    WKWebsiteDataStoreStatisticsDeleteCookiesForTesting(TestController::websiteDataStore(), host, includeHttpOnlyCookies, &context, resourceStatisticsVoidResultCallback);
    35103474    runUntil(context.done, noTimeout);
    35113475}
     
    35133477bool TestController::isStatisticsHasLocalStorage(WKStringRef host)
    35143478{
    3515     auto* dataStore = WKContextGetWebsiteDataStore(platformContext());
    35163479    ResourceStatisticsCallbackContext context(*this);
    3517     WKWebsiteDataStoreStatisticsHasLocalStorage(dataStore, host, &context, resourceStatisticsBooleanResultCallback);
     3480    WKWebsiteDataStoreStatisticsHasLocalStorage(TestController::websiteDataStore(), host, &context, resourceStatisticsBooleanResultCallback);
    35183481    runUntil(context.done, noTimeout);
    35193482    return context.result;
     
    35223485void TestController::setStatisticsCacheMaxAgeCap(double seconds)
    35233486{
    3524     auto* dataStore = WKContextGetWebsiteDataStore(platformContext());
    35253487    ResourceStatisticsCallbackContext context(*this);
    3526     WKWebsiteDataStoreSetStatisticsCacheMaxAgeCap(dataStore, seconds, &context, resourceStatisticsVoidResultCallback);
     3488    WKWebsiteDataStoreSetStatisticsCacheMaxAgeCap(TestController::websiteDataStore(), seconds, &context, resourceStatisticsVoidResultCallback);
    35273489    runUntil(context.done, noTimeout);
    35283490}
     
    35303492bool TestController::hasStatisticsIsolatedSession(WKStringRef host)
    35313493{
    3532     auto* dataStore = WKContextGetWebsiteDataStore(platformContext());
    35333494    ResourceStatisticsCallbackContext context(*this);
    3534     WKWebsiteDataStoreStatisticsHasIsolatedSession(dataStore, host, &context, resourceStatisticsBooleanResultCallback);
     3495    WKWebsiteDataStoreStatisticsHasIsolatedSession(TestController::websiteDataStore(), host, &context, resourceStatisticsBooleanResultCallback);
    35353496    runUntil(context.done, noTimeout);
    35363497    return context.result;
     
    35393500void TestController::statisticsResetToConsistentState()
    35403501{
    3541     auto* dataStore = WKContextGetWebsiteDataStore(platformContext());
    35423502    ResourceStatisticsCallbackContext context(*this);
    3543     WKWebsiteDataStoreStatisticsResetToConsistentState(dataStore, &context, resourceStatisticsVoidResultCallback);
     3503    WKWebsiteDataStoreStatisticsResetToConsistentState(TestController::websiteDataStore(), &context, resourceStatisticsVoidResultCallback);
    35443504    runUntil(context.done, noTimeout);
    35453505    m_currentInvocation->didResetStatisticsToConsistentState();
     
    36103570void TestController::setWebAuthenticationMockConfiguration(WKDictionaryRef configuration)
    36113571{
    3612     WKWebsiteDataStoreSetWebAuthenticationMockConfiguration(WKContextGetWebsiteDataStore(platformContext()), configuration);
     3572    WKWebsiteDataStoreSetWebAuthenticationMockConfiguration(TestController::websiteDataStore(), configuration);
    36133573}
    36143574
     
    36663626void TestController::clearAdClickAttributionsThroughWebsiteDataRemoval()
    36673627{
    3668     auto* dataStore = WKContextGetWebsiteDataStore(platformContext());
    36693628    AdClickAttributionVoidCallbackContext callbackContext(*this);
    3670     WKWebsiteDataStoreClearAdClickAttributionsThroughWebsiteDataRemoval(dataStore, &callbackContext, adClickAttributionVoidCallback);
     3629    WKWebsiteDataStoreClearAdClickAttributionsThroughWebsiteDataRemoval(TestController::websiteDataStore(), &callbackContext, adClickAttributionVoidCallback);
    36713630    runUntil(callbackContext.done, noTimeout);
    36723631}
  • trunk/Tools/WebKitTestRunner/TestController.h

    r249096 r249614  
    8989public:
    9090    static TestController& singleton();
     91    static WKWebsiteDataStoreRef websiteDataStore();
    9192
    9293    static const unsigned viewWidth;
  • trunk/Tools/WebKitTestRunner/TestInvocation.cpp

    r249589 r249614  
    934934   
    935935    if (WKStringIsEqualToUTF8CString(messageName, "DeleteAllIndexedDatabases")) {
    936         WKWebsiteDataStoreRemoveAllIndexedDatabases(WKContextGetWebsiteDataStore(TestController::singleton().context()), nullptr, { });
     936        WKWebsiteDataStoreRemoveAllIndexedDatabases(TestController::websiteDataStore(), nullptr, { });
    937937        return nullptr;
    938938    }
  • trunk/Tools/WebKitTestRunner/cocoa/TestControllerCocoa.mm

    r249589 r249614  
    6565
    6666    globalWebViewConfiguration.processPool = (__bridge WKProcessPool *)context;
    67     globalWebViewConfiguration.websiteDataStore = (__bridge WKWebsiteDataStore *)WKContextGetWebsiteDataStore(context);
     67    globalWebViewConfiguration.websiteDataStore = (__bridge WKWebsiteDataStore *)TestController::websiteDataStore();
    6868    globalWebViewConfiguration._allowUniversalAccessFromFileURLs = YES;
    6969    globalWebViewConfiguration._applePayEnabled = YES;
     
    7171    WKContextSetStorageAccessAPIEnabled(context, true);
    7272
    73     WKWebsiteDataStore* poolWebsiteDataStore = (__bridge WKWebsiteDataStore *)WKContextGetWebsiteDataStore((__bridge WKContextRef)globalWebViewConfiguration.processPool);
     73    WKWebsiteDataStore* poolWebsiteDataStore = (__bridge WKWebsiteDataStore *)TestController::websiteDataStore();
    7474    if (libraryPath) {
    7575        String cacheStorageDirectory = String(libraryPath) + '/' + "CacheStorage";
     
    252252void TestController::cocoaResetStateToConsistentValues(const TestOptions& options)
    253253{
     254    ASSERT(![WKWebsiteDataStore _defaultDataStoreExists]);
    254255    m_calendarSwizzler = nullptr;
    255256    m_overriddenCalendarIdentifier = nil;
Note: See TracChangeset for help on using the changeset viewer.