NCBI C++ ToolKit
Modules | Classes | Macros | Typedefs | Enumerations | Enumerator | Functions | Variables
UTIL

Util members. More...

+ Collaboration diagram for UTIL:

Modules

 Generic Cache
 
 Checksum
 
 Console Debug Dump Viewer
 
 Interval Search Tree
 
 Lightweight String
 
 Linked Set
 
 Random Number Generation
 
 Range Support
 
 Regular Expressions
 
 Registry-based DNS
 
 Resizing Iterator
 
 Rotating Log Streams
 
 Stream Support
 
 String Search
 
 Threaded Pools for Request Handling
 
 UTF-8 Conversion
 
 Utility Exceptions
 
 Weak Map Template
 
 Query Parser and Query Tree
 
 Transactions and Transactional Objects
 The idea of ITransactional and ITransactionalRegistry is that both form a pair of associated objects.
 
 BLAST Formatting
 

Classes

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  CUrlArgs_Parser
 CUrlArgs_Parser:: More...
 
class  CUrlArgs
 CUrlArgs:: More...
 
struct  CUrlArgs::SUrlArg
 Name-value pair. More...
 
class  CUrl
 CUrl –. More...
 
class  CUrlException
 CUrlException –. More...
 
class  CUrlParserException
 CUrlParserException –. More...
 
class  CApplogUrl
 CApplogUrl:: More...
 

Macros

#define NCBI_SCHEME_SERVICE   "ncbilb"
 CUrl:: More...
 

Typedefs

typedef int CUrlArgs_Parser::TFlags
 An inverted subset of CCgiRequest::TFlags. More...
 
typedef SUrlArg CUrlArgs::TArg
 
typedef list< TArgCUrlArgs::TArgs
 
typedef TArgs::iterator CUrlArgs::iterator
 
typedef TArgs::const_iterator CUrlArgs::const_iterator
 
typedef int CUrl::TAdjustFlags
 

Enumerations

enum  CUrlArgs_Parser::Flags { CUrlArgs_Parser::fSemicolonIsArgDelimiter = (1 << 11) , CUrlArgs_Parser::fEnableParsingAsIndex = (1 << 14) }
 
enum  CUrlArgs_Parser::EArgType { CUrlArgs_Parser::eArg_Value , CUrlArgs_Parser::eArg_Index }
 Query type flag. More...
 
enum  CUrlArgs::EAmpEncoding { CUrlArgs::eAmp_Char , CUrlArgs::eAmp_Entity }
 Ampersand encoding for composed URLs. More...
 
enum  CUrl::EAdjustFlags {
  CUrl::fUser_Replace = 0x0001 , CUrl::fUser_ReplaceIfEmpty = 0x0002 , CUrl::fPassword_Replace = 0x0004 , CUrl::fPassword_ReplaceIfEmpty = 0x0008 ,
  CUrl::fPath_Replace = 0x0010 , CUrl::fPath_Append = 0x0020 , CUrl::fFragment_Replace = 0x0040 , CUrl::fFragment_ReplaceIfEmpty = 0x0080 ,
  CUrl::fArgs_Replace = 0x0100 , CUrl::fArgs_Append = 0x0200 , CUrl::fArgs_Merge = 0x0400 , CUrl::fScheme_Replace = 0x0800
}
 Flags controlling URL adjustment. More...
 
enum  CUrlException::EErrCode { CUrlException::eName , CUrlException::eNoArgs , CUrlException::eFlags }
 
enum  CUrlParserException::EErrCode { CUrlParserException::eFormat }
 

Functions

virtual IUrlEncoder::~IUrlEncoder (void)
 
virtual string IUrlEncoder::EncodeUser (const string &user) const =0
 Encode user name. More...
 
virtual string IUrlEncoder::DecodeUser (const string &user) const =0
 Decode user name. More...
 
virtual string IUrlEncoder::EncodePassword (const string &password) const =0
 Encode password. More...
 
virtual string IUrlEncoder::DecodePassword (const string &password) const =0
 Decode password. More...
 
virtual string IUrlEncoder::EncodePath (const string &path) const =0
 Encode path on server. More...
 
virtual string IUrlEncoder::DecodePath (const string &path) const =0
 Decode path on server. More...
 
virtual string IUrlEncoder::EncodeArgName (const string &name) const =0
 Encode URL argument name. More...
 
virtual string IUrlEncoder::DecodeArgName (const string &name) const =0
 Decode URL argument name. More...
 
virtual string IUrlEncoder::EncodeArgValue (const string &value) const =0
 Encode URL argument value. More...
 
virtual string IUrlEncoder::DecodeArgValue (const string &value) const =0
 Decode URL argument value. More...
 
virtual string IUrlEncoder::EncodeFragment (const string &value) const =0
 Encode fragment. More...
 
virtual string IUrlEncoder::DecodeFragment (const string &value) const =0
 Decode fragment. More...
 
virtual string CEmptyUrlEncoder::EncodeUser (const string &user) const
 Encode user name. More...
 
virtual string CEmptyUrlEncoder::DecodeUser (const string &user) const
 Decode user name. More...
 
virtual string CEmptyUrlEncoder::EncodePassword (const string &password) const
 Encode password. More...
 
virtual string CEmptyUrlEncoder::DecodePassword (const string &password) const
 Decode password. More...
 
virtual string CEmptyUrlEncoder::EncodePath (const string &path) const
 Encode path on server. More...
 
virtual string CEmptyUrlEncoder::DecodePath (const string &path) const
 Decode path on server. More...
 
virtual string CEmptyUrlEncoder::EncodeArgName (const string &name) const
 Encode URL argument name. More...
 
virtual string CEmptyUrlEncoder::DecodeArgName (const string &name) const
 Decode URL argument name. More...
 
virtual string CEmptyUrlEncoder::EncodeArgValue (const string &value) const
 Encode URL argument value. More...
 
virtual string CEmptyUrlEncoder::DecodeArgValue (const string &value) const
 Decode URL argument value. More...
 
virtual string CEmptyUrlEncoder::EncodeFragment (const string &value) const
 Encode fragment. More...
 
virtual string CEmptyUrlEncoder::DecodeFragment (const string &value) const
 Decode fragment. More...
 
 CDefaultUrlEncoder::CDefaultUrlEncoder (NStr::EUrlEncode encode=NStr::eUrlEnc_SkipMarkChars)
 
virtual string CDefaultUrlEncoder::EncodeUser (const string &user) const
 Encode user name. More...
 
virtual string CDefaultUrlEncoder::DecodeUser (const string &user) const
 Decode user name. More...
 
virtual string CDefaultUrlEncoder::EncodePassword (const string &password) const
 Encode password. More...
 
virtual string CDefaultUrlEncoder::DecodePassword (const string &password) const
 Decode password. More...
 
virtual string CDefaultUrlEncoder::EncodePath (const string &path) const
 Encode path on server. More...
 
virtual string CDefaultUrlEncoder::DecodePath (const string &path) const
 Decode path on server. More...
 
virtual string CDefaultUrlEncoder::EncodeArgName (const string &name) const
 Encode URL argument name. More...
 
virtual string CDefaultUrlEncoder::DecodeArgName (const string &name) const
 Decode URL argument name. More...
 
