4 /// Used to report an invalid stock name
5 exception Invalid_Stock_Symbol
{};
7 /// Forward declare the Stock interface
10 /// A factory class for the stock quoter interfaces
11 interface Stock_Factory
13 /// Return the Quoter interfaces based on their names
14 Stock get_stock
(in string stock_symbol
)
15 raises
(Invalid_Stock_Symbol
);
18 /// A simple interface to query the name and price of stock
21 /// Get the stock symbol.
22 readonly attribute
string symbol
;
25 readonly attribute
string full_name
;
31 interface Single_Query_Stock
: Stock
{
32 double get_price_and_names
(out string symbol
,
33 out string full_name
);