CGI

Collaboration diagram for CGI:


Detailed Description

CGI Members.


Modules

 CGI Base Classes
 CGI Command APIs
 CGI Exception
 CGI Request/Response APIs
 Cookie Affinity Services

Classes

class  CCgiSession
 CCgiSession --. More...
class  ICgiSessionStorage
 ICgiSessionStorage --. More...
class  IUrlEncoder
 IUrlEncoder::. More...
class  CEmptyUrlEncoder
 Primitive encoder - all methods return the argument value. More...
class  CDefaultUrlEncoder
 Default encoder, uses the selected encoding for argument names/values and eUrlEncode_Path for document path. More...
class  CCgiArgs_Parser
 CCgiArgs_Parser::. More...
class  CCgiArgs
 CCgiArgs::. More...
struct  CCgiArgs::SCgiArg
 Name-value pair. More...
class  CUrl
 CUrl::. More...
class  CCgiUserAgent
 CCgiUserAgent --. More...

Typedefs

typedef SCgiArg CCgiArgs::TArg
typedef list< TArg > CCgiArgs::TArgs
typedef TArgs::iterator CCgiArgs::iterator
typedef TArgs::const_iterator CCgiArgs::const_iterator
typedef CVersionInfo TUserAgentVersion
 User agent version info.
typedef unsigned int CCgiUserAgent::TBotFlags
 Binary OR of "EBotFlags".

Enumerations

enum  EUrlEncode {
  eUrlEncode_None = NStr::eUrlEnc_None, eUrlEncode_SkipMarkChars = NStr::eUrlEnc_SkipMarkChars, eUrlEncode_ProcessMarkChars = NStr::eUrlEnc_ProcessMarkChars, eUrlEncode_PercentOnly = NStr::eUrlEnc_PercentOnly,
  eUrlEncode_Path = NStr::eUrlEnc_Path
}
 URL encode flags. More...
enum  EUrlDecode { eUrlDecode_All = NStr::eUrlDec_All, eUrlDecode_Percent = NStr::eUrlDec_Percent }
 URL decode flags. More...
enum  CCgiArgs_Parser::EArgType { CCgiArgs_Parser::eArg_Value, CCgiArgs_Parser::eArg_Index }
 Query type flag. More...
enum  CCgiArgs::EAmpEncoding { CCgiArgs::eAmp_Char, CCgiArgs::eAmp_Entity }
 Ampersand encoding for composed URLs. More...
enum  CCgiUserAgent::EBrowser {
  CCgiUserAgent::eUnknown = 0, CCgiUserAgent::eIE, CCgiUserAgent::eiCab, CCgiUserAgent::eKonqueror,
  CCgiUserAgent::eLynx, CCgiUserAgent::eNetscape, CCgiUserAgent::eOpera, CCgiUserAgent::eOregano,
  CCgiUserAgent::eW3m, CCgiUserAgent::eNagios, CCgiUserAgent::eBeonex, CCgiUserAgent::eCamino,
  CCgiUserAgent::eChimera, CCgiUserAgent::eEpiphany, CCgiUserAgent::eFirefox, CCgiUserAgent::eFlock,
  CCgiUserAgent::eIceCat, CCgiUserAgent::eIceweasel, CCgiUserAgent::eGaleon, CCgiUserAgent::eKMeleon,
  CCgiUserAgent::eMadfox, CCgiUserAgent::eMinimo, CCgiUserAgent::eMultiZilla, CCgiUserAgent::eSeaMonkey,
  CCgiUserAgent::eAvantBrowser, CCgiUserAgent::eCrazyBrowser, CCgiUserAgent::eEnigmaBrowser, CCgiUserAgent::eIRider,
  CCgiUserAgent::eMaxthon, CCgiUserAgent::eNetCaptor, CCgiUserAgent::eChrome, CCgiUserAgent::eOmniWeb,
  CCgiUserAgent::eNetNewsWire, CCgiUserAgent::eSafari, CCgiUserAgent::eShiira, CCgiUserAgent::eCrawler,
  CCgiUserAgent::eOfflineBrowser, CCgiUserAgent::eScript, CCgiUserAgent::eLinkChecker, CCgiUserAgent::eWebValidator,
  CCgiUserAgent::eMozilla, CCgiUserAgent::eMozillaCompatible
}
 Browser types. More...
enum  CCgiUserAgent::EBrowserEngine {
  CCgiUserAgent::eEngine_Unknown = eUnknown, CCgiUserAgent::eEngine_IE = eIE, CCgiUserAgent::eEngine_Gecko = eMozilla, CCgiUserAgent::eEngine_KHTML = eSafari,
  CCgiUserAgent::eEngine_Bot = eCrawler
}
 Browser engine types. More...
enum  CCgiUserAgent::EBrowserPlatform { CCgiUserAgent::ePlatform_Unknown = eUnknown, CCgiUserAgent::ePlatform_Windows, CCgiUserAgent::ePlatform_Mac, CCgiUserAgent::ePlatform_Unix }
 Platform types. More...
enum  CCgiUserAgent::EBotFlags {
  CCgiUserAgent::fBotCrawler = (1<<1), CCgiUserAgent::fBotOfflineBrowser = (1<<2), CCgiUserAgent::fBotScript = (1<<3), CCgiUserAgent::fBotLinkChecker = (1<<4),
  CCgiUserAgent::fBotWebValidator = (1<<5), CCgiUserAgent::fBotAll = 0xFF
}
 Bots check flags (what consider to be a bot). More...

Functions

NCBI_DEPRECATED string URL_DecodeString (const string &str, EUrlEncode encode_flag=eUrlEncode_SkipMarkChars)
 Decode the URL-encoded string "str"; return the result of decoding If "str" format is invalid then throw CParseException.
NCBI_DEPRECATED SIZE_TYPE URL_DecodeInPlace (string &str, EUrlDecode decode_flag=eUrlDecode_All)
 URL-decode string "str" into itself Return 0 on success; otherwise, return 1-based error position.
NCBI_DEPRECATED string URL_EncodeString (const string &str, EUrlEncode encode_flag=eUrlEncode_SkipMarkChars)
 URL-encode a string "str" to the "x-www-form-urlencoded" form; return the result of encoding.
virtual string IUrlEncoder::EncodeUser (const string &user) const =0
 Encode user name.
virtual string IUrlEncoder::DecodeUser (const string &user) const =0
 Decode user name.
virtual string IUrlEncoder::EncodePassword (const string &password) const =0
 Encode password.
virtual string IUrlEncoder::DecodePassword (const string &password) const =0
 Decode password.
virtual string IUrlEncoder::EncodePath (const string &path) const =0
 Encode path on server.
virtual string IUrlEncoder::DecodePath (const string &path) const =0
 Decode path on server.
virtual string IUrlEncoder::EncodeArgName (const string &name) const =0
 Encode CGI argument name.
virtual string IUrlEncoder::DecodeArgName (const string &name) const =0
 Decode CGI argument name.
virtual string IUrlEncoder::EncodeArgValue (const string &value) const =0
 Encode CGI argument value.
virtual string IUrlEncoder::DecodeArgValue (const string &value) const =0
 Decode CGI argument value.
virtual string IUrlEncoder::EncodeFragment (const string &value) const =0
 Encode fragment.
virtual string IUrlEncoder::DecodeFragment (const string &value) const =0
 Decode fragment.
virtual string CEmptyUrlEncoder::DecodeUser (const string &user) const
 Decode user name.
virtual string CEmptyUrlEncoder::EncodePassword (const string &password) const
 Encode password.
virtual string CEmptyUrlEncoder::DecodePassword (const string &password) const
 Decode password.
virtual string CEmptyUrlEncoder::EncodePath (const string &path) const
 Encode path on server.
virtual string CEmptyUrlEncoder::DecodePath (const string &path) const
 Decode path on server.
