summaryrefslogtreecommitdiff
path: root/trunk/TAO/tests/Crashed_Callback/Test.idl
blob: d81f1f3638a47749679c1a0e94f44b283d9cf435 (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
//
// $Id$
//

module Test
{
  /**
   * Callback interface used to test the behavior of the ORB under
   * crashes.
   */
  interface Crashed_Callback
  {
    /// Make sure the callback object is still in good shape
    /**
     * The server needs to verify that at least some requests worked
     * before trying to test the behavior of the ORB after a crash.
     */
    boolean are_you_there ();

    /// Force an abort() on the process implementing the callback
    /// interface
    oneway void crash_now_please ();

    /// Receive the first callback
    oneway void test_oneway ();
  };

  /**
   * Clients connect to this interface passing in a Crashed_Callback
   * object.
   * The service will then invoke all the methods on the
   * Crashed_Callback, and verify that only exceptions are raised
   * after invoking @c crash_now_please()
   *
   */
  interface Service
  {
    /// Invoke the callback object from the server
    oneway void run_test (in Crashed_Callback the_callback);
  };

};