1
2
3 #include <CORBA.h>
4 #include <mico/throw.h>
5
6 #ifndef __AUFGABE2_H__
7 #define __AUFGABE2_H__
8
9
10
11
12 namespace Aufgabe2 {
13
14
15 class Server;
16 typedef Server *Server_ptr;
17 typedef Server_ptr ServerRef;
18 typedef ObjVar< Server > Server_var;
19 typedef ObjOut< Server > Server_out;
20
21 }
22
23
24
25
26
27
28 namespace Aufgabe2 {
29
30
31
32
33
34 class Server :
35 virtual public CORBA::Object
36 {
37 public:
38 virtual ~Server();
39
40 #ifdef HAVE_TYPEDEF_OVERLOAD
41 typedef Server_ptr _ptr_type;
42 typedef Server_var _var_type;
43 #endif
44
45 static Server_ptr _narrow( CORBA::Object_ptr obj );
46 static Server_ptr _narrow( CORBA::AbstractBase_ptr obj );
47 static Server_ptr _duplicate( Server_ptr _obj )
48 {
49 CORBA::Object::_duplicate (_obj);
50 return _obj;
51 }
52
53 static Server_ptr _nil()
54 {
55 return 0;
56 }
57
58 virtual void *_narrow_helper( const char *repoid );
59
60 virtual char* reverse( const char* message ) = 0;
61
62 protected:
63 Server() {};
64 private:
65 Server( const Server& );
66 void operator=( const Server& );
67 };
68
69
70 class Server_stub:
71 virtual public Server
72 {
73 public:
74 virtual ~Server_stub();
75 char* reverse( const char* message );
76
77 private:
78 void operator=( const Server_stub& );
79 };
80
81 class Server_skel :
82 virtual public StaticMethodDispatcher,
83 virtual public Server
84 {
85 public:
86 Server_skel( const CORBA::BOA::ReferenceData & = CORBA::BOA::ReferenceData() );
87 virtual ~Server_skel();
88 Server_skel( CORBA::Object_ptr obj );
89 virtual bool dispatch( CORBA::StaticServerRequest_ptr __req, CORBA::Environment &_env );
90 Server_ptr _this();
91
92 };
93
94 }
95
96
97 #ifndef MICO_CONF_NO_POA
98
99 #endif // MICO_CONF_NO_POA
100
101 extern CORBA::StaticTypeInfo *_marshaller_Aufgabe2_Server;
102
103 #endif
104