virtual string CEmptyUrlEncoder::EncodeArgName (const string &name) const
 Encode CGI argument name.
virtual string CEmptyUrlEncoder::DecodeArgName (const string &name) const
 Decode CGI argument name.
virtual string CEmptyUrlEncoder::EncodeArgValue (const string &value) const
 Encode CGI argument value.
virtual string CEmptyUrlEncoder::DecodeArgValue (const string &value) const
 Decode CGI argument value.
virtual string CEmptyUrlEncoder::EncodeFragment (const string &value) const
 Encode fragment.
virtual string CEmptyUrlEncoder::DecodeFragment (const string &value) const
 Decode fragment.
virtual string CDefaultUrlEncoder::EncodePath (const string &path) const
 Encode path on server.
virtual string CDefaultUrlEncoder::DecodePath (const string &path) const
 Decode path on server.
virtual string CDefaultUrlEncoder::EncodeArgName (const string &name) const
 Encode CGI argument name.
virtual string CDefaultUrlEncoder::DecodeArgName (const string &name) const
 Decode CGI argument name.
virtual string CDefaultUrlEncoder::EncodeArgValue (const string &value) const
 Encode CGI argument value.
virtual string CDefaultUrlEncoder::DecodeArgValue (const string &value) const
 Decode CGI argument value.
virtual string CDefaultUrlEncoder::EncodeFragment (const string &value) const
 Encode fragment.
virtual string CDefaultUrlEncoder::DecodeFragment (const string &value) const
 Decode fragment.
virtual CCgiArgs_Parser::~CCgiArgs_Parser (void)
void CCgiArgs_Parser::SetQueryString (const string &query, EUrlEncode encode)
 Parse query string, call AddArgument() to store each value.
void CCgiArgs_Parser::SetQueryString (const string &query, const IUrlEncoder *encoder=0)
 Parse query string, call AddArgument() to store each value.
void CCgiArgs_Parser::SetSemicolonIsNotArgDelimiter (bool enable=true)
 Treat semicolon as query string argument separator.
virtual void CCgiArgs_Parser::AddArgument (unsigned int position, const string &name, const string &value, EArgType arg_type=eArg_Index)=0
 Process next query argument.
void CCgiArgs_Parser::x_SetIndexString (const string &query, const IUrlEncoder &encoder)
 CCgiArgs::CCgiArgs (const string &query, EUrlEncode decode)
 Parse the query string, store the arguments.
 CCgiArgs::CCgiArgs (const string &query, const IUrlEncoder *encoder=0)
 Parse the query string, store the arguments.
string CCgiArgs::GetQueryString (EAmpEncoding amp_enc, EUrlEncode encode) const
 Construct and return complete query string.
string CCgiArgs::GetQueryString (EAmpEncoding amp_enc, const IUrlEncoder *encoder=0) const
 Construct and return complete query string.
bool CCgiArgs::IsSetValue (const string &name) const
 Check if an argument with the given name exists.
const string & CCgiArgs::GetValue (const string &name, bool *is_found=0) const
 Get value for the given name.
void CCgiArgs::SetValue (const string &name, const string &value)
 Set new value for the first argument with the given name or add a new argument.
const TArgs & CCgiArgs::GetArgs (void) const
 Get the const list of arguments.
TArgs & CCgiArgs::GetArgs (void)
 Get the list of arguments.
iterator CCgiArgs::FindFirst (const string &name)
 Find the first argument with the given name.
iterator CCgiArgs::FindNext (const iterator &iter)
 Take argument name from the iterator, find next argument with the same name, return GetArgs().end() if not found.
const_iterator CCgiArgs::FindFirst (const string &name) const
 Find the first argument with the given name.
const_iterator CCgiArgs::FindNext (const const_iterator &iter) const
 Take argument name from the iterator, find next argument with the same name, return GetArgs().end() if not found.
void CCgiArgs::SetCase (NStr::ECase name_case)
 Select case sensitivity of arguments' names.
virtual void CCgiArgs::AddArgument (unsigned int position, const string &name, const string &value, EArgType arg_type)
 Process next query argument.
iterator CCgiArgs::x_Find (const string &name, const iterator &start)
const_iterator CCgiArgs::x_Find (const string &name, const const_iterator &start) const
 CUrl::CUrl (const string &url, const IUrlEncoder *encoder=0)
 Parse the URL.
void CUrl::SetUrl (const string &url, const IUrlEncoder *encoder=0)
 Parse the URL.
string CUrl::ComposeUrl (CCgiArgs::EAmpEncoding amp_enc, const IUrlEncoder *encoder=0) const
 Compose the URL.
string CUrl::GetScheme (void) const
void CUrl::SetScheme (const string &value)
string CUrl::GetUser (void) const
void CUrl::SetUser (const string &value)
string CUrl::GetPassword (void) const
void CUrl::SetPassword (const string &value)
string CUrl::GetHost (void) const
void CUrl::SetHost (const string &value)
string CUrl::GetPort (void) const
void CUrl::SetPort (const string &value)
string CUrl::GetPath (void) const
void CUrl::SetPath (const string &value)
string CUrl::GetFragment (void) const
void CUrl::SetFragment (const string &value)
string CUrl::GetOriginalArgsString (void) const
 Get the original (unparsed and undecoded) CGI query string.
bool CUrl::HaveArgs (void) const
 Check if the URL contains any arguments.
const CCgiArgsCUrl::GetArgs (void) const
 Get const list of arguments.
CCgiArgsCUrl::GetArgs (void)
 Get list of arguments.
 CUrl::CUrl (const CUrl &url)
CUrlCUrl::operator= (const CUrl &url)
static IUrlEncoderCUrl::GetDefaultEncoder (void)
 Return default URL encoder.
void CUrl::x_SetScheme (const string &scheme, const IUrlEncoder &encoder)
void CUrl::x_SetUser (const string &user, const IUrlEncoder &encoder)
void CUrl::x_SetPassword (const string &password, const IUrlEncoder &encoder)
void CUrl::x_SetHost (const string &host, const IUrlEncoder &encoder)
void CUrl::x_SetPort (const string &port, const IUrlEncoder &encoder)
void CUrl::x_SetPath (const string &path, const IUrlEncoder &encoder)
void CUrl::x_SetArgs (const string &args, const IUrlEncoder &encoder)
void CUrl::x_SetFragment (const string &fragment, const IUrlEncoder &encoder)
 CCgiUserAgent::CCgiUserAgent (const string &user_agent)
 Constructor.
void CCgiUserAgent::Reset (const string &user_agent)
 Parse new user agent string.
string CCgiUserAgent::GetUserAgentStr (void) const
 Get user agent string.
EBrowser CCgiUserAgent::GetBrowser (void) const
 Get browser type.
const string & CCgiUserAgent::GetBrowserName (void) const
 Get browser name.
EBrowserEngine CCgiUserAgent::GetEngine (void) const
 Get browser engine type.
EBrowserPlatform CCgiUserAgent::GetPlatform (void) const
 Get platform (OS) type.
const TUserAgentVersionCCgiUserAgent::GetBrowserVersion (void) const
 Get browser version information.
const TUserAgentVersionCCgiUserAgent::GetEngineVersion (void) const
const TUserAgentVersionCCgiUserAgent::GetMozillaVersion (void) const
bool CCgiUserAgent::IsBot (TBotFlags flags=fBotAll, const string &patterns=kEmptyStr) const
 Check that this is known search robot/bot.
void CCgiUserAgent::x_Init (void)
 Init class members.
void CCgiUserAgent::x_Parse (const string &user_agent)
 Parse user agent string.
bool CCgiUserAgent::x_ParseToken (const string &token, int where)
 Parse token with browser name and version.
bool CCgiSession::Exists (void) const
 Check if this session object is valid.
EStatus CCgiSession::GetStatus (void) const
 Get current status of the session.
const string & CCgiSession::GetSessionIdName (void) const
 Get name for session ID.
