00001
00002
00003 #include "orbsvcs/Event/EC_Event_Channel.h"
00004 #include "orbsvcs/Event/EC_Default_Factory.h"
00005 #include "ace/Dynamic_Service.h"
00006
00007 ACE_RCSID(Event, EC_Event_Channel, "EC_Event_Channel.cpp,v 1.35 2006/03/14 06:14:25 jtc Exp")
00008
00009 TAO_BEGIN_VERSIONED_NAMESPACE_DECL
00010
00011 TAO_EC_Event_Channel::
00012 TAO_EC_Event_Channel (const TAO_EC_Event_Channel_Attributes& attr,
00013 TAO_EC_Factory* factory,
00014 int own_factory)
00015 : TAO_EC_Event_Channel_Base (attr, factory, own_factory)
00016 {
00017 if (this->factory () == 0)
00018 {
00019 this->factory (
00020 ACE_Dynamic_Service<TAO_EC_Factory>::instance ("EC_Factory"),
00021 0);
00022
00023 if (this->factory () == 0)
00024 {
00025 TAO_EC_Factory *f = 0;
00026 ACE_NEW (f,
00027 TAO_EC_Default_Factory);
00028 this->factory (f, 1);
00029 }
00030 }
00031 this->scheduler_ =
00032 CORBA::Object::_duplicate (attr.scheduler);
00033
00034 this->create_strategies ();
00035 }
00036
00037 TAO_END_VERSIONED_NAMESPACE_DECL