]> git.ipfire.org Git - thirdparty/squid.git/blobdiff - src/ipc/Strand.h
Source Format Enforcement (#532)
[thirdparty/squid.git] / src / ipc / Strand.h
index 899c348783fb7260af18d3b4d5ec753a411fc0c3..c6392494d1e179fa172eef3131ce48052e927fbe 100644 (file)
@@ -1,25 +1,33 @@
 /*
- * $Id$
- *
- * DEBUG: section 54    Interprocess Communication
+ * Copyright (C) 1996-2020 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 54    Interprocess Communication */
+
 #ifndef SQUID_IPC_STRAND_H
 #define SQUID_IPC_STRAND_H
 
+#include "ipc/forward.h"
 #include "ipc/Port.h"
-
+#include "mgr/forward.h"
+#if SQUID_SNMP
+#include "snmp/forward.h"
+#endif
 
 namespace Ipc
 {
 
 class StrandCoord;
-class Descriptor;
 
 /// Receives coordination messages on behalf of its process or thread
 class Strand: public Port
 {
+    CBDATA_CLASS(Strand);
+
 public:
     Strand();
 
@@ -31,8 +39,13 @@ protected:
 
 private:
     void registerSelf(); /// let Coordinator know this strand exists
-    void handleRegistrationResponse(const StrandCoord &strand);
-    void putDescriptor(const Descriptor &message);
+    void handleRegistrationResponse(const HereIamMessage &msg);
+    void handleCacheMgrRequest(const Mgr::Request& request);
+    void handleCacheMgrResponse(const Mgr::Response& response);
+#if SQUID_SNMP
+    void handleSnmpRequest(const Snmp::Request& request);
+    void handleSnmpResponse(const Snmp::Response& response);
+#endif
 
 private:
     bool isRegistered; ///< whether Coordinator ACKed registration (unused)
@@ -40,12 +53,9 @@ private:
 private:
     Strand(const Strand&); // not implemented
     Strand& operator =(const Strand&); // not implemented
-
-    CBDATA_CLASS2(Strand);
 };
 
-
 }
 
-
 #endif /* SQUID_IPC_STRAND_H */
+