]> git.ipfire.org Git - thirdparty/squid.git/blobdiff - src/Pipeline.h
SourceFormat Enforcement
[thirdparty/squid.git] / src / Pipeline.h
index 14d25d14278ba6ded43ea1590906ac5f41790bde..dcfb15c556a6834d404f362611dd6e2b5af009d7 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 1996-2016 The Squid Software Foundation and contributors
+ * Copyright (C) 1996-2017 The Squid Software Foundation and contributors
  *
  * Squid software is distributed under GPLv2+ license and includes
  * contributions from numerous individuals and organizations.
@@ -41,10 +41,13 @@ public:
     ~Pipeline() = default;
 
     /// register a new request context to the pipeline
-    void add(const Http::StreamContextPointer &);
+    void add(const Http::StreamPointer &);
 
     /// get the first request context in the pipeline
-    Http::StreamContextPointer front() const;
+    Http::StreamPointer front() const;
+
+    /// get the last request context in the pipeline
+    Http::StreamPointer back() const;
 
     /// how many requests are currently pipelined
     size_t count() const {return requests.size();}
@@ -56,7 +59,7 @@ public:
     void terminateAll(const int xerrno);
 
     /// deregister the front request from the pipeline
-    void popMe(const Http::StreamContextPointer &);
+    void popMe(const Http::StreamPointer &);
 
     /// Number of requests seen in this pipeline (so far).
     /// Includes incomplete transactions.
@@ -64,7 +67,7 @@ public:
 
 private:
     /// requests parsed from the connection but not yet completed.
-    std::list<Http::StreamContextPointer> requests;
+    std::list<Http::StreamPointer> requests;
 };
 
 #endif /* SQUID_SRC_PIPELINE_H */