summaryrefslogtreecommitdiff
path: root/Source/WebKit2/WebProcess/Network/NetworkProcessConnection.h
diff options
context:
space:
mode:
Diffstat (limited to 'Source/WebKit2/WebProcess/Network/NetworkProcessConnection.h')
-rw-r--r--Source/WebKit2/WebProcess/Network/NetworkProcessConnection.h32
1 files changed, 17 insertions, 15 deletions
diff --git a/Source/WebKit2/WebProcess/Network/NetworkProcessConnection.h b/Source/WebKit2/WebProcess/Network/NetworkProcessConnection.h
index 842f6ebad..fb30156e8 100644
--- a/Source/WebKit2/WebProcess/Network/NetworkProcessConnection.h
+++ b/Source/WebKit2/WebProcess/Network/NetworkProcessConnection.h
@@ -31,8 +31,6 @@
#include <wtf/RefCounted.h>
#include <wtf/text/WTFString.h>
-#if ENABLE(NETWORK_PROCESS)
-
namespace IPC {
class DataReference;
}
@@ -41,6 +39,7 @@ namespace WebCore {
class ResourceError;
class ResourceRequest;
class ResourceResponse;
+class SessionID;
}
namespace WebKit {
@@ -49,37 +48,40 @@ typedef uint64_t ResourceLoadIdentifier;
class NetworkProcessConnection : public RefCounted<NetworkProcessConnection>, IPC::Connection::Client {
public:
- static PassRefPtr<NetworkProcessConnection> create(IPC::Connection::Identifier connectionIdentifier)
+ static Ref<NetworkProcessConnection> create(IPC::Connection::Identifier connectionIdentifier)
{
- return adoptRef(new NetworkProcessConnection(connectionIdentifier));
+ return adoptRef(*new NetworkProcessConnection(connectionIdentifier));
}
~NetworkProcessConnection();
- IPC::Connection* connection() const { return m_connection.get(); }
+ IPC::Connection& connection() { return m_connection.get(); }
+
+ void didReceiveNetworkProcessConnectionMessage(IPC::Connection&, IPC::Decoder&);
- void didReceiveNetworkProcessConnectionMessage(IPC::Connection*, IPC::MessageDecoder&);
+ void writeBlobsToTemporaryFiles(const Vector<String>& blobURLs, Function<void (const Vector<String>& filePaths)>&& completionHandler);
private:
NetworkProcessConnection(IPC::Connection::Identifier);
// IPC::Connection::Client
- virtual void didReceiveMessage(IPC::Connection*, IPC::MessageDecoder&) override;
- virtual void didReceiveSyncMessage(IPC::Connection*, IPC::MessageDecoder&, std::unique_ptr<IPC::MessageEncoder>&) override;
- virtual void didClose(IPC::Connection*) override;
- virtual void didReceiveInvalidMessage(IPC::Connection*, IPC::StringReference messageReceiverName, IPC::StringReference messageName) override;
+ void didReceiveMessage(IPC::Connection&, IPC::Decoder&) override;
+ void didReceiveSyncMessage(IPC::Connection&, IPC::Decoder&, std::unique_ptr<IPC::Encoder>&) override;
+ void didClose(IPC::Connection&) override;
+ void didReceiveInvalidMessage(IPC::Connection&, IPC::StringReference messageReceiverName, IPC::StringReference messageName) override;
+
+ void didWriteBlobsToTemporaryFiles(uint64_t requestIdentifier, const Vector<String>& filenames);
#if ENABLE(SHAREABLE_RESOURCE)
// Message handlers.
- void didCacheResource(const WebCore::ResourceRequest&, const ShareableResource::Handle&);
+ void didCacheResource(const WebCore::ResourceRequest&, const ShareableResource::Handle&, WebCore::SessionID);
#endif
// The connection from the web process to the network process.
- RefPtr<IPC::Connection> m_connection;
+ Ref<IPC::Connection> m_connection;
+
+ HashMap<uint64_t, Function<void (const Vector<String>&)>> m_writeBlobToFileCompletionHandlers;
};
} // namespace WebKit
-#endif // ENABLE(NETWORK_PROCESS)
-
-
#endif // NetworkProcessConnection_h