Go to the documentation of this file.
   22 #if !defined(XERCESC_INCLUDE_GUARD_XMLURI_HPP) 
   23 #define XERCESC_INCLUDE_GUARD_XMLURI_HPP 
   28 #include <xercesc/internal/XSerializable.hpp> 
   29 #include <xercesc/framework/XMLBuffer.hpp> 
   98          , 
const XMLCh* 
const   uriSpec
 
  117     const XMLCh* getUriText() 
const;
 
  124      const XMLCh* getScheme() 
const;
 
  131      const XMLCh* getUserInfo() 
const;
 
  139      const XMLCh* getHost() 
const;
 
  153      const XMLCh* getRegBasedAuthority() 
const;
 
  161      const XMLCh* getPath() 
const;
 
  170      const XMLCh* getQueryString() 
const;
 
  179      const XMLCh* getFragment() 
const;
 
  192      void setScheme(
const XMLCh* 
const newScheme);
 
  201      void setUserInfo(
const XMLCh* 
const newUserInfo);
 
  213      void setHost(
const XMLCh* 
const newHost);
 
  224      void setPort(
int newPort);
 
  234      void setRegBasedAuthority(
const XMLCh* 
const newRegAuth);
 
  256      void setPath(
const XMLCh* 
const newPath);
 
  266      void setQueryString(
const XMLCh* 
const newQueryString);
 
  276      void setFragment(
const XMLCh* 
const newFragment);
 
  289     static bool isURIString(
const XMLCh* 
const uric);
 
  294     static bool isValidURI( 
const XMLUri* 
const baseURI
 
  295                           , 
const XMLCh* 
const uriStr
 
  296                           , 
bool bAllowSpaces=
false);
 
  300     static bool isValidURI( 
bool haveBaseURI
 
  301                           , 
const XMLCh* 
const uriStr
 
  302                           , 
bool bAllowSpaces=
false);
 
  305     static void normalizeURI(
const XMLCh*     
const systemURI,
 
  306                                    XMLBuffer&       normalizedURI);
 
  311     DECL_XSERIALIZABLE(
XMLUri)
 
  317     static const XMLCh MARK_OR_RESERVED_CHARACTERS[];
 
  318     static const XMLCh RESERVED_CHARACTERS[];
 
  319     static const XMLCh MARK_CHARACTERS[];
 
  320     static const XMLCh SCHEME_CHARACTERS[];
 
  321     static const XMLCh USERINFO_CHARACTERS[];
 
  322     static const XMLCh REG_NAME_CHARACTERS[];
 
  323     static const XMLCh PATH_CHARACTERS[];
 
  326     void buildFullText();
 
  337     static bool isReservedCharacter(
const XMLCh theChar);
 
  344     static bool isPathCharacter(
const XMLCh theChar);
 
  351     static bool isUnreservedCharacter(
const XMLCh theChar);
 
  358     static bool isReservedOrUnreservedCharacter(
const XMLCh theChar);
 
  367     static bool isConformantSchemeName(
const XMLCh* 
const scheme);
 
  374     static void isConformantUserInfo(
const XMLCh* 
const userInfo
 
  384     static bool isValidServerBasedAuthority(
const XMLCh* 
const host
 
  387                                            , 
const XMLCh* 
const userinfo
 
  397     static bool isValidServerBasedAuthority(
const XMLCh* 
const host
 
  399                                            , 
const XMLCh* 
const userinfo
 
  409     static bool isValidRegistryBasedAuthority(
const XMLCh* 
const authority
 
  419     static bool isValidRegistryBasedAuthority(
const XMLCh* 
const authority);
 
  438      static bool isWellFormedAddress(
const XMLCh* 
const addr
 
  450      static bool isWellFormedIPv4Address(
const XMLCh* 
const addr, 
const XMLSize_t length);
 
  465      static bool isWellFormedIPv6Reference(
const XMLCh* 
const addr, 
const XMLSize_t length);
 
  502      void initialize(
const XMLUri& toCopy);
 
  518      void initialize(
const XMLUri* 
const baseURI
 
  519                    , 
const XMLCh*  
const uriSpec);
 
  527      void initializeScheme(
const XMLCh* 
const uriSpec);
 
  536      void initializeAuthority(
const XMLCh* 
const uriSpec);
 
  544      void initializePath(
const XMLCh* 
const uriSpec);
 
  552     static bool isConformantSchemeName(
const XMLCh* 
const scheme,
 
  554     static bool processScheme(
const XMLCh* 
const uriStr, 
XMLSize_t& index);
 
  555     static bool processAuthority(
const XMLCh* 
const uriStr, 
const XMLSize_t authLen);
 
  556     static bool isWellFormedAddress(
const XMLCh* 
const addr, 
const XMLSize_t addrLen);
 
  557     static bool processPath(
const XMLCh* 
const pathStr, 
const XMLSize_t pathStrLen,
 
  558                             const bool isSchemePresent, 
const bool bAllowSpaces=
false);
 
  631         (
const_cast<XMLUri *
>(
this))->buildFullText();
 
  639 inline bool XMLUri::isReservedOrUnreservedCharacter(
const XMLCh theChar)
 
  645 inline bool XMLUri::isReservedCharacter(
const XMLCh theChar)
 
  650 inline bool XMLUri::isPathCharacter(
const XMLCh theChar)
 
  655 inline bool XMLUri::isUnreservedCharacter(
const XMLCh theChar)
 
  
This class makes it possible to override the C++ memory management by adding new/delete operators to ...
Definition: XMemory.hpp:40
#define XERCES_CPP_NAMESPACE_BEGIN
Definition: XercesDefs.hpp:112
const XMLCh * getQueryString() const
Get the query string for this URI.
Definition: XMLUri.hpp:613
#define XERCES_CPP_NAMESPACE_END
Definition: XercesDefs.hpp:113
const XMLCh * getUriText() const
Get the URI as a string specification.
Definition: XMLUri.hpp:623
#define XMLUTIL_EXPORT
Definition: XercesDefs.hpp:162
const XMLCh * getScheme() const
Get the scheme for this URI.
Definition: XMLUri.hpp:583
Definition: XMLUri.hpp:42
static int indexOf(const char *const toSearch, const char ch)
Provides the index of the first occurrence of a character within a string.
const XMLCh * getPath() const
Get the path for this URI.
Definition: XMLUri.hpp:608
uint16_t XMLCh
Definition: Xerces_autoconf_config.hpp:120
const XMLCh * getUserInfo() const
Get the userinfo for this URI.
Definition: XMLUri.hpp:588
static bool isAlphaNum(XMLCh const theChar)
Checks whether a character is within [0-9a-zA-Z].
size_t XMLSize_t
Definition: Xerces_autoconf_config.hpp:112
const XMLCh * getHost() const
Get the host for this URI.
Definition: XMLUri.hpp:593
const XMLCh * getRegBasedAuthority() const
Get the registry based authority for this URI.
Definition: XMLUri.hpp:603
Configurable memory manager.
Definition: MemoryManager.hpp:39
int getPort() const
Get the port for this URI.
Definition: XMLUri.hpp:598
const XMLCh * getFragment() const
Get the fragment for this URI.
Definition: XMLUri.hpp:618