version 1.16, 2005/05/30 13:49:46
|
version 1.20, 2005/06/06 08:28:15
|
|
|
// Author: Humberto Rivero (hurivero@us.ibm.com) | // Author: Humberto Rivero (hurivero@us.ibm.com) |
// | // |
// Modified By: Aruran, IBM (ashanmug@in.ibm.com) for Bug# 3697, 3698, 3699, 3700 | // Modified By: Aruran, IBM (ashanmug@in.ibm.com) for Bug# 3697, 3698, 3699, 3700 |
// Aruran, IBM (ashanmug@in.ibm.com) for Bug# 3701 |
// Aruran, IBM (ashanmug@in.ibm.com) for Bug# 3701, 3702, 3703, 3704 |
// | // |
//%///////////////////////////////////////////////////////////////////////////// | //%///////////////////////////////////////////////////////////////////////////// |
| |
|
|
return true; | return true; |
} | } |
| |
String LanguageParser::convertPrivateLanguageTag(String language_tag){ |
String LanguageParser::convertPrivateLanguageTag(const String & language_tag){ |
// figure out if its a unix style locale or windows locale | // figure out if its a unix style locale or windows locale |
Uint32 i; | Uint32 i; |
if(( i = language_tag.find("pegasus-")) != PEG_NOT_FOUND ){ | if(( i = language_tag.find("pegasus-")) != PEG_NOT_FOUND ){ |
language_tag = language_tag.subString(i+5); // capture the remainder of the string |
String str; |
return String(replaceSeparator(language_tag.getCString(), '-')); |
str = language_tag.subString(i+5); |
|
//language_tag = language_tag.subString(i+5); // capture the remainder of the string |
|
return String(replaceSeparator(str.getCString(), '-')); |
} | } |
//else if( (i = language_tag.find("win-")) != PEG_NOT_FOUND ){ | //else if( (i = language_tag.find("win-")) != PEG_NOT_FOUND ){ |
// return language_tag.subString(i+4); // capture the remainder of the string | // return language_tag.subString(i+4); // capture the remainder of the string |
|
|
} | } |
} | } |
| |
Boolean LanguageParser::checkAlpha(CString _str){ |
Boolean LanguageParser::checkAlpha(const CString & _str){ |
Uint32 length = (Uint32) strlen(_str); | Uint32 length = (Uint32) strlen(_str); |
for(Uint32 i = 0; i < length; i++) | for(Uint32 i = 0; i < length; i++) |
if( !isalpha(_str[i]) ) | if( !isalpha(_str[i]) ) |
|
|
return true; | return true; |
} | } |
| |
char LanguageParser::findSeparator(CString _str){ |
char LanguageParser::findSeparator(const CString & _str){ |
Uint32 length = (Uint32) strlen(_str); | Uint32 length = (Uint32) strlen(_str); |
for(Uint32 i = 0; i < length; i++) | for(Uint32 i = 0; i < length; i++) |
if(!isalnum(_str[i])) | if(!isalnum(_str[i])) |
|
|
return '\0'; | return '\0'; |
} | } |
| |
CString LanguageParser::replaceSeparator(CString _s, char new_sep){ |
CString LanguageParser::replaceSeparator(const CString & _s, char new_sep){ |
char * _str = const_cast<char *>((const char*)_s); |
const Uint32 length = (Uint32) strlen(_s); |
Uint32 length = (Uint32) strlen(_str); |
AutoArrayPtr<char> _str(new char[length + 1]); |
|
strcpy(_str.get(),_s); |
for(Uint32 i = 0; i < length; i++) | for(Uint32 i = 0; i < length; i++) |
_str[i] = (!isalnum(_str[i])) ? new_sep : _str[i]; |
{ |
return (String(_str)).getCString(); |
if (!isalnum(_str.get()[i])) |
|
{ |
|
_str.get()[i] = new_sep; |
|
} |
|
} |
|
const String retval(_str.get()); |
|
_str.release(); |
|
return(retval.getCString()); |
} | } |
| |
| |