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