<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_191) on Sat Mar 16 19:52:51 CET 2019 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>HttpProxyRequest (Apache MINA 2.0.0-M6 API Documentation)</title>
<meta name="date" content="2019-03-16">
<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../script.js"></script>
</head>
<body>
<script type="text/javascript"><!--
    try {
        if (location.href.indexOf('is-external=true') == -1) {
            parent.document.title="HttpProxyRequest (Apache MINA 2.0.0-M6 API Documentation)";
        }
    }
    catch(err) {
    }
//-->
var methods = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10,"i9":10,"i10":10};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar.top">
<!--   -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.top.firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/HttpProxyRequest.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../../org/apache/mina/proxy/handlers/http/HttpProxyConstants.html" title="class in org.apache.mina.proxy.handlers.http"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../../../org/apache/mina/proxy/handlers/http/HttpProxyResponse.html" title="class in org.apache.mina.proxy.handlers.http"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../../index.html?org/apache/mina/proxy/handlers/http/HttpProxyRequest.html" target="_top">Frames</a></li>
<li><a href="HttpProxyRequest.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_top");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.top">
<!--   -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle">org.apache.mina.proxy.handlers.http</div>
<h2 title="Class HttpProxyRequest" class="title">Class HttpProxyRequest</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li>java.lang.Object</li>
<li>
<ul class="inheritance">
<li><a href="../../../../../../org/apache/mina/proxy/handlers/ProxyRequest.html" title="class in org.apache.mina.proxy.handlers">org.apache.mina.proxy.handlers.ProxyRequest</a></li>
<li>
<ul class="inheritance">
<li>org.apache.mina.proxy.handlers.http.HttpProxyRequest</li>
</ul>
</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<hr>
<br>
<pre>public class <span class="typeNameLabel">HttpProxyRequest</span>
extends <a href="../../../../../../org/apache/mina/proxy/handlers/ProxyRequest.html" title="class in org.apache.mina.proxy.handlers">ProxyRequest</a></pre>
<div class="block">HttpProxyRequest.java - Wrapper class for HTTP requests.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>MINA 2.0.0-M3</dd>
<dt><span class="simpleTagLabel">Author:</span></dt>
<dd>The Apache MINA Project (dev@mina.apache.org)</dd>
</dl>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- =========== FIELD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="field.summary">
<!--   -->
</a>
<h3>Field Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Field Summary table, listing fields, and an explanation">
<caption><span>Fields</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Field and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/mina/proxy/handlers/http/HttpProxyRequest.html#httpURI">httpURI</a></span></code>
<div class="block">The HTTP URI.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/mina/proxy/handlers/http/HttpProxyRequest.html#httpVerb">httpVerb</a></span></code>
<div class="block">The HTTP verb.</div>
</td>
</tr>
</table>
</li>
</ul>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.summary">
<!--   -->
</a>
<h3>Constructor Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Constructor and Description</th>
</tr>
<tr class="altColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../../org/apache/mina/proxy/handlers/http/HttpProxyRequest.html#HttpProxyRequest-java.net.InetSocketAddress-">HttpProxyRequest</a></span>(java.net.InetSocketAddress&nbsp;endpointAddress)</code>
<div class="block">Constructor which creates a HTTP/1.0 CONNECT request to the specified 
 endpoint.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../../org/apache/mina/proxy/handlers/http/HttpProxyRequest.html#HttpProxyRequest-java.net.InetSocketAddress-java.lang.String-">HttpProxyRequest</a></span>(java.net.InetSocketAddress&nbsp;endpointAddress,
                java.lang.String&nbsp;httpVersion)</code>
<div class="block">Constructor which creates a CONNECT request to the specified endpoint
 using the provided protocol version.</div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../../org/apache/mina/proxy/handlers/http/HttpProxyRequest.html#HttpProxyRequest-java.net.InetSocketAddress-java.lang.String-java.util.Map-">HttpProxyRequest</a></span>(java.net.InetSocketAddress&nbsp;endpointAddress,
                java.lang.String&nbsp;httpVersion,
                java.util.Map&lt;java.lang.String,java.util.List&lt;java.lang.String&gt;&gt;&nbsp;headers)</code>
<div class="block">Constructor which creates a CONNECT request to the specified endpoint
 using the provided protocol version and setting the requested headers.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../../org/apache/mina/proxy/handlers/http/HttpProxyRequest.html#HttpProxyRequest-java.lang.String-">HttpProxyRequest</a></span>(java.lang.String&nbsp;httpURI)</code>
