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 public:
37 virtual ~Server();
38
39 #ifdef HAVE_TYPEDEF_OVERLOAD
40 typedef Server_ptr _ptr_type;
41 typedef Server_var _var_type;
42 #endif
43
44 static Server_ptr _narrow( CORBA::Object_ptr obj );
45 static Server_ptr _narrow( CORBA::AbstractBase_ptr obj );
46 static Server_ptr _duplicate( Server_ptr _obj )
47 {
48 CORBA::Object::_duplicate (_obj);
49 return _obj;
50 }
51
52 static Server_ptr _nil()
53 {
54 return 0;
55 }
56
57 virtual void *_narrow_helper( const char *repoid );
58
59 virtual char* reverse( const char* message ) = 0;
60
61 protected:
62 Server() {};
63 private:
64 Server( const Server& );
65 void operator=( const Server& );
66 };
67
68
69 class Server_stub:
70 virtual public Server
{
71 public:
72 virtual ~Server_stub();
73 char* reverse( const char* message );
74
75 private:
76 void operator=( const Server_stub& );
77 };
78
79 class Server_skel :
80 virtual public StaticMethodDispatcher,
81 virtual public Server
{
82 public:
83 Server_skel( const CORBA::BOA::ReferenceData & = CORBA::BOA::ReferenceData() );
84 virtual ~Server_skel();
85 Server_skel( CORBA::Object_ptr obj );
86 virtual bool dispatch( CORBA::StaticServerRequest_ptr __req, CORBA::Environment &_env );
87 Server_ptr _this();
88
89 };
90
91 }
92
93
94 #ifndef MICO_CONF_NO_POA
95
96 #endif // MICO_CONF_NO_POA
97
98 extern CORBA::StaticTypeInfo *_marshaller_Aufgabe2_Server;
99
100 #endif
101
102