summaryrefslogtreecommitdiff
path: root/TAO/orbsvcs/tests/Bug_2285_Regression/Test.idl
blob: 00cc73c174e3db7878972abd4dc557dfa9b4a01e (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
//
// $Id$
//

/// Put the interfaces in a module, to avoid global namespace pollution
module Test
{
  exception MyException {};
  /// A very simple interface
  interface Hello
  {
    /// A method to shutdown the ORB
    /**
     * This method is used to simplify the test shutdown process
     */
    oneway void shutdown ();

    // Methods for first test
    
    // The client first calls this to generate a (user) exception
    // which is handled in the application code
    void throw_exception () raises (MyException);
    
    // Starts the nested sequence - client calls...
    boolean call_me_back (in Hello me);
    
    // ... then the server calls this back onto the client,
    // which prompts the client to call...
    boolean call_back ();
    
    // ... this ! The server interceptor will have been recording
    // if any retention ID has been reused in the sequence of invocations
    // @return true for all different, false otherwise.
    boolean check_request_id ();

    // Method for second test. Makes the servant perform
    // a number of checks and then either commit suicide (to prompt a
    // retry on the next member of the IOGR) or to return
    // successfully if it has detected a regresssion.
    // @return the number identifying this servant with teh group
    unsigned long drop_down_dead ();
  };
};