/*
- * $Id$
- *
- * DEBUG: section 16 Cache Manager API
+ * Copyright (C) 1996-2015 The Squid Software Foundation and contributors
*
+ * Squid software is distributed under GPLv2+ license and includes
+ * contributions from numerous individuals and organizations.
+ * Please see the COPYING and CONTRIBUTORS files for details.
*/
+/* DEBUG: section 16 Cache Manager API */
+
#ifndef SQUID_MGR_STORE_TO_COMM_WRITER_H
#define SQUID_MGR_STORE_TO_COMM_WRITER_H
#include "base/AsyncJob.h"
+#include "comm/forward.h"
#include "mgr/Action.h"
#include "StoreIOBuffer.h"
-
class store_client;
class CommIoCbParams;
class CommCloseCbParams;
/// for the given StoreEntry and client FD
class StoreToCommWriter: public AsyncJob
{
+ CBDATA_CLASS(StoreToCommWriter);
+
public:
- StoreToCommWriter(int aFd, StoreEntry *anEntry);
+ StoreToCommWriter(const Comm::ConnectionPointer &conn, StoreEntry *anEntry);
virtual ~StoreToCommWriter();
protected:
void close();
protected:
- int fd; ///< HTTP client descriptor
+ Comm::ConnectionPointer clientConnection; ///< HTTP client descriptor
StoreEntry* entry; ///< store entry with the cache manager response
store_client* sc; ///< our registration with the store
AsyncCall::Pointer closer; ///< comm_close handler
char buffer[HTTP_REQBUF_SZ]; ///< action results; Store fills, Comm writes
-
- CBDATA_CLASS2(StoreToCommWriter);
};
} // namespace Mgr
#endif /* SQUID_MGR_STORE_TO_COMM_WRITER_H */
+