summaryrefslogtreecommitdiff
path: root/TAO/docs/tutorials/Quoter/idl/Quoter.idl
diff options
context:
space:
mode:
Diffstat (limited to 'TAO/docs/tutorials/Quoter/idl/Quoter.idl')
-rw-r--r--TAO/docs/tutorials/Quoter/idl/Quoter.idl56
1 files changed, 56 insertions, 0 deletions
diff --git a/TAO/docs/tutorials/Quoter/idl/Quoter.idl b/TAO/docs/tutorials/Quoter/idl/Quoter.idl
new file mode 100644
index 00000000000..b707539eea3
--- /dev/null
+++ b/TAO/docs/tutorials/Quoter/idl/Quoter.idl
@@ -0,0 +1,56 @@
+//
+// $Id$
+//
+
+module Quoter
+{
+ exception Invalid_Stock_Symbol {};
+ // Used to report an invalid stock name
+
+ // Forward declare the Stock interface
+ interface Stock;
+
+ interface Stock_Factory
+ {
+ // = TITLE
+ // A factory class for the stock quoter interfaces
+ //
+ // = DESCRIPTION
+ // Return the Quoter interfaces based on their names
+ //
+ Stock get_stock (in string stock_symbol)
+ raises (Invalid_Stock_Symbol);
+ };
+
+ interface Stock
+ {
+ // = TITLE
+ // A simple interface to query the name and price of stock
+ //
+ // = DESCRIPTION
+ // Return the price and name of a single stock
+ //
+
+ readonly attribute string symbol;
+ // Get the stock symbol.
+
+ readonly attribute string full_name;
+ // Get the name.
+
+ double price ();
+ // Get the price
+
+ };
+
+ // used by the event service
+ struct Event {
+ double price;
+ string symbol;
+ string full_name;
+ };
+
+ interface Modify_Stock : Stock {
+ void set_price (in double new_price);
+ };
+
+};