virtual string CDefaultUrlEncoder::EncodeArgValue (const string &value) const
 Encode URL argument value. More...
 
virtual string CDefaultUrlEncoder::DecodeArgValue (const string &value) const
 Decode URL argument value. More...
 
virtual string CDefaultUrlEncoder::EncodeFragment (const string &value) const
 Encode fragment. More...
 
virtual string CDefaultUrlEncoder::DecodeFragment (const string &value) const
 Decode fragment. More...
 
 CUrlArgs_Parser::CUrlArgs_Parser (TFlags flags=0)
 
virtual CUrlArgs_Parser::~CUrlArgs_Parser (void)
 
void CUrlArgs_Parser::SetQueryString (const string &query, NStr::EUrlEncode encode)
 Parse query string, call AddArgument() to store each value. More...
 
void CUrlArgs_Parser::SetQueryString (const string &query, const IUrlEncoder *encoder=0)
 Parse query string, call AddArgument() to store each value. More...
 
void CUrlArgs_Parser::SetSemicolonIsNotArgDelimiter (bool enable=true)
 Treat semicolon as query string argument separator. More...
 
virtual void CUrlArgs_Parser::AddArgument (unsigned int position, const string &name, const string &value, EArgType arg_type=eArg_Index)=0
 Process next query argument. More...
 
void CUrlArgs_Parser::x_SetIndexString (const string &query, const IUrlEncoder &encoder)
 
 CUrlArgs::CUrlArgs (TFlags flags=0)
 Create an empty arguments set. More...
 
 CUrlArgs::CUrlArgs (const string &query, NStr::EUrlEncode decode, TFlags flags=0)
 Parse the query string, store the arguments. More...
 
 CUrlArgs::CUrlArgs (const string &query, const IUrlEncoder *encoder=0, TFlags flags=0)
 Parse the query string, store the arguments. More...
 
void CUrlArgs::clear (void)
 Clear the list. More...
 
string CUrlArgs::GetQueryString (EAmpEncoding amp_enc, NStr::EUrlEncode encode) const
 Construct and return complete query string. More...
 
string CUrlArgs::GetQueryString (EAmpEncoding amp_enc, const IUrlEncoder *encoder=0) const
 Construct and return complete query string. More...
 
 CUrlArgs::SUrlArg::SUrlArg (const string &aname, const string &avalue)
 
bool CUrlArgs::IsSetValue (const string &name) const
 Check if an argument with the given name exists. More...
 
const stringCUrlArgs::GetValue (const string &name, bool *is_found=0) const
 Get value for the given name. More...
 
void CUrlArgs::SetValue (const string &name, const string &value)
 Set new value for the first argument with the given name or add a new argument. More...
 
void CUrlArgs::AddValue (const string &name, const string &value)
 Add new value even if an argument with the same name already exists. More...
 
void CUrlArgs::SetUniqueValue (const string &name, const string &value)
 Set value, remove any other values for the name. More...
 
const TArgsCUrlArgs::GetArgs (void) const
 Get the const list of arguments. More...
 
TArgsCUrlArgs::GetArgs (void)
 Get the list of arguments. More...
 
iterator CUrlArgs::FindFirst (const string &name)
 Find the first argument with the given name. More...
 
iterator CUrlArgs::FindNext (const iterator &iter)
 Take argument name from the iterator, find next argument with the same name, return GetArgs().end() if not found. More...
 
const_iterator CUrlArgs::FindFirst (const string &name) const
 Find the first argument with the given name. More...
 
const_iterator CUrlArgs::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. More...
 
void CUrlArgs::SetCase (NStr::ECase name_case)
 Select case sensitivity of arguments' names. More...
 
virtual void CUrlArgs::AddArgument (unsigned int position, const string &name, const string &value, EArgType arg_type)
 Process next query argument. More...
 
iterator CUrlArgs::x_Find (const string &name, const iterator &start)
 
const_iterator CUrlArgs::x_Find (const string &name, const const_iterator &start) const
 
 CUrl::CUrl (void)
 Default constructor. More...
 
 CUrl::CUrl (const string &url, const IUrlEncoder *encoder=0)
 Parse the URL. More...
 
 CUrl::CUrl (const char *url, const IUrlEncoder *encoder=0)
 
void CUrl::SetUrl (const string &url, const IUrlEncoder *encoder=0)
 Parse the URL. More...
 
string CUrl::ComposeUrl (CUrlArgs::EAmpEncoding amp_enc, const IUrlEncoder *encoder=0) const
 Compose the URL. More...
 
const stringCUrl::GetScheme (void) const
 
void CUrl::SetScheme (const string &value)
 
bool CUrl::GetIsGeneric (void) const
 Generic schemes use '//' prefix (after optional scheme). More...
 
void CUrl::SetIsGeneric (bool value)
 
const stringCUrl::GetUser (void) const
 
void CUrl::SetUser (const string &value)
 
const stringCUrl::GetPassword (void) const
 
void CUrl::SetPassword (const string &value)
 
const stringCUrl::GetHost (void) const
 
void CUrl::SetHost (const string &value)
 
bool CUrl::IsService (void) const
 
const stringCUrl::GetService (void) const
 
void CUrl::SetService (const string &value)
 
const stringCUrl::GetPort (void) const
 
void CUrl::SetPort (const string &value)
 
const stringCUrl::GetPath (void) const
 
void CUrl::SetPath (const string &value)
 
const stringCUrl::GetFragment (void) const
 
void CUrl::SetFragment (const string &value)
 
const stringCUrl::GetOriginalArgsString (void) const
 Get the original (unparsed and undecoded) query string. More...
 
bool CUrl::HaveArgs (void) const
 Check if the URL contains any arguments. More...
 
const CUrlArgsCUrl::GetArgs (void) const
 Get const list of arguments. More...
 
CUrlArgsCUrl::GetArgs (void)
 Get list of arguments. More...
 
 CUrl::CUrl (const CUrl &url)
 
CUrlCUrl::operator= (const CUrl &url)
 
static IUrlEncoderCUrl::GetDefaultEncoder (void)
 Return default URL encoder. More...
 
bool CUrl::IsEmpty (void) const
 
void CUrl::Adjust (const CUrl &other, TAdjustFlags flags)
 Adjust this URL using information from 'other' URL. More...
 
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_SetService (const string &service)
 
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)
 
bool CUrl::x_IsHostPort (const string &scheme, string &unparsed, const IUrlEncoder &encoder)
 
virtual const char * CUrlException::GetErrCodeString (void) const override
 Get error code interpreted as text. More...
 
 CUrlException::NCBI_EXCEPTION_DEFAULT (CUrlException, CException)
 
virtual const char * CUrlParserException::GetErrCodeString (void) const override
 Translate from the error code value to its string representation. More...
 
 CUrlParserException::NCBI_EXCEPTION_DEFAULT2 (CUrlParserException, CParseTemplException< CUrlException >, std::string::size_type)
 
 CApplogUrl::CApplogUrl (const string &url=kEmptyStr)
 Default constructor. More...
 
void CApplogUrl::SetAppName (const string &value)
 Setters. More...
 
void CApplogUrl::SetHost (const string &value)
 
void CApplogUrl::SetProcessID (Uint8 value)
 