void CCgiSession::SetSessionIdName (const string &name)
 Set name for session ID.
void CCgiSession::SetSessionCookieDomain (const string &domain)
 Set session cookie domain.
void CCgiSession::SetSessionCookiePath (const string &path)
 Set session cookie path.
void CCgiSession::SetSessionCookieExpTime (const CTime &exp_time)
 Set session cookie expiration time.

Variables

NStr::EUrlEncode CDefaultUrlEncoder::m_Encode
bool CCgiArgs_Parser::m_SemicolonIsNotArgDelimiter
string CCgiArgs::SCgiArg::name
string CCgiArgs::SCgiArg::value
NStr::ECase CCgiArgs::m_Case
bool CCgiArgs::m_IsIndex
TArgs CCgiArgs::m_Args
string CUrl::m_Scheme
bool CUrl::m_IsGeneric
string CUrl::m_User
string CUrl::m_Password
string CUrl::m_Host
string CUrl::m_Port
string CUrl::m_Path
string CUrl::m_Fragment
string CUrl::m_OrigArgs
auto_ptr< CCgiArgsCUrl::m_ArgsList
string CCgiUserAgent::m_UserAgent
 User-Agent string.
EBrowser CCgiUserAgent::m_Browser
 Browser type.
string CCgiUserAgent::m_BrowserName
 Browser name.
TUserAgentVersion CCgiUserAgent::m_BrowserVersion
 Browser version info.
EBrowserEngine CCgiUserAgent::m_Engine
 Browser engine type.
TUserAgentVersion CCgiUserAgent::m_EngineVersion
 Browser engine version.
TUserAgentVersion CCgiUserAgent::m_MozillaVersion
 Browser mozilla version.
EBrowserPlatform CCgiUserAgent::m_Platform
 Platform type.


Typedef Documentation

typedef TArgs::const_iterator CCgiArgs::const_iterator [inherited]
 

Definition at line 298 of file cgi_util.hpp.

typedef TArgs::iterator CCgiArgs::iterator [inherited]
 

Definition at line 297 of file cgi_util.hpp.

typedef SCgiArg CCgiArgs::TArg [inherited]
 

Definition at line 295 of file cgi_util.hpp.

typedef list<TArg> CCgiArgs::TArgs [inherited]
 

Definition at line 296 of file cgi_util.hpp.

typedef unsigned int CCgiUserAgent::TBotFlags [inherited]
 

Binary OR of "EBotFlags".

Definition at line 617 of file cgi_util.hpp.

typedef CVersionInfo TUserAgentVersion
 

User agent version info.

Definition at line 467 of file cgi_util.hpp.


Enumeration Type Documentation

enum CCgiArgs::EAmpEncoding [inherited]
 

Ampersand encoding for composed URLs.

Enumerator:
eAmp_Char  Use & to separate arguments.
eAmp_Entity  Encode '&' as "&amp;".

Definition at line 273 of file cgi_util.hpp.

enum CCgiArgs_Parser::EArgType [protected, inherited]
 

Query type flag.

Enumerator:
eArg_Value  Query contains name=value pairs.
eArg_Index  Query contains a list of names: name1+name2+name3.

Definition at line 227 of file cgi_util.hpp.

enum CCgiUserAgent::EBotFlags [inherited]
 

Bots check flags (what consider to be a bot).

See also:
EBrowser, EBrowserEngine
Enumerator:
fBotCrawler 
fBotOfflineBrowser 
fBotScript 
fBotLinkChecker 
fBotWebValidator 
fBotAll 

Definition at line 609 of file cgi_util.hpp.

enum CCgiUserAgent::EBrowser [inherited]
 

Browser types.

Enumerator:
eUnknown  Unknown user agent.
eIE  Microsoft Internet Explorer (www.microsoft.com/windows/ie).
eiCab  iCab (www.icab.de)
eKonqueror  Konqueror (www.konqueror.org).
eLynx  Lynx (lynx.browser.org).
eNetscape  Netscape (Navigator), versions >=6 are Gecko-based (www.netscape.com).
eOpera  Opera (www.opera.com).
eOregano  Oregano (www.castle.org.uk/oregano/).
eW3m  w3m (www.w3m.org)
eNagios  check_http/nagios-plugins (nagiosplugins.org)
eBeonex  Beonex Communicator (www.beonex.com).
eCamino  Camino (www.caminobrowser.org).
eChimera  Chimera (chimera.mozdev.org).
eEpiphany  Epiphany (www.gnome.org/projects/epiphany).
eFirefox  Firefox (www.mozilla.org/products/firefox).
eFlock  Flock (www.flock.com).
eIceCat  GNU IceCat (http://www.gnu.org/software/gnuzilla).
eIceweasel  Debian Iceweasel (www.geticeweasel.org).
eGaleon  Gakeon (galeon.sourceforge.net).
eKMeleon  K-Meleon (kmeleon.sf.net).
eMadfox  Madfox (www.splyb.com/madfox).
eMinimo  Minimo (www.mozilla.org/projects/minimo).
eMultiZilla  MultiZilla (multizilla.mozdev.org).
eSeaMonkey  SeaMonkey (www.mozilla.org/projects/seamonkey).
eAvantBrowser  Avant Browser (www.avantbrowser.com).
eCrazyBrowser  Crazy Browser (www.crazybrowser.com).
eEnigmaBrowser  Enigma Browser (www.suttondesigns.com).
eIRider  iRider (www.irider.com)
eMaxthon  Maxthon/MyIE2 (www.maxthon.com).
eNetCaptor  NetCaptor (www.netcaptor.com).
eChrome  Google Chrome (www.google.com/chrome).
eOmniWeb  OmniWeb (www.omnigroup.com/applications/omniweb).
eNetNewsWire  NetNewsWire (www.apple.com).
eSafari  Safari (www.apple.com/safari).
eShiira  Shiira (hmdt-web.net/shiira/en).
eCrawler  Search robots/bots/validators Class: crawlers / search robots.
eOfflineBrowser  Class: offline browsers.
eScript  Class: script tools (perl/php/...).
eLinkChecker  Class: link checkers.
eWebValidator  Class: validators.
eMozilla  Any other Gecko-based not from the list above, Mozilla version >= 5.0 Mozilla/other Gecko-based (www.mozilla.com).
eMozillaCompatible  Any other not from list above. Mozilla-compatible.

User agent string starts with "Mozilla/x.x (compatible;*". Not Gecko-based.

Definition at line 491 of file cgi_util.hpp.

enum CCgiUserAgent::EBrowserEngine [inherited]
 

Browser engine types.

Enumerator:
eEngine_Unknown  Unknown engine.
eEngine_IE  Microsoft Internet Explorer.
eEngine_Gecko  Gecko-based.
eEngine_KHTML  Apple WebKit.
eEngine_Bot  Search robot/bot/checker/...

Definition at line 553 of file cgi_util.hpp.

enum CCgiUserAgent::EBrowserPlatform [inherited]
 

Platform types.

Enumerator:
ePlatform_Unknown  Unknown OS.
ePlatform_Windows  Microsoft Windows.
ePlatform_Mac  MacOS.
ePlatform_Unix  Unix.

Definition at line 562 of file cgi_util.hpp.

enum EUrlDecode
 

URL decode flags.

Enumerator:
eUrlDecode_All 
eUrlDecode_Percent 

Definition at line 61 of file cgi_util.hpp.

enum EUrlEncode
 

URL encode flags.

Enumerator:
eUrlEncode_None 
eUrlEncode_SkipMarkChars 
eUrlEncode_ProcessMarkChars 
eUrlEncode_PercentOnly 
eUrlEncode_Path 

Definition at line 52 of file cgi_util.hpp.


Function Documentation

void CCgiArgs::AddArgument unsigned int  position,
const string &  name,
const string &  value,
EArgType  arg_type
[protected, virtual, inherited]
 

Process next query argument.

Must be overriden to process and store the arguments.

Parameters:
position 1-based index of the argument in the query.
name Name of the argument.
value Contains argument value if query type is eArg_Value or empty string for eArg_Index.
arg_type Query type flag.

Implements CCgiArgs_Parser.

Definition at line 212 of file cgi_util.cpp.

References _ASSERT, CCgiArgs_Parser::eArg_Index, CCgiArgs::m_Args, and CCgiArgs::m_IsIndex.

virtual void CCgiArgs_Parser::AddArgument unsigned int  position,
const string &  name,
const string &  value,
EArgType  arg_type = eArg_Index
[protected, pure virtual, inherited]
 

Process next query argument.

Must be overriden to process and store the arguments.

Parameters:
position 1-based index of the argument in the query.
name Name of the argument.
value Contains argument value if query type is eArg_Value or empty string for eArg_Index.
arg_type Query type flag.

Implemented in CCgiArgs, and CCgiEntries_Parser.

Referenced by CCgiArgs_Parser::x_SetIndexString().

CCgiArgs::CCgiArgs const string &  query,
const IUrlEncoder encoder = 0
[inherited]
 

Parse the query string, store the arguments.

Definition at line 204 of file cgi_util.cpp.

References CCgiArgs_Parser::SetQueryString().

CCgiArgs::CCgiArgs const string &  query,
EUrlEncode  decode
[inherited]
 

Parse the query string, store the arguments.

Definition at line 196 of file cgi_util.cpp.

References CCgiArgs_Parser::SetQueryString().

CCgiUserAgent::CCgiUserAgent const string &  user_agent  )  [inherited]
 

