24 #ifndef CA_MGM_URLBASE_HPP 25 #define CA_MGM_URLBASE_HPP 27 #include <ca-mgm/config.h> 33 namespace CA_MGM_NAMESPACE
65 WITH_SCHEME = 1L << 0,
72 WITH_USERNAME = 1L << 1,
81 WITH_PASSWORD = 1L << 2,
101 WITH_PATH_NAME = 1L << 5,
109 WITH_PATH_PARAMS = 1L << 6,
115 WITH_QUERY_STR = 1L << 7,
121 WITH_FRAGMENT = 1L << 8,
135 EMPTY_AUTHORITY = 1L << 10,
147 EMPTY_PATH_NAME = 1L << 11,
157 EMPTY_PATH_PARAMS = 1L << 12,
168 EMPTY_QUERY_STR = 1L << 13,
179 EMPTY_FRAGMENT = 1L << 14,
211 return ViewOptions(static_cast<int>(lo) | static_cast<int>(ro));
252 opt |=
static_cast<int>(o);
265 opt &= ~ static_cast<
int>(o);
278 return opt &
static_cast<int>(o);
358 UrlBase(
const std::string &urlString);
372 operator = (
const UrlBase &url);
391 operator = (
const std::string &urlString);
446 virtual std::vector<std::string>
447 getKnownSchemes()
const;
454 isKnownScheme(
const std::string &scheme)
const;
470 isValidScheme(
const std::string &scheme)
const;
532 getAuthority()
const;
606 getPathParams()
const;
620 virtual std::vector<std::string>
621 getPathParamsArray()
const;
662 getPathParam(
const std::string ¶m,
EEncoding eflag)
const;
676 getQueryString()
const;
691 virtual std::vector<std::string>
692 getQueryStringArray()
const;
713 getQueryStringMap(
EEncoding eflag)
const;
732 getQueryParam(
const std::string ¶m,
EEncoding eflag)
const;
755 setScheme(
const std::string &scheme);
773 setAuthority(
const std::string &authority);
785 setUsername(
const std::string &user,
798 setPassword(
const std::string &pass,
822 setHost(
const std::string &host,
833 setPort(
const std::string &port);
848 setPathData(
const std::string &pathdata);
858 setPathName(
const std::string &path,
868 setPathParams(
const std::string ¶ms);
877 setPathParamsArray(
const std::vector<std::string> &parray);
898 setPathParam(
const std::string ¶m,
const std::string &value);
915 setQueryString(
const std::string &querystr);
924 setQueryStringArray(
const std::vector<std::string> &qarray);
945 setQueryParam(
const std::string ¶m,
const std::string &value);
957 setFragment(
const std::string &fragment,
1032 config(
const std::string &opt)
const;
1044 config(
const std::string &opt,
const std::string &val);
1056 getViewOptions()
const;
1098 cleanupPathName(
const std::string &path,
bool authority)
const;
1111 cleanupPathName(
const std::string &path)
const;
1114 checkValidScheme(
const std::string &scheme,
EEncoding eflag)
const;
1117 checkValidUser(
const std::string &user,
EEncoding eflag)
const;
1120 checkValidPass(
const std::string &pass,
EEncoding eflag)
const;
1146 checkValidHost(
const std::string &host,
EEncoding eflag)
const;
1155 checkValidPort(
const std::string &port,
EEncoding eflag)
const;
1158 checkValidPathName(
const std::string &path,
EEncoding eflag)
const;
1161 checkValidPathParams(
const std::string ¶ms,
EEncoding eflag)
const;
1164 checkValidQueryStr(
const std::string &querystr,
EEncoding eflag)
const;
1167 checkValidFragment(
const std::string &fragment,
EEncoding eflag)
const;
1184 #endif // CA_MGM_URLBASE_HPP PathName operator+(const PathName &lname, const PathName &rname)
Definition: PathName.hpp:451
bool has(EViewOption o) const
Definition: UrlBase.hpp:276
Definition: UrlBase.hpp:48
std::string toString(bool b)
Definition: String.hpp:125
EViewOption
Definition: UrlBase.hpp:53
RWCOW_pointer< UrlBaseData > m_data
Definition: UrlBase.hpp:1170
bool has(const ViewOptions &v) const
Definition: UrlBase.hpp:288
Definition: UrlUtils.hpp:102
Generic Url base class.
Definition: UrlBase.hpp:315
std::map< std::string, std::string > ParamMap
Definition: UrlUtils.hpp:95
int opt
Definition: UrlBase.hpp:295
RWCOW_pointer< UrlBase > UrlRef
Copy-On-Write Url reference.
Definition: UrlBase.hpp:1178
EEncoding
Definition: UrlUtils.hpp:135