TAO_Codeset_Parameters Class Reference

A simple storage class for the native codeset and any translators that must be configured when creating an instance of codeset manager. More...

#include <default_resource.h>

Inheritance diagram for TAO_Codeset_Parameters:

Inheritance graph
[legend]
Collaboration diagram for TAO_Codeset_Parameters:

Collaboration graph
[legend]
List of all members.

Public Types

typedef ACE_Unbounded_Queue_Iterator<
ACE_TCHAR * > 
iterator

Public Member Functions

 TAO_Codeset_Parameters (void)
 ~TAO_Codeset_Parameters (void)
const ACE_TCHARnative (void)
 The native codeset (getter).

void native (const ACE_TCHAR *n)
 The native codeset (setter).

void add_translator (const ACE_TCHAR *name)
 Add a new codeset.

iterator translators (void)
 Iterate through the registered translators.

void apply_to (TAO_Codeset_Descriptor_Base *csd)
 Apply the parameters to the said descriptor.


Private Attributes

ACE_Unbounded_Queue< ACE_TCHAR * > translators_
ACE_TCHARnative_

Detailed Description

A simple storage class for the native codeset and any translators that must be configured when creating an instance of codeset manager.

The Resource Factory uses two instances of this class during its initialization, to capture any native codeset or translators settings. The RF later uses these parameters when creating instances of the codeset manager.

Perhaps, the best would be to place the responsibility for codeset manager's configuration with the the codeset manager factory?

Definition at line 55 of file default_resource.h.


Member Typedef Documentation

typedef ACE_Unbounded_Queue_Iterator<ACE_TCHAR*> TAO_Codeset_Parameters::iterator
 

Definition at line 71 of file default_resource.h.

Referenced by apply_to(), and ~TAO_Codeset_Parameters().


Constructor & Destructor Documentation

TAO_BEGIN_VERSIONED_NAMESPACE_DECL TAO_Codeset_Parameters::TAO_Codeset_Parameters void   ) 
 

Definition at line 36 of file default_resource.cpp.

00037   : translators_ ()
00038   , native_ (0)
00039 {
00040 }

TAO_Codeset_Parameters::~TAO_Codeset_Parameters void   ) 
 

Definition at line 42 of file default_resource.cpp.

References ACE_TCHAR, ACE_OS::free(), iterator, and translators().

00043 {
00044   for (TAO_Codeset_Parameters::iterator i =
00045          this->translators ();
00046        !i.done ();
00047        i.advance ())
00048     {
00049       ACE_TCHAR** element = 0;
00050       if (i.next (element))
00051         ACE_OS::free (*element);
00052     }
00053 
00054   ACE_OS::free (this->native_);
00055 }


Member Function Documentation

void TAO_Codeset_Parameters::add_translator const ACE_TCHAR name  ) 
 

Add a new codeset.

Definition at line 90 of file default_resource.cpp.

References ACE_Unbounded_Queue< ACE_TCHAR * >::enqueue_tail(), and translators_.

Referenced by TAO_Default_Resource_Factory::init().

00091 {
00092   this->translators_.enqueue_tail (ACE_OS::strdup (name));
00093 }

void TAO_Codeset_Parameters::apply_to TAO_Codeset_Descriptor_Base csd  ) 
 

Apply the parameters to the said descriptor.

Definition at line 64 of file default_resource.cpp.

References ACE_TCHAR, TAO_Codeset_Descriptor_Base::add_translator(), iterator, native(), TAO_Codeset_Descriptor_Base::ncs(), and translators().

Referenced by TAO_Default_Resource_Factory::codeset_manager().

00065 {
00066   if (csd == 0)
00067     return;
00068 
00069   if (this->native () != 0)
00070       csd->ncs (this->native ());
00071 
00072   ACE_TCHAR** element = 0;
00073   for (TAO_Codeset_Parameters::iterator i = this->translators ();
00074        !i.done ();
00075        i.advance ())
00076     {
00077       if (i.next (element))
00078         csd->add_translator (*element);
00079     }
00080 }

void TAO_Codeset_Parameters::native const ACE_TCHAR n  ) 
 

The native codeset (setter).

Definition at line 83 of file default_resource.cpp.

References ACE_OS::free(), native_, and ACE_OS::strdup().

00084 {
00085   ACE_OS::free (this->native_);
00086   this->native_ = ACE_OS::strdup (n);
00087 }

const ACE_TCHAR * TAO_Codeset_Parameters::native void   ) 
 

The native codeset (getter).

Definition at line 58 of file default_resource.cpp.

References native_.

Referenced by apply_to(), and TAO_Default_Resource_Factory::init().

00059 {
00060   return (this->native_);
00061 }

TAO_Codeset_Parameters::iterator TAO_Codeset_Parameters::translators void   ) 
 

Iterate through the registered translators.

Definition at line 96 of file default_resource.cpp.

References ACE_Unbounded_Queue< ACE_TCHAR * >::begin(), and translators_.

Referenced by apply_to(), and ~TAO_Codeset_Parameters().

00097 {
00098   return this->translators_.begin ();
00099 }


Member Data Documentation

ACE_TCHAR* TAO_Codeset_Parameters::native_ [private]
 

Definition at line 81 of file default_resource.h.

Referenced by native().

ACE_Unbounded_Queue<ACE_TCHAR*> TAO_Codeset_Parameters::translators_ [private]
 

Definition at line 80 of file default_resource.h.

Referenced by add_translator(), and translators().


The documentation for this class was generated from the following files:
Generated on Sun Jan 27 13:14:10 2008 for TAO by doxygen 1.3.6