Mercurial > hg > AnnotationManager
comparison libs/httpcomponents-client-4.0-beta1/javadoc/httpclient/org/apache/http/auth/AuthScheme.html @ 5:0be9d53a6967
editor for annotations
author | dwinter |
---|---|
date | Tue, 13 Dec 2011 17:43:46 +0100 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
4:c32080f364c6 | 5:0be9d53a6967 |
---|---|
1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | |
2 <!--NewPage--> | |
3 <HTML> | |
4 <HEAD> | |
5 <!-- Generated by javadoc (build 1.5.0_11) on Sat Aug 23 11:49:50 GMT+01:00 2008 --> | |
6 <META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> | |
7 <TITLE> | |
8 AuthScheme (HttpClient 4.0-beta1 API) | |
9 </TITLE> | |
10 | |
11 <META NAME="keywords" CONTENT="org.apache.http.auth.AuthScheme interface"> | |
12 | |
13 <LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../stylesheet.css" TITLE="Style"> | |
14 | |
15 <SCRIPT type="text/javascript"> | |
16 function windowTitle() | |
17 { | |
18 parent.document.title="AuthScheme (HttpClient 4.0-beta1 API)"; | |
19 } | |
20 </SCRIPT> | |
21 <NOSCRIPT> | |
22 </NOSCRIPT> | |
23 | |
24 </HEAD> | |
25 | |
26 <BODY BGCOLOR="white" onload="windowTitle();"> | |
27 | |
28 | |
29 <!-- ========= START OF TOP NAVBAR ======= --> | |
30 <A NAME="navbar_top"><!-- --></A> | |
31 <A HREF="#skip-navbar_top" title="Skip navigation links"></A> | |
32 <TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY=""> | |
33 <TR> | |
34 <TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> | |
35 <A NAME="navbar_top_firstrow"><!-- --></A> | |
36 <TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY=""> | |
37 <TR ALIGN="center" VALIGN="top"> | |
38 <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD> | |
39 <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A> </TD> | |
40 <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT> </TD> | |
41 <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/AuthScheme.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A> </TD> | |
42 <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD> | |
43 <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD> | |
44 <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD> | |
45 <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD> | |
46 </TR> | |
47 </TABLE> | |
48 </TD> | |
49 <TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM> | |
50 </EM> | |
51 </TD> | |
52 </TR> | |
53 | |
54 <TR> | |
55 <TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2"> | |
56 <A HREF="../../../../org/apache/http/auth/AuthenticationException.html" title="class in org.apache.http.auth"><B>PREV CLASS</B></A> | |
57 <A HREF="../../../../org/apache/http/auth/AuthSchemeFactory.html" title="interface in org.apache.http.auth"><B>NEXT CLASS</B></A></FONT></TD> | |
58 <TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2"> | |
59 <A HREF="../../../../index.html?org/apache/http/auth/AuthScheme.html" target="_top"><B>FRAMES</B></A> | |
60 <A HREF="AuthScheme.html" target="_top"><B>NO FRAMES</B></A> | |
61 <SCRIPT type="text/javascript"> | |
62 <!-- | |
63 if(window==top) { | |
64 document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>'); | |
65 } | |
66 //--> | |
67 </SCRIPT> | |
68 <NOSCRIPT> | |
69 <A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A> | |
70 </NOSCRIPT> | |
71 | |
72 | |
73 </FONT></TD> | |
74 </TR> | |
75 <TR> | |
76 <TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2"> | |
77 SUMMARY: NESTED | FIELD | CONSTR | <A HREF="#method_summary">METHOD</A></FONT></TD> | |
78 <TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2"> | |
79 DETAIL: FIELD | CONSTR | <A HREF="#method_detail">METHOD</A></FONT></TD> | |
80 </TR> | |
81 </TABLE> | |
82 <A NAME="skip-navbar_top"></A> | |
83 <!-- ========= END OF TOP NAVBAR ========= --> | |
84 | |
85 <HR> | |
86 <!-- ======== START OF CLASS DATA ======== --> | |
87 <H2> | |
88 <FONT SIZE="-1"> | |
89 org.apache.http.auth</FONT> | |
90 <BR> | |
91 Interface AuthScheme</H2> | |
92 <DL> | |
93 <DT><B>All Known Implementing Classes:</B> <DD><A HREF="../../../../org/apache/http/impl/auth/AuthSchemeBase.html" title="class in org.apache.http.impl.auth">AuthSchemeBase</A>, <A HREF="../../../../org/apache/http/impl/auth/BasicScheme.html" title="class in org.apache.http.impl.auth">BasicScheme</A>, <A HREF="../../../../org/apache/http/impl/auth/DigestScheme.html" title="class in org.apache.http.impl.auth">DigestScheme</A>, <A HREF="../../../../org/apache/http/impl/auth/NTLMScheme.html" title="class in org.apache.http.impl.auth">NTLMScheme</A>, <A HREF="../../../../org/apache/http/impl/auth/RFC2617Scheme.html" title="class in org.apache.http.impl.auth">RFC2617Scheme</A></DD> | |
94 </DL> | |
95 <HR> | |
96 <DL> | |
97 <DT><PRE>public interface <B>AuthScheme</B></DL> | |
98 </PRE> | |
99 | |
100 <P> | |
101 <p> | |
102 This interface represents an abstract challenge-response oriented | |
103 authentication scheme. | |
104 </p> | |
105 <p> | |
106 An authentication scheme should be able to support the following | |
107 functions: | |
108 <ul> | |
109 <li>Parse and process the challenge sent by the targer server | |
110 in response to request for a protected resource | |
111 <li>Provide its textual designation | |
112 <li>Provide its parameters, if available | |
113 <li>Provide the realm this authentication scheme is applicable to, | |
114 if available | |
115 <li>Generate authorization string for the given set of credentials, | |
116 request method and URI as specificed in the HTTP request line | |
117 in response to the actual authorization challenge | |
118 </ul> | |
119 </p> | |
120 <p> | |
121 Authentication schemes may ignore method name and URI parameters | |
122 if they are not relevant for the given authentication mechanism | |
123 </p> | |
124 <p> | |
125 Authentication schemes may be stateful involving a series of | |
126 challenge-response exchanges | |
127 </p> | |
128 <P> | |
129 | |
130 <P> | |
131 <DL> | |
132 <DT><B>Since:</B></DT> | |
133 <DD>4.0</DD> | |
134 <DT><B>Author:</B></DT> | |
135 <DD><a href="mailto:oleg at ural.ru">Oleg Kalnichevski</a>, <a href="mailto:adrian@ephox.com">Adrian Sutton</a></DD> | |
136 </DL> | |
137 <HR> | |
138 | |
139 <P> | |
140 | |
141 <!-- ========== METHOD SUMMARY =========== --> | |
142 | |
143 <A NAME="method_summary"><!-- --></A> | |
144 <TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY=""> | |
145 <TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor"> | |
146 <TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2"> | |
147 <B>Method Summary</B></FONT></TH> | |
148 </TR> | |
149 <TR BGCOLOR="white" CLASS="TableRowColor"> | |
150 <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> | |
151 <CODE> org.apache.http.Header</CODE></FONT></TD> | |
152 <TD><CODE><B><A HREF="../../../../org/apache/http/auth/AuthScheme.html#authenticate(org.apache.http.auth.Credentials, org.apache.http.HttpRequest)">authenticate</A></B>(<A HREF="../../../../org/apache/http/auth/Credentials.html" title="interface in org.apache.http.auth">Credentials</A> credentials, | |
153 org.apache.http.HttpRequest request)</CODE> | |
154 | |
155 <BR> | |
156 Produces an authorization string for the given set of <A HREF="../../../../org/apache/http/auth/Credentials.html" title="interface in org.apache.http.auth"><CODE>Credentials</CODE></A>.</TD> | |
157 </TR> | |
158 <TR BGCOLOR="white" CLASS="TableRowColor"> | |
159 <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> | |
160 <CODE> java.lang.String</CODE></FONT></TD> | |
161 <TD><CODE><B><A HREF="../../../../org/apache/http/auth/AuthScheme.html#getParameter(java.lang.String)">getParameter</A></B>(java.lang.String name)</CODE> | |
162 | |
163 <BR> | |
164 Returns authentication parameter with the given name, if available.</TD> | |
165 </TR> | |
166 <TR BGCOLOR="white" CLASS="TableRowColor"> | |
167 <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> | |
168 <CODE> java.lang.String</CODE></FONT></TD> | |
169 <TD><CODE><B><A HREF="../../../../org/apache/http/auth/AuthScheme.html#getRealm()">getRealm</A></B>()</CODE> | |
170 | |
171 <BR> | |
172 Returns authentication realm.</TD> | |
173 </TR> | |
174 <TR BGCOLOR="white" CLASS="TableRowColor"> | |
175 <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> | |
176 <CODE> java.lang.String</CODE></FONT></TD> | |
177 <TD><CODE><B><A HREF="../../../../org/apache/http/auth/AuthScheme.html#getSchemeName()">getSchemeName</A></B>()</CODE> | |
178 | |
179 <BR> | |
180 Returns textual designation of the given authentication scheme.</TD> | |
181 </TR> | |
182 <TR BGCOLOR="white" CLASS="TableRowColor"> | |
183 <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> | |
184 <CODE> boolean</CODE></FONT></TD> | |
185 <TD><CODE><B><A HREF="../../../../org/apache/http/auth/AuthScheme.html#isComplete()">isComplete</A></B>()</CODE> | |
186 | |
187 <BR> | |
188 Authentication process may involve a series of challenge-response exchanges.</TD> | |
189 </TR> | |
190 <TR BGCOLOR="white" CLASS="TableRowColor"> | |
191 <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> | |
192 <CODE> boolean</CODE></FONT></TD> | |
193 <TD><CODE><B><A HREF="../../../../org/apache/http/auth/AuthScheme.html#isConnectionBased()">isConnectionBased</A></B>()</CODE> | |
194 | |
195 <BR> | |
196 Tests if the authentication scheme is provides authorization on a per | |
197 connection basis instead of usual per request basis</TD> | |
198 </TR> | |
199 <TR BGCOLOR="white" CLASS="TableRowColor"> | |
200 <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> | |
201 <CODE> void</CODE></FONT></TD> | |
202 <TD><CODE><B><A HREF="../../../../org/apache/http/auth/AuthScheme.html#processChallenge(org.apache.http.Header)">processChallenge</A></B>(org.apache.http.Header header)</CODE> | |
203 | |
204 <BR> | |
205 Processes the given challenge token.</TD> | |
206 </TR> | |
207 </TABLE> | |
208 | |
209 <P> | |
210 | |
211 <!-- ============ METHOD DETAIL ========== --> | |
212 | |
213 <A NAME="method_detail"><!-- --></A> | |
214 <TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY=""> | |
215 <TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor"> | |
216 <TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2"> | |
217 <B>Method Detail</B></FONT></TH> | |
218 </TR> | |
219 </TABLE> | |
220 | |
221 <A NAME="processChallenge(org.apache.http.Header)"><!-- --></A><H3> | |
222 processChallenge</H3> | |
223 <PRE> | |
224 void <B>processChallenge</B>(org.apache.http.Header header) | |
225 throws <A HREF="../../../../org/apache/http/auth/MalformedChallengeException.html" title="class in org.apache.http.auth">MalformedChallengeException</A></PRE> | |
226 <DL> | |
227 <DD>Processes the given challenge token. Some authentication schemes | |
228 may involve multiple challenge-response exchanges. Such schemes must be able | |
229 to maintain the state information when dealing with sequential challenges | |
230 <P> | |
231 <DD><DL> | |
232 <DT><B>Parameters:</B><DD><CODE>header</CODE> - the challenge header | |
233 <DT><B>Throws:</B> | |
234 <DD><CODE><A HREF="../../../../org/apache/http/auth/MalformedChallengeException.html" title="class in org.apache.http.auth">MalformedChallengeException</A></CODE></DL> | |
235 </DD> | |
236 </DL> | |
237 <HR> | |
238 | |
239 <A NAME="getSchemeName()"><!-- --></A><H3> | |
240 getSchemeName</H3> | |
241 <PRE> | |
242 java.lang.String <B>getSchemeName</B>()</PRE> | |
243 <DL> | |
244 <DD>Returns textual designation of the given authentication scheme. | |
245 <P> | |
246 <DD><DL> | |
247 | |
248 <DT><B>Returns:</B><DD>the name of the given authentication scheme</DL> | |
249 </DD> | |
250 </DL> | |
251 <HR> | |
252 | |
253 <A NAME="getParameter(java.lang.String)"><!-- --></A><H3> | |
254 getParameter</H3> | |
255 <PRE> | |
256 java.lang.String <B>getParameter</B>(java.lang.String name)</PRE> | |
257 <DL> | |
258 <DD>Returns authentication parameter with the given name, if available. | |
259 <P> | |
260 <DD><DL> | |
261 <DT><B>Parameters:</B><DD><CODE>name</CODE> - The name of the parameter to be returned | |
262 <DT><B>Returns:</B><DD>the parameter with the given name</DL> | |
263 </DD> | |
264 </DL> | |
265 <HR> | |
266 | |
267 <A NAME="getRealm()"><!-- --></A><H3> | |
268 getRealm</H3> | |
269 <PRE> | |
270 java.lang.String <B>getRealm</B>()</PRE> | |
271 <DL> | |
272 <DD>Returns authentication realm. If the concept of an authentication | |
273 realm is not applicable to the given authentication scheme, returns | |
274 <code>null</code>. | |
275 <P> | |
276 <DD><DL> | |
277 | |
278 <DT><B>Returns:</B><DD>the authentication realm</DL> | |
279 </DD> | |
280 </DL> | |
281 <HR> | |
282 | |
283 <A NAME="isConnectionBased()"><!-- --></A><H3> | |
284 isConnectionBased</H3> | |
285 <PRE> | |
286 boolean <B>isConnectionBased</B>()</PRE> | |
287 <DL> | |
288 <DD>Tests if the authentication scheme is provides authorization on a per | |
289 connection basis instead of usual per request basis | |
290 <P> | |
291 <DD><DL> | |
292 | |
293 <DT><B>Returns:</B><DD><tt>true</tt> if the scheme is connection based, <tt>false</tt> | |
294 if the scheme is request based.</DL> | |
295 </DD> | |
296 </DL> | |
297 <HR> | |
298 | |
299 <A NAME="isComplete()"><!-- --></A><H3> | |
300 isComplete</H3> | |
301 <PRE> | |
302 boolean <B>isComplete</B>()</PRE> | |
303 <DL> | |
304 <DD>Authentication process may involve a series of challenge-response exchanges. | |
305 This method tests if the authorization process has been completed, either | |
306 successfully or unsuccessfully, that is, all the required authorization | |
307 challenges have been processed in their entirety. | |
308 <P> | |
309 <DD><DL> | |
310 | |
311 <DT><B>Returns:</B><DD><tt>true</tt> if the authentication process has been completed, | |
312 <tt>false</tt> otherwise.</DL> | |
313 </DD> | |
314 </DL> | |
315 <HR> | |
316 | |
317 <A NAME="authenticate(org.apache.http.auth.Credentials, org.apache.http.HttpRequest)"><!-- --></A><H3> | |
318 authenticate</H3> | |
319 <PRE> | |
320 org.apache.http.Header <B>authenticate</B>(<A HREF="../../../../org/apache/http/auth/Credentials.html" title="interface in org.apache.http.auth">Credentials</A> credentials, | |
321 org.apache.http.HttpRequest request) | |
322 throws <A HREF="../../../../org/apache/http/auth/AuthenticationException.html" title="class in org.apache.http.auth">AuthenticationException</A></PRE> | |
323 <DL> | |
324 <DD>Produces an authorization string for the given set of <A HREF="../../../../org/apache/http/auth/Credentials.html" title="interface in org.apache.http.auth"><CODE>Credentials</CODE></A>. | |
325 <P> | |
326 <DD><DL> | |
327 <DT><B>Parameters:</B><DD><CODE>credentials</CODE> - The set of credentials to be used for athentication<DD><CODE>request</CODE> - The request being authenticated | |
328 <DT><B>Returns:</B><DD>the authorization string | |
329 <DT><B>Throws:</B> | |
330 <DD><CODE><A HREF="../../../../org/apache/http/auth/AuthenticationException.html" title="class in org.apache.http.auth">AuthenticationException</A></CODE> - if authorization string cannot | |
331 be generated due to an authentication failure</DL> | |
332 </DD> | |
333 </DL> | |
334 <!-- ========= END OF CLASS DATA ========= --> | |
335 <HR> | |
336 | |
337 | |
338 <!-- ======= START OF BOTTOM NAVBAR ====== --> | |
339 <A NAME="navbar_bottom"><!-- --></A> | |
340 <A HREF="#skip-navbar_bottom" title="Skip navigation links"></A> | |
341 <TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY=""> | |
342 <TR> | |
343 <TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> | |
344 <A NAME="navbar_bottom_firstrow"><!-- --></A> | |
345 <TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY=""> | |
346 <TR ALIGN="center" VALIGN="top"> | |
347 <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD> | |
348 <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A> </TD> | |
349 <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT> </TD> | |
350 <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/AuthScheme.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A> </TD> | |
351 <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD> | |
352 <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD> | |
353 <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD> | |
354 <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD> | |
355 </TR> | |
356 </TABLE> | |
357 </TD> | |
358 <TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM> | |
359 </EM> | |
360 </TD> | |
361 </TR> | |
362 | |
363 <TR> | |
364 <TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2"> | |
365 <A HREF="../../../../org/apache/http/auth/AuthenticationException.html" title="class in org.apache.http.auth"><B>PREV CLASS</B></A> | |
366 <A HREF="../../../../org/apache/http/auth/AuthSchemeFactory.html" title="interface in org.apache.http.auth"><B>NEXT CLASS</B></A></FONT></TD> | |
367 <TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2"> | |
368 <A HREF="../../../../index.html?org/apache/http/auth/AuthScheme.html" target="_top"><B>FRAMES</B></A> | |
369 <A HREF="AuthScheme.html" target="_top"><B>NO FRAMES</B></A> | |
370 <SCRIPT type="text/javascript"> | |
371 <!-- | |
372 if(window==top) { | |
373 document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>'); | |
374 } | |
375 //--> | |
376 </SCRIPT> | |
377 <NOSCRIPT> | |
378 <A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A> | |
379 </NOSCRIPT> | |
380 | |
381 | |
382 </FONT></TD> | |
383 </TR> | |
384 <TR> | |
385 <TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2"> | |
386 SUMMARY: NESTED | FIELD | CONSTR | <A HREF="#method_summary">METHOD</A></FONT></TD> | |
387 <TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2"> | |
388 DETAIL: FIELD | CONSTR | <A HREF="#method_detail">METHOD</A></FONT></TD> | |
389 </TR> | |
390 </TABLE> | |
391 <A NAME="skip-navbar_bottom"></A> | |
392 <!-- ======== END OF BOTTOM NAVBAR ======= --> | |
393 | |
394 <HR> | |
395 Copyright © 1999-2008 <a href="http://www.apache.org/">Apache Software Foundation</a>. All Rights Reserved. | |
396 </BODY> | |
397 </HTML> |