Constructor.

Parse the user agent string passed into the constructor.

Definition at line 596 of file cgi_util.cpp.

References CCgiUserAgent::x_Parse().

string CUrl::ComposeUrl CCgiArgs::EAmpEncoding  amp_enc,
const IUrlEncoder encoder = 0
const [inherited]
 

Compose the URL.

Parameters:
encode_flag Encode the URL parts before composing the URL.

Definition at line 491 of file cgi_util.cpp.

References CUrl::GetDefaultEncoder(), CUrl::m_IsGeneric, and CUrl::m_Scheme.

Referenced by CCgiResponse::SetLocation().

CUrl::CUrl const CUrl url  )  [inherited]
 

Definition at line 328 of file cgi_util.cpp.

CUrl::CUrl const string &  url,
const IUrlEncoder encoder = 0
[inherited]
 

Parse the URL.

Parameters:
url String to parse as URL: Generic: [scheme://[user[:password]@]]host[:port][/path][?args] Special: scheme:[path] The leading '/', if any, is included in path value.
encode_flag Decode the string before parsing according to the flag.

Definition at line 321 of file cgi_util.cpp.

References CUrl::SetUrl().

virtual string CDefaultUrlEncoder::DecodeArgName const string &  name  )  const [inline, virtual, inherited]
 

Decode CGI argument name.

Reimplemented from CEmptyUrlEncoder.

Definition at line 180 of file cgi_util.hpp.

References NStr::eUrlDec_All, NStr::eUrlDec_Percent, NStr::eUrlEnc_PercentOnly, CDefaultUrlEncoder::m_Encode, and NStr::URLDecode().

virtual string CEmptyUrlEncoder::DecodeArgName const string &  name  )  const [inline, virtual, inherited]
 

Decode CGI argument name.

Implements IUrlEncoder.

Reimplemented in CDefaultUrlEncoder.

Definition at line 153 of file cgi_util.hpp.

virtual string IUrlEncoder::DecodeArgName const string &  name  )  const [pure virtual, inherited]
 

Decode CGI argument name.

Implemented in CEmptyUrlEncoder, and CDefaultUrlEncoder.

Referenced by CCgiArgs_Parser::x_SetIndexString().

virtual string CDefaultUrlEncoder::DecodeArgValue const string &  value  )  const [inline, virtual, inherited]
 

Decode CGI argument value.

Reimplemented from CEmptyUrlEncoder.

Definition at line 186 of file cgi_util.hpp.

References NStr::eUrlDec_All, NStr::eUrlDec_Percent, NStr::eUrlEnc_PercentOnly, CDefaultUrlEncoder::m_Encode, and NStr::URLDecode().

virtual string CEmptyUrlEncoder::DecodeArgValue const string &  value  )  const [inline, virtual, inherited]
 

Decode CGI argument value.

Implements IUrlEncoder.

Reimplemented in CDefaultUrlEncoder.

Definition at line 157 of file cgi_util.hpp.

virtual string IUrlEncoder::DecodeArgValue const string &  value  )  const [pure virtual, inherited]
 

Decode CGI argument value.

Implemented in CEmptyUrlEncoder, and CDefaultUrlEncoder.

virtual string CDefaultUrlEncoder::DecodeFragment const string &  value  )  const [inline, virtual, inherited]
 

Decode fragment.

Reimplemented from CEmptyUrlEncoder.

Definition at line 192 of file cgi_util.hpp.

References NStr::eUrlDec_All, and NStr::URLDecode().

virtual string CEmptyUrlEncoder::DecodeFragment const string &  value  )  const [inline, virtual, inherited]
 

Decode fragment.

Implements IUrlEncoder.

Reimplemented in CDefaultUrlEncoder.

Definition at line 161 of file cgi_util.hpp.

virtual string IUrlEncoder::DecodeFragment const string &  value  )  const [pure virtual, inherited]
 

Decode fragment.

Implemented in CEmptyUrlEncoder, and CDefaultUrlEncoder.

Referenced by CUrl::x_SetFragment().

virtual string CEmptyUrlEncoder::DecodePassword const string &  password  )  const [inline, virtual, inherited]
 

Decode password.

Implements IUrlEncoder.

Definition at line 145 of file cgi_util.hpp.

virtual string IUrlEncoder::DecodePassword const string &  password  )  const [pure virtual, inherited]
 

Decode password.

Implemented in CEmptyUrlEncoder.

Referenced by CUrl::x_SetPassword().

virtual string CDefaultUrlEncoder::DecodePath const string &  path  )  const [inline, virtual, inherited]
 

Decode path on server.

Reimplemented from CEmptyUrlEncoder.

Definition at line 176 of file cgi_util.hpp.

References NStr::URLDecode().

virtual string CEmptyUrlEncoder::DecodePath const string &  path  )  const [inline, virtual, inherited]
 

Decode path on server.

Implements IUrlEncoder.

Reimplemented in CDefaultUrlEncoder.

Definition at line 149 of file cgi_util.hpp.

virtual string IUrlEncoder::DecodePath const string &  path  )  const [pure virtual, inherited]
 

Decode path on server.

Implemented in CEmptyUrlEncoder, and CDefaultUrlEncoder.

Referenced by CUrl::x_SetPath().

virtual string CEmptyUrlEncoder::DecodeUser const string &  user  )  const [inline, virtual, inherited]
 

Decode user name.

Implements IUrlEncoder.

Definition at line 141 of file cgi_util.hpp.

virtual string IUrlEncoder::DecodeUser const string &  user  )  const [pure virtual, inherited]
 

Decode user name.

Implemented in CEmptyUrlEncoder.

Referenced by CUrl::x_SetUser().

virtual string CDefaultUrlEncoder::EncodeArgName const string &  name  )  const [inline, virtual, inherited]
 

Encode CGI argument name.

Reimplemented from CEmptyUrlEncoder.

Definition at line 178 of file cgi_util.hpp.

References CDefaultUrlEncoder::m_Encode, and NStr::URLEncode().

virtual string CEmptyUrlEncoder::EncodeArgName const string &  name  )  const [inline, virtual, inherited]
 

Encode CGI argument name.

Implements IUrlEncoder.

Reimplemented in CDefaultUrlEncoder.

Definition at line 151 of file cgi_util.hpp.

