32 Bool_t operator==(
const TUri &u1,
const TUri &u2);
35 class TUri :
public TObject {
37 friend Bool_t operator==(
const TUri &u1,
const TUri &u2);
72 TUri(
const TUri &uri);
74 TUri(
const TString &uri);
75 TUri(
const char *uri);
76 TUri &operator=(
const TUri &rhs);
79 const TString GetUri()
const;
80 const TString GetScheme()
const {
return fScheme; }
81 const TString GetHierPart()
const;
82 const TString GetRelativePart()
const;
83 const TString GetAuthority()
const;
84 const TString GetUserInfo()
const {
return fUserinfo; }
85 const TString GetHost()
const {
return fHost; }
86 const TString GetPort()
const {
return fPort; }
87 const TString GetPath()
const {
return fPath; }
88 const TString GetQuery()
const {
return fQuery; }
89 const TString GetFragment()
const {
return fFragment; }
91 Bool_t HasScheme()
const {
return fHasScheme; }
92 Bool_t HasHierPart()
const {
return IsHierPart(GetHierPart()); }
93 Bool_t HasAuthority()
const {
return fHasHost; }
94 Bool_t HasUserInfo()
const {
return fHasUserinfo; }
95 Bool_t HasHost()
const {
return fHasHost; }
96 Bool_t HasPort()
const {
return fHasPort; }
97 Bool_t HasPath()
const {
return fHasPath; }
98 Bool_t HasQuery()
const {
return fHasQuery; }
99 Bool_t HasFragment()
const {
return fHasFragment; }
100 Bool_t HasRelativePart()
const {
return IsRelativePart(GetRelativePart()); }
102 Bool_t SetUri(
const TString &uri);
103 Bool_t SetScheme(
const TString &scheme);
104 Bool_t SetHierPart(
const TString &hier);
105 Bool_t SetAuthority(
const TString &authority);
106 Bool_t SetUserInfo(
const TString &userinfo);
107 Bool_t SetHost(
const TString &host);
108 Bool_t SetPort(
const TString &port);
109 Bool_t SetPath(
const TString &path);
110 Bool_t SetQuery(
const TString &path);
111 Bool_t SetFragment(
const TString &fragment);
113 Bool_t SetRelativePart(
const TString&);
115 void Print(Option_t *option =
"")
const;
116 Bool_t IsSortable()
const {
return kTRUE; }
121 Bool_t IsAbsolute()
const;
122 Bool_t IsRelative()
const;
123 Bool_t IsUri()
const;
124 Bool_t IsReference()
const;
126 static Bool_t IsUnreserved(
const TString &
string);
128 static const TString PctEncode(
const TString &source);
129 static const TString PctDecode(
const TString &source);
130 static const TString PctDecodeUnreserved(
const TString &source);
131 static const TString PctNormalise(
const TString &source);
133 static Bool_t IsScheme(
const TString&);
134 static Bool_t IsHierPart(
const TString&);
135 static Bool_t IsAuthority(
const TString&);
136 static Bool_t IsUserInfo(
const TString&);
137 static Bool_t IsHost(
const TString&);
138 static Bool_t IsIpv4(
const TString&);
139 static Bool_t IsRegName(
const TString&);
140 static Bool_t IsPort(
const TString&);
141 static Bool_t IsPath(
const TString&);
142 static Bool_t IsPathAbsolute(
const TString&);
143 static Bool_t IsPathAbempty(
const TString&);
144 static Bool_t IsPathNoscheme(
const TString&);
145 static Bool_t IsPathRootless(
const TString&);
146 static Bool_t IsPathEmpty(
const TString&);
147 static Bool_t IsQuery(
const TString&);
148 static Bool_t IsFragment(
const TString&);
150 static Bool_t IsRelativePart(
const TString&);
152 static const TString RemoveDotSegments(
const TString&);
154 static TUri Transform(
const TUri &reference,
const TUri &base);
155 static const TString MergePaths(
const TUri &reference,
const TUri &base);