summaryrefslogtreecommitdiff
path: root/TAO/examples/Callback_Quoter/Consumer.idl
blob: 4e6020992e65bc6e98bc8653b74ce86ef180d068 (plain)
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
/* -*- C++ -*- */
// $Id$

#if !defined (_CONSUMER_IDL)
#define _CONSUMER_IDL

module Callback_Quoter
{
  // = TITLE
  // This module contains the data structure defined to store
  // information and the consumer interface.

  exception Invalid_Stock
  {
    // = TITLE
    //   Requested stock does not exist.

    string reason;
    // The message which declares the reason for this execption.

  };

  exception Invalid_Handle
  {
    // = TITLE
    //   Requested object does not exist.

    string reason;
    // The actual reason which caused the exception.

  };

  struct Info
  {
    // = TITLE
    // The information passed by the Notifier to the consumer.

    string stock_name;
    // This is the name of the stock about whom the consumer
    // is seeking information.

    long value;
    // This is the market price of the stock.
  };

  interface Consumer
    {
      // = TITLE
      // The Consumer interface which is utilized by the Notifier
      // to pass information to the consumer.

      void push (in Callback_Quoter::Info data);
      // Notifier sends data to the consumer.

      void shutdown ();
      // the process shuts down.
    };
};

#endif /* _CONSUMER_IDL */