void CApplogUrl::SetProcessID_Str (const string &value)
 
void CApplogUrl::SetThreadID (Uint8 value)
 
void CApplogUrl::SetThreadID_Str (const string &value)
 
void CApplogUrl::SetRequestID (Uint8 value)
 
void CApplogUrl::SetRequestID_Str (const string &value)
 
void CApplogUrl::SetSession (const string &value)
 
void CApplogUrl::SetClient (const string &value)
 
void CApplogUrl::SetHitID (const string &value)
 
void CApplogUrl::SetLogsite (const string &value)
 
void CApplogUrl::SetDateTime (const CTime &start, const CTime &end=CTime())
 
string CApplogUrl::ComposeUrl (void)
 Compose URL. More...
 

Variables

NStr::EUrlEncode CDefaultUrlEncoder::m_Encode
 
TFlags CUrlArgs_Parser::m_Flags
 
string CUrlArgs::SUrlArg::name
 
string CUrlArgs::SUrlArg::value
 
NStr::ECase CUrlArgs::m_Case
 
bool CUrlArgs::m_IsIndex
 
TArgs CUrlArgs::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_Service
 
string CUrl::m_Port
 
string CUrl::m_Path
 
string CUrl::m_Fragment
 
string CUrl::m_OrigArgs
 
unique_ptr< CUrlArgsCUrl::m_ArgsList
 
string CApplogUrl::m_Url
 Base Applog URL, use default if empty. More...
 
string CApplogUrl::m_AppName
 
string CApplogUrl::m_Host
 
string CApplogUrl::m_PID
 
string CApplogUrl::m_TID
 
string CApplogUrl::m_RID
 
string CApplogUrl::m_PHID
 
string CApplogUrl::m_Session
 
string CApplogUrl::m_Client
 
string CApplogUrl::m_Logsite
 
CTime CApplogUrl::m_TimeStart
 
CTime CApplogUrl::m_TimeEnd
 Current local time if empty. More...
 

Detailed Description

Util members.

Macro Definition Documentation

◆ NCBI_SCHEME_SERVICE

#define NCBI_SCHEME_SERVICE   "ncbilb"

CUrl::

URL parser. Uses CUrlArgs to parse arguments.

Definition at line 350 of file ncbi_url.hpp.

Typedef Documentation

◆ const_iterator

typedef TArgs::const_iterator CUrlArgs::const_iterator

Definition at line 278 of file ncbi_url.hpp.

◆ iterator

typedef TArgs::iterator CUrlArgs::iterator

Definition at line 277 of file ncbi_url.hpp.

◆ TAdjustFlags

Definition at line 467 of file ncbi_url.hpp.

◆ TArg

Definition at line 275 of file ncbi_url.hpp.

◆ TArgs

typedef list<TArg> CUrlArgs::TArgs

Definition at line 276 of file ncbi_url.hpp.

◆ TFlags

An inverted subset of CCgiRequest::TFlags.

See also
CCgiRequest

Definition at line 174 of file ncbi_url.hpp.

Enumeration Type Documentation

◆ EAdjustFlags

Flags controlling URL adjustment.

See also
CUrl::Adjust
Enumerator
fUser_Replace 

Replace user if set in 'other'.

fUser_ReplaceIfEmpty 

Replace user only if not yet set.

fPassword_Replace 

Replace password if set in 'other'.

fPassword_ReplaceIfEmpty 

Replace password only if not yet set.

fPath_Replace 

Replace path.

fPath_Append 

Append new path to the existing one.

fFragment_Replace 

Replace fragment if set in 'other'.

fFragment_ReplaceIfEmpty 

Replace fragment only if not yet set.

fArgs_Replace 

Discard all args, replace with args from 'other'.

fArgs_Append 

Append args, allow duplicate names and values.

fArgs_Merge 

Append new args; replace values of existing args, do not allow to set multiple values with the same name.

fScheme_Replace 

Replace scheme if set in 'other'.

Definition at line 452 of file ncbi_url.hpp.

◆ EAmpEncoding

Ampersand encoding for composed URLs.

Enumerator
eAmp_Char 

Use & to separate arguments.

eAmp_Entity 

Encode '&' as "&amp;".

Definition at line 253 of file ncbi_url.hpp.

◆ EArgType

enum CUrlArgs_Parser::EArgType
protected

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 203 of file ncbi_url.hpp.

◆ EErrCode [1/2]

Enumerator
eName 
eNoArgs 
eFlags 

Definition at line 513 of file ncbi_url.hpp.

◆ EErrCode [2/2]

Enumerator
eFormat 

Definition at line 541 of file ncbi_url.hpp.

◆ Flags

Enumerator
fSemicolonIsArgDelimiter 

Treat semicolon as query string argument separator.

fEnableParsingAsIndex 

Enable parsing input as 'indexed' query (RFC3875) when no '=' is present.

Definition at line 175 of file ncbi_url.hpp.

Function Documentation

◆ AddArgument() [1/2]

void CUrlArgs::AddArgument ( unsigned int  position,
const string name,
const string value,
EArgType  arg_type 
)
protectedvirtual

Process next query argument.

Must be overriden to process and store the arguments.

Parameters
position1-based index of the argument in the query.
nameName of the argument.
valueContains argument value if query type is eArg_Value or empty string for eArg_Index.
arg_typeQuery type flag.

Implements CUrlArgs_Parser.

Definition at line 210 of file ncbi_url.cpp.

References _ASSERT, CUrlArgs_Parser::eArg_Index, CUrlArgs::m_Args, CUrlArgs::m_IsIndex, and rapidjson::value.

◆ AddArgument() [2/2]

virtual void CUrlArgs_Parser::AddArgument ( unsigned int  position,
const string name,
const string value,
EArgType  arg_type = eArg_Index 
)
protectedpure virtual

Process next query argument.

Must be overriden to process and store the arguments.

Parameters
position1-based index of the argument in the query.
nameName of the argument.
valueContains argument value if query type is eArg_Value or empty string for eArg_Index.
arg_typeQuery type flag.

Implemented in CCgiEntries_Parser, and CUrlArgs.

Referenced by CUrlArgs_Parser::SetQueryString(), and CUrlArgs_Parser::x_SetIndexString().

◆ AddValue()

void CUrlArgs::AddValue ( const string name,
const string value 
)

Add new value even if an argument with the same name already exists.

Definition at line 283 of file ncbi_url.cpp.

References CUrlArgs::m_Args, CUrlArgs::m_IsIndex, and rapidjson::value.

Referenced by CPSGDataLoader_Impl::CPSGDataLoader_Impl().

◆ Adjust()

void CUrl::Adjust ( const CUrl other,
TAdjustFlags  flags 
)

Adjust this URL using information from 'other' URL.

Host and port are never changed. Other parts can be replaced or merged depending on the flags. Throw CUrlException if the flags are inconsistent (e.g. both fPath_Replace and fPath_Append are set).

Definition at line 672 of file ncbi_url.cpp.