virtual string IUrlEncoder::EncodeArgName const string &  name  )  const [pure virtual, inherited]
 

Encode CGI argument name.

Implemented in CEmptyUrlEncoder, and CDefaultUrlEncoder.

virtual string CDefaultUrlEncoder::EncodeArgValue const string &  value  )  const [inline, virtual, inherited]
 

Encode CGI argument value.

Reimplemented from CEmptyUrlEncoder.

Definition at line 184 of file cgi_util.hpp.

References CDefaultUrlEncoder::m_Encode, and NStr::URLEncode().

virtual string CEmptyUrlEncoder::EncodeArgValue const string &  value  )  const [inline, virtual, inherited]
 

Encode CGI argument value.

Implements IUrlEncoder.

Reimplemented in CDefaultUrlEncoder.

Definition at line 155 of file cgi_util.hpp.

virtual string IUrlEncoder::EncodeArgValue const string &  value  )  const [pure virtual, inherited]
 

Encode CGI argument value.

Implemented in CEmptyUrlEncoder, and CDefaultUrlEncoder.

virtual string CDefaultUrlEncoder::EncodeFragment const string &  value  )  const [inline, virtual, inherited]
 

Encode fragment.

Reimplemented from CEmptyUrlEncoder.

Definition at line 190 of file cgi_util.hpp.

References NStr::eUrlEnc_URIFragment, and NStr::URLEncode().

virtual string CEmptyUrlEncoder::EncodeFragment const string &  value  )  const [inline, virtual, inherited]
 

Encode fragment.

Implements IUrlEncoder.

Reimplemented in CDefaultUrlEncoder.

Definition at line 159 of file cgi_util.hpp.

virtual string IUrlEncoder::EncodeFragment const string &  value  )  const [pure virtual, inherited]
 

Encode fragment.

Implemented in CEmptyUrlEncoder, and CDefaultUrlEncoder.

virtual string CEmptyUrlEncoder::EncodePassword const string &  password  )  const [inline, virtual, inherited]
 

Encode password.

Implements IUrlEncoder.

Definition at line 143 of file cgi_util.hpp.

virtual string IUrlEncoder::EncodePassword const string &  password  )  const [pure virtual, inherited]
 

Encode password.

Implemented in CEmptyUrlEncoder.

virtual string CDefaultUrlEncoder::EncodePath const string &  path  )  const [inline, virtual, inherited]
 

Encode path on server.

Reimplemented from CEmptyUrlEncoder.

Definition at line 174 of file cgi_util.hpp.

References NStr::eUrlEnc_URIPath, and NStr::URLEncode().

virtual string CEmptyUrlEncoder::EncodePath const string &  path  )  const [inline, virtual, inherited]
 

Encode path on server.

Implements IUrlEncoder.

Reimplemented in CDefaultUrlEncoder.

Definition at line 147 of file cgi_util.hpp.

virtual string IUrlEncoder::EncodePath const string &  path  )  const [pure virtual, inherited]
 

Encode path on server.

Implemented in CEmptyUrlEncoder, and CDefaultUrlEncoder.

virtual string IUrlEncoder::EncodeUser const string &  user  )  const [pure virtual, inherited]
 

Encode user name.

Implemented in CEmptyUrlEncoder.

bool CCgiSession::Exists void   )  const [inline, inherited]
 

Check if this session object is valid.

Returns:
True, if this session has been successfully loaded or has just been created. False - if this session does not exist and cannot be used.

Definition at line 232 of file cgi_session.hpp.

References CCgiSession::eLoaded, CCgiSession::eNew, and CCgiSession::m_Status.

Referenced by CCgiSession::CreateNewSession(), CCgiSession::GetSessionCookie(), CCgiSession::Load(), CCgiSession::ModifyId(), CCgiSession::SetId(), and CCgiSession::~CCgiSession().

CCgiArgs::const_iterator CCgiArgs::FindFirst const string &  name  )  const [inline, inherited]
 

Find the first argument with the given name.

If not found, return GetArgs().end().

Definition at line 735 of file cgi_util.hpp.

References CCgiArgs::m_Args, and CCgiArgs::x_Find().

CCgiArgs::iterator CCgiArgs::FindFirst const string &  name  )  [inline, inherited]
 

Find the first argument with the given name.

If not found, return GetArgs().end().

Definition at line 742 of file cgi_util.hpp.

References CCgiArgs::m_Args, and CCgiArgs::x_Find().

Referenced by CCgiArgs::GetValue(), CCgiArgs::IsSetValue(), and CCgiArgs::SetValue().

CCgiArgs::const_iterator CCgiArgs::FindNext const const_iterator iter  )  const [inline, inherited]
 

Take argument name from the iterator, find next argument with the same name, return GetArgs().end() if not found.

Definition at line 749 of file cgi_util.hpp.

References CCgiArgs::x_Find().

CCgiArgs::iterator CCgiArgs::FindNext const iterator iter  )  [inline, inherited]
 

Take argument name from the iterator, find next argument with the same name, return GetArgs().end() if not found.

Definition at line 756 of file cgi_util.hpp.

References CCgiArgs::x_Find().

CCgiArgs & CUrl::GetArgs void   )  [inline, inherited]
 

Get list of arguments.

Definition at line 725 of file cgi_util.hpp.

References auto_ptr< X >::get(), CUrl::GetDefaultEncoder(), kEmptyStr, CUrl::m_ArgsList, and CUrl::x_SetArgs().

const CCgiArgs & CUrl::GetArgs void   )  const [inherited]
 

Get const list of arguments.

Definition at line 524 of file cgi_util.cpp.

References auto_ptr< X >::get(), CUrl::m_ArgsList, and NCBI_THROW.

Referenced by CRefArgs::GetQueryString().

TArgs& CCgiArgs::GetArgs void   )  [inline, inherited]
 

Get the list of arguments.

Definition at line 318 of file cgi_util.hpp.

References CCgiArgs::m_Args.

const TArgs& CCgiArgs::GetArgs void   )  const [inline, inherited]
 

Get the const list of arguments.

Definition at line 314 of file cgi_util.hpp.

References CCgiArgs::m_Args.

Referenced by CCgiApplication::x_OnEvent().

EBrowser CCgiUserAgent::GetBrowser void   )  const [inline, inherited]
 

Get browser type.

Definition at line 574 of file cgi_util.hpp.

References CCgiUserAgent::m_Browser.

Referenced by CCgiUserAgent::IsBot().

const string& CCgiUserAgent::GetBrowserName void   )  const [inline, inherited]
 

Get browser name.

Returns:
Browser name or empty string for unknown browser
See also:
GetBrowser

Definition at line 582 of file cgi_util.hpp.

References CCgiUserAgent::m_BrowserName.

const TUserAgentVersion& CCgiUserAgent::GetBrowserVersion void   )  const [inline, inherited]
 

Get browser version information.

If version field (major, minor, patch level) equal -1 that it is not defined.

Definition at line 599 of file cgi_util.hpp.

References CCgiUserAgent::m_BrowserVersion.

IUrlEncoder * CUrl::GetDefaultEncoder void   )  [static, inherited]
 

Return default URL encoder.

See also:
CDefaultUrlEncoder

Definition at line 565 of file cgi_util.cpp.

Referenced by CUrl::ComposeUrl(), CUrl::GetArgs(), CCgiArgs_Parser::SetQueryString(), and CUrl::SetUrl().

EBrowserEngine CCgiUserAgent::GetEngine void   )  const [inline, inherited]
 

Get browser engine type.

See also:
EBrowserEngine

Definition at line 587 of file cgi_util.hpp.

References CCgiUserAgent::m_Engine.

Referenced by CCgiUserAgent::IsBot().

const TUserAgentVersion& CCgiUserAgent::GetEngineVersion void   )  const [inline, inherited]
 

Definition at line 601 of file cgi_util.hpp.

References CCgiUserAgent::m_EngineVersion.

