LegacyCustomProtocolManagerProxy.h [plain text]
#pragma once
#include "DataReference.h"
#include "LegacyCustomProtocolID.h"
#include "MessageReceiver.h"
#include <wtf/WeakPtr.h>
#if PLATFORM(COCOA)
#include <wtf/HashMap.h>
#include <wtf/RetainPtr.h>
OBJC_CLASS WKCustomProtocolLoader;
#endif
namespace WebCore {
class ResourceError;
class ResourceRequest;
class ResourceResponse;
}
namespace WebKit {
class NetworkProcessProxy;
class LegacyCustomProtocolManagerProxy : public CanMakeWeakPtr<LegacyCustomProtocolManagerProxy>, public IPC::MessageReceiver {
public:
LegacyCustomProtocolManagerProxy(NetworkProcessProxy&);
~LegacyCustomProtocolManagerProxy();
void startLoading(LegacyCustomProtocolID, const WebCore::ResourceRequest&);
void stopLoading(LegacyCustomProtocolID);
void invalidate();
void wasRedirectedToRequest(LegacyCustomProtocolID, const WebCore::ResourceRequest&, const WebCore::ResourceResponse&);
void didReceiveResponse(LegacyCustomProtocolID, const WebCore::ResourceResponse&, uint32_t cacheStoragePolicy);
void didLoadData(LegacyCustomProtocolID, const IPC::DataReference&);
void didFailWithError(LegacyCustomProtocolID, const WebCore::ResourceError&);
void didFinishLoading(LegacyCustomProtocolID);
private:
void didReceiveMessage(IPC::Connection&, IPC::Decoder&) override;
NetworkProcessProxy& m_networkProcessProxy;
};
}