summaryrefslogtreecommitdiff
path: root/ACE/bin/FOCUS/specializations/Wait_Strategy/Wait_On_Read.spl
diff options
context:
space:
mode:
Diffstat (limited to 'ACE/bin/FOCUS/specializations/Wait_Strategy/Wait_On_Read.spl')
-rw-r--r--ACE/bin/FOCUS/specializations/Wait_Strategy/Wait_On_Read.spl131
1 files changed, 131 insertions, 0 deletions
diff --git a/ACE/bin/FOCUS/specializations/Wait_Strategy/Wait_On_Read.spl b/ACE/bin/FOCUS/specializations/Wait_Strategy/Wait_On_Read.spl
new file mode 100644
index 00000000000..65d6ff48fe7
--- /dev/null
+++ b/ACE/bin/FOCUS/specializations/Wait_Strategy/Wait_On_Read.spl
@@ -0,0 +1,131 @@
+<?xml version="1.0"?>
+
+<!-- Wait Strategy Specialization
+ * ===============================
+ * Details all the specialization transformations necessary
+ * to specialize the Wait_Strategy with the Wait_On_Read strategy
+ *
+ * @author Arvind S. Krishna <arvindk@dre.vanderbilt.edu>
+ * $Id$
+-->
+
+<transform>
+
+<module name="TAO/tao">
+
+<file name="Wait_Strategy.cpp">
+
+<!-- Copy specialized code from the Wait_On_Read strategy
+ to this file -->
+
+<copy-from-source>
+
+ <!-- Name of the source file from which to copy. In this case, this is
+ the Wait_On_Read source file -->
+ <source>Wait_On_Read.cpp</source>
+
+ <!-- Copy data between the following hooks defined in the aforementioned
+ file -->
+ <copy-hook-start>WAIT_STRATEGY_SPL_COPY_HOOK_START</copy-hook-start>
+ <copy-hook-end>WAIT_STRATEGY_SPL_COPY_HOOK_END</copy-hook-end>
+
+ <!-- Destination hook in the Wait_Strategy.h file where the code
+ should be placed -->
+ <dest-hook>TAO_WAIT_STRATEGY_SPL_ADD_HOOK</dest-hook>
+
+</copy-from-source>
+
+<!-- Copy include files to the hook to get the necessary include files -->
+<add>
+ <hook>WAIT_STRATEGY_SPL_COPY_HOOK_START</hook>
+ <data>
+#include "tao/Wait_On_Read.h"
+#include "tao/Transport.h"
+#include "tao/Resume_Handle.h"
+#include "tao/Synch_Reply_Dispatcher.h"
+#include "tao/Client_Strategy_Factory.h"
+#include "tao/ORB_Core.h"
+#include "ace/Reactor.h"
+#include "ace/Countdown_Time.h"
+ </data>
+</add>
+
+<!-- Once this is done, replace all occurences of TAO_Wait_On_Read with
+ TAO_Wait_Strategy -->
+<substitute>
+ <search>TAO_Wait_On_Read</search>
+ <replace>TAO_Wait_Strategy</replace>
+</substitute>
+
+</file>
+
+<file name="Wait_Strategy.h">
+
+<!-- Remove all occurances of virtual -->
+<remove>virtual</remove>
+<remove>= 0</remove>
+
+</file>
+
+<file name="default_client.cpp">
+
+<comment>
+ <start-hook>WAIT_STRATEGY_SPL_COMMENT_HOOK_START</start-hook>
+ <end-hook>WAIT_STRATEGY_SPL_COMMENT_HOOK_END</end-hook>
+</comment>
+
+<add>
+ <hook>WAIT_STRATEGY_SPL_COMMENT_HOOK_END</hook>
+ <data>
+ ACE_NEW_RETURN (ws,
+ TAO_Wait_Strategy (transport),
+ 0);
+ </data>
+</add>
+
+</file>
+
+<file name="tao.mpc">
+
+<!-- Do not build the other Wait strategy classes -->
+<substitute>
+ <search>Wait_On_Read.h</search>
+ <replace>// Wait_On_Read.cpp</replace>
+</substitute>
+<substitute>
+ <search>Wait_On_Read.cpp</search>
+ <replace>// Wait_On_Read.cpp</replace>
+</substitute>
+
+<substitute>
+ <search>Wait_On_Reactor.h</search>
+ <replace>// Wait_On_Reactor.cpp</replace>
+</substitute>
+<substitute>
+ <search>Wait_On_Reactor.cpp</search>
+ <replace>// Wait_On_Reactor.cpp</replace>
+</substitute>
+
+<substitute>
+ <search>Wait_On_Leader_Follower.h</search>
+ <replace>// Wait_On_Leader_Follower.cpp</replace>
+</substitute>
+<substitute>
+ <search>Wait_On_Leader_Follower.cpp</search>
+ <replace>// Wait_On_Leader_Follower.cpp</replace>
+</substitute>
+
+<substitute>
+ <search>Wait_On_LF_No_Upcall.h</search>
+ <replace>// Wait_On_LF_No_Upcall.cpp</replace>
+</substitute>
+<substitute>
+ <search>Wait_On_LF_No_Upcall.cpp</search>
+ <replace>// Wait_On_LF_No_Upcall.cpp</replace>
+</substitute>
+
+</file>
+
+</module>
+
+</transform>