string CUrl::GetFragment void   )  const [inline, inherited]
 

Definition at line 416 of file cgi_util.hpp.

References CUrl::m_Fragment.

string CUrl::GetHost void   )  const [inline, inherited]
 

Definition at line 407 of file cgi_util.hpp.

References CUrl::m_Host.

Referenced by CRefArgs::GetQueryString().

const TUserAgentVersion& CCgiUserAgent::GetMozillaVersion void   )  const [inline, inherited]
 

Definition at line 603 of file cgi_util.hpp.

References CCgiUserAgent::m_MozillaVersion.

string CUrl::GetOriginalArgsString void   )  const [inline, inherited]
 

Get the original (unparsed and undecoded) CGI query string.

Definition at line 420 of file cgi_util.hpp.

References CUrl::m_OrigArgs.

string CUrl::GetPassword void   )  const [inline, inherited]
 

Definition at line 404 of file cgi_util.hpp.

References CUrl::m_Password.

string CUrl::GetPath void   )  const [inline, inherited]
 

Definition at line 413 of file cgi_util.hpp.

References CUrl::m_Path.

EBrowserPlatform CCgiUserAgent::GetPlatform void   )  const [inline, inherited]
 

Get platform (OS) type.

See also:
EPlatform

Definition at line 592 of file cgi_util.hpp.

References CCgiUserAgent::m_Platform.

string CUrl::GetPort void   )  const [inline, inherited]
 

Definition at line 410 of file cgi_util.hpp.

References CUrl::m_Port.

string CCgiArgs::GetQueryString EAmpEncoding  amp_enc,
const IUrlEncoder encoder = 0
const [inherited]
 

Construct and return complete query string.

Use selected amp and name/value encodings.

string CCgiArgs::GetQueryString EAmpEncoding  amp_enc,
EUrlEncode  encode
const [inherited]
 

Construct and return complete query string.

Use selected amp and name/value encodings.

string CUrl::GetScheme void   )  const [inline, inherited]
 

Definition at line 398 of file cgi_util.hpp.

References CUrl::m_Scheme.

const string & CCgiSession::GetSessionIdName void   )  const [inline, inherited]
 

Get name for session ID.

See also:
SetSessionIdName

Definition at line 333 of file cgi_session.hpp.

References CCgiSession::m_SessionIdName.

CCgiSession::EStatus CCgiSession::GetStatus void   )  const [inline, inherited]
 

Get current status of the session.

Definition at line 328 of file cgi_session.hpp.

References CCgiSession::m_Status.

string CUrl::GetUser void   )  const [inline, inherited]
 

Definition at line 401 of file cgi_util.hpp.

References CUrl::m_User.

string CCgiUserAgent::GetUserAgentStr void   )  const [inline, inherited]
 

Get user agent string.

Definition at line 570 of file cgi_util.hpp.

References CCgiUserAgent::m_UserAgent.

const string & CCgiArgs::GetValue const string &  name,
bool is_found = 0
const [inherited]
 

Get value for the given name.

finds first of the arguments with the given name. If the name does not exist, is_found is set to false. If is_found is null, CCgiArgsException is thrown.

Definition at line 258 of file cgi_util.cpp.

References CCgiArgs::FindFirst(), kEmptyStr, and CCgiArgs::m_Args.

Referenced by CRefArgs::GetQueryString().

bool CUrl::HaveArgs void   )  const [inline, inherited]
 

Check if the URL contains any arguments.

Definition at line 424 of file cgi_util.hpp.

References auto_ptr< X >::get(), and CUrl::m_ArgsList.

Referenced by CRefArgs::GetQueryString().

bool CCgiUserAgent::IsBot TBotFlags  flags = fBotAll,
const string &  patterns = kEmptyStr
const [inherited]
 

Check that this is known search robot/bot.

By default it use GetBrowser() value to check on known bots, and only here 'flags' parameter can be used. If standard check fails, additonal parsing parameters from string and/or registry/environment parameter (section 'CGI', name 'Bots') will be used. String value should have patterns for search in the user agent string, and should looks like: "Googlebot Scooter WebCrawler Slurp" You can use any delimeters from next list " ;|~\t". All patterns are case sensitive. For details how to define registry/environment parameter see CParam description.

See also:
GetBrowser, GetEngine, CParam

Definition at line 630 of file cgi_util.cpp.

References CGI, CCgiUserAgent::eCrawler, CCgiUserAgent::eEngine_Bot, CCgiUserAgent::eLinkChecker, CCgiUserAgent::eOfflineBrowser, CCgiUserAgent::eScript, CCgiUserAgent::eWebValidator, CCgiUserAgent::fBotAll, CCgiUserAgent::fBotCrawler, CCgiUserAgent::fBotLinkChecker, CCgiUserAgent::fBotOfflineBrowser, CCgiUserAgent::fBotScript, CCgiUserAgent::fBotWebValidator, CCgiUserAgent::GetBrowser(), CCgiUserAgent::GetEngine(), NCBI_PARAM_TYPE, and NStr::Split().

bool CCgiArgs::IsSetValue const string &  name  )  const [inline, inherited]
 

Check if an argument with the given name exists.

Definition at line 301 of file cgi_util.hpp.

References CCgiArgs::FindFirst(), and CCgiArgs::m_Args.

Referenced by CRefArgs::GetQueryString().

CUrl & CUrl::operator= const CUrl url  )  [inherited]
 

Definition at line 334 of file cgi_util.cpp.

References auto_ptr< X >::get(), CUrl::m_ArgsList, CUrl::m_Fragment, CUrl::m_Host, CUrl::m_IsGeneric, CUrl::m_OrigArgs, CUrl::m_Password, CUrl::m_Path, CUrl::m_Port, CUrl::m_Scheme, CUrl::m_User, and auto_ptr< X >::reset().

void CCgiUserAgent::Reset const string &  user_agent  )  [inherited]
 

Parse new user agent string.

Definition at line 613 of file cgi_util.cpp.

References CCgiUserAgent::x_Parse().

void CCgiArgs::SetCase NStr::ECase  name_case  )  [inline, inherited]
 

Select case sensitivity of arguments' names.

Definition at line 338 of file cgi_util.hpp.

References CCgiArgs::m_Case.

void CUrl::SetFragment const string &  value  )  [inline, inherited]
 

Definition at line 417 of file cgi_util.hpp.

References CUrl::m_Fragment.

void CUrl::SetHost const string &  value  )  [inline, inherited]
 

Definition at line 408 of file cgi_util.hpp.

References CUrl::m_Host.

void CUrl::SetPassword const string &  value  )  [inline, inherited]
 

Definition at line 405 of file cgi_util.hpp.

References CUrl::m_Password.

void CUrl::SetPath const string &  value  )  [inline, inherited]
 

Definition at line 414 of file cgi_util.hpp.

References CUrl::m_Path.

void CUrl::SetPort const string &  value  )  [inline, inherited]
 

Definition at line 411 of file cgi_util.hpp.

References CUrl::m_Port.

void CCgiArgs_Parser::SetQueryString const string &  query,
const IUrlEncoder encoder = 0
[inherited]
 

Parse query string, call AddArgument() to store each value.

Definition at line 89 of file cgi_util.cpp.

References CUrl::GetDefaultEncoder(), len, NCBI_THROW2, NPOS, and CCgiArgs_Parser::x_SetIndexString().

void CCgiArgs_Parser::SetQueryString const string &  query,
EUrlEncode  encode
[inherited]
 

Parse query string, call AddArgument() to store each value.

Definition at line 49 of file cgi_util.cpp.

Referenced by CCgiArgs::CCgiArgs(), CCgiRequest::ParseEntries(), CCgiRequest::ParseIndexes(), CCgiApplication::x_OnEvent(), and CCgiRequest::x_ProcessQueryString().

void CUrl::SetScheme const string &  value  )  [inline, inherited]
 

Definition at line 399 of file cgi_util.hpp.

