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>
Public Types | |
typedef ACE_Unbounded_Queue_Iterator < ACE_TCHAR * > | iterator |
Public Member Functions | |
TAO_Codeset_Parameters (void) | |
~TAO_Codeset_Parameters (void) | |
const ACE_TCHAR * | native (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_TCHAR * | native_ |
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.
Definition at line 71 of file default_resource.h.
TAO_Codeset_Parameters::TAO_Codeset_Parameters | ( | void | ) |
Definition at line 36 of file default_resource.cpp.
: translators_ () , native_ (0) { }
TAO_Codeset_Parameters::~TAO_Codeset_Parameters | ( | void | ) |
Definition at line 42 of file default_resource.cpp.
{ for (TAO_Codeset_Parameters::iterator i = this->translators (); !i.done (); i.advance ()) { ACE_TCHAR** element = 0; if (i.next (element)) ACE_OS::free (*element); } ACE_OS::free (this->native_); }
void TAO_Codeset_Parameters::add_translator | ( | const ACE_TCHAR * | name | ) |
Add a new codeset.
Definition at line 90 of file default_resource.cpp.
{ this->translators_.enqueue_tail (ACE_OS::strdup (name)); }
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.
{ if (csd == 0) return; if (this->native () != 0) csd->ncs (this->native ()); ACE_TCHAR** element = 0; for (TAO_Codeset_Parameters::iterator i = this->translators (); !i.done (); i.advance ()) { if (i.next (element)) csd->add_translator (*element); } }
void TAO_Codeset_Parameters::native | ( | const ACE_TCHAR * | n | ) |
The native codeset (setter).
Definition at line 83 of file default_resource.cpp.
{ ACE_OS::free (this->native_); this->native_ = ACE_OS::strdup (n); }
const ACE_TCHAR * TAO_Codeset_Parameters::native | ( | void | ) |
The native codeset (getter).
Definition at line 58 of file default_resource.cpp.
{ return (this->native_); }
TAO_Codeset_Parameters::iterator TAO_Codeset_Parameters::translators | ( | void | ) |
Iterate through the registered translators.
Definition at line 96 of file default_resource.cpp.
{ return this->translators_.begin (); }
ACE_TCHAR* TAO_Codeset_Parameters::native_ [private] |
Definition at line 81 of file default_resource.h.
Definition at line 80 of file default_resource.h.