summaryrefslogtreecommitdiff
path: root/TAO/orbsvcs/orbsvcs/Event/EC_Basic_Filter_Builder.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'TAO/orbsvcs/orbsvcs/Event/EC_Basic_Filter_Builder.cpp')
-rw-r--r--TAO/orbsvcs/orbsvcs/Event/EC_Basic_Filter_Builder.cpp10
1 files changed, 10 insertions, 0 deletions
diff --git a/TAO/orbsvcs/orbsvcs/Event/EC_Basic_Filter_Builder.cpp b/TAO/orbsvcs/orbsvcs/Event/EC_Basic_Filter_Builder.cpp
index de935dc5272..ce09012eb3d 100644
--- a/TAO/orbsvcs/orbsvcs/Event/EC_Basic_Filter_Builder.cpp
+++ b/TAO/orbsvcs/orbsvcs/Event/EC_Basic_Filter_Builder.cpp
@@ -5,6 +5,7 @@
#include "EC_Type_Filter.h"
#include "EC_Conjunction_Filter.h"
#include "EC_Disjunction_Filter.h"
+#include "EC_Timeout_Filter.h"
#if ! defined (__ACE_INLINE__)
#include "EC_Basic_Filter_Builder.i"
@@ -58,6 +59,15 @@ TAO_EC_Basic_Filter_Builder::
}
return new TAO_EC_Disjunction_Filter (children, n);
}
+ else if (e.header.type == ACE_ES_EVENT_INTERVAL_TIMEOUT
+ || e.header.type == ACE_ES_EVENT_DEADLINE_TIMEOUT)
+ {
+ pos++;
+ TAO_EC_QOS_Info qos_info;
+ return new TAO_EC_Timeout_Filter (this->event_channel_,
+ qos_info,
+ e.header.creation_time);
+ }
return new TAO_EC_Type_Filter (e.header);
}