References CUrl::m_Scheme.

void CCgiArgs_Parser::SetSemicolonIsNotArgDelimiter bool  enable = true  )  [inline, inherited]
 

Treat semicolon as query string argument separator.

Definition at line 220 of file cgi_util.hpp.

References CCgiArgs_Parser::m_SemicolonIsNotArgDelimiter.

Referenced by CCgiRequest::x_ProcessQueryString().

void CCgiSession::SetSessionCookieDomain const string &  domain  )  [inline, inherited]
 

Set session cookie domain.

See also:
SetSessionIdName

Definition at line 343 of file cgi_session.hpp.

References CCgiSession::m_SessionCookieDomain.

void CCgiSession::SetSessionCookieExpTime const CTime exp_time  )  [inline, inherited]
 

Set session cookie expiration time.

Definition at line 353 of file cgi_session.hpp.

References CCgiSession::m_SessionCookieExpTime.

void CCgiSession::SetSessionCookiePath const string &  path  )  [inline, inherited]
 

Set session cookie path.

See also:
SetSessionIdName

Definition at line 348 of file cgi_session.hpp.

References CCgiSession::m_SessionCookiePath.

void CCgiSession::SetSessionIdName const string &  name  )  [inline, inherited]
 

Set name for session ID.

This name is used as a cookie name for a session cookie.

Definition at line 338 of file cgi_session.hpp.

References CCgiSession::m_SessionIdName.

void CUrl::SetUrl const string &  url,
const IUrlEncoder encoder = 0
[inherited]
 

Parse the URL.

Parameters:
url String to parse as URL
encode_flag Decode the string before parsing according to the flag.

Definition at line 354 of file cgi_util.cpp.

References CUrl::GetDefaultEncoder(), kEmptyStr, CUrl::m_ArgsList, CUrl::m_Fragment, CUrl::m_Host, CUrl::m_IsGeneric, CUrl::m_OrigArgs, CUrl::m_Password, CUrl::m_Path, CUrl::m_Port, CUrl::m_Scheme, CUrl::m_User, NCBI_THROW2, NPOS, pos, auto_ptr< X >::reset(), CUrl::x_SetArgs(), CUrl::x_SetFragment(), CUrl::x_SetHost(), CUrl::x_SetPassword(), CUrl::x_SetPath(), CUrl::x_SetPort(), CUrl::x_SetScheme(), and CUrl::x_SetUser().

Referenced by CUrl::CUrl(), and CUrl::operator=().

void CUrl::SetUser const string &  value  )  [inline, inherited]
 

Definition at line 402 of file cgi_util.hpp.

References CUrl::m_User.

void CCgiArgs::SetValue const string &  name,
const string &  value
[inherited]
 

Set new value for the first argument with the given name or add a new argument.

Definition at line 272 of file cgi_util.cpp.

References CCgiArgs::FindFirst(), CCgiArgs::m_Args, and CCgiArgs::m_IsIndex.

Referenced by CCgiApplication::x_OnEvent().

NCBI_DEPRECATED SIZE_TYPE URL_DecodeInPlace string &  str,
EUrlDecode  decode_flag = eUrlDecode_All
 

URL-decode string "str" into itself Return 0 on success; otherwise, return 1-based error position.

Definition at line 540 of file cgi_util.cpp.

References NStr::URLDecodeInPlace().

NCBI_DEPRECATED string URL_DecodeString const string &  str,
EUrlEncode  encode_flag = eUrlEncode_SkipMarkChars
 

Decode the URL-encoded string "str"; return the result of decoding If "str" format is invalid then throw CParseException.

Definition at line 547 of file cgi_util.cpp.

References NStr::eUrlDec_All, NStr::eUrlDec_Percent, eUrlEncode_None, eUrlEncode_PercentOnly, and NStr::URLDecode().

NCBI_DEPRECATED string URL_EncodeString const string &  str,
EUrlEncode  encode_flag = eUrlEncode_SkipMarkChars
 

URL-encode a string "str" to the "x-www-form-urlencoded" form; return the result of encoding.

If

Definition at line 558 of file cgi_util.cpp.

References NStr::URLEncode().

CCgiArgs::const_iterator CCgiArgs::x_Find const string &  name,
const const_iterator start
const [private, inherited]
 

Definition at line 297 of file cgi_util.cpp.

References NStr::Equal(), CCgiArgs::m_Args, and CCgiArgs::m_Case.

CCgiArgs::iterator CCgiArgs::x_Find const string &  name,
const iterator start
[private, inherited]
 

Definition at line 285 of file cgi_util.cpp.

References NStr::Equal(), CCgiArgs::m_Args, and CCgiArgs::m_Case.

Referenced by CCgiArgs::FindFirst(), and CCgiArgs::FindNext().

void CCgiUserAgent::x_Init void   )  [protected, inherited]
 

Init class members.

Definition at line 601 of file cgi_util.cpp.

References CCgiUserAgent::eEngine_Unknown, CCgiUserAgent::ePlatform_Unknown, CCgiUserAgent::eUnknown, kEmptyStr, CCgiUserAgent::m_Browser, CCgiUserAgent::m_BrowserName, CCgiUserAgent::m_BrowserVersion, CCgiUserAgent::m_Engine, CCgiUserAgent::m_EngineVersion, CCgiUserAgent::m_MozillaVersion, CCgiUserAgent::m_Platform, CCgiUserAgent::m_UserAgent, and CVersionInfo::SetVersion().

Referenced by CCgiUserAgent::x_Parse().

void CCgiUserAgent::x_Parse const string &  user_agent  )  [protected, inherited]
 

Parse user agent string.

Definition at line 997 of file cgi_util.cpp.

References CCgiUserAgent::ePlatform_Windows, CCgiUserAgent::m_Platform, CCgiUserAgent::m_UserAgent, NPOS, NStr::TruncateSpaces(), and CCgiUserAgent::x_Init().

Referenced by CCgiUserAgent::CCgiUserAgent(), and CCgiUserAgent::Reset().

bool CCgiUserAgent::x_ParseToken const string &  token,
int  where
[protected, inherited]
 

Parse token with browser name and version.

Definition at line 1190 of file cgi_util.cpp.

void CUrl::x_SetArgs const string &  args,
const IUrlEncoder encoder
[inline, private, inherited]
 

Definition at line 716 of file cgi_util.hpp.

References CUrl::m_ArgsList, CUrl::m_OrigArgs, and auto_ptr< X >::reset().

Referenced by CUrl::GetArgs(), and CUrl::SetUrl().

void CUrl::x_SetFragment const string &  fragment,
const IUrlEncoder encoder
[inline, private, inherited]
 

Definition at line 709 of file cgi_util.hpp.

References IUrlEncoder::DecodeFragment(), and CUrl::m_Fragment.

Referenced by CUrl::SetUrl().

void CUrl::x_SetHost const string &  host,
const IUrlEncoder encoder
[inline, private, inherited]
 

Definition at line 687 of file cgi_util.hpp.

References CUrl::m_Host.

Referenced by CUrl::SetUrl().

void CCgiArgs_Parser::x_SetIndexString const string &  query,
const IUrlEncoder encoder
[private, inherited]
 

Definition at line 57 of file cgi_util.cpp.

References _ASSERT, CCgiArgs_Parser::AddArgument(), IUrlEncoder::DecodeArgName(), CCgiArgs_Parser::eArg_Index, kEmptyStr, len, NCBI_THROW2, and NPOS.

Referenced by CCgiArgs_Parser::SetQueryString().

void CUrl::x_SetPassword const string &  password,
const IUrlEncoder encoder
[inline, private, inherited]
 

Definition at line 680 of file cgi_util.hpp.

References IUrlEncoder::DecodePassword(), and CUrl::m_Password.

Referenced by CUrl::SetUrl().

void CUrl::x_SetPath const string &  path,
const IUrlEncoder encoder
[inline, private, inherited]
 

