summaryrefslogtreecommitdiff
path: root/TAO/DevGuideExamples/ValueTypes/Messenger/Messenger.idl
blob: e6a63fc9278152395ea75c2fa876a82e01ab5f81 (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
// Messenger.idl
// Modified to make use of ValueTypes

// Demonstrates how ValueTypes can let you make wrapper classes
// that make sequences easier to work with, and can simplify
// IDL interfaces by reducing the number of parameters.

valuetype Message {
  typedef sequence<string> AddrList;

  private AddrList addrs_;
  private string user_;
  private string subject_;
  private string text_;

  AddrList getAddresses();
  void addAddress(in string address);
  attribute string user;
  attribute string subject;
  attribute string text;
  void print();
};

interface Messenger {
  boolean send_message(inout Message msg);
};