<div class="block">Constructor which creates a HTTP/1.0 GET request to the specified 
 http URI.</div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../../org/apache/mina/proxy/handlers/http/HttpProxyRequest.html#HttpProxyRequest-java.lang.String-java.lang.String-">HttpProxyRequest</a></span>(java.lang.String&nbsp;httpURI,
                java.lang.String&nbsp;httpVersion)</code>
<div class="block">Constructor which creates a GET request to the specified http URI
 using the provided protocol version</div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../../org/apache/mina/proxy/handlers/http/HttpProxyRequest.html#HttpProxyRequest-java.lang.String-java.lang.String-java.lang.String-">HttpProxyRequest</a></span>(java.lang.String&nbsp;httpVerb,
                java.lang.String&nbsp;httpURI,
                java.lang.String&nbsp;httpVersion)</code>
<div class="block">Constructor which creates a request using the provided HTTP verb targeted at
 the specified http URI using the provided protocol version.</div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../../org/apache/mina/proxy/handlers/http/HttpProxyRequest.html#HttpProxyRequest-java.lang.String-java.lang.String-java.lang.String-java.util.Map-">HttpProxyRequest</a></span>(java.lang.String&nbsp;httpVerb,
                java.lang.String&nbsp;httpURI,
                java.lang.String&nbsp;httpVersion,
                java.util.Map&lt;java.lang.String,java.util.List&lt;java.lang.String&gt;&gt;&nbsp;headers)</code>
<div class="block">Constructor which creates a request using the provided HTTP verb targeted at
 the specified http URI using the provided protocol version and setting the 
 requested headers.</div>
</td>
</tr>
</table>
</li>
</ul>
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method.summary">
<!--   -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/mina/proxy/handlers/http/HttpProxyRequest.html#checkRequiredProperties-java.lang.String...-">checkRequiredProperties</a></span>(java.lang.String...&nbsp;propNames)</code>
<div class="block">Check if the given property(ies) is(are) set.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>java.util.Map&lt;java.lang.String,java.util.List&lt;java.lang.String&gt;&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/mina/proxy/handlers/http/HttpProxyRequest.html#getHeaders--">getHeaders</a></span>()</code>
<div class="block">Returns the HTTP headers.</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/mina/proxy/handlers/http/HttpProxyRequest.html#getHost--">getHost</a></span>()</code>
<div class="block">Returns the host to which we are connecting.</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/mina/proxy/handlers/http/HttpProxyRequest.html#getHttpURI--">getHttpURI</a></span>()</code>
<div class="block">Returns the request HTTP URI.</div>
</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/mina/proxy/handlers/http/HttpProxyRequest.html#getHttpVerb--">getHttpVerb</a></span>()</code>
<div class="block">Returns the HTTP request verb.</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/mina/proxy/handlers/http/HttpProxyRequest.html#getHttpVersion--">getHttpVersion</a></span>()</code>
<div class="block">Returns the HTTP version.</div>
</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code>java.util.Map&lt;java.lang.String,java.lang.String&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/mina/proxy/handlers/http/HttpProxyRequest.html#getProperties--">getProperties</a></span>()</code>
<div class="block">Returns additional properties for the request.</div>
</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/mina/proxy/handlers/http/HttpProxyRequest.html#setHeaders-java.util.Map-">setHeaders</a></span>(java.util.Map&lt;java.lang.String,java.util.List&lt;java.lang.String&gt;&gt;&nbsp;headers)</code>
<div class="block">Set the HTTP headers.</div>
</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/mina/proxy/handlers/http/HttpProxyRequest.html#setHttpVersion-java.lang.String-">setHttpVersion</a></span>(java.lang.String&nbsp;httpVersion)</code>
<div class="block">Sets the HTTP version.</div>
</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/mina/proxy/handlers/http/HttpProxyRequest.html#setProperties-java.util.Map-">setProperties</a></span>(java.util.Map&lt;java.lang.String,java.lang.String&gt;&nbsp;properties)</code>
<div class="block">Set additional properties for the request.</div>
</td>
</tr>
<tr id="i10" class="altColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/mina/proxy/handlers/http/HttpProxyRequest.html#toHttpString--">toHttpString</a></span>()</code>
<div class="block">Returns the string representation of the HTTP request .</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.org.apache.mina.proxy.handlers.ProxyRequest">
<!--   -->
</a>
<h3>Methods inherited from class&nbsp;org.apache.mina.proxy.handlers.<a href="../../../../../../org/apache/mina/proxy/handlers/ProxyRequest.html" title="class in org.apache.mina.proxy.handlers">ProxyRequest</a></h3>
<code><a href="../../../../../../org/apache/mina/proxy/handlers/ProxyRequest.html#getEndpointAddress--">getEndpointAddress</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
<!--   -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.Object</h3>
<code>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ FIELD DETAIL =========== -->
<ul class="blockList">
<li class="blockList"><a name="field.detail">
<!--   -->
</a>
<h3>Field Detail</h3>
<a name="httpVerb">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>httpVerb</h4>
<pre>public final&nbsp;java.lang.String httpVerb</pre>
<div class="block">The HTTP verb.</div>
</li>
</ul>
<a name="httpURI">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>httpURI</h4>
<pre>public final&nbsp;java.lang.String httpURI</pre>
<div class="block">The HTTP URI.</div>
</li>
</ul>
</li>
</ul>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.detail">
<!--   -->
</a>
<h3>Constructor Detail</h3>
<a name="HttpProxyRequest-java.net.InetSocketAddress-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>HttpProxyRequest</h4>
<pre>public&nbsp;HttpProxyRequest(java.net.InetSocketAddress&nbsp;endpointAddress)</pre>
<div class="block">Constructor which creates a HTTP/1.0 CONNECT request to the specified 
 endpoint.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>endpointAddress</code> - the endpoint to connect to</dd>