Definition at line 702 of file cgi_util.hpp.

References IUrlEncoder::DecodePath(), and CUrl::m_Path.

Referenced by CUrl::SetUrl().

void CUrl::x_SetPort const string &  port,
const IUrlEncoder encoder
[inline, private, inherited]
 

Definition at line 694 of file cgi_util.hpp.

References CUrl::m_Port, and NStr::StringToInt().

Referenced by CUrl::SetUrl().

void CUrl::x_SetScheme const string &  scheme,
const IUrlEncoder encoder
[inline, private, inherited]
 

Definition at line 666 of file cgi_util.hpp.

References CUrl::m_Scheme.

Referenced by CUrl::SetUrl().

void CUrl::x_SetUser const string &  user,
const IUrlEncoder encoder
[inline, private, inherited]
 

Definition at line 673 of file cgi_util.hpp.

References IUrlEncoder::DecodeUser(), and CUrl::m_User.

Referenced by CUrl::SetUrl().

virtual CCgiArgs_Parser::~CCgiArgs_Parser void   )  [inline, virtual, inherited]
 

Definition at line 211 of file cgi_util.hpp.


Variable Documentation

TArgs CCgiArgs::m_Args [private, inherited]
 

Definition at line 353 of file cgi_util.hpp.

Referenced by CCgiArgs::AddArgument(), CCgiArgs::FindFirst(), CCgiArgs::GetArgs(), CCgiArgs::GetValue(), CCgiArgs::IsSetValue(), CCgiArgs::SetValue(), and CCgiArgs::x_Find().

auto_ptr<CCgiArgs> CUrl::m_ArgsList [private, inherited]
 

Definition at line 461 of file cgi_util.hpp.

Referenced by CUrl::GetArgs(), CUrl::HaveArgs(), CUrl::operator=(), CUrl::SetUrl(), and CUrl::x_SetArgs().

EBrowser CCgiUserAgent::m_Browser [protected, inherited]
 

Browser type.

Definition at line 645 of file cgi_util.hpp.

Referenced by CCgiUserAgent::GetBrowser(), and CCgiUserAgent::x_Init().

string CCgiUserAgent::m_BrowserName [protected, inherited]
 

Browser name.

Definition at line 646 of file cgi_util.hpp.

Referenced by CCgiUserAgent::GetBrowserName(), and CCgiUserAgent::x_Init().

TUserAgentVersion CCgiUserAgent::m_BrowserVersion [protected, inherited]
 

Browser version info.

Definition at line 647 of file cgi_util.hpp.

Referenced by CCgiUserAgent::GetBrowserVersion(), and CCgiUserAgent::x_Init().

NStr::ECase CCgiArgs::m_Case [private, inherited]
 

Definition at line 351 of file cgi_util.hpp.

Referenced by CCgiArgs::SetCase(), and CCgiArgs::x_Find().

NStr::EUrlEncode CDefaultUrlEncoder::m_Encode [private, inherited]
 

Definition at line 195 of file cgi_util.hpp.

Referenced by CDefaultUrlEncoder::DecodeArgName(), CDefaultUrlEncoder::DecodeArgValue(), CDefaultUrlEncoder::EncodeArgName(), and CDefaultUrlEncoder::EncodeArgValue().

EBrowserEngine CCgiUserAgent::m_Engine [protected, inherited]
 

Browser engine type.

Definition at line 648 of file cgi_util.hpp.

Referenced by CCgiUserAgent::GetEngine(), and CCgiUserAgent::x_Init().

TUserAgentVersion CCgiUserAgent::m_EngineVersion [protected, inherited]
 

Browser engine version.

Definition at line 649 of file cgi_util.hpp.

Referenced by CCgiUserAgent::GetEngineVersion(), and CCgiUserAgent::x_Init().

string CUrl::m_Fragment [private, inherited]
 

Definition at line 459 of file cgi_util.hpp.

Referenced by CUrl::GetFragment(), CUrl::operator=(), CUrl::SetFragment(), CUrl::SetUrl(), and CUrl::x_SetFragment().

string CUrl::m_Host [private, inherited]
 

Definition at line 456 of file cgi_util.hpp.

Referenced by CUrl::GetHost(), CUrl::operator=(), CUrl::SetHost(), CUrl::SetUrl(), and CUrl::x_SetHost().

bool CUrl::m_IsGeneric [private, inherited]
 

Definition at line 453 of file cgi_util.hpp.

Referenced by CUrl::ComposeUrl(), CUrl::operator=(), and CUrl::SetUrl().

bool CCgiArgs::m_IsIndex [private, inherited]
 

Definition at line 352 of file cgi_util.hpp.

Referenced by CCgiArgs::AddArgument(), and CCgiArgs::SetValue().

TUserAgentVersion CCgiUserAgent::m_MozillaVersion [protected, inherited]
 

Browser mozilla version.

Definition at line 650 of file cgi_util.hpp.

Referenced by CCgiUserAgent::GetMozillaVersion(), and CCgiUserAgent::x_Init().

string CUrl::m_OrigArgs [private, inherited]
 

Definition at line 460 of file cgi_util.hpp.

Referenced by CUrl::GetOriginalArgsString(), CUrl::operator=(), CUrl::SetUrl(), and CUrl::x_SetArgs().

string CUrl::m_Password [private, inherited]
 

Definition at line 455 of file cgi_util.hpp.

Referenced by CUrl::GetPassword(), CUrl::operator=(), CUrl::SetPassword(), CUrl::SetUrl(), and CUrl::x_SetPassword().

string CUrl::m_Path [private, inherited]
 

Definition at line 458 of file cgi_util.hpp.

Referenced by CUrl::GetPath(), CUrl::operator=(), CUrl::SetPath(), CUrl::SetUrl(), and CUrl::x_SetPath().

EBrowserPlatform CCgiUserAgent::m_Platform [protected, inherited]
 

Platform type.

Definition at line 651 of file cgi_util.hpp.

Referenced by CCgiUserAgent::GetPlatform(), CCgiUserAgent::x_Init(), and CCgiUserAgent::x_Parse().

string CUrl::m_Port [private, inherited]
 

Definition at line 457 of file cgi_util.hpp.

Referenced by CUrl::GetPort(), CUrl::operator=(), CUrl::SetPort(), CUrl::SetUrl(), and CUrl::x_SetPort().

string CUrl::m_Scheme [private, inherited]
 

Definition at line 452 of file cgi_util.hpp.

Referenced by CUrl::ComposeUrl(), CUrl::GetScheme(), CUrl::operator=(), CUrl::SetScheme(), CUrl::SetUrl(), and CUrl::x_SetScheme().

bool CCgiArgs_Parser::m_SemicolonIsNotArgDelimiter [private, inherited]
 

Definition at line 251 of file cgi_util.hpp.

Referenced by CCgiArgs_Parser::SetSemicolonIsNotArgDelimiter().

string CUrl::m_User [private, inherited]
 

Definition at line 454 of file cgi_util.hpp.

Referenced by CUrl::GetUser(), CUrl::operator=(), CUrl::SetUrl(), CUrl::SetUser(), and CUrl::x_SetUser().

string CCgiUserAgent::m_UserAgent [protected, inherited]
 

User-Agent string.

Definition at line 644 of file cgi_util.hpp.

Referenced by CCgiUserAgent::GetUserAgentStr(), CCgiUserAgent::x_Init(), and CCgiUserAgent::x_Parse().

string CCgiArgs::SCgiArg::name [inherited]
 

Definition at line 292 of file cgi_util.hpp.

string CCgiArgs::SCgiArg::value [inherited]
 

Definition at line 293 of file cgi_util.hpp.


Generated on Mon Dec 7 16:02:21 2009 for NCBI C++ ToolKit by  doxygen 1.4.6
Modified on Mon Dec 07 16:24:36 2009 by modify_doxy.py rev. 173732