References CUrl::fArgs_Append, CUrl::fArgs_Merge, CUrl::fArgs_Replace, CUrl::fFragment_Replace, CUrl::fFragment_ReplaceIfEmpty, flags, CUrl::fPassword_Replace, CUrl::fPassword_ReplaceIfEmpty, CUrl::fPath_Append, CUrl::fPath_Replace, CUrl::fScheme_Replace, CUrl::fUser_Replace, CUrl::fUser_ReplaceIfEmpty, ITERATE, CUrl::m_ArgsList, CUrl::m_Fragment, CUrl::m_OrigArgs, CUrl::m_Password, CUrl::m_Path, CUrl::m_Scheme, CUrl::m_User, and NCBI_THROW.

Referenced by CHttpRequest::sx_Adjust().

◆ CApplogUrl()

CApplogUrl::CApplogUrl ( const string url = kEmptyStr)
inline

Default constructor.

Definition at line 59 of file ncbi_applog_url.hpp.

◆ CDefaultUrlEncoder()

CDefaultUrlEncoder::CDefaultUrlEncoder ( NStr::EUrlEncode  encode = NStr::eUrlEnc_SkipMarkChars)
inline

Definition at line 126 of file ncbi_url.hpp.

◆ clear()

void CUrlArgs::clear ( void  )
inline

Clear the list.

Definition at line 250 of file ncbi_url.hpp.

References CUrlArgs::m_Args, and CUrlArgs::m_IsIndex.

Referenced by CCgiContext::GetSelfURL().

◆ ComposeUrl() [1/2]

string CUrl::ComposeUrl ( CUrlArgs::EAmpEncoding  amp_enc,
const IUrlEncoder encoder = 0 
) const

◆ ComposeUrl() [2/2]

string CApplogUrl::ComposeUrl ( void  )

◆ CUrl() [1/4]

CUrl::CUrl ( const char *  url,
const IUrlEncoder encoder = 0 
)
inline

Definition at line 372 of file ncbi_url.hpp.

◆ CUrl() [2/4]

CUrl::CUrl ( const CUrl url)

Definition at line 346 of file ncbi_url.cpp.

◆ CUrl() [3/4]

CUrl::CUrl ( const string url,
const IUrlEncoder encoder = 0 
)

Parse the URL.

