summaryrefslogtreecommitdiff
path: root/CIAO/docs/tutorials/Quoter/Simple/Broker
diff options
context:
space:
mode:
Diffstat (limited to 'CIAO/docs/tutorials/Quoter/Simple/Broker')
-rw-r--r--CIAO/docs/tutorials/Quoter/Simple/Broker/Broker.cidl22
-rw-r--r--CIAO/docs/tutorials/Quoter/Simple/Broker/Broker.cpp110
-rw-r--r--CIAO/docs/tutorials/Quoter/Simple/Broker/Broker.idl35
-rw-r--r--CIAO/docs/tutorials/Quoter/Simple/Broker/Broker.mpc84
-rw-r--r--CIAO/docs/tutorials/Quoter/Simple/Broker/Broker_exec.cpp174
-rw-r--r--CIAO/docs/tutorials/Quoter/Simple/Broker/Broker_exec.h115
-rw-r--r--CIAO/docs/tutorials/Quoter/Simple/Broker/Broker_exec_export.h54
-rw-r--r--CIAO/docs/tutorials/Quoter/Simple/Broker/Broker_stub_export.h54
-rw-r--r--CIAO/docs/tutorials/Quoter/Simple/Broker/Broker_svnt_export.h54
9 files changed, 702 insertions, 0 deletions
diff --git a/CIAO/docs/tutorials/Quoter/Simple/Broker/Broker.cidl b/CIAO/docs/tutorials/Quoter/Simple/Broker/Broker.cidl
new file mode 100644
index 00000000000..a6d9bb29214
--- /dev/null
+++ b/CIAO/docs/tutorials/Quoter/Simple/Broker/Broker.cidl
@@ -0,0 +1,22 @@
+//$Id$
+
+//Stock.cidl,v 1.0
+/**
+ * @file Stock.cidl
+ *
+ * @author ming xiong <xiongm@isis.vanderbilt.edu>
+ */
+
+#ifndef STOCK_CIDL
+#define STOCK_CIDL
+
+#include "Broker.idl"
+
+composition session StockBroker_Impl {
+ home executor StockBrokerHome_Exec {
+ implements Stock::StockBrokerHome;
+ manages StockBroker_Exec;
+ };
+};
+
+#endif /* STOCK_CIDL */
diff --git a/CIAO/docs/tutorials/Quoter/Simple/Broker/Broker.cpp b/CIAO/docs/tutorials/Quoter/Simple/Broker/Broker.cpp
new file mode 100644
index 00000000000..fc059cc0d74
--- /dev/null
+++ b/CIAO/docs/tutorials/Quoter/Simple/Broker/Broker.cpp
@@ -0,0 +1,110 @@
+//$Id$
+/*
+ * @file Broker.cpp
+ *
+ * @author Ming Xiong <mxiong@dre.vanderbilt.edu>
+ */
+
+#include "BrokerC.h"
+#include "ace/streams.h"
+#include "ace/Get_Opt.h"
+
+const char *broker_ior = "file://Broker.ior";
+const char *subscribe_name = 0;
+const char *unsubscribe_name = 0;
+
+
+int
+parse_args (int argc, char *argv[])
+{
+ ACE_Get_Opt get_opts (argc, argv, "k:s:u:");
+ int c;
+
+ while ((c = get_opts ()) != -1)
+ {
+ switch (c)
+ {
+ case 'k':
+ broker_ior = get_opts.opt_arg ();
+ break;
+
+ case 's':
+ subscribe_name = get_opts.opt_arg ();
+ break;
+
+ case 'u':
+ unsubscribe_name = get_opts.opt_arg ();
+ break;
+
+ case '?':
+ default:
+ ACE_ERROR_RETURN ((LM_ERROR,
+ "usage: %s\n"
+ "-k <Broker IOR> (default is file:\\broker.ior) \n"
+ "-s <stock name you wish to subscribe>\n"
+ "-u <stock name you wish to unsubscribe>\n"
+ "\n",
+ argv [0]),
+ -1);
+ }
+ }
+
+ return 0;
+}
+
+int main (int argc, char* argv[])
+{
+ try
+ {
+ // initialize the ORB
+ CORBA::ORB_var orb =
+ CORBA::ORB_init (argc, argv,"");
+
+
+ if (parse_args (argc, argv) != 0)
+ return -1;
+
+ // create the factory object reference of StockBrokerHome
+ CORBA::Object_var broker_obj =
+ orb->string_to_object (broker_ior);
+
+ // downcast the object reference to the appropriate type
+ Stock::StockBroker_var broker =
+ Stock::StockBroker::_narrow (broker_obj.in ());
+
+ if (CORBA::is_nil (broker.in ()))
+ {
+ ACE_ERROR_RETURN ((LM_ERROR,
+ "Unable to acquire 'Broker' objref\n"),
+ -1);
+ }
+
+
+ if (subscribe_name != 0)
+ {
+ broker->stock_subscribe (subscribe_name);
+
+ ACE_DEBUG ((LM_DEBUG, "Subscribe successful!\n"));
+ }
+
+ if (unsubscribe_name != 0)
+ {
+ broker->stock_unsubscribe (unsubscribe_name);
+
+ ACE_DEBUG ((LM_DEBUG, "Unsubscribe successful!\n"));
+ }
+
+ // Finally destroy the ORB
+ orb->destroy ();
+
+ }
+ catch (const CORBA::Exception& ex)
+ {
+ ex._tao_print_exception ("Who is the culprit \n");
+ ACE_ERROR_RETURN ((LM_ERROR,
+ "Uncaught CORBA exception\n"),
+ 1);
+ }
+
+ return 0;
+}
diff --git a/CIAO/docs/tutorials/Quoter/Simple/Broker/Broker.idl b/CIAO/docs/tutorials/Quoter/Simple/Broker/Broker.idl
new file mode 100644
index 00000000000..dbe9a04364a
--- /dev/null
+++ b/CIAO/docs/tutorials/Quoter/Simple/Broker/Broker.idl
@@ -0,0 +1,35 @@
+//$Id$
+
+#include "../Stock_Base/Stock_Base.idl"
+
+module Stock
+{
+ interface StockSubscriber {
+ /// subscribe to an interested stock
+ void stock_subscribe (in string stock_name)
+ raises (Invalid_Stock);
+ /// unsubscribe to an stock
+ void stock_unsubscribe (in string stock_name)
+ raises (Invalid_Stock);
+ };
+
+ /**
+ * @class StockBroker
+ *
+ * @brief component
+ */
+ component StockBroker supports StockSubscriber
+ {
+ consumes StockName notify_in;
+ uses StockQuoter read_quoter;
+ };
+
+ /**
+ * @class StockBrokerHome
+ *
+ * @brief home for StockBroker component
+ */
+ home StockBrokerHome manages StockBroker
+ {
+ };
+};
diff --git a/CIAO/docs/tutorials/Quoter/Simple/Broker/Broker.mpc b/CIAO/docs/tutorials/Quoter/Simple/Broker/Broker.mpc
new file mode 100644
index 00000000000..627feb516a9
--- /dev/null
+++ b/CIAO/docs/tutorials/Quoter/Simple/Broker/Broker.mpc
@@ -0,0 +1,84 @@
+// $Id$
+// This file is generated with "generate_component_mpc.pl -p Stock_Base Broker"
+
+project(Stock_Base_Broker_stub): ciao_client_dnc {
+ avoids += ace_for_tao
+ after += Stock_Base_stub
+ sharedname = Broker_stub
+ idlflags -= -GT
+ idlflags += -St \
+ -Wb,stub_export_macro=BROKER_STUB_Export \
+ -Wb,stub_export_include=Broker_stub_export.h \
+ -Wb,skel_export_macro=BROKER_SVNT_Export \
+ -Wb,skel_export_include=Broker_svnt_export.h
+ dynamicflags = BROKER_STUB_BUILD_DLL
+ libs += Stock_Base_stub
+
+ IDL_Files {
+ Broker.idl
+ }
+
+ Source_Files {
+ BrokerC.cpp
+ }
+}
+
+project(Stock_Base_Broker_svnt) : ciao_servant_dnc {
+ avoids += ace_for_tao
+ after += Stock_Base_skel Stock_Base_Broker_stub
+ sharedname = Broker_svnt
+ libs += Broker_stub Stock_Base_stub Stock_Base_skel
+
+ idlflags -= -GT
+ idlflags += -SS -St \
+ -Wb,export_macro=BROKER_SVNT_Export \
+ -Wb,export_include=Broker_svnt_export.h
+ dynamicflags = BROKER_SVNT_BUILD_DLL
+
+ CIDL_Files {
+ Broker.cidl
+ }
+
+ IDL_Files {
+ BrokerE.idl
+ }
+
+ Source_Files {
+ BrokerEC.cpp
+ BrokerS.cpp
+ Broker_svnt.cpp
+ }
+}
+
+
+project(Stock_Base_Broker_exec) : ciao_component_dnc {
+ avoids += ace_for_tao
+ after += Stock_Base_Broker_svnt
+ sharedname = Broker_exec
+ libs += Broker_stub Broker_svnt Stock_Base_stub Stock_Base_skel
+
+ dynamicflags = BROKER_EXEC_BUILD_DLL
+
+ IDL_Files {
+ }
+
+ Source_Files {
+ Broker_exec.cpp
+ }
+}
+
+
+project (Stock_Broker) : ciao_client_dnc, valuetype{
+ avoids += ace_for_tao
+ exename = Broker
+ after += Stock_Base_Broker_stub
+ libs += Broker_stub Stock_Base_stub
+
+ IDL_Files {
+ }
+
+ Source_Files {
+ Broker.cpp
+ }
+}
+
diff --git a/CIAO/docs/tutorials/Quoter/Simple/Broker/Broker_exec.cpp b/CIAO/docs/tutorials/Quoter/Simple/Broker/Broker_exec.cpp
new file mode 100644
index 00000000000..86160c6907e
--- /dev/null
+++ b/CIAO/docs/tutorials/Quoter/Simple/Broker/Broker_exec.cpp
@@ -0,0 +1,174 @@
+//$Id$
+/*
+ * @file Broker_exec.cpp
+ *
+ * @author Ming Xiong <mxiong@dre.vanderbilt.edu>
+ */
+
+#include "Broker_exec.h"
+#include "ciao/CIAO_common.h"
+
+
+namespace CIDL_StockBroker_Impl
+{
+ //==================================================================
+ // Component Executor Implementation Class: StockBroker_exec_i
+ //==================================================================
+
+ StockBroker_exec_i::StockBroker_exec_i (void)
+ {
+ }
+
+ StockBroker_exec_i::~StockBroker_exec_i (void)
+ {
+ }
+
+
+ // Supported or inherited operations.
+
+ void
+ StockBroker_exec_i::stock_subscribe (
+ const char * stock_name)
+ {
+ if ((strcmp (stock_name, "MSFT") == 0) || (strcmp (stock_name, "IBM") == 0))
+ {
+ std::set<std::string>::iterator iter = this->subscribed_stock_list_.find (stock_name);
+ if (iter == this->subscribed_stock_list_.end ())
+ {
+ this->subscribed_stock_list_.insert (stock_name);
+ }
+ }
+ else
+ {
+ throw Stock::Invalid_Stock ();
+ }
+ }
+
+ void
+ StockBroker_exec_i::stock_unsubscribe (
+ const char * stock_name)
+ {
+ if ((strcmp (stock_name, "MSFT") == 0) || (strcmp (stock_name, "IBM") == 0))
+ {
+ std::set<std::string>::iterator iter = this->subscribed_stock_list_.find (stock_name);
+ if (iter != this->subscribed_stock_list_.end ())
+ {
+ this->subscribed_stock_list_.erase (iter);
+ }
+ }
+ else
+ {
+ throw Stock::Invalid_Stock ();
+ }
+
+ }
+
+
+ void
+ StockBroker_exec_i::push_notify_in (
+ Stock::StockName *ev)
+ {
+
+ ACE_DEBUG ((LM_INFO,
+ "Broker - Got message from Distributor\n"));
+
+ CORBA::String_var stock_name = CORBA::string_dup (ev->name ());
+
+ // Retrieve stock information if the stock name is in the subscribed_stock_list
+ if (this->subscribed_stock_list_.find (stock_name.in ()) != this->subscribed_stock_list_.end ())
+ {
+ Stock::StockQuoter_var quoter_obj = this->context_->get_connection_read_quoter ();
+
+ if (CORBA::is_nil (quoter_obj.in ()))
+ {
+ throw CORBA::BAD_PARAM ();
+ }
+
+ Stock::StockInfo_var info = quoter_obj->get_stock_info (stock_name.in ());
+
+ ACE_DEBUG ((LM_DEBUG, "Quoter - Current value of %s is %d\n",
+ stock_name.in (),
+ info->last));
+ }
+ }
+
+ // Operations from Components::SessionComponent
+
+ void
+ StockBroker_exec_i::set_session_context (
+ ::Components::SessionContext_ptr ctx)
+ {
+ this->context_ = StockBroker_Context::_narrow (ctx);
+
+ if (0 == this->context_)
+ {
+ throw CORBA::INTERNAL ();
+ }
+ }
+
+ void
+ StockBroker_exec_i::ciao_preactivate ()
+ {
+ }
+
+ void
+ StockBroker_exec_i::ciao_postactivate ()
+ {
+ }
+
+ void
+ StockBroker_exec_i::ccm_activate ()
+ {
+ }
+
+ void
+ StockBroker_exec_i::ccm_passivate ()
+ {
+ }
+
+ void
+ StockBroker_exec_i::ccm_remove ()
+ {
+ }
+
+ //==================================================================
+ // Home Executor Implementation Class: StockBrokerHome_exec_i
+ //==================================================================
+
+ StockBrokerHome_exec_i::StockBrokerHome_exec_i (void)
+ {
+ }
+
+ StockBrokerHome_exec_i::~StockBrokerHome_exec_i (void)
+ {
+ }
+
+ ::Components::EnterpriseComponent_ptr
+ StockBrokerHome_exec_i::create ()
+ {
+ ::Components::EnterpriseComponent_ptr retval =
+ ::Components::EnterpriseComponent::_nil ();
+
+ ACE_NEW_THROW_EX (
+ retval,
+ StockBroker_exec_i,
+ CORBA::NO_MEMORY ());
+
+ return retval;
+ }
+
+ extern "C" BROKER_EXEC_Export ::Components::HomeExecutorBase_ptr
+ createStockBrokerHome_Impl (void)
+ {
+ ::Components::HomeExecutorBase_ptr retval =
+ ::Components::HomeExecutorBase::_nil ();
+
+ ACE_NEW_RETURN (
+ retval,
+ StockBrokerHome_exec_i,
+ ::Components::HomeExecutorBase::_nil ());
+
+ return retval;
+ }
+}
+
diff --git a/CIAO/docs/tutorials/Quoter/Simple/Broker/Broker_exec.h b/CIAO/docs/tutorials/Quoter/Simple/Broker/Broker_exec.h
new file mode 100644
index 00000000000..fe54b423801
--- /dev/null
+++ b/CIAO/docs/tutorials/Quoter/Simple/Broker/Broker_exec.h
@@ -0,0 +1,115 @@
+//$Id$
+/*
+ * @file Broker_exec.h
+ *
+ * @author Ming Xiong <mxiong@dre.vanderbilt.edu>
+ */
+
+
+#ifndef CIAO_BROKER_EXEC_H
+#define CIAO_BROKER_EXEC_H
+
+#include /**/ "ace/pre.h"
+
+#include "Broker_svnt.h"
+#include "BrokerEC.h"
+#include "Broker_exec_export.h"
+
+#include <set>
+#include <string>
+
+#if !defined (ACE_LACKS_PRAGMA_ONCE)
+# pragma once
+#endif /* ACE_LACKS_PRAGMA_ONCE */
+
+#include "tao/LocalObject.h"
+
+namespace CIDL_StockBroker_Impl
+{
+
+ /**
+ * @class StockBroker_exec_i
+ *
+ * @brief Executor implementation
+ *
+ * This class implements Stock::StockBroker component
+ */
+ class BROKER_EXEC_Export StockBroker_exec_i
+ : public virtual StockBroker_Exec,
+ public virtual TAO_Local_RefCounted_Object
+ {
+ public:
+ StockBroker_exec_i (void);
+ virtual ~StockBroker_exec_i (void);
+
+
+ // Supported or inherited operations.
+
+ virtual void
+ stock_subscribe (
+ const char * stock_name);
+
+ virtual void
+ stock_unsubscribe (
+ const char * stock_name);
+
+ virtual void
+ push_notify_in (
+ ::Stock::StockName *ev);
+
+ // Operations from Components::SessionComponent
+
+ virtual void
+ set_session_context (
+ ::Components::SessionContext_ptr ctx);
+
+ virtual void
+ ciao_preactivate ();
+
+ virtual void
+ ciao_postactivate ();
+
+ virtual void
+ ccm_activate ();
+
+ virtual void
+ ccm_passivate ();
+
+ virtual void
+ ccm_remove ();
+
+ protected:
+ StockBroker_Context *context_;
+
+ private:
+ std::set<std::string> subscribed_stock_list_;
+ };
+
+
+ /**
+ * @class StockBrokerHome_exec_i
+ *
+ * @brief Executor implementation
+ *
+ * This class implements Stock::StockBrokerHome component
+ */
+ class BROKER_EXEC_Export StockBrokerHome_exec_i
+ : public virtual StockBrokerHome_Exec,
+ public virtual TAO_Local_RefCounted_Object
+ {
+ public:
+ StockBrokerHome_exec_i (void);
+ virtual ~StockBrokerHome_exec_i (void);
+
+ virtual ::Components::EnterpriseComponent_ptr
+ create ();
+ };
+
+ extern "C" BROKER_EXEC_Export ::Components::HomeExecutorBase_ptr
+ createStockBrokerHome_Impl (void);
+}
+
+#include /**/ "ace/post.h"
+
+#endif /* CIAO_BROKER_EXEC_H */
+
diff --git a/CIAO/docs/tutorials/Quoter/Simple/Broker/Broker_exec_export.h b/CIAO/docs/tutorials/Quoter/Simple/Broker/Broker_exec_export.h
new file mode 100644
index 00000000000..cb7229d833e
--- /dev/null
+++ b/CIAO/docs/tutorials/Quoter/Simple/Broker/Broker_exec_export.h
@@ -0,0 +1,54 @@
+
+// -*- C++ -*-
+// $Id$
+// Definition for Win32 Export directives.
+// This file is generated automatically by generate_export_file.pl BROKER_EXEC
+// ------------------------------
+#ifndef BROKER_EXEC_EXPORT_H
+#define BROKER_EXEC_EXPORT_H
+
+#include "ace/config-all.h"
+
+#if !defined (BROKER_EXEC_HAS_DLL)
+# define BROKER_EXEC_HAS_DLL 1
+#endif /* ! BROKER_EXEC_HAS_DLL */
+
+#if defined (BROKER_EXEC_HAS_DLL) && (BROKER_EXEC_HAS_DLL == 1)
+# if defined (BROKER_EXEC_BUILD_DLL)
+# define BROKER_EXEC_Export ACE_Proper_Export_Flag
+# define BROKER_EXEC_SINGLETON_DECLARATION(T) ACE_EXPORT_SINGLETON_DECLARATION (T)
+# define BROKER_EXEC_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK) ACE_EXPORT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
+# else /* BROKER_EXEC_BUILD_DLL */
+# define BROKER_EXEC_Export ACE_Proper_Import_Flag
+# define BROKER_EXEC_SINGLETON_DECLARATION(T) ACE_IMPORT_SINGLETON_DECLARATION (T)
+# define BROKER_EXEC_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK) ACE_IMPORT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
+# endif /* BROKER_EXEC_BUILD_DLL */
+#else /* BROKER_EXEC_HAS_DLL == 1 */
+# define BROKER_EXEC_Export
+# define BROKER_EXEC_SINGLETON_DECLARATION(T)
+# define BROKER_EXEC_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
+#endif /* BROKER_EXEC_HAS_DLL == 1 */
+
+// Set BROKER_EXEC_NTRACE = 0 to turn on library specific tracing even if
+// tracing is turned off for ACE.
+#if !defined (BROKER_EXEC_NTRACE)
+# if (ACE_NTRACE == 1)
+# define BROKER_EXEC_NTRACE 1
+# else /* (ACE_NTRACE == 1) */
+# define BROKER_EXEC_NTRACE 0
+# endif /* (ACE_NTRACE == 1) */
+#endif /* !BROKER_EXEC_NTRACE */
+
+#if (BROKER_EXEC_NTRACE == 1)
+# define BROKER_EXEC_TRACE(X)
+#else /* (BROKER_EXEC_NTRACE == 1) */
+# if !defined (ACE_HAS_TRACE)
+# define ACE_HAS_TRACE
+# endif /* ACE_HAS_TRACE */
+# define BROKER_EXEC_TRACE(X) ACE_TRACE_IMPL(X)
+# include "ace/Trace.h"
+#endif /* (BROKER_EXEC_NTRACE == 1) */
+
+#endif /* BROKER_EXEC_EXPORT_H */
+
+// End of auto generated file.
diff --git a/CIAO/docs/tutorials/Quoter/Simple/Broker/Broker_stub_export.h b/CIAO/docs/tutorials/Quoter/Simple/Broker/Broker_stub_export.h
new file mode 100644
index 00000000000..1d7c2c5fc2b
--- /dev/null
+++ b/CIAO/docs/tutorials/Quoter/Simple/Broker/Broker_stub_export.h
@@ -0,0 +1,54 @@
+
+// -*- C++ -*-
+// $Id$
+// Definition for Win32 Export directives.
+// This file is generated automatically by generate_export_file.pl BROKER_STUB
+// ------------------------------
+#ifndef BROKER_STUB_EXPORT_H
+#define BROKER_STUB_EXPORT_H
+
+#include "ace/config-all.h"
+
+#if !defined (BROKER_STUB_HAS_DLL)
+# define BROKER_STUB_HAS_DLL 1
+#endif /* ! BROKER_STUB_HAS_DLL */
+
+#if defined (BROKER_STUB_HAS_DLL) && (BROKER_STUB_HAS_DLL == 1)
+# if defined (BROKER_STUB_BUILD_DLL)
+# define BROKER_STUB_Export ACE_Proper_Export_Flag
+# define BROKER_STUB_SINGLETON_DECLARATION(T) ACE_EXPORT_SINGLETON_DECLARATION (T)
+# define BROKER_STUB_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK) ACE_EXPORT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
+# else /* BROKER_STUB_BUILD_DLL */
+# define BROKER_STUB_Export ACE_Proper_Import_Flag
+# define BROKER_STUB_SINGLETON_DECLARATION(T) ACE_IMPORT_SINGLETON_DECLARATION (T)
+# define BROKER_STUB_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK) ACE_IMPORT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
+# endif /* BROKER_STUB_BUILD_DLL */
+#else /* BROKER_STUB_HAS_DLL == 1 */
+# define BROKER_STUB_Export
+# define BROKER_STUB_SINGLETON_DECLARATION(T)
+# define BROKER_STUB_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
+#endif /* BROKER_STUB_HAS_DLL == 1 */
+
+// Set BROKER_STUB_NTRACE = 0 to turn on library specific tracing even if
+// tracing is turned off for ACE.
+#if !defined (BROKER_STUB_NTRACE)
+# if (ACE_NTRACE == 1)
+# define BROKER_STUB_NTRACE 1
+# else /* (ACE_NTRACE == 1) */
+# define BROKER_STUB_NTRACE 0
+# endif /* (ACE_NTRACE == 1) */
+#endif /* !BROKER_STUB_NTRACE */
+
+#if (BROKER_STUB_NTRACE == 1)
+# define BROKER_STUB_TRACE(X)
+#else /* (BROKER_STUB_NTRACE == 1) */
+# if !defined (ACE_HAS_TRACE)
+# define ACE_HAS_TRACE
+# endif /* ACE_HAS_TRACE */
+# define BROKER_STUB_TRACE(X) ACE_TRACE_IMPL(X)
+# include "ace/Trace.h"
+#endif /* (BROKER_STUB_NTRACE == 1) */
+
+#endif /* BROKER_STUB_EXPORT_H */
+
+// End of auto generated file.
diff --git a/CIAO/docs/tutorials/Quoter/Simple/Broker/Broker_svnt_export.h b/CIAO/docs/tutorials/Quoter/Simple/Broker/Broker_svnt_export.h
new file mode 100644
index 00000000000..18f606e5539
--- /dev/null
+++ b/CIAO/docs/tutorials/Quoter/Simple/Broker/Broker_svnt_export.h
@@ -0,0 +1,54 @@
+
+// -*- C++ -*-
+// $Id$
+// Definition for Win32 Export directives.
+// This file is generated automatically by generate_export_file.pl BROKER_SVNT
+// ------------------------------
+#ifndef BROKER_SVNT_EXPORT_H
+#define BROKER_SVNT_EXPORT_H
+
+#include "ace/config-all.h"
+
+#if !defined (BROKER_SVNT_HAS_DLL)
+# define BROKER_SVNT_HAS_DLL 1
+#endif /* ! BROKER_SVNT_HAS_DLL */
+
+#if defined (BROKER_SVNT_HAS_DLL) && (BROKER_SVNT_HAS_DLL == 1)
+# if defined (BROKER_SVNT_BUILD_DLL)
+# define BROKER_SVNT_Export ACE_Proper_Export_Flag
+# define BROKER_SVNT_SINGLETON_DECLARATION(T) ACE_EXPORT_SINGLETON_DECLARATION (T)
+# define BROKER_SVNT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK) ACE_EXPORT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
+# else /* BROKER_SVNT_BUILD_DLL */
+# define BROKER_SVNT_Export ACE_Proper_Import_Flag
+# define BROKER_SVNT_SINGLETON_DECLARATION(T) ACE_IMPORT_SINGLETON_DECLARATION (T)
+# define BROKER_SVNT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK) ACE_IMPORT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
+# endif /* BROKER_SVNT_BUILD_DLL */
+#else /* BROKER_SVNT_HAS_DLL == 1 */
+# define BROKER_SVNT_Export
+# define BROKER_SVNT_SINGLETON_DECLARATION(T)
+# define BROKER_SVNT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
+#endif /* BROKER_SVNT_HAS_DLL == 1 */
+
+// Set BROKER_SVNT_NTRACE = 0 to turn on library specific tracing even if
+// tracing is turned off for ACE.
+#if !defined (BROKER_SVNT_NTRACE)
+# if (ACE_NTRACE == 1)
+# define BROKER_SVNT_NTRACE 1
+# else /* (ACE_NTRACE == 1) */
+# define BROKER_SVNT_NTRACE 0
+# endif /* (ACE_NTRACE == 1) */
+#endif /* !BROKER_SVNT_NTRACE */
+
+#if (BROKER_SVNT_NTRACE == 1)
+# define BROKER_SVNT_TRACE(X)
+#else /* (BROKER_SVNT_NTRACE == 1) */
+# if !defined (ACE_HAS_TRACE)
+# define ACE_HAS_TRACE
+# endif /* ACE_HAS_TRACE */
+# define BROKER_SVNT_TRACE(X) ACE_TRACE_IMPL(X)
+# include "ace/Trace.h"
+#endif /* (BROKER_SVNT_NTRACE == 1) */
+
+#endif /* BROKER_SVNT_EXPORT_H */
+
+// End of auto generated file.