TAO_Notify_ETCL_FilterFactory Class Reference

#include <ETCL_FilterFactory.h>

Inheritance diagram for TAO_Notify_ETCL_FilterFactory:

Inheritance graph
[legend]
Collaboration diagram for TAO_Notify_ETCL_FilterFactory:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 TAO_Notify_ETCL_FilterFactory (void)
 Constuctor.

virtual ~TAO_Notify_ETCL_FilterFactory ()
 Destructor.

virtual CosNotifyFilter::FilterFactory_ptr create (PortableServer::POA_var &filter_poa)
 = TAO_Notify_FilterFactory methods.

virtual CosNotifyFilter::Filter_ptr create_filter (const char *constraint_grammar)
 = CosNotifyFilter::FilterFactory methods

virtual CosNotifyFilter::MappingFilter_ptr create_mapping_filter (const char *constraint_grammar, const CORBA::Any &default_value)

Protected Attributes

PortableServer::POA_var filter_poa_
 The POA in which to activate the Filters.


Constructor & Destructor Documentation

TAO_BEGIN_VERSIONED_NAMESPACE_DECL TAO_Notify_ETCL_FilterFactory::TAO_Notify_ETCL_FilterFactory void   ) 
 

Constuctor.

Definition at line 11 of file ETCL_FilterFactory.cpp.

00012 {
00013 }

TAO_Notify_ETCL_FilterFactory::~TAO_Notify_ETCL_FilterFactory  )  [virtual]
 

Destructor.

Definition at line 15 of file ETCL_FilterFactory.cpp.

00016 {
00017 }


Member Function Documentation

CosNotifyFilter::FilterFactory_ptr TAO_Notify_ETCL_FilterFactory::create PortableServer::POA_var filter_poa  )  [virtual]
 

= TAO_Notify_FilterFactory methods.

Implements TAO_Notify_FilterFactory.

Definition at line 20 of file ETCL_FilterFactory.cpp.

References filter_poa_.

00021 {
00022   this->filter_poa_ = filter_poa; // save the filter poa.
00023 
00024   PortableServer::ServantBase_var servant_var (this);
00025 
00026   return _this ();
00027 }

CosNotifyFilter::Filter_ptr TAO_Notify_ETCL_FilterFactory::create_filter const char *  constraint_grammar  )  [virtual]
 

= CosNotifyFilter::FilterFactory methods

Definition at line 30 of file ETCL_FilterFactory.cpp.

References ACE_NEW_THROW_EX, filter_poa_, and ACE_OS::strcmp().

00031 {
00032   // @@: change to "ExTCL" later.
00033   if (ACE_OS::strcmp (constraint_grammar, "TCL") != 0 &&
00034       ACE_OS::strcmp (constraint_grammar, "ETCL") != 0 &&
00035       ACE_OS::strcmp (constraint_grammar, "EXTENDED_TCL") != 0)
00036     throw CosNotifyFilter::InvalidGrammar ();
00037 
00038 
00039   // Create the RefCounted servant.
00040   TAO_Notify_ETCL_Filter* filter = 0;
00041 
00042   ACE_NEW_THROW_EX (filter,
00043                     TAO_Notify_ETCL_Filter (),
00044                     CORBA::NO_MEMORY ());
00045 
00046   PortableServer::ServantBase_var filter_var (filter);
00047 
00048   PortableServer::ObjectId_var oid =
00049     this->filter_poa_->activate_object (filter);
00050 
00051   CORBA::Object_var obj =
00052     this->filter_poa_->id_to_reference (oid.in ());
00053 
00054   return CosNotifyFilter::Filter::_narrow (obj.in ());
00055 }

CosNotifyFilter::MappingFilter_ptr TAO_Notify_ETCL_FilterFactory::create_mapping_filter const char *  constraint_grammar,
const CORBA::Any &  default_value
[virtual]
 

Definition at line 58 of file ETCL_FilterFactory.cpp.

00061 {
00062   throw CORBA::NO_IMPLEMENT ();
00063 }


Member Data Documentation

PortableServer::POA_var TAO_Notify_ETCL_FilterFactory::filter_poa_ [protected]
 

The POA in which to activate the Filters.

Definition at line 70 of file ETCL_FilterFactory.h.

Referenced by create(), and create_filter().


The documentation for this class was generated from the following files:
Generated on Sun Jan 27 15:49:00 2008 for TAO_CosNotification by doxygen 1.3.6