servlib/bundling/BundleDaemon.h
changeset 5 1849bf57d910
parent 0 2b3e5ec03512
child 6 d1f220643814
--- a/servlib/bundling/BundleDaemon.h	Wed May 04 15:44:40 2011 +0100
+++ b/servlib/bundling/BundleDaemon.h	Fri May 27 18:33:25 2011 +0100
@@ -169,7 +169,12 @@
      * Accessor for the custody bundles list.
      */
     BundleList* custody_bundles() { return custody_bundles_; }
-    
+   
+    /**
+     * Accessor for the BPQ bundles list.
+     */
+    BundleList* bpq_bundles() { return bpq_bundles_; }
+ 
     /**
      * Format the given StringBuffer with current routing info.
      */
@@ -280,6 +285,7 @@
      */
     void check_and_deliver_to_registrations(Bundle* bundle, const EndpointID&);
 
+    void print_cache();
 protected:
     friend class BundleActions;
 
@@ -403,6 +409,16 @@
     void release_custody(Bundle* bundle);
 
     /**
+     * Add BPQ bundle to the on-path cache
+     */
+    bool accept_bpq_response(Bundle* bundle);
+
+    /**
+     * todo
+     */
+    bool answer_bpq_query(Bundle* bundle);
+
+    /**
      * Add the bundle to the pending list and (optionally) the
      * persistent store, and set up the expiration timer for it.
      *
@@ -441,6 +457,14 @@
      */
     Bundle* find_duplicate(Bundle* bundle);
 
+
+    /**
+     * Check the bundle source and if it contains a QUERY_EXTENSION_BLOCK
+     * if if does ...
+     */
+    void handle_bpq_block(Bundle* b, BundleReceivedEvent* event);
+
+
     /**
      * Deliver the bundle to the given registration
      */
@@ -484,7 +508,10 @@
 
     /// The list of all bundles that we have custody of
     BundleList* custody_bundles_;
-    
+   
+    /// The list of all bundles with the response QUERY_EXTENSION
+    BundleList* bpq_bundles_;
+ 
     /// The event queue
     oasys::MsgQueue<BundleEvent*>* eventq_;