📄 url_8h-source.html
字号:
00187 00191 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classPURL.html#z505_3">ReadFrom</a>(00192 istream &strm 00193 );00195 <a name="l00199"></a><a class="code" href="classPURL.html#z507_2">00199</a> <span class="keyword">inline</span> BOOL <a class="code" href="classPURL.html#z507_2">Parse</a>(00200 <span class="keyword">const</span> <span class="keywordtype">char</span> * cstr, 00201 <span class="keyword">const</span> <span class="keywordtype">char</span> * defaultScheme = NULL 00202 ) { <span class="keywordflow">return</span> <a class="code" href="classPURL.html#b0">InternalParse</a>(cstr, defaultScheme); }<a name="l00204"></a><a class="code" href="classPURL.html#z507_3">00204</a> <span class="keyword">inline</span> BOOL <a class="code" href="classPURL.html#z507_2">Parse</a>(00205 <span class="keyword">const</span> <a class="code" href="classPString.html">PString</a> & str, 00206 <span class="keyword">const</span> <span class="keywordtype">char</span> * defaultScheme = NULL 00207 ) { <span class="keywordflow">return</span> <a class="code" href="classPURL.html#b0">InternalParse</a>((<span class="keyword">const</span> <span class="keywordtype">char</span> *)str, defaultScheme); }00208 <a name="l00210"></a><a class="code" href="classPURL.html#z507_0">00210</a> <span class="keyword">enum</span> <a class="code" href="classPURL.html#z507_0">UrlFormat</a> {00212 <a class="code" href="classPURL.html#z507_0s0">FullURL</a>, 00214 <a class="code" href="classPURL.html#z507_0s1">PathOnly</a>, 00216 <a class="code" href="classPURL.html#z507_0s2">URIOnly</a>, 00218 <a class="code" href="classPURL.html#z507_0s3">HostPortOnly</a> 00219 };00220 00227 <a class="code" href="classPString.html">PString</a> <a class="code" href="classPURL.html#z507_4">AsString</a>(00228 <a class="code" href="classPURL.html#z507_0">UrlFormat</a> fmt = <a class="code" href="classPURL.html#z507_0s0">FullURL</a> 00229 ) <span class="keyword">const</span>;00230 00234 <a class="code" href="classPFilePath.html">PFilePath</a> <a class="code" href="classPURL.html#z507_5">AsFilePath</a>() <span class="keyword">const</span>;00235 <a name="l00237"></a><a class="code" href="classPURL.html#z507_1">00237</a> <span class="keyword">enum</span> <a class="code" href="classPURL.html#z507_1">TranslationType</a> {00239 <a class="code" href="classPURL.html#z507_1s4">LoginTranslation</a>,00241 <a class="code" href="classPURL.html#z507_1s5">PathTranslation</a>,00243 <a class="code" href="classPURL.html#z507_1s6">QueryTranslation</a>00244 };00245 00253 <span class="keyword">static</span> <a class="code" href="classPString.html">PString</a> <a class="code" href="classPURL.html#z507_33">TranslateString</a>(00254 <span class="keyword">const</span> <a class="code" href="classPString.html">PString</a> & str, 00255 <a class="code" href="classPURL.html#z507_1">TranslationType</a> type 00256 );00257 00265 <span class="keyword">static</span> <a class="code" href="classPString.html">PString</a> <a class="code" href="classPURL.html#z507_34">UntranslateString</a>(00266 <span class="keyword">const</span> <a class="code" href="classPString.html">PString</a> & str, 00267 <a class="code" href="classPURL.html#z507_1">TranslationType</a> type 00268 );00269 00271 <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="classPURL.html#z507_35">SplitQueryVars</a>(00272 <span class="keyword">const</span> <a class="code" href="classPString.html">PString</a> & queryStr, 00273 <a class="code" href="classPStringToString.html">PStringToString</a> & <a class="code" href="classPURL.html#n11">queryVars</a> 00274 );00275 00276 <a name="l00278"></a><a class="code" href="classPURL.html#z507_6">00278</a> <span class="keyword">const</span> <a class="code" href="classPCaselessString.html">PCaselessString</a> & <a class="code" href="classPURL.html#z507_6">GetScheme</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="classPURL.html#n1">scheme</a>; }00279 00281 <span class="keywordtype">void</span> <a class="code" href="classPURL.html#z507_7">SetScheme</a>(<span class="keyword">const</span> <a class="code" href="classPString.html">PString</a> & <a class="code" href="classPURL.html#n1">scheme</a>);00282 <a name="l00284"></a><a class="code" href="classPURL.html#z507_8">00284</a> <span class="keyword">const</span> <a class="code" href="classPString.html">PString</a> & <a class="code" href="classPURL.html#z507_8">GetUserName</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="classPURL.html#n2">username</a>; }00285 00287 <span class="keywordtype">void</span> <a class="code" href="classPURL.html#z507_9">SetUserName</a>(<span class="keyword">const</span> <a class="code" href="classPString.html">PString</a> & <a class="code" href="classPURL.html#n2">username</a>);00288 <a name="l00290"></a><a class="code" href="classPURL.html#z507_10">00290</a> <span class="keyword">const</span> <a class="code" href="classPString.html">PString</a> & <a class="code" href="classPURL.html#z507_10">GetPassword</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="classPURL.html#n3">password</a>; }00291 00293 <span class="keywordtype">void</span> <a class="code" href="classPURL.html#z507_11">SetPassword</a>(<span class="keyword">const</span> <a class="code" href="classPString.html">PString</a> & <a class="code" href="classPURL.html#n3">password</a>);00294 <a name="l00296"></a><a class="code" href="classPURL.html#z507_12">00296</a> <span class="keyword">const</span> <a class="code" href="classPCaselessString.html">PCaselessString</a> & <a class="code" href="classPURL.html#z507_12">GetHostName</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="classPURL.html#n4">hostname</a>; }00297 00299 <span class="keywordtype">void</span> <a class="code" href="classPURL.html#z507_13">SetHostName</a>(<span class="keyword">const</span> <a class="code" href="classPString.html">PString</a> & <a class="code" href="classPURL.html#n4">hostname</a>);00300 <a name="l00302"></a><a class="code" href="classPURL.html#z507_14">00302</a> WORD <a class="code" href="classPURL.html#z507_14">GetPort</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="classPURL.html#n5">port</a>; }00303 00305 <span class="keywordtype">void</span> <a class="code" href="classPURL.html#z507_15">SetPort</a>(WORD newPort);00306 <a name="l00308"></a><a class="code" href="classPURL.html#z507_16">00308</a> BOOL <a class="code" href="classPURL.html#z507_16">GetRelativePath</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="classPURL.html#n6">relativePath</a>; }00309 <a name="l00311"></a><a class="code" href="classPURL.html#z507_17">00311</a> <span class="keyword">const</span> <a class="code" href="classPString.html">PString</a> & <a class="code" href="classPURL.html#z507_17">GetPathStr</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="classPURL.html#n7">pathStr</a>; }00312 00314 <span class="keywordtype">void</span> <a class="code" href="classPURL.html#z507_18">SetPathStr</a>(<span class="keyword">const</span> <a class="code" href="classPString.html">PString</a> & <a class="code" href="classPURL.html#n7">pathStr</a>);00315 <a name="l00317"></a><a class="code" href="classPURL.html#z507_19">00317</a> <span class="keyword">const</span> <a class="code" href="classPStringArray.html">PStringArray</a> & <a class="code" href="classPURL.html#z507_19">GetPath</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="classPURL.html#n8">path</a>; }00318 00320 <span class="keywordtype">void</span> <a class="code" href="classPURL.html#z507_20">SetPath</a>(<span class="keyword">const</span> <a class="code" href="classPStringArray.html">PStringArray</a> & <a class="code" href="classPURL.html#n8">path</a>);00321 00323 <a class="code" href="classPString.html">PString</a> <a class="code" href="classPURL.html#z507_21">GetParameters</a>() <span class="keyword">const</span>;00324 00326 <span class="keywordtype">void</span> <a class="code" href="classPURL.html#z507_22">SetParameters</a>(<span class="keyword">const</span> <a class="code" href="classPString.html">PString</a> & parameters);00327 <a name="l00329"></a><a class="code" href="classPURL.html#z507_23">00329</a> <span class="keyword">const</span> <a class="code" href="classPStringToString.html">PStringToString</a> & <a class="code" href="classPURL.html#z507_23">GetParamVars</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="classPURL.html#n9">paramVars</a>; }00330 00332 <span class="keywordtype">void</span> <a class="code" href="classPURL.html#z507_24">SetParamVars</a>(<span class="keyword">const</span> <a class="code" href="classPStringToString.html">PStringToString</a> & <a class="code" href="classPURL.html#n9">paramVars</a>);00333 00335 <span class="keywordtype">void</span> <a class="code" href="classPURL.html#z507_25">SetParamVar</a>(<span class="keyword">const</span> <a class="code" href="classPString.html">PString</a> & key, <span class="keyword">const</span> <a class="code" href="classPString.html">PString</a> & data);00336 <a name="l00338"></a><a class="code" href="classPURL.html#z507_26">00338</a> <span class="keyword">const</span> <a class="code" href="classPString.html">PString</a> & <a class="code" href="classPURL.html#z507_26">GetFragment</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="classPURL.html#n10">fragment</a>; }00339 00341 <a class="code" href="classPString.html">PString</a> <a class="code" href="classPURL.html#z507_27">GetQuery</a>() <span class="keyword">const</span>;00342 00344 <span class="keywordtype">void</span> <a class="code" href="classPURL.html#z507_28">SetQuery</a>(<span class="keyword">const</span> <a class="code" href="classPString.html">PString</a> & query);00345 <a name="l00347"></a><a class="code" href="classPURL.html#z507_29">00347</a> <span class="keyword">const</span> <a class="code" href="classPStringToString.html">PStringToString</a> & <a class="code" href="classPURL.html#z507_29">GetQueryVars</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="classPURL.html#n11">queryVars</a>; }00348 00350 <span class="keywordtype">void</span> <a class="code" href="classPURL.html#z507_30">SetQueryVars</a>(<span class="keyword">const</span> <a class="code" href="classPStringToString.html">PStringToString</a> & <a class="code" href="classPURL.html#n11">queryVars</a>);00351 00353 <span class="keywordtype">void</span> <a class="code" href="classPURL.html#z507_31">SetQueryVar</a>(<span class="keyword">const</span> <a class="code" href="classPString.html">PString</a> & key, <span class="keyword">const</span> <a class="code" href="classPString.html">PString</a> & data);00354 <a name="l00356"></a><a class="code" href="classPURL.html#z507_32">00356</a> BOOL <a class="code" href="classPURL.html#z507_32">IsEmpty</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="classPURL.html#n0">urlString</a>.<a class="code" href="classPString.html#z235_1">IsEmpty</a>(); }00357 00358 00365 <span class="keyword">static</span> BOOL <a class="code" href="classPURL.html#z507_36">OpenBrowser</a>(00366 <span class="keyword">const</span> <a class="code" href="classPString.html">PString</a> & url 00367 );00369 00370 BOOL <a class="code" href="classPURL.html#a4">LegacyParse</a>(<span class="keyword">const</span> <a class="code" href="classPString.html">PString</a> & _url, <span class="keyword">const</span> PURLLegacyScheme * schemeInfo);00371 <a class="code" href="classPString.html">PString</a> <a class="code" href="classPURL.html#a5">LegacyAsString</a>(<a class="code" href="classPURL.html#z507_0">PURL::UrlFormat</a> fmt, <span class="keyword">const</span> PURLLegacyScheme * schemeInfo) <span class="keyword">const</span>;00372 00373 <span class="keyword">protected</span>:00374 <span class="keyword">virtual</span> BOOL <a class="code" href="classPURL.html#b0">InternalParse</a>(00375 <span class="keyword">const</span> <span class="keywordtype">char</span> * cstr, 00376 <span class="keyword">const</span> <span class="keywordtype">char</span> * defaultScheme 00377 );00378 <span class="keywordtype">void</span> <a class="code" href="classPURL.html#b1">Recalculate</a>();<a name="l00379"></a><a class="code" href="classPURL.html#n0">00379</a> <a class="code" href="classPString.html">PString</a> <a class="code" href="classPURL.html#n0">urlString</a>;00380 <a name="l00381"></a><a class="code" href="classPURL.html#n1">00381</a> <a class="code" href="classPCaselessString.html">PCaselessString</a> <a class="code" href="classPURL.html#n1">scheme</a>;<a name="l00382"></a><a class="code" href="classPURL.html#n2">00382</a> <a class="code" href="classPString.html">PString</a> <a class="code" href="classPURL.html#n2">username</a>;<a name="l00383"></a><a class="code" href="classPURL.html#n3">00383</a> <a class="code" href="classPString.html">PString</a> <a class="code" href="classPURL.html#n3">password</a>;<a name="l00384"></a><a class="code" href="classPURL.html#n4">00384</a> <a class="code" href="classPCaselessString.html">PCaselessString</a> <a class="code" href="classPURL.html#n4">hostname</a>;<a name="l00385"></a><a class="code" href="classPURL.html#n5">00385</a> WORD <a class="code" href="classPURL.html#n5">port</a>;<a name="l00386"></a><a class="code" href="classPURL.html#n6">00386</a> BOOL <a class="code" href="classPURL.html#n6">relativePath</a>;<a name="l00387"></a><a class="code" href="classPURL.html#n7">00387</a> <a class="code" href="classPString.html">PString</a> <a class="code" href="classPURL.html#n7">pathStr</a>;<a name="l00388"></a><a class="code" href="classPURL.html#n8">00388</a> <a class="code" href="classPStringArray.html">PStringArray</a> <a class="code" href="classPURL.html#n8">path</a>;<a name="l00389"></a><a class="code" href="classPURL.html#n9">00389</a> <a class="code" href="classPStringToString.html">PStringToString</a> <a class="code" href="classPURL.html#n9">paramVars</a>;<a name="l00390"></a><a class="code" href="classPURL.html#n10">00390</a> <a class="code" href="classPString.html">PString</a> <a class="code" href="classPURL.html#n10">fragment</a>;<a name="l00391"></a><a class="code" href="classPURL.html#n11">00391</a> <a class="code" href="classPStringToString.html">PStringToString</a> <a class="code" href="classPURL.html#n11">queryVars</a>;00392 };00393 00394 <a name="l00395"></a><a class="code" href="classPURLScheme.html">00395</a> <span class="keyword">class </span><a class="code" href="classPURLScheme.html">PURLScheme</a> : <span class="keyword">public</span> <a class="code" href="classPObject.html">PObject</a>00396 {00397 <a class="code" href="object_8h.html#a27">PCLASSINFO</a>(<a class="code" href="classPURLScheme.html">PURLScheme</a>, <a class="code" href="classPObject.html">PObject</a>);00398 <span class="keyword">public</span>:00399 <span class="keyword">virtual</span> <a class="code" href="classPString.html">PString</a> <a class="code" href="classPURLScheme.html#a0">GetName</a>() <span class="keyword">const</span> = 0;00400 <span class="keyword">virtual</span> BOOL <a class="code" href="classPURLScheme.html#a1">Parse</a>(<span class="keyword">const</span> <a class="code" href="classPString.html">PString</a> & url, <a class="code" href="classPURL.html">PURL</a> & purl) <span class="keyword">const</span> = 0;00401 <span class="keyword">virtual</span> <a class="code" href="classPString.html">PString</a> <a class="code" href="classPURLScheme.html#a2">AsString</a>(<a class="code" href="classPURL.html#z507_0">PURL::UrlFormat</a> fmt, <span class="keyword">const</span> <a class="code" href="classPURL.html">PURL</a> & purl) <span class="keyword">const</span> = 0;00402 };00403 00404 <span class="preprocessor">#ifdef _WIN32</span>00405 <span class="preprocessor"></span><span class="preprocessor"># ifndef P_DISABLE_FACTORY_INSTANCES</span>00406 <span class="preprocessor"></span><span class="preprocessor"># ifndef P_FACTORY_INSTANCE_PURLScheme</span>00407 <span class="preprocessor"></span><span class="preprocessor"># define P_FACTORY_INSTANCE_PURLScheme 1</span>00408 <span class="preprocessor"></span><span class="preprocessor"># pragma message("Including PURLScheme factory loader")</span>00409 <span class="preprocessor"></span> PLOAD_FACTORY(<a class="code" href="classPURLScheme.html">PURLScheme</a>, <a class="code" href="classPString.html">PString</a>)00410 # endif00411 <span class="preprocessor"># endif</span>00412 <span class="preprocessor"></span><span class="preprocessor">#endif</span>00413 <span class="preprocessor"></span>00414 <span class="preprocessor">#endif</span>00415 <span class="preprocessor"></span>00416 <span class="comment">// End Of File ///////////////////////////////////////////////////////////////</span></pre></div><hr><address style="align: right;"><small>Generated on Wed Sep 29 22:44:12 2004 for PWLib by<a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border=0 width=110 height=53></a>1.2.18 </small></address></body></html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -