1
2
3 #include <CORBA.h>
4 #include <mico/CCMContainer.h>
5 #include "auktion.h"
6
7 #ifndef __AUKTION__CCM__H__
8 #define __AUKTION__CCM__H__
9
10 namespace MICO_CCM_impls {
11
12
13
14 class Auktion_Bieter_impl :
15 virtual public POA_Auktion::Bieter,
16 virtual public PortableServer::RefCountServantBase
{
17 friend class Auktion_Bieter_Context_impl;
18 friend class Auktion_Bieter_gebote_impl;
19
20 private:
21 Auktion::CCM_Bieter * _instance;
22 Auktion::CCM_Bieter_Context * _context;
23 MICO::CCM::SessionContainer * _container;
24 Auktion::Bieter::versteigerungenConnections _for_recep_versteigerungen;
25 CORBA::ULong _cookie_for_versteigerungen;
26 ::Auktion::GebotConsumer_var _for_consumer_gebote;
27
28 public:
29 Auktion_Bieter_impl (Auktion::CCM_Bieter *,
30 MICO::CCM::SessionContainer *);
31 ~Auktion_Bieter_impl ();
32
33
34
35
36
37
38
39
40
41 void zuschlag( Auktion::Versteigerung_ptr gegenstand, Auktion::Verkaeufer_ptr v);
42
43
44
45
46
47
48
49 Components::Cookie * connect_versteigerungen (Auktion::Versteigerung_ptr _value);
50 Auktion::Versteigerung_ptr disconnect_versteigerungen (Components::Cookie * _value);
51 Auktion::Bieter::versteigerungenConnections * get_connections_versteigerungen ();
52
53
54
55
56
57
58
59 ::Auktion::GebotConsumer_ptr get_consumer_gebote ();
60
61
62
63 CORBA::Object_ptr provide_facet (const char *);
64 Components::FacetDescriptions * get_all_facets ();
65 Components::FacetDescriptions * get_named_facets (const Components::NameList &);
66 CORBA::Boolean same_component (CORBA::Object_ptr ref);
67
68
69
70 Components::Cookie * connect (const char *, CORBA::Object_ptr);
71 void disconnect (const char * name, Components::Cookie *);
72 Components::ConnectionDescriptions * get_connections (const char *);
73 Components::ReceptacleDescriptions * get_all_receptacles ();
74 Components::ReceptacleDescriptions * get_named_receptacles (const Components::NameList &);
75
76
77
78 Components::EventConsumerBase_ptr get_consumer (const char *);
79 Components::Cookie * subscribe (const char *, Components::EventConsumerBase_ptr);
80 void unsubscribe (const char * name, Components::Cookie *);
81 void connect_consumer (const char *, Components::EventConsumerBase_ptr);
82 Components::EventConsumerBase_ptr disconnect_consumer (const char *);
83 Components::ConsumerDescriptions * get_all_consumers ();
84 Components::ConsumerDescriptions * get_named_consumers (const Components::NameList &);
85 Components::EmitterDescriptions * get_all_emitters ();
86 Components::EmitterDescriptions * get_named_emitters (const Components::NameList &);
87 Components::PublisherDescriptions * get_all_publishers ();
88 Components::PublisherDescriptions * get_named_publishers (const Components::NameList &);
89
90
91
92 CORBA::Object_ptr get_component_def ();
93 Components::CCMHome_ptr get_ccm_home ();
94 void configuration_complete ();
95 void remove ();
96 Components::ComponentPortDescription * get_all_ports ();
97
98
99
100 CORBA::Object_ptr _get_component ();
101 };
102
103
104
105
106 class Auktion_Bieter_gebote_impl :
107 virtual public POA_Auktion::GebotConsumer,
108 virtual public PortableServer::RefCountServantBase
{
109 private:
110 Auktion_Bieter_impl * _glue;
111
112 public:
113 Auktion_Bieter_gebote_impl (Auktion_Bieter_impl * _g);
114 ~Auktion_Bieter_gebote_impl ();
115
116 void push_event (Components::EventBase *);
117 void push_Gebot (Auktion::Gebot *);
118 };
119
120
121
122
123 class Auktion_Bieter_Context_impl :
124 virtual public Auktion::CCM_Bieter_Context
{
125 private:
126 Auktion_Bieter_impl * _glue;
127 MICO::CCM::SessionContainer * _container;
128
129 public:
130 Auktion_Bieter_Context_impl (Auktion_Bieter_impl * _g, MICO::CCM::SessionContainer * _c);
131 ~Auktion_Bieter_Context_impl ();
132
133 Auktion::Bieter::versteigerungenConnections * get_connections_versteigerungen ();
134 Components::CCMHome_ptr get_CCM_home ();
135 CORBA::Object_ptr get_CCM_object ();
136 };
137
138
139
140
141 class Auktion_Verkaeufer_impl :
142 virtual public POA_Auktion::Verkaeufer,
143 virtual public PortableServer::RefCountServantBase
{
144 friend class Auktion_Verkaeufer_Context_impl;
145 friend class Auktion_Verkaeufer_zuschlag_impl;
146
147 private:
148 Auktion::CCM_Verkaeufer * _instance;
149 Auktion::CCM_Verkaeufer_Context * _context;
150 MICO::CCM::SessionContainer * _container;
151 Auktion::VersteigerungsFabrik_var _for_recep_handelsplatz;
152 ::Auktion::KaufConsumer_var _for_consumer_zuschlag;
153
154 public:
155 Auktion_Verkaeufer_impl (Auktion::CCM_Verkaeufer *,
156 MICO::CCM::SessionContainer *);
157 ~Auktion_Verkaeufer_impl ();
158
159
160
161
162
163
164
165
166
167
168
169
170
171 void connect_handelsplatz (Auktion::VersteigerungsFabrik_ptr _value);
172 Auktion::VersteigerungsFabrik_ptr disconnect_handelsplatz ();
173 Auktion::VersteigerungsFabrik_ptr get_connection_handelsplatz ();
174
175
176
177
178
179
180
181 ::Auktion::KaufConsumer_ptr get_consumer_zuschlag ();
182
183
184
185 CORBA::Object_ptr provide_facet (const char *);
186 Components::FacetDescriptions * get_all_facets ();
187 Components::FacetDescriptions * get_named_facets (const Components::NameList &);
188 CORBA::Boolean same_component (CORBA::Object_ptr ref);
189
190
191
192 Components::Cookie * connect (const char *, CORBA::Object_ptr);
193 void disconnect (const char * name, Components::Cookie *);
194 Components::ConnectionDescriptions * get_connections (const char *);
195 Components::ReceptacleDescriptions * get_all_receptacles ();
196 Components::ReceptacleDescriptions * get_named_receptacles (const Components::NameList &);
197
198
199
200 Components::EventConsumerBase_ptr get_consumer (const char *);
201 Components::Cookie * subscribe (const char *, Components::EventConsumerBase_ptr);
202 void unsubscribe (const char * name, Components::Cookie *);
203 void connect_consumer (const char *, Components::EventConsumerBase_ptr);
204 Components::EventConsumerBase_ptr disconnect_consumer (const char *);
205 Components::ConsumerDescriptions * get_all_consumers ();
206 Components::ConsumerDescriptions * get_named_consumers (const Components::NameList &);
207 Components::EmitterDescriptions * get_all_emitters ();
208 Components::EmitterDescriptions * get_named_emitters (const Components::NameList &);
209 Components::PublisherDescriptions * get_all_publishers ();
210 Components::PublisherDescriptions * get_named_publishers (const Components::NameList &);
211
212
213
214 CORBA::Object_ptr get_component_def ();
215 Components::CCMHome_ptr get_ccm_home ();
216 void configuration_complete ();
217 void remove ();
218 Components::ComponentPortDescription * get_all_ports ();
219
220
221
222 CORBA::Object_ptr _get_component ();
223 };
224
225
226
227
228 class Auktion_Verkaeufer_zuschlag_impl :
229 virtual public POA_Auktion::KaufConsumer,
230 virtual public PortableServer::RefCountServantBase
{
231 private:
232 Auktion_Verkaeufer_impl * _glue;
233
234 public:
235 Auktion_Verkaeufer_zuschlag_impl (Auktion_Verkaeufer_impl * _g);
236 ~Auktion_Verkaeufer_zuschlag_impl ();
237
238 void push_event (Components::EventBase *);
239 void push_Kauf (Auktion::Kauf *);
240 };
241
242
243
244
245 class Auktion_Verkaeufer_Context_impl :
246 virtual public Auktion::CCM_Verkaeufer_Context
{
247 private:
248 Auktion_Verkaeufer_impl * _glue;
249 MICO::CCM::SessionContainer * _container;
250
251 public:
252 Auktion_Verkaeufer_Context_impl (Auktion_Verkaeufer_impl * _g, MICO::CCM::SessionContainer * _c);
253 ~Auktion_Verkaeufer_Context_impl ();
254
255 Auktion::VersteigerungsFabrik_ptr get_connection_handelsplatz ();
256 Components::CCMHome_ptr get_CCM_home ();
257 CORBA::Object_ptr get_CCM_object ();
258 };
259
260
261
262
263 class Auktion_Auktionshaus_impl :
264 virtual public POA_Auktion::Auktionshaus,
265 virtual public PortableServer::RefCountServantBase
{
266 friend class Auktion_Auktionshaus_Context_impl;
267 friend class Auktion_Auktionshaus_auktionen_impl;
268
269 private:
270 Auktion::CCM_Auktionshaus * _instance;
271 Auktion::CCM_Auktionshaus_Context * _context;
272 MICO::CCM::SessionContainer * _container;
273 PortableServer::ServantBase_var _glue_for_facet_auktionen;
274 Auktion::CCM_VersteigerungsFabrik_var _instance_for_facet_auktionen;
275 Auktion::VersteigerungsFabrik_var _reference_for_facet_auktionen;
276 Components::SubscriberDescriptions _for_publisher_gebote;
277 CORBA::ULong _cookie_for_gebote;
278
279 public:
280 Auktion_Auktionshaus_impl (Auktion::CCM_Auktionshaus *,
281 MICO::CCM::SessionContainer *);
282 ~Auktion_Auktionshaus_impl ();
283
284
285
286
287
288
289
290
291
292
293
294 Auktion::VersteigerungsFabrik_ptr provide_auktionen ();
295
296
297
298
299
300 Components::Cookie * subscribe_gebote (::Auktion::GebotConsumer_ptr consumer);
301 ::Auktion::GebotConsumer_ptr unsubscribe_gebote (Components::Cookie * _value);
302
303
304
305
306
307
308
309 CORBA::Object_ptr provide_facet (const char *);
310 Components::FacetDescriptions * get_all_facets ();
311 Components::FacetDescriptions * get_named_facets (const Components::NameList &);
312 CORBA::Boolean same_component (CORBA::Object_ptr ref);
313
314
315
316 Components::Cookie * connect (const char *, CORBA::Object_ptr);
317 void disconnect (const char * name, Components::Cookie *);
318 Components::ConnectionDescriptions * get_connections (const char *);
319 Components::ReceptacleDescriptions * get_all_receptacles ();
320 Components::ReceptacleDescriptions * get_named_receptacles (const Components::NameList &);
321
322
323
324 Components::EventConsumerBase_ptr get_consumer (const char *);
325 Components::Cookie * subscribe (const char *, Components::EventConsumerBase_ptr);
326 void unsubscribe (const char * name, Components::Cookie *);
327 void connect_consumer (const char *, Components::EventConsumerBase_ptr);
328 Components::EventConsumerBase_ptr disconnect_consumer (const char *);
329 Components::ConsumerDescriptions * get_all_consumers ();
330 Components::ConsumerDescriptions * get_named_consumers (const Components::NameList &);
331 Components::EmitterDescriptions * get_all_emitters ();
332 Components::EmitterDescriptions * get_named_emitters (const Components::NameList &);
333 Components::PublisherDescriptions * get_all_publishers ();
334 Components::PublisherDescriptions * get_named_publishers (const Components::NameList &);
335
336
337
338 CORBA::Object_ptr get_component_def ();
339 Components::CCMHome_ptr get_ccm_home ();
340 void configuration_complete ();
341 void remove ();
342 Components::ComponentPortDescription * get_all_ports ();
343
344
345
346 CORBA::Object_ptr _get_component ();
347 };
348
349
350
351
352 class Auktion_Auktionshaus_auktionen_impl :
353 virtual public POA_Auktion::VersteigerungsFabrik,
354 virtual public PortableServer::RefCountServantBase
{
355 private:
356 Auktion_Auktionshaus_impl * _glue;
357
358 public:
359 Auktion_Auktionshaus_auktionen_impl (Auktion_Auktionshaus_impl *_g);
360 ~Auktion_Auktionshaus_auktionen_impl ();
361
362
363
364
365
366
367
368 Auktion::Versteigerung_ptr neue_auktion( const char* name, CORBA::Long minimalgebot, Auktion::Verkaeufer_ptr besitzer);
369
370
371
372 CORBA::Object_ptr _get_component ();
373 };
374
375
376
377
378 class Auktion_Auktionshaus_Context_impl :
379 virtual public Auktion::CCM_Auktionshaus_Context
{
380 private:
381 Auktion_Auktionshaus_impl * _glue;
382 MICO::CCM::SessionContainer * _container;
383
384 public:
385 Auktion_Auktionshaus_Context_impl (Auktion_Auktionshaus_impl * _g, MICO::CCM::SessionContainer * _c);
386 ~Auktion_Auktionshaus_Context_impl ();
387
388 void push_gebote (::Auktion::Gebot *);
389 Components::CCMHome_ptr get_CCM_home ();
390 CORBA::Object_ptr get_CCM_object ();
391 };
392
393
394
395
396 class Auktion_Welt_impl :
397 virtual public POA_Auktion::Welt,
398 virtual public PortableServer::RefCountServantBase
{
399 private:
400 Auktion::CCM_Welt * _instance;
401 MICO::CCM::SessionContainer * _container;
402
403 public:
404 Auktion_Welt_impl (Auktion::CCM_Welt *, MICO::CCM::SessionContainer *);
405 ~Auktion_Welt_impl ();
406
407
408
409 Auktion::Auktionshaus_ptr create ();
410
411
412
413
414
415
416
417
418
419
420
421
422
423 CORBA::Object_ptr get_component_def ();
424 CORBA::Object_ptr get_home_def ();
425 void remove_component (Components::CCMObject_ptr comp);
426
427
428
429 Components::CCMObject_ptr create_component ();
430
431 };
432
433
434
435
436 class Auktion_ProduktFilter_impl :
437 virtual public POA_Auktion::ProduktFilter,
438 virtual public PortableServer::RefCountServantBase
{
439 friend class Auktion_ProduktFilter_Context_impl;
440 friend class Auktion_ProduktFilter_eingehende_gebote_impl;
441
442 private:
443 Auktion::CCM_ProduktFilter * _instance;
444 Auktion::CCM_ProduktFilter_Context * _context;
445 MICO::CCM::SessionContainer * _container;
446 Components::SubscriberDescriptions _for_publisher_interessante_gebote;
447 CORBA::ULong _cookie_for_interessante_gebote;
448 ::Auktion::GebotConsumer_var _for_consumer_eingehende_gebote;
449
450 public:
451 Auktion_ProduktFilter_impl (Auktion::CCM_ProduktFilter *,
452 MICO::CCM::SessionContainer *);
453 ~Auktion_ProduktFilter_impl ();
454
455
456
457 char* interessanter_gegenstand ();
458 void interessanter_gegenstand (const char* _value);
459
460
461
462
463
464
465
466
467
468
469
470 Components::Cookie * subscribe_interessante_gebote (::Auktion::GebotConsumer_ptr consumer);
471 ::Auktion::GebotConsumer_ptr unsubscribe_interessante_gebote (Components::Cookie * _value);
472
473
474
475
476
477 ::Auktion::GebotConsumer_ptr get_consumer_eingehende_gebote ();
478
479
480
481 CORBA::Object_ptr provide_facet (const char *);
482 Components::FacetDescriptions * get_all_facets ();
483 Components::FacetDescriptions * get_named_facets (const Components::NameList &);
484 CORBA::Boolean same_component (CORBA::Object_ptr ref);
485
486
487
488 Components::Cookie * connect (const char *, CORBA::Object_ptr);
489 void disconnect (const char * name, Components::Cookie *);
490 Components::ConnectionDescriptions * get_connections (const char *);
491 Components::ReceptacleDescriptions * get_all_receptacles ();
492 Components::ReceptacleDescriptions * get_named_receptacles (const Components::NameList &);
493
494
495
496 Components::EventConsumerBase_ptr get_consumer (const char *);
497 Components::Cookie * subscribe (const char *, Components::EventConsumerBase_ptr);
498 void unsubscribe (const char * name, Components::Cookie *);
499 void connect_consumer (const char *, Components::EventConsumerBase_ptr);
500 Components::EventConsumerBase_ptr disconnect_consumer (const char *);
501 Components::ConsumerDescriptions * get_all_consumers ();
502 Components::ConsumerDescriptions * get_named_consumers (const Components::NameList &);
503 Components::EmitterDescriptions * get_all_emitters ();
504 Components::EmitterDescriptions * get_named_emitters (const Components::NameList &);
505 Components::PublisherDescriptions * get_all_publishers ();
506 Components::PublisherDescriptions * get_named_publishers (const Components::NameList &);
507
508
509
510 CORBA::Object_ptr get_component_def ();
511 Components::CCMHome_ptr get_ccm_home ();
512 void configuration_complete ();
513 void remove ();
514 Components::ComponentPortDescription * get_all_ports ();
515
516
517
518 CORBA::Object_ptr _get_component ();
519 };
520
521
522
523
524 class Auktion_ProduktFilter_eingehende_gebote_impl :
525 virtual public POA_Auktion::GebotConsumer,
526 virtual public PortableServer::RefCountServantBase
{
527 private:
528 Auktion_ProduktFilter_impl * _glue;
529
530 public:
531 Auktion_ProduktFilter_eingehende_gebote_impl (Auktion_ProduktFilter_impl * _g);
532 ~Auktion_ProduktFilter_eingehende_gebote_impl ();
533
534 void push_event (Components::EventBase *);
535 void push_Gebot (Auktion::Gebot *);
536 };
537
538
539
540
541 class Auktion_ProduktFilter_Context_impl :
542 virtual public Auktion::CCM_ProduktFilter_Context
{
543 private:
544 Auktion_ProduktFilter_impl * _glue;
545 MICO::CCM::SessionContainer * _container;
546
547 public:
548 Auktion_ProduktFilter_Context_impl (Auktion_ProduktFilter_impl * _g, MICO::CCM::SessionContainer * _c);
549 ~Auktion_ProduktFilter_Context_impl ();
550
551 void push_interessante_gebote (::Auktion::Gebot *);
552 Components::CCMHome_ptr get_CCM_home ();
553 CORBA::Object_ptr get_CCM_object ();
554 };
555
556
557
558
559 class Auktion_FilterHome_impl :
560 virtual public POA_Auktion::FilterHome,
561 virtual public PortableServer::RefCountServantBase
{
562 private:
563 Auktion::CCM_FilterHome * _instance;
564 MICO::CCM::SessionContainer * _container;
565
566 public:
567 Auktion_FilterHome_impl (Auktion::CCM_FilterHome *, MICO::CCM::SessionContainer *);
568 ~Auktion_FilterHome_impl ();
569
570
571
572 Auktion::ProduktFilter_ptr create ();
573
574
575
576
577
578 Auktion::ProduktFilter_ptr new_filter( const char* gegenstand);
579
580
581
582
583
584
585
586
587
588 CORBA::Object_ptr get_component_def ();
589 CORBA::Object_ptr get_home_def ();
590 void remove_component (Components::CCMObject_ptr comp);
591
592
593
594 Components::CCMObject_ptr create_component ();
595
596 };
597
598
599
600
601 class Auktion_BieterHome_impl :
602 virtual public POA_Auktion::BieterHome,
603 virtual public PortableServer::RefCountServantBase
{
604 private:
605 Auktion::CCM_BieterHome * _instance;
606 MICO::CCM::SessionContainer * _container;
607
608 public:
609 Auktion_BieterHome_impl (Auktion::CCM_BieterHome *, MICO::CCM::SessionContainer *);
610 ~Auktion_BieterHome_impl ();
611
612
613
614 Auktion::Bieter_ptr create ();
615
616
617
618
619
620
621
622
623
624
625
626
627
628 CORBA::Object_ptr get_component_def ();
629 CORBA::Object_ptr get_home_def ();
630 void remove_component (Components::CCMObject_ptr comp);
631
632
633
634 Components::CCMObject_ptr create_component ();
635
636 };
637
638
639
640
641 class Auktion_VerkaeuferHome_impl :
642 virtual public POA_Auktion::VerkaeuferHome,
643 virtual public PortableServer::RefCountServantBase
{
644 private:
645 Auktion::CCM_VerkaeuferHome * _instance;
646 MICO::CCM::SessionContainer * _container;
647
648 public:
649 Auktion_VerkaeuferHome_impl (Auktion::CCM_VerkaeuferHome *, MICO::CCM::SessionContainer *);
650 ~Auktion_VerkaeuferHome_impl ();
651
652
653
654 Auktion::Verkaeufer_ptr create ();
655
656
657
658
659
660
661
662
663
664
665
666
667
668 CORBA::Object_ptr get_component_def ();
669 CORBA::Object_ptr get_home_def ();
670 void remove_component (Components::CCMObject_ptr comp);
671
672
673
674 Components::CCMObject_ptr create_component ();
675
676 };
677
678
679
680 }
681
682 #endif
683
684
685