--- 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_;