</dl>
</li>
</ul>
<a name="HttpProxyRequest-java.net.InetSocketAddress-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>HttpProxyRequest</h4>
<pre>public&nbsp;HttpProxyRequest(java.net.InetSocketAddress&nbsp;endpointAddress,
                        java.lang.String&nbsp;httpVersion)</pre>
<div class="block">Constructor which creates a CONNECT request to the specified endpoint
 using the provided protocol version.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>endpointAddress</code> - the endpoint to connect to</dd>
<dd><code>httpVersion</code> - the HTTP protocol version</dd>
</dl>
</li>
</ul>
<a name="HttpProxyRequest-java.net.InetSocketAddress-java.lang.String-java.util.Map-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>HttpProxyRequest</h4>
<pre>public&nbsp;HttpProxyRequest(java.net.InetSocketAddress&nbsp;endpointAddress,
                        java.lang.String&nbsp;httpVersion,
                        java.util.Map&lt;java.lang.String,java.util.List&lt;java.lang.String&gt;&gt;&nbsp;headers)</pre>
<div class="block">Constructor which creates a CONNECT request to the specified endpoint
 using the provided protocol version and setting the requested headers.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>endpointAddress</code> - the endpoint to connect to</dd>
<dd><code>httpVersion</code> - the HTTP protocol version</dd>
<dd><code>headers</code> - the additionnal http headers</dd>
</dl>
</li>
</ul>
<a name="HttpProxyRequest-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>HttpProxyRequest</h4>
<pre>public&nbsp;HttpProxyRequest(java.lang.String&nbsp;httpURI)</pre>
<div class="block">Constructor which creates a HTTP/1.0 GET request to the specified 
 http URI.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>httpURI</code> - the target URI</dd>
</dl>
</li>
</ul>
<a name="HttpProxyRequest-java.lang.String-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>HttpProxyRequest</h4>
<pre>public&nbsp;HttpProxyRequest(java.lang.String&nbsp;httpURI,
                        java.lang.String&nbsp;httpVersion)</pre>
<div class="block">Constructor which creates a GET request to the specified http URI
 using the provided protocol version</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>httpURI</code> - the target URI</dd>
<dd><code>httpVersion</code> - the HTTP protocol version</dd>
</dl>
</li>
</ul>
<a name="HttpProxyRequest-java.lang.String-java.lang.String-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>HttpProxyRequest</h4>
<pre>public&nbsp;HttpProxyRequest(java.lang.String&nbsp;httpVerb,
                        java.lang.String&nbsp;httpURI,
                        java.lang.String&nbsp;httpVersion)</pre>
<div class="block">Constructor which creates a request using the provided HTTP verb targeted at
 the specified http URI using the provided protocol version.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>httpVerb</code> - the HTTP verb to use</dd>
<dd><code>httpURI</code> - the target URI</dd>
<dd><code>httpVersion</code> - the HTTP protocol version</dd>
</dl>
</li>
</ul>
<a name="HttpProxyRequest-java.lang.String-java.lang.String-java.lang.String-java.util.Map-">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>HttpProxyRequest</h4>
<pre>public&nbsp;HttpProxyRequest(java.lang.String&nbsp;httpVerb,
                        java.lang.String&nbsp;httpURI,
                        java.lang.String&nbsp;httpVersion,
                        java.util.Map&lt;java.lang.String,java.util.List&lt;java.lang.String&gt;&gt;&nbsp;headers)</pre>
<div class="block">Constructor which creates a request using the provided HTTP verb targeted at
 the specified http URI using the provided protocol version and setting the 
 requested headers.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>httpVerb</code> - the HTTP verb to use</dd>
