1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
|
// $Id$
// ============================================================================
//
// = FILENAME
// quoter.idl
//
// = DESCRIPTION
// Quoter example that illustrate the use of the global POA and
// the CosLifeCycle service.
//
// = AUTHOR
// Darrell Brunsch (brunsch@cs.wustl.edu)
// Michael Kircher (mk1@cs.wustl.edu)
//
// ============================================================================
// @@ Is there a way to get TAO's IDL compiler to accept "relative
// names" via the use of a command-line option? It seems wrong to
// hard-code the pathname here.
#include "../../orbsvcs/orbsvcs/CosLifeCycle.idl"
module Stock
{
exception Invalid_Stock {};
exception Invalid_Quoter {};
interface Quoter : CosLifeCycle::LifeCycleObject
{
// = TITLE
// Access Stock information.
long get_quote (in string stock_name)
raises (Invalid_Stock, Invalid_Quoter);
// Returns the current stock value or throws and exception.
void destroy ();
// Destroy a Quoter session and release resources.
// LifeCycleObject copy(in FactoryFinder there,
// in Criteria the_criteria)
// raises(NoFactory, NotCopyable, InvalidCriteria, CannotMeetCriteria);
// copies this object to a location "there" using the "the_criteria"
// void move(in FactoryFinder there,
// in Criteria the_criteria)
// raises(NoFactory, NotMovable, InvalidCriteria, CannotMeetCriteria);
// moves this object to a location "there" using the "the_criteria"
// void remove()
// raises(NotRemovable);
// removes/deletes this object
};
interface Quoter_Factory
{
// = TITLE
// Manage the lifecycle of a Quoter object.
Quoter create_quoter (in string name)
raises (Invalid_Quoter);
// Returns a new Quoter selected by name e.g., "Dow Jones,"
// "Reuters,", etc
};
interface QuoterFactoryFinder : CosLifeCycle::FactoryFinder
{
// = TITLE
// Wrapper for the CosLifeCycle FactoryFinder
//
// inherits:
// Factories find_factories(in Key factory_key) raises(NoFactory);
};
};
|