DSIUnicodeCollation Class Reference

A concrete ICollation implementation. More...

Inherits Simba::DSI::ICollation.

List of all members.

Public Member Functions

virtual AutoPtr< ICollatorCreateCollator (EncodingType in_encoding) const
 Create and return an ICollator object.
virtual AutoPtr
< Simba::Support::IHasher
CreateHasher (EncodingType in_encoding) const
 Create a hasher for the collation.
virtual AutoPtr< ILikeMatcherCreateLikeMatcher (const simba_byte *in_pattern, simba_uint32 in_patternLength, const simba_byte *in_escapeChar, simba_uint32 in_escapeCharLength, EncodingType in_encoding) const
 Create and return a ILikeMatcher object.
 DSIUnicodeCollation (DSICollatingSequence in_collatingSequence)
 Overloaded Constructor.
const DSICollatingSequenceGetCollatingSequence () const
 Get the DSICollations collating sequence.
virtual const simba_wstringGetCollationName () const
 Get the collation name for this class.
virtual const TDWGuidGetTypeID () const
 Get the GUID of the Collation concrete class.
virtual bool IsEqual (const ICollation &in_collation) const
 Compare two collations to determine if they are equal.
virtual ~DSIUnicodeCollation ()
 Destructor.

Static Public Member Functions

static UCollator * CreateCollator (const DSICollatingSequence &in_collatingSequence, EncodingType in_encoding, const char *in_locale)
 Helper method to create a rule_based ICU collator struct. This method cand be used in Create* methods to avoid code duplication.
static simba_string CreateUnicodeLocaleString (const DSICollatingSequence &in_collatingSequence)
 Create and return the tailored locale string.

Detailed Description

A concrete ICollation implementation.

The class is designed to be extensible to handle a custom collation.


Constructor & Destructor Documentation

DSIUnicodeCollation ( DSICollatingSequence  in_collatingSequence  ) 

Overloaded Constructor.

Initialize the DSICollatingSequence for the column.

Parameters:
in_collatingSequence The collating sequence to initialize from. m_collatingSequence = in_collatingSequence
virtual ~DSIUnicodeCollation (  )  [virtual]

Destructor.


Member Function Documentation

static UCollator* CreateCollator ( const DSICollatingSequence in_collatingSequence,
EncodingType  in_encoding,
const char *  in_locale 
) [static]

Helper method to create a rule_based ICU collator struct. This method cand be used in Create* methods to avoid code duplication.

Parameters:
in_collatingSequence the collating rules being used.
in_encoding the type of encoding being used.

return an ICU UCollator* (Not OWN)

virtual AutoPtr<ICollator> CreateCollator ( EncodingType  in_encoding  )  const [virtual]

Create and return an ICollator object.

When performing a comparison of two given strings the collator object's comparison method will be used.

Returns:
a ICollator object wrapped in a auto pointer.

Implements ICollation.

virtual AutoPtr<Simba::Support::IHasher> CreateHasher ( EncodingType  in_encoding  )  const [virtual]

Create a hasher for the collation.

Parameters:
in_encoding The encoding for the hashed value.
Returns:
A hasher pointer. (NOT OWN)

Implements ICollation.

virtual AutoPtr<ILikeMatcher> CreateLikeMatcher ( const simba_byte *  in_pattern,
simba_uint32  in_patternLength,
const simba_byte *  in_escapeChar,
simba_uint32  in_escapeCharLength,
EncodingType  in_encoding 
) const [virtual]

Create and return a ILikeMatcher object.

Parameters:
in_pattern the LIKE pattern to be used during comparison (NOT OWN)
in_patternLength the length of the pattern in bytes.
in_escapeChar the escape character if presented. (NOT OWN)
in_escapeCharLength the length of the escape char in bytes.
in_encoding the type of encoding being used.
Returns:
a AutoPtr<ILikeMatcher> object.

Implements ICollation.

static simba_string CreateUnicodeLocaleString ( const DSICollatingSequence in_collatingSequence  )  [static]

Create and return the tailored locale string.

const DSICollatingSequence& GetCollatingSequence (  )  const

Get the DSICollations collating sequence.

Returns:
m_collatingSequence
virtual const simba_wstring& GetCollationName (  )  const [inline, virtual]

Get the collation name for this class.

Returns:
The collation name for this class.

Reimplemented from ICollation.

virtual const TDWGuid& GetTypeID (  )  const [virtual]

Get the GUID of the Collation concrete class.

IsEqual will call this method to ensure that the collation type being passed in is equal to the class inheriting ICollation. (e.g. DSICollation)

Returns:
the guid of the concrete class.

Implements ICollation.

virtual bool IsEqual ( const ICollation in_collation  )  const [virtual]

Compare two collations to determine if they are equal.

When trying to determine the coercion of the collation, IsEqual can be used to compare different collations.

Parameters:
in_collation A defined collation.
Returns:
true if equal.

Implements ICollation.


The documentation for this class was generated from the following file:

Generated on Wed May 17 14:21:15 2017 for SimbaEngine 10.1.3.1011 by simba