#include "adaptation/Initiate.h"
#include "AccessLogEntry.h"
#include "HttpReply.h"
+#include "ipcache.h"
class CommConnectCbParams;
virtual void handleCommTimedout();
virtual void handleCommClosed();
+ /// record error detail if possible
+ virtual void detailError(int errDetail) {}
+
void openConnection();
void closeConnection();
void dieOnConnectionFailure();
// custom exception handling and end-of-call checks
virtual void callException(const std::exception &e);
virtual void callEnd();
+ /// clear stored error details, if any; used for retries/repeats
+ virtual void clearError() {}
+ void dnsLookupDone(const ipcache_addrs *ia);
protected:
// logging
void setOutcome(const XactOutcome &xo);
virtual void finalizeLogInfo();
+public:
ServiceRep &service();
private:
AsyncCall::Pointer writer;
AsyncCall::Pointer closer;
- AccessLogEntry al;
+ AccessLogEntry::Pointer alep; ///< icap.log entry
+ AccessLogEntry &al; ///< short for *alep
timeval icap_tr_start; /*time when the ICAP transaction was created */
timeval icap_tio_start; /*time when the first ICAP request byte was scheduled for sending*/
//CBDATA_CLASS2(Xaction);
};
-
} // namespace Icap
} // namespace Adaptation