<dd><code>httpURI</code> - the target URI</dd>
<dd><code>httpVersion</code> - the HTTP protocol version</dd>
<dd><code>headers</code> - the additional http headers</dd>
</dl>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!--   -->
</a>
<h3>Method Detail</h3>
<a name="getHttpVerb--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getHttpVerb</h4>
<pre>public final&nbsp;java.lang.String&nbsp;getHttpVerb()</pre>
<div class="block">Returns the HTTP request verb.</div>
</li>
</ul>
<a name="getHttpVersion--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getHttpVersion</h4>
<pre>public&nbsp;java.lang.String&nbsp;getHttpVersion()</pre>
<div class="block">Returns the HTTP version.</div>
</li>
</ul>
<a name="setHttpVersion-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setHttpVersion</h4>
<pre>public&nbsp;void&nbsp;setHttpVersion(java.lang.String&nbsp;httpVersion)</pre>
<div class="block">Sets the HTTP version.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>httpVersion</code> - the HTTP protocol version</dd>
</dl>
</li>
</ul>
<a name="getHost--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getHost</h4>
<pre>public final&nbsp;java.lang.String&nbsp;getHost()</pre>
<div class="block">Returns the host to which we are connecting.</div>
</li>
</ul>
<a name="getHttpURI--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getHttpURI</h4>
<pre>public final&nbsp;java.lang.String&nbsp;getHttpURI()</pre>
<div class="block">Returns the request HTTP URI.</div>
</li>
</ul>
<a name="getHeaders--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getHeaders</h4>
<pre>public final&nbsp;java.util.Map&lt;java.lang.String,java.util.List&lt;java.lang.String&gt;&gt;&nbsp;getHeaders()</pre>
<div class="block">Returns the HTTP headers.</div>
</li>
</ul>
<a name="setHeaders-java.util.Map-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setHeaders</h4>
<pre>public final&nbsp;void&nbsp;setHeaders(java.util.Map&lt;java.lang.String,java.util.List&lt;java.lang.String&gt;&gt;&nbsp;headers)</pre>
<div class="block">Set the HTTP headers.</div>
</li>
</ul>
<a name="getProperties--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getProperties</h4>
<pre>public&nbsp;java.util.Map&lt;java.lang.String,java.lang.String&gt;&nbsp;getProperties()</pre>
<div class="block">Returns additional properties for the request.</div>
</li>
</ul>
<a name="setProperties-java.util.Map-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setProperties</h4>
<pre>public&nbsp;void&nbsp;setProperties(java.util.Map&lt;java.lang.String,java.lang.String&gt;&nbsp;properties)</pre>
<div class="block">Set additional properties for the request.</div>
</li>
</ul>
<a name="checkRequiredProperties-java.lang.String...-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>checkRequiredProperties</h4>
<pre>public&nbsp;void&nbsp;checkRequiredProperties(java.lang.String...&nbsp;propNames)
                             throws <a href="../../../../../../org/apache/mina/proxy/ProxyAuthException.html" title="class in org.apache.mina.proxy">ProxyAuthException</a></pre>
<div class="block">Check if the given property(ies) is(are) set. Otherwise throws a 
 <a href="../../../../../../org/apache/mina/proxy/ProxyAuthException.html" title="class in org.apache.mina.proxy"><code>ProxyAuthException</code></a>.</div>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../../../org/apache/mina/proxy/ProxyAuthException.html" title="class in org.apache.mina.proxy">ProxyAuthException</a></code></dd>
</dl>
</li>
</ul>
<a name="toHttpString--">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>toHttpString</h4>
<pre>public&nbsp;java.lang.String&nbsp;toHttpString()</pre>
<div class="block">Returns the string representation of the HTTP request .</div>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<!-- ========= END OF CLASS DATA ========= -->
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar.bottom">
<!--   -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.bottom.firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/HttpProxyRequest.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../../org/apache/mina/proxy/handlers/http/HttpProxyConstants.html" title="class in org.apache.mina.proxy.handlers.http"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../../../org/apache/mina/proxy/handlers/http/HttpProxyResponse.html" title="class in org.apache.mina.proxy.handlers.http"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../../index.html?org/apache/mina/proxy/handlers/http/HttpProxyRequest.html" target="_top">Frames</a></li>
<li><a href="HttpProxyRequest.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_bottom");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.bottom">
<!--   -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<p class="legalCopy"><small>Copyright &#169; 2004-2019 <a href="http://mina.apache.org/">Apache MINA Project</a>. All Rights Reserved.</small></p>
</body>
</html>