Parameters
urlString to parse as URL: Generic: [scheme://[[user]:[password]@]]host[:port][/path][?args][#frag] Special: scheme:[path] The leading '/', if any, is included in the path value.
encoderURL encoder object. If not set, the default encoder will be used.
See also
CDefaultUrlEncoder

Definition at line 339 of file ncbi_url.cpp.

References CUrl_Base::SetUrl().

◆ CUrl() [4/4]

CUrl::CUrl ( void  )
inline

Default constructor.

Definition at line 92 of file Url.hpp.

◆ CUrlArgs() [1/3]

CUrlArgs::CUrlArgs ( const string query,
const IUrlEncoder encoder = 0,
TFlags  flags = 0 
)

Parse the query string, store the arguments.

Definition at line 201 of file ncbi_url.cpp.

References query, and CUrlArgs_Parser::SetQueryString().

◆ CUrlArgs() [2/3]

CUrlArgs::CUrlArgs ( const string query,
NStr::EUrlEncode  decode,
TFlags  flags = 0 
)

Parse the query string, store the arguments.

Definition at line 192 of file ncbi_url.cpp.

References decode, query, and CUrlArgs_Parser::SetQueryString().

◆ CUrlArgs() [3/3]

CUrlArgs::CUrlArgs ( TFlags  flags = 0)

Create an empty arguments set.

Definition at line 183 of file ncbi_url.cpp.

◆ CUrlArgs_Parser()

CUrlArgs_Parser::CUrlArgs_Parser ( TFlags  flags = 0)
inline

Definition at line 182 of file ncbi_url.hpp.

◆ DecodeArgName() [1/3]

virtual string CEmptyUrlEncoder::DecodeArgName ( const string name) const
inlinevirtual

Decode URL argument name.

Implements IUrlEncoder.

Reimplemented in CDefaultUrlEncoder.

Definition at line 107 of file ncbi_url.hpp.

◆ DecodeArgName() [2/3]

virtual string CDefaultUrlEncoder::DecodeArgName ( const string name) const
inlinevirtual

Decode URL argument name.

Reimplemented from CEmptyUrlEncoder.

Definition at line 142 of file ncbi_url.hpp.

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

◆ DecodeArgName() [3/3]

virtual string IUrlEncoder::DecodeArgName ( const string name) const
pure virtual

Decode URL argument name.

Implemented in CDefaultUrlEncoder, and CEmptyUrlEncoder.

Referenced by CUrlArgs_Parser::SetQueryString(), and CUrlArgs_Parser::x_SetIndexString().

◆ DecodeArgValue() [1/3]

virtual string CEmptyUrlEncoder::DecodeArgValue ( const string value) const
inlinevirtual

Decode URL argument value.

Implements IUrlEncoder.

Reimplemented in CDefaultUrlEncoder.

Definition at line 111 of file ncbi_url.hpp.

References rapidjson::value.

◆ DecodeArgValue() [2/3]

virtual string CDefaultUrlEncoder::DecodeArgValue ( const string value) const
inlinevirtual

Decode URL argument value.

Reimplemented from CEmptyUrlEncoder.

Definition at line 148 of file ncbi_url.hpp.

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

◆ DecodeArgValue() [3/3]

virtual string IUrlEncoder::DecodeArgValue ( const string value) const
pure virtual

Decode URL argument value.

Implemented in CDefaultUrlEncoder, and CEmptyUrlEncoder.

Referenced by CUrlArgs_Parser::SetQueryString().

◆ DecodeFragment() [1/3]

virtual string CEmptyUrlEncoder::DecodeFragment ( const string value) const
inlinevirtual

Decode fragment.

Implements IUrlEncoder.

Reimplemented in CDefaultUrlEncoder.

Definition at line 115 of file ncbi_url.hpp.

References rapidjson::value.

◆ DecodeFragment() [2/3]

virtual string CDefaultUrlEncoder::DecodeFragment ( const string value) const
inlinevirtual

Decode fragment.

Reimplemented from CEmptyUrlEncoder.

Definition at line 154 of file ncbi_url.hpp.

References NStr::eUrlDec_Percent, NStr::URLDecode(), and rapidjson::value.

◆ DecodeFragment() [3/3]

virtual string IUrlEncoder::DecodeFragment ( const string value) const
pure virtual

Decode fragment.

Implemented in CDefaultUrlEncoder, and CEmptyUrlEncoder.

Referenced by CUrl::x_SetFragment().

◆ DecodePassword() [1/3]

virtual string CEmptyUrlEncoder::DecodePassword ( const string password) const
inlinevirtual

Decode password.

Implements IUrlEncoder.

Reimplemented in CDefaultUrlEncoder.

Definition at line 99 of file ncbi_url.hpp.

◆ DecodePassword() [2/3]

virtual string CDefaultUrlEncoder::DecodePassword ( const string password) const
inlinevirtual

Decode password.

Reimplemented from CEmptyUrlEncoder.

Definition at line 134 of file ncbi_url.hpp.

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

◆ DecodePassword() [3/3]

virtual string IUrlEncoder::DecodePassword ( const string password) const
pure virtual

Decode password.

Implemented in CDefaultUrlEncoder, and CEmptyUrlEncoder.

Referenced by CUrl::x_SetPassword().

◆ DecodePath() [1/3]

virtual string CEmptyUrlEncoder::DecodePath ( const string path) const
inlinevirtual

Decode path on server.

Implements IUrlEncoder.

Reimplemented in CDefaultUrlEncoder.

Definition at line 103 of file ncbi_url.hpp.

◆ DecodePath() [2/3]

virtual string CDefaultUrlEncoder::DecodePath ( const string path) const
inlinevirtual

Decode path on server.

Reimplemented from CEmptyUrlEncoder.

Definition at line 138 of file ncbi_url.hpp.

References NStr::URLDecode().

◆ DecodePath() [3/3]

virtual string IUrlEncoder::DecodePath ( const string path) const
pure virtual

Decode path on server.

Implemented in CDefaultUrlEncoder, and CEmptyUrlEncoder.

Referenced by CUrl::x_SetPath().

◆ DecodeUser() [1/3]

virtual string CEmptyUrlEncoder::DecodeUser ( const string user) const
inlinevirtual

Decode user name.

Implements IUrlEncoder.

Reimplemented in CDefaultUrlEncoder.

Definition at line 95 of file ncbi_url.hpp.

◆ DecodeUser() [2/3]

virtual string CDefaultUrlEncoder::DecodeUser ( const string user) const
inlinevirtual

Decode user name.

Reimplemented from CEmptyUrlEncoder.

Definition at line 130 of file ncbi_url.hpp.

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

◆ DecodeUser() [3/3]

virtual string IUrlEncoder::DecodeUser ( const string user) const
pure virtual

Decode user name.

Implemented in CDefaultUrlEncoder, and CEmptyUrlEncoder.

Referenced by CUrl::x_SetUser().

◆ EncodeArgName() [1/3]

virtual string CEmptyUrlEncoder::EncodeArgName ( const string name) const
inlinevirtual

Encode URL argument name.

Implements IUrlEncoder.

Reimplemented in CFormDataEncoder, and CDefaultUrlEncoder.

Definition at line 105 of file ncbi_url.hpp.

◆ EncodeArgName() [2/3]

virtual string CDefaultUrlEncoder::EncodeArgName ( const string name) const
inlinevirtual

Encode URL argument name.

Reimplemented from CEmptyUrlEncoder.

Definition at line 140 of file ncbi_url.hpp.

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

◆ EncodeArgName() [3/3]

virtual string IUrlEncoder::EncodeArgName ( const string name) const
pure virtual

Encode URL argument name.

Implemented in CFormDataEncoder, CDefaultUrlEncoder, and CEmptyUrlEncoder.

◆ EncodeArgValue() [1/3]

virtual string CEmptyUrlEncoder::EncodeArgValue ( const string value) const
inlinevirtual

Encode URL argument value.

Implements IUrlEncoder.

Reimplemented in CFormDataEncoder, and CDefaultUrlEncoder.

Definition at line 109 of file ncbi_url.hpp.

References rapidjson::value.

◆ EncodeArgValue() [2/3]

virtual string CDefaultUrlEncoder::EncodeArgValue ( const string value) const
inlinevirtual

Encode URL argument value.

Reimplemented from CEmptyUrlEncoder.

Definition at line 146 of file ncbi_url.hpp.

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

◆ EncodeArgValue() [3/3]

virtual string IUrlEncoder::EncodeArgValue ( const string value) const
pure virtual

Encode URL argument value.

Implemented in CFormDataEncoder, CDefaultUrlEncoder, and CEmptyUrlEncoder.

Referenced by SPSG_ArgsBase::CUrlArgs().

◆ EncodeFragment() [1/3]

virtual string CEmptyUrlEncoder::EncodeFragment ( const string value) const
inlinevirtual

Encode fragment.

Implements IUrlEncoder.

Reimplemented in CDefaultUrlEncoder.

Definition at line 113 of file ncbi_url.hpp.

References rapidjson::value.

◆ EncodeFragment() [2/3]

virtual string CDefaultUrlEncoder::EncodeFragment ( const string value) const
inlinevirtual

Encode fragment.

Reimplemented from CEmptyUrlEncoder.

Definition at line 152 of file ncbi_url.hpp.

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

◆ EncodeFragment() [3/3]

virtual string IUrlEncoder::EncodeFragment ( const string value) const
pure virtual

Encode fragment.

Implemented in CDefaultUrlEncoder, and CEmptyUrlEncoder.

Referenced by CUrl::ComposeUrl().

◆ EncodePassword() [1/3]

virtual string CEmptyUrlEncoder::EncodePassword ( const string password) const
inlinevirtual

Encode password.

Implements IUrlEncoder.

Reimplemented in CDefaultUrlEncoder.

Definition at line 97 of file ncbi_url.hpp.

◆ EncodePassword() [2/3]

virtual string CDefaultUrlEncoder::EncodePassword ( const string password) const
inlinevirtual

Encode password.

Reimplemented from CEmptyUrlEncoder.

Definition at line 132 of file ncbi_url.hpp.

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

◆ EncodePassword() [3/3]

virtual string IUrlEncoder::EncodePassword ( const string password) const
pure virtual

Encode password.

Implemented in CDefaultUrlEncoder, and CEmptyUrlEncoder.

Referenced by CUrl::ComposeUrl().

◆ EncodePath() [1/3]

virtual string CEmptyUrlEncoder::EncodePath ( const string path) const
inlinevirtual

Encode path on server.

Implements IUrlEncoder.

Reimplemented in CDefaultUrlEncoder.

Definition at line 101 of file ncbi_url.hpp.

◆ EncodePath() [2/3]

virtual string CDefaultUrlEncoder::EncodePath ( const string path) const
inlinevirtual

Encode path on server.

Reimplemented from CEmptyUrlEncoder.

Definition at line 136 of file ncbi_url.hpp.

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

◆ EncodePath() [3/3]

virtual string IUrlEncoder::EncodePath ( const string path) const
pure virtual

Encode path on server.

Implemented in CDefaultUrlEncoder, and CEmptyUrlEncoder.

Referenced by CUrl::ComposeUrl().

◆ EncodeUser() [1/3]

virtual string CEmptyUrlEncoder::EncodeUser ( const string user) const
inlinevirtual

Encode user name.

Implements IUrlEncoder.

Reimplemented in CDefaultUrlEncoder.

Definition at line 93 of file ncbi_url.hpp.

◆ EncodeUser() [2/3]

virtual string CDefaultUrlEncoder::EncodeUser ( const string user) const
inlinevirtual

Encode user name.

Reimplemented from CEmptyUrlEncoder.

Definition at line 128 of file ncbi_url.hpp.

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

◆ EncodeUser() [3/3]

virtual string IUrlEncoder::EncodeUser ( const string user) const
pure virtual

Encode user name.

Implemented in CDefaultUrlEncoder, and CEmptyUrlEncoder.

Referenced by CUrl::ComposeUrl().

◆ FindFirst() [1/2]

CUrlArgs::iterator CUrlArgs::FindFirst ( const string name)
inline

Find the first argument with the given name.

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

Definition at line 667 of file ncbi_url.hpp.

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

Referenced by g_ParseNSOutput(), CUrlArgs::GetValue(), CUrlArgs::IsSetValue(), SNetScheduleOutputParser::operator()(), CUrlArgs::SetUniqueValue(), and CUrlArgs::SetValue().

◆ FindFirst() [2/2]

CUrlArgs::const_iterator CUrlArgs::FindFirst ( const string name) const
inline

Find the first argument with the given name.

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

Definition at line 660 of file ncbi_url.hpp.

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

◆ FindNext() [1/2]

CUrlArgs::const_iterator CUrlArgs::FindNext ( const const_iterator iter) const
inline

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

Definition at line 674 of file ncbi_url.hpp.

References next(), and CUrlArgs::x_Find().

◆ FindNext() [2/2]

CUrlArgs::iterator CUrlArgs::FindNext ( const iterator iter)
inline

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

Definition at line 683 of file ncbi_url.hpp.

References next(), and CUrlArgs::x_Find().

Referenced by CUrlArgs::SetUniqueValue().

◆ GetArgs() [1/4]

TArgs& CUrlArgs::GetArgs ( void  )
inline

Get the list of arguments.

Definition at line 304 of file ncbi_url.hpp.

References CUrlArgs::m_Args.

◆ GetArgs() [2/4]

CUrlArgs & CUrl::GetArgs ( void  )
inline

Get list of arguments.

Definition at line 650 of file ncbi_url.hpp.

References CUrl::GetDefaultEncoder(), kEmptyStr, CUrl::m_ArgsList, and CUrl::x_SetArgs().

◆ GetArgs() [3/4]

const TArgs& CUrlArgs::GetArgs ( void  ) const
inline

◆ GetArgs() [4/4]

const CUrlArgs & CUrl::GetArgs ( void  ) const

◆ GetDefaultEncoder()

IUrlEncoder * CUrl::GetDefaultEncoder ( void  )
static

◆ GetErrCodeString() [1/2]

virtual const char* CUrlException::GetErrCodeString ( void  ) const
inlineoverridevirtual

Get error code interpreted as text.

Reimplemented from CException.

Definition at line 518 of file ncbi_url.hpp.

References CUrlException::eFlags, CUrlException::eName, CUrlException::eNoArgs, CException::GetErrCode(), and CException::GetErrCodeString().

◆ GetErrCodeString() [2/2]

virtual const char* CUrlParserException::GetErrCodeString ( void  ) const
inlineoverridevirtual

Translate from the error code value to its string representation.

Reimplemented from CParseTemplException< CUrlException >.

Definition at line 545 of file ncbi_url.hpp.

References CUrlParserException::eFormat, CParseTemplException< CUrlException >::GetErrCode(), and CException::GetErrCodeString().

◆ GetFragment()

const string& CUrl::GetFragment ( void  ) const
inline

Definition at line 424 of file ncbi_url.hpp.

References CUrl::m_Fragment.

Referenced by PortalBookURLToCCddBookRef().

◆ GetHost()

const string& CUrl::GetHost ( void  ) const
inline

◆ GetIsGeneric()

bool CUrl::GetIsGeneric ( void  ) const
inline

Generic schemes use '//' prefix (after optional scheme).

Definition at line 402 of file ncbi_url.hpp.

References CUrl::m_IsGeneric.

◆ GetOriginalArgsString()

const string& CUrl::GetOriginalArgsString ( void  ) const
inline

Get the original (unparsed and undecoded) query string.

Definition at line 428 of file ncbi_url.hpp.

References CUrl::m_OrigArgs.

Referenced by CSDB_ConnectionParam::Get().

◆ GetPassword()

const string& CUrl::GetPassword ( void  ) const
inline

◆ GetPath()

const string& CUrl::GetPath ( void  ) const
inline

◆ GetPort()

const string& CUrl::GetPort ( void  ) const
inline

◆ GetQueryString() [1/2]

string CUrlArgs::GetQueryString ( EAmpEncoding  amp_enc,
const IUrlEncoder encoder = 0 
) const

Construct and return complete query string.

Use selected amp and name/value encodings.

Definition at line 233 of file ncbi_url.cpp.

References CUrlArgs::eAmp_Char, CUrl::GetDefaultEncoder(), ITERATE, CUrlArgs::m_Args, and query.

◆ GetQueryString() [2/2]

string CUrlArgs::GetQueryString ( EAmpEncoding  amp_enc,
NStr::EUrlEncode  encode 
) const

Construct and return complete query string.

Use selected amp and name/value encodings.

Definition at line 225 of file ncbi_url.cpp.

References encode.

Referenced by SDataId::Get(), GetQueryString(), SDebugPrintout::Print(), CRPCClient_Base::SetArgs(), CRetryContext::SetArgs(), and CHttpFormData::WriteFormData().

◆ GetScheme()

const string& CUrl::GetScheme ( void  ) const
inline

◆ GetService()

const string& CUrl::GetService ( void  ) const
inline

Definition at line 415 of file ncbi_url.hpp.

References CUrl::m_Service.

Referenced by CHttpRequest::x_InitConnection().

◆ GetUser()

const string& CUrl::GetUser ( void  ) const
inline

◆ GetValue()

const string & CUrlArgs::GetValue ( const string name,
bool is_found = 0 
) const

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, CUrlArgsException is thrown.

Definition at line 256 of file ncbi_url.cpp.

References CUrlArgs::FindFirst(), kEmptyStr, CUrlArgs::m_Args, and NCBI_THROW.

Referenced by CProjectStorage::CProjectStorage(), CSDB_ConnectionParam::Get(), CRefArgs::GetQueryString(), SPSG_Args::GetValue(), PortalBookURLToCCddBookRef(), and CGencollService::x_Connect().

◆ HaveArgs()

bool CUrl::HaveArgs ( void  ) const
inline

Check if the URL contains any arguments.

Definition at line 431 of file ncbi_url.hpp.

References CUrl::m_ArgsList.

Referenced by CUrl::ComposeUrl(), CRefArgs::GetQueryString(), and CSDB_ConnectionParam::IsEmpty().

◆ IsEmpty()

bool CUrl::IsEmpty ( void  ) const

Definition at line 803 of file ncbi_url.cpp.

References CUrl::IsService(), CUrl::m_Host, and CUrl::m_Path.

Referenced by CCgiContext::GetSelfURL(), and CHttpCookie::Match().

◆ IsService()

bool CUrl::IsService ( void  ) const
inline

◆ IsSetValue()

bool CUrlArgs::IsSetValue ( const string name) const
inline

Check if an argument with the given name exists.

Definition at line 281 of file ncbi_url.hpp.

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

Referenced by CRefArgs::GetQueryString(), PortalBookURLToCCddBookRef(), CSDB_ConnectionParam::Set(), and CGencollService::x_Connect().

◆ NCBI_EXCEPTION_DEFAULT()

CUrlException::NCBI_EXCEPTION_DEFAULT ( CUrlException  ,
CException   
)

◆ NCBI_EXCEPTION_DEFAULT2()

CUrlParserException::NCBI_EXCEPTION_DEFAULT2 ( CUrlParserException  ,
CParseTemplException< CUrlException ,
std::string::size_type   
)

◆ operator=()

CUrl & CUrl::operator= ( const CUrl url)

◆ SetAppName()

void CApplogUrl::SetAppName ( const string value)
inline

Setters.

Definition at line 62 of file ncbi_applog_url.hpp.

References CApplogUrl::m_AppName, and rapidjson::value.

Referenced by CNcbiApplogApp::Run().

◆ SetCase()

void CUrlArgs::SetCase ( NStr::ECase  name_case)
inline

Select case sensitivity of arguments' names.

Definition at line 324 of file ncbi_url.hpp.

References CUrlArgs::m_Case.

◆ SetClient()

void CApplogUrl::SetClient ( const string value)
inline

Definition at line 71 of file ncbi_applog_url.hpp.

References CApplogUrl::m_Client, and rapidjson::value.

◆ SetDateTime()

void CApplogUrl::SetDateTime ( const CTime start,
const CTime end = CTime() 
)
inline

Definition at line 75 of file ncbi_applog_url.hpp.

References CApplogUrl::m_TimeEnd, and CApplogUrl::m_TimeStart.

Referenced by CNcbiApplogApp::Run().

◆ SetFragment()

void CUrl::SetFragment ( const string value)
inline

Definition at line 425 of file ncbi_url.hpp.

References CUrl::m_Fragment, and rapidjson::value.

Referenced by CCgiContext::GetSelfURL().

◆ SetHitID()

void CApplogUrl::SetHitID ( const string value)
inline

Definition at line 72 of file ncbi_applog_url.hpp.

References CApplogUrl::m_PHID, and rapidjson::value.

Referenced by CNcbiApplogApp::Run().

◆ SetHost() [1/2]

void CUrl::SetHost ( const string value)
inline

Definition at line 569 of file ncbi_url.hpp.

References CUrl::m_Host, and CUrl::m_Service.

Referenced by CCgiContext::GetSelfURL(), and CSDB_ConnectionParam::Set().

◆ SetHost() [2/2]

void CApplogUrl::SetHost ( const string value)
inline

Definition at line 63 of file ncbi_applog_url.hpp.

References CApplogUrl::m_Host, and rapidjson::value.

Referenced by CNcbiApplogApp::Run().

◆ SetIsGeneric()

void CUrl::SetIsGeneric ( bool  value)
inline

◆ SetLogsite()

void CApplogUrl::SetLogsite ( const string value)
inline

Definition at line 73 of file ncbi_applog_url.hpp.

References CApplogUrl::m_Logsite, and rapidjson::value.

Referenced by CNcbiApplogApp::Run().

◆ SetPassword()

void CUrl::SetPassword ( const string value)
inline

Definition at line 409 of file ncbi_url.hpp.

References CUrl::m_Password, and rapidjson::value.

Referenced by CSDB_ConnectionParam::ComposeUrl(), and CSDB_ConnectionParam::Set().

◆ SetPath()

void CUrl::SetPath ( const string value)
inline

◆ SetPort()

void CUrl::SetPort ( const string value)
inline

Definition at line 419 of file ncbi_url.hpp.

References CUrl::m_Port, and rapidjson::value.

Referenced by CCgiContext::GetSelfURL(), and CSDB_ConnectionParam::Set().

◆ SetProcessID()

void CApplogUrl::SetProcessID ( Uint8  value)
inline

◆ SetProcessID_Str()

void CApplogUrl::SetProcessID_Str ( const string value)
inline

Definition at line 65 of file ncbi_applog_url.hpp.

References CApplogUrl::m_PID, and rapidjson::value.

Referenced by CApplogUrl::SetProcessID().

◆ SetQueryString() [1/2]

void CUrlArgs_Parser::SetQueryString ( const string query,
const IUrlEncoder encoder = 0 
)

◆ SetQueryString() [2/2]

void CUrlArgs_Parser::SetQueryString ( const string query,
NStr::EUrlEncode  encode 
)

◆ SetRequestID()

void CApplogUrl::SetRequestID ( Uint8  value)
inline

◆ SetRequestID_Str()

void CApplogUrl::SetRequestID_Str ( const string value)
inline

Definition at line 69 of file ncbi_applog_url.hpp.

References CApplogUrl::m_RID, and rapidjson::value.

Referenced by CApplogUrl::SetRequestID().

◆ SetScheme()

void CUrl::SetScheme ( const string value)

◆ SetSemicolonIsNotArgDelimiter()

void CUrlArgs_Parser::SetSemicolonIsNotArgDelimiter ( bool  enable = true)
inline

Treat semicolon as query string argument separator.

Definition at line 192 of file ncbi_url.hpp.

References CUrlArgs_Parser::fSemicolonIsArgDelimiter, and CUrlArgs_Parser::m_Flags.

◆ SetService()

void CUrl::SetService ( const string value)
inline

Definition at line 576 of file ncbi_url.hpp.

References CUrl::m_Host, CUrl::m_IsGeneric, and CUrl::m_Service.

Referenced by CHttpSessionApp::Run().

◆ SetSession()

void CApplogUrl::SetSession ( const string value)
inline

Definition at line 70 of file ncbi_applog_url.hpp.

References CApplogUrl::m_Session, and rapidjson::value.

Referenced by CNcbiApplogApp::Run().

◆ SetThreadID()

void CApplogUrl::SetThreadID ( Uint8  value)
inline

◆ SetThreadID_Str()

void CApplogUrl::SetThreadID_Str ( const string value)
inline

Definition at line 67 of file ncbi_applog_url.hpp.

References CApplogUrl::m_TID, and rapidjson::value.

Referenced by CApplogUrl::SetThreadID().

◆ SetUniqueValue()

void CUrlArgs::SetUniqueValue ( const string name,
const string value 
)

Set value, remove any other values for the name.

Definition at line 290 of file ncbi_url.cpp.

References CUrlArgs::FindFirst(), CUrlArgs::FindNext(), CUrlArgs::m_Args, CUrlArgs::m_IsIndex, tmp, and rapidjson::value.

◆ SetUrl()

void CUrl::SetUrl ( const string url,
const IUrlEncoder encoder = 0 
)

◆ SetUser()

void CUrl::SetUser ( const string value)
inline

Definition at line 406 of file ncbi_url.hpp.

References CUrl::m_User, and rapidjson::value.

Referenced by CSDB_ConnectionParam::Set().

◆ SetValue()

void CUrlArgs::SetValue ( const string name,
const string value 
)

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

Definition at line 270 of file ncbi_url.cpp.

References CUrlArgs::FindFirst(), CUrlArgs::m_Args, CUrlArgs::m_IsIndex, and rapidjson::value.

Referenced by SItemTypeAndReason::Get(), CHttpSessionApp::Run(), CSDB_ConnectionParam::Set(), and CHttpFormData::WriteFormData().

◆ SUrlArg()

CUrlArgs::SUrlArg::SUrlArg ( const string aname,
const string avalue 
)
inline

Definition at line 270 of file ncbi_url.hpp.

◆ x_Find() [1/2]

CUrlArgs::const_iterator CUrlArgs::x_Find ( const string name,
const const_iterator start 
) const
private

Definition at line 315 of file ncbi_url.cpp.

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

◆ x_Find() [2/2]

CUrlArgs::iterator CUrlArgs::x_Find ( const string name,
const iterator start 
)
private

Definition at line 303 of file ncbi_url.cpp.

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

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

◆ x_IsHostPort()

bool CUrl::x_IsHostPort ( const string scheme,
string unparsed,
const IUrlEncoder encoder 
)
private

Definition at line 375 of file ncbi_url.cpp.

References NPOS, NStr::ToLower(), CUrl::x_SetHost(), and CUrl::x_SetPort().

Referenced by CUrl::SetUrl().

◆ x_SetArgs()

void CUrl::x_SetArgs ( const string args,
const IUrlEncoder encoder 
)
inlineprivate

Definition at line 641 of file ncbi_url.hpp.

References CUrl::m_ArgsList, and CUrl::m_OrigArgs.

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

◆ x_SetFragment()

void CUrl::x_SetFragment ( const string fragment,
const IUrlEncoder encoder 
)
inlineprivate

Definition at line 634 of file ncbi_url.hpp.

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

Referenced by CUrl::SetUrl().

◆ x_SetHost()

void CUrl::x_SetHost ( const string host,
const IUrlEncoder encoder 
)
inlineprivate

Definition at line 605 of file ncbi_url.hpp.

References CUrl::m_Host, and CUrl::m_Service.

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

◆ x_SetIndexString()

void CUrlArgs_Parser::x_SetIndexString ( const string query,
const IUrlEncoder encoder 
)
private

◆ x_SetPassword()

void CUrl::x_SetPassword ( const string password,
const IUrlEncoder encoder 
)
inlineprivate

Definition at line 598 of file ncbi_url.hpp.

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

Referenced by CUrl::SetUrl().

◆ x_SetPath()

void CUrl::x_SetPath ( const string path,
const IUrlEncoder encoder 
)
inlineprivate

Definition at line 627 of file ncbi_url.hpp.

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

Referenced by CUrl::SetUrl().

◆ x_SetPort()

void CUrl::x_SetPort ( const string port,
const IUrlEncoder encoder 
)
inlineprivate

Definition at line 619 of file ncbi_url.hpp.

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

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

◆ x_SetScheme()

void CUrl::x_SetScheme ( const string scheme,
const IUrlEncoder encoder 
)
inlineprivate

Definition at line 584 of file ncbi_url.hpp.

References CUrl::m_Scheme.

Referenced by CUrl::SetUrl().

◆ x_SetService()

void CUrl::x_SetService ( const string service)
inlineprivate

Definition at line 613 of file ncbi_url.hpp.

References CUrl::m_Service, and NStr::URLDecode().

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

◆ x_SetUser()

void CUrl::x_SetUser ( const string user,
const IUrlEncoder encoder 
)
inlineprivate

Definition at line 591 of file ncbi_url.hpp.

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

Referenced by CUrl::SetUrl().

◆ ~CUrlArgs_Parser()

virtual CUrlArgs_Parser::~CUrlArgs_Parser ( void  )
inlinevirtual

Definition at line 183 of file ncbi_url.hpp.

◆ ~IUrlEncoder()

virtual IUrlEncoder::~IUrlEncoder ( void  )
inlinevirtual

Definition at line 59 of file ncbi_url.hpp.

Variable Documentation

◆ m_AppName

string CApplogUrl::m_AppName
private

Definition at line 87 of file ncbi_applog_url.hpp.

Referenced by CApplogUrl::ComposeUrl(), and CApplogUrl::SetAppName().

◆ m_Args

TArgs CUrlArgs::m_Args
private

◆ m_ArgsList

unique_ptr<CUrlArgs> CUrl::m_ArgsList
private

◆ m_Case

NStr::ECase CUrlArgs::m_Case
private

Definition at line 337 of file ncbi_url.hpp.

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

◆ m_Client

string CApplogUrl::m_Client
private

Definition at line 94 of file ncbi_applog_url.hpp.

Referenced by CApplogUrl::ComposeUrl(), and CApplogUrl::SetClient().

◆ m_Encode

NStr::EUrlEncode CDefaultUrlEncoder::m_Encode
private

◆ m_Flags

TFlags CUrlArgs_Parser::m_Flags
protected

◆ m_Fragment

string CUrl::m_Fragment
private

◆ m_Host [1/2]

string CUrl::m_Host
private

◆ m_Host [2/2]

string CApplogUrl::m_Host
private

Definition at line 88 of file ncbi_applog_url.hpp.

Referenced by CApplogUrl::ComposeUrl(), and CApplogUrl::SetHost().

◆ m_IsGeneric

bool CUrl::m_IsGeneric
private

◆ m_IsIndex

bool CUrlArgs::m_IsIndex
private

◆ m_Logsite

string CApplogUrl::m_Logsite
private

Definition at line 95 of file ncbi_applog_url.hpp.

Referenced by CApplogUrl::ComposeUrl(), and CApplogUrl::SetLogsite().

◆ m_OrigArgs

string CUrl::m_OrigArgs
private

◆ m_Password

string CUrl::m_Password
private

◆ m_Path

string CUrl::m_Path
private

◆ m_PHID

string CApplogUrl::m_PHID
private

Definition at line 92 of file ncbi_applog_url.hpp.

Referenced by CApplogUrl::ComposeUrl(), and CApplogUrl::SetHitID().

◆ m_PID

string CApplogUrl::m_PID
private

Definition at line 89 of file ncbi_applog_url.hpp.

Referenced by CApplogUrl::ComposeUrl(), and CApplogUrl::SetProcessID_Str().

◆ m_Port

string CUrl::m_Port
private

◆ m_RID

string CApplogUrl::m_RID
private

Definition at line 91 of file ncbi_applog_url.hpp.

Referenced by CApplogUrl::ComposeUrl(), and CApplogUrl::SetRequestID_Str().

◆ m_Scheme

string CUrl::m_Scheme
private

◆ m_Service

string CUrl::m_Service
private

◆ m_Session

string CApplogUrl::m_Session
private

Definition at line 93 of file ncbi_applog_url.hpp.

Referenced by CApplogUrl::ComposeUrl(), and CApplogUrl::SetSession().

◆ m_TID

string CApplogUrl::m_TID
private

Definition at line 90 of file ncbi_applog_url.hpp.

Referenced by CApplogUrl::ComposeUrl(), and CApplogUrl::SetThreadID_Str().

◆ m_TimeEnd

CTime CApplogUrl::m_TimeEnd
private

Current local time if empty.

Definition at line 98 of file ncbi_applog_url.hpp.

Referenced by CApplogUrl::ComposeUrl(), and CApplogUrl::SetDateTime().

◆ m_TimeStart

CTime CApplogUrl::m_TimeStart
private

Definition at line 97 of file ncbi_applog_url.hpp.

Referenced by CApplogUrl::ComposeUrl(), and CApplogUrl::SetDateTime().

◆ m_Url

string CApplogUrl::m_Url
private

Base Applog URL, use default if empty.

Definition at line 84 of file ncbi_applog_url.hpp.

Referenced by CApplogUrl::ComposeUrl().

◆ m_User

string CUrl::m_User
private

◆ name

string CUrlArgs::SUrlArg::name

Definition at line 272 of file ncbi_url.hpp.

Referenced by SPSG_Args::GetValue().

◆ value

string CUrlArgs::SUrlArg::value

Definition at line 273 of file ncbi_url.hpp.

Modified on Wed Apr 17 13:10:39 2024 by modify_doxy.py rev. 669887