<!DOCTYPE HTML>
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (11.0.10) on Tue Mar 30 10:43:01 CDT 2021 -->
<title>HttpFields (Jetty :: Project 9.4.39.v20210325 API)</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="dc.created" content="2021-03-30">
<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../jquery/jquery-ui.css" title="Style">
<script type="text/javascript" src="../../../../script.js"></script>
<script type="text/javascript" src="../../../../jquery/jszip/dist/jszip.min.js"></script>
<script type="text/javascript" src="../../../../jquery/jszip-utils/dist/jszip-utils.min.js"></script>
<!--[if IE]>
<script type="text/javascript" src="../../../../jquery/jszip-utils/dist/jszip-utils-ie.min.js"></script>
<![endif]-->
<script type="text/javascript" src="../../../../jquery/jquery-3.5.1.js"></script>
<script type="text/javascript" src="../../../../jquery/jquery-ui.js"></script>
</head>
<body>
<script type="text/javascript"><!--
    try {
        if (location.href.indexOf('is-external=true') == -1) {
            parent.document.title="HttpFields (Jetty :: Project 9.4.39.v20210325 API)";
        }
    }
    catch(err) {
    }
//-->
var data = {"i0":10,"i1":10,"i2":42,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10,"i9":10,"i10":10,"i11":10,"i12":10,"i13":10,"i14":10,"i15":10,"i16":10,"i17":10,"i18":10,"i19":10,"i20":10,"i21":10,"i22":10,"i23":10,"i24":10,"i25":10,"i26":10,"i27":10,"i28":10,"i29":10,"i30":10,"i31":10,"i32":41,"i33":10,"i34":10,"i35":10,"i36":42,"i37":42,"i38":10,"i39":42,"i40":10,"i41":10,"i42":10,"i43":10,"i44":10,"i45":10,"i46":10,"i47":10,"i48":10,"i49":10,"i50":10,"i51":10,"i52":10,"i53":10,"i54":41,"i55":10,"i56":10,"i57":10,"i58":10,"i59":9,"i60":10,"i61":9};
var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"],32:["t6","Deprecated Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
var pathtoroot = "../../../../";
var useModuleDirectories = false;
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<header role="banner">
<nav role="navigation">
<div class="fixedNav">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a id="navbar.top">
<!--   -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a id="navbar.top.firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/HttpFields.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" id="allclasses_navbar_top">
<li><a href="../../../../allclasses.html">All&nbsp;Classes</a></li>
</ul>
<ul class="navListSearch">
<li><label for="search">SEARCH:</label>
<input type="text" id="search" value="search" disabled="disabled">
<input type="reset" id="reset" value="reset" disabled="disabled">
</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>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
</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 id="skip.navbar.top">
<!--   -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
</div>
<div class="navPadding">&nbsp;</div>
<script type="text/javascript"><!--
$('.navPadding').css('padding-top', $('.fixedNav').css("height"));
//-->
</script>
</nav>
</header>
<!-- ======== START OF CLASS DATA ======== -->
<main role="main">
<div class="header">
<div class="subTitle"><span class="packageLabelInType">Package</span>&nbsp;<a href="package-summary.html">org.eclipse.jetty.http</a></div>
<h2 title="Class HttpFields" class="title">Class HttpFields</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li>java.lang.Object</li>
<li>
<ul class="inheritance">
<li>org.eclipse.jetty.http.HttpFields</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Implemented Interfaces:</dt>
<dd><code>java.lang.Iterable&lt;<a href="HttpField.html" title="class in org.eclipse.jetty.http">HttpField</a>&gt;</code></dd>
</dl>
<hr>
<pre>public class <span class="typeNameLabel">HttpFields</span>
extends java.lang.Object
implements java.lang.Iterable&lt;<a href="HttpField.html" title="class in org.eclipse.jetty.http">HttpField</a>&gt;</pre>
<div class="block">HTTP Fields. A collection of HTTP header and or Trailer fields.

 <p>This class is not synchronized as it is expected that modifications will only be performed by a
 single thread.

 <p>The cookie handling provided by this class is guided by the Servlet specification and RFC6265.</div>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- =========== FIELD SUMMARY =========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="field.summary">
<!--   -->
</a>
<h3>Field Summary</h3>
<table class="memberSummary">
<caption><span>Fields</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Field</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#__separators">__separators</a></span></code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
</td>
</tr>
</table>
</li>
</ul>
</section>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="constructor.summary">
<!--   -->
</a>
<h3>Constructor Summary</h3>
<table class="memberSummary">
<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Constructor</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tr class="altColor">
<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E()">HttpFields</a></span>()</code></th>
<td class="colLast">
<div class="block">Initialize an empty HttpFields.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E(int)">HttpFields</a></span>&#8203;(int&nbsp;capacity)</code></th>
<td class="colLast">
<div class="block">Initialize an empty HttpFields.</div>
</td>
</tr>
<tr class="altColor">
<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E(org.eclipse.jetty.http.HttpFields)">HttpFields</a></span>&#8203;(<a href="HttpFields.html" title="class in org.eclipse.jetty.http">HttpFields</a>&nbsp;fields)</code></th>
<td class="colLast">
<div class="block">Initialize HttpFields from copy.</div>
</td>
</tr>
</table>
</li>
</ul>
</section>
<!-- ========== METHOD SUMMARY =========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="method.summary">
<!--   -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t1" class="tableTab"><span><a href="javascript:show(1);">Static Methods</a></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><span id="t6" class="tableTab"><span><a href="javascript:show(32);">Deprecated Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Method</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#add(java.lang.String,java.lang.String)">add</a></span>&#8203;(java.lang.String&nbsp;name,
   java.lang.String&nbsp;value)</code></th>
<td class="colLast">
<div class="block">Add to or set a field.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#add(org.eclipse.jetty.http.HttpField)">add</a></span>&#8203;(<a href="HttpField.html" title="class in org.eclipse.jetty.http">HttpField</a>&nbsp;field)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#add(org.eclipse.jetty.http.HttpFields)">add</a></span>&#8203;(<a href="HttpFields.html" title="class in org.eclipse.jetty.http">HttpFields</a>&nbsp;fields)</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#add(org.eclipse.jetty.http.HttpHeader,java.lang.String)">add</a></span>&#8203;(<a href="HttpHeader.html" title="enum in org.eclipse.jetty.http">HttpHeader</a>&nbsp;header,
   java.lang.String&nbsp;value)</code></th>
<td class="colLast">
<div class="block">Add to or set a field.</div>
</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#add(org.eclipse.jetty.http.HttpHeader,org.eclipse.jetty.http.HttpHeaderValue)">add</a></span>&#8203;(<a href="HttpHeader.html" title="enum in org.eclipse.jetty.http">HttpHeader</a>&nbsp;header,
   <a href="HttpHeaderValue.html" title="enum in org.eclipse.jetty.http">HttpHeaderValue</a>&nbsp;value)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#addAll(org.eclipse.jetty.http.HttpFields)">addAll</a></span>&#8203;(<a href="HttpFields.html" title="class in org.eclipse.jetty.http">HttpFields</a>&nbsp;fields)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#addCSV(java.lang.String,java.lang.String...)">addCSV</a></span>&#8203;(java.lang.String&nbsp;name,
      java.lang.String...&nbsp;values)</code></th>
<td class="colLast">
<div class="block">Add comma separated values, but only if not already
 present.</div>
</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#addCSV(org.eclipse.jetty.http.HttpHeader,java.lang.String...)">addCSV</a></span>&#8203;(<a href="HttpHeader.html" title="enum in org.eclipse.jetty.http">HttpHeader</a>&nbsp;header,
      java.lang.String...&nbsp;values)</code></th>
<td class="colLast">
<div class="block">Add comma separated values, but only if not already
 present.</div>
</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code>protected java.lang.String</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#addCSV(org.eclipse.jetty.http.QuotedCSV,java.lang.String...)">addCSV</a></span>&#8203;(<a href="QuotedCSV.html" title="class in org.eclipse.jetty.http">QuotedCSV</a>&nbsp;existing,
      java.lang.String...&nbsp;values)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#addDateField(java.lang.String,long)">addDateField</a></span>&#8203;(java.lang.String&nbsp;name,
            long&nbsp;date)</code></th>
<td class="colLast">
<div class="block">Sets the value of a date field.</div>
</td>
</tr>
<tr id="i10" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#clear()">clear</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i11" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#computeField(java.lang.String,java.util.function.BiFunction)">computeField</a></span>&#8203;(java.lang.String&nbsp;name,
            java.util.function.BiFunction&lt;java.lang.String,&#8203;java.util.List&lt;<a href="HttpField.html" title="class in org.eclipse.jetty.http">HttpField</a>&gt;,&#8203;<a href="HttpField.html" title="class in org.eclipse.jetty.http">HttpField</a>&gt;&nbsp;computeFn)</code></th>
<td class="colLast">
<div class="block">Computes a single field for the given HTTP header name and for existing fields with the same name.</div>
</td>
</tr>
<tr id="i12" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#computeField(org.eclipse.jetty.http.HttpHeader,java.util.function.BiFunction)">computeField</a></span>&#8203;(<a href="HttpHeader.html" title="enum in org.eclipse.jetty.http">HttpHeader</a>&nbsp;header,
            java.util.function.BiFunction&lt;<a href="HttpHeader.html" title="enum in org.eclipse.jetty.http">HttpHeader</a>,&#8203;java.util.List&lt;<a href="HttpField.html" title="class in org.eclipse.jetty.http">HttpField</a>&gt;,&#8203;<a href="HttpField.html" title="class in org.eclipse.jetty.http">HttpField</a>&gt;&nbsp;computeFn)</code></th>
<td class="colLast">
<div class="block">Computes a single field for the given HttpHeader and for existing fields with the same header.</div>
</td>
</tr>
<tr id="i13" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#contains(java.lang.String,java.lang.String)">contains</a></span>&#8203;(java.lang.String&nbsp;name,
        java.lang.String&nbsp;value)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i14" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#contains(org.eclipse.jetty.http.HttpField)">contains</a></span>&#8203;(<a href="HttpField.html" title="class in org.eclipse.jetty.http">HttpField</a>&nbsp;field)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i15" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#contains(org.eclipse.jetty.http.HttpHeader)">contains</a></span>&#8203;(<a href="HttpHeader.html" title="enum in org.eclipse.jetty.http">HttpHeader</a>&nbsp;header)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i16" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#contains(org.eclipse.jetty.http.HttpHeader,java.lang.String)">contains</a></span>&#8203;(<a href="HttpHeader.html" title="enum in org.eclipse.jetty.http">HttpHeader</a>&nbsp;header,
        java.lang.String&nbsp;value)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i17" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#containsKey(java.lang.String)">containsKey</a></span>&#8203;(java.lang.String&nbsp;name)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i18" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#equals(java.lang.Object)">equals</a></span>&#8203;(java.lang.Object&nbsp;o)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i19" class="rowColor">
<td class="colFirst"><code>java.lang.String</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#get(java.lang.String)">get</a></span>&#8203;(java.lang.String&nbsp;header)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i20" class="altColor">
<td class="colFirst"><code>java.lang.String</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#get(org.eclipse.jetty.http.HttpHeader)">get</a></span>&#8203;(<a href="HttpHeader.html" title="enum in org.eclipse.jetty.http">HttpHeader</a>&nbsp;header)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i21" class="rowColor">
<td class="colFirst"><code>java.util.List&lt;java.lang.String&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getCSV(java.lang.String,boolean)">getCSV</a></span>&#8203;(java.lang.String&nbsp;name,
      boolean&nbsp;keepQuotes)</code></th>
<td class="colLast">
<div class="block">Get multiple field values of the same name
 as a <a href="QuotedCSV.html" title="class in org.eclipse.jetty.http"><code>QuotedCSV</code></a></div>
</td>
</tr>
<tr id="i22" class="altColor">
<td class="colFirst"><code>java.util.List&lt;java.lang.String&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getCSV(org.eclipse.jetty.http.HttpHeader,boolean)">getCSV</a></span>&#8203;(<a href="HttpHeader.html" title="enum in org.eclipse.jetty.http">HttpHeader</a>&nbsp;header,
      boolean&nbsp;keepQuotes)</code></th>
<td class="colLast">
<div class="block">Get multiple field values of the same name, split
 as a <a href="QuotedCSV.html" title="class in org.eclipse.jetty.http"><code>QuotedCSV</code></a></div>
</td>
</tr>
<tr id="i23" class="rowColor">
<td class="colFirst"><code>long</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getDateField(java.lang.String)">getDateField</a></span>&#8203;(java.lang.String&nbsp;name)</code></th>
<td class="colLast">
<div class="block">Get a header as a date value.</div>
</td>
</tr>
<tr id="i24" class="altColor">
<td class="colFirst"><code><a href="HttpField.html" title="class in org.eclipse.jetty.http">HttpField</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getField(int)">getField</a></span>&#8203;(int&nbsp;index)</code></th>
<td class="colLast">
<div class="block">Get a Field by index.</div>
</td>
</tr>
<tr id="i25" class="rowColor">
<td class="colFirst"><code><a href="HttpField.html" title="class in org.eclipse.jetty.http">HttpField</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getField(java.lang.String)">getField</a></span>&#8203;(java.lang.String&nbsp;name)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i26" class="altColor">
<td class="colFirst"><code><a href="HttpField.html" title="class in org.eclipse.jetty.http">HttpField</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getField(org.eclipse.jetty.http.HttpHeader)">getField</a></span>&#8203;(<a href="HttpHeader.html" title="enum in org.eclipse.jetty.http">HttpHeader</a>&nbsp;header)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i27" class="rowColor">
<td class="colFirst"><code>java.util.Enumeration&lt;java.lang.String&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getFieldNames()">getFieldNames</a></span>()</code></th>
<td class="colLast">
<div class="block">Get enumeration of header _names.</div>
</td>
</tr>
<tr id="i28" class="altColor">
<td class="colFirst"><code>java.util.Set&lt;java.lang.String&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getFieldNamesCollection()">getFieldNamesCollection</a></span>()</code></th>
<td class="colLast">
<div class="block">Get Collection of header names.</div>
</td>
</tr>
<tr id="i29" class="rowColor">
<td class="colFirst"><code>java.util.List&lt;<a href="HttpField.html" title="class in org.eclipse.jetty.http">HttpField</a>&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getFields(java.lang.String)">getFields</a></span>&#8203;(java.lang.String&nbsp;name)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i30" class="altColor">
<td class="colFirst"><code>java.util.List&lt;<a href="HttpField.html" title="class in org.eclipse.jetty.http">HttpField</a>&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getFields(org.eclipse.jetty.http.HttpHeader)">getFields</a></span>&#8203;(<a href="HttpHeader.html" title="enum in org.eclipse.jetty.http">HttpHeader</a>&nbsp;header)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i31" class="rowColor">
<td class="colFirst"><code>long</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getLongField(java.lang.String)">getLongField</a></span>&#8203;(java.lang.String&nbsp;name)</code></th>
<td class="colLast">
<div class="block">Get a header as an long value.</div>
</td>
</tr>
<tr id="i32" class="altColor">
<td class="colFirst"><code>static java.lang.Float</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getQuality(java.lang.String)">getQuality</a></span>&#8203;(java.lang.String&nbsp;value)</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
</td>
</tr>
<tr id="i33" class="rowColor">
<td class="colFirst"><code>java.util.List&lt;java.lang.String&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getQualityCSV(java.lang.String)">getQualityCSV</a></span>&#8203;(java.lang.String&nbsp;name)</code></th>
<td class="colLast">
<div class="block">Get multiple field values of the same name, split and
 sorted as a <a href="QuotedQualityCSV.html" title="class in org.eclipse.jetty.http"><code>QuotedQualityCSV</code></a></div>
</td>
</tr>
<tr id="i34" class="altColor">
<td class="colFirst"><code>java.util.List&lt;java.lang.String&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getQualityCSV(org.eclipse.jetty.http.HttpHeader)">getQualityCSV</a></span>&#8203;(<a href="HttpHeader.html" title="enum in org.eclipse.jetty.http">HttpHeader</a>&nbsp;header)</code></th>
<td class="colLast">
<div class="block">Get multiple field values of the same name, split and
 sorted as a <a href="QuotedQualityCSV.html" title="class in org.eclipse.jetty.http"><code>QuotedQualityCSV</code></a></div>
</td>
</tr>
<tr id="i35" class="rowColor">
<td class="colFirst"><code>java.util.List&lt;java.lang.String&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getQualityCSV(org.eclipse.jetty.http.HttpHeader,java.util.function.ToIntFunction)">getQualityCSV</a></span>&#8203;(<a href="HttpHeader.html" title="enum in org.eclipse.jetty.http">HttpHeader</a>&nbsp;header,
             java.util.function.ToIntFunction&lt;java.lang.String&gt;&nbsp;secondaryOrdering)</code></th>
<td class="colLast">
<div class="block">Get multiple field values of the same name, split and
 sorted as a <a href="QuotedQualityCSV.html" title="class in org.eclipse.jetty.http"><code>QuotedQualityCSV</code></a></div>
</td>
</tr>
<tr id="i36" class="altColor">
<td class="colFirst"><code>java.lang.String</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getStringField(java.lang.String)">getStringField</a></span>&#8203;(java.lang.String&nbsp;name)</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
</td>
</tr>
<tr id="i37" class="rowColor">
<td class="colFirst"><code>java.lang.String</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getStringField(org.eclipse.jetty.http.HttpHeader)">getStringField</a></span>&#8203;(<a href="HttpHeader.html" title="enum in org.eclipse.jetty.http">HttpHeader</a>&nbsp;header)</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
</td>
</tr>
<tr id="i38" class="altColor">
<td class="colFirst"><code>java.util.Enumeration&lt;java.lang.String&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getValues(java.lang.String)">getValues</a></span>&#8203;(java.lang.String&nbsp;name)</code></th>
<td class="colLast">
<div class="block">Get multi headers</div>
</td>
</tr>
<tr id="i39" class="rowColor">
<td class="colFirst"><code>java.util.Enumeration&lt;java.lang.String&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getValues(java.lang.String,java.lang.String)">getValues</a></span>&#8203;(java.lang.String&nbsp;name,
         java.lang.String&nbsp;separators)</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
</td>
</tr>
<tr id="i40" class="altColor">
<td class="colFirst"><code>java.util.List&lt;java.lang.String&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getValuesList(java.lang.String)">getValuesList</a></span>&#8203;(java.lang.String&nbsp;name)</code></th>
<td class="colLast">
<div class="block">Get multiple header of the same name</div>
</td>
</tr>
<tr id="i41" class="rowColor">
<td class="colFirst"><code>java.util.List&lt;java.lang.String&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getValuesList(org.eclipse.jetty.http.HttpHeader)">getValuesList</a></span>&#8203;(<a href="HttpHeader.html" title="enum in org.eclipse.jetty.http">HttpHeader</a>&nbsp;header)</code></th>
<td class="colLast">
<div class="block">Get multiple header of the same name</div>
</td>
</tr>
<tr id="i42" class="altColor">
<td class="colFirst"><code>int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#hashCode()">hashCode</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i43" class="rowColor">
<td class="colFirst"><code>java.util.Iterator&lt;<a href="HttpField.html" title="class in org.eclipse.jetty.http">HttpField</a>&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#iterator()">iterator</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i44" class="altColor">
<td class="colFirst"><code>java.util.ListIterator&lt;<a href="HttpField.html" title="class in org.eclipse.jetty.http">HttpField</a>&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#listIterator()">listIterator</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i45" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#put(java.lang.String,java.lang.String)">put</a></span>&#8203;(java.lang.String&nbsp;name,
   java.lang.String&nbsp;value)</code></th>
<td class="colLast">
<div class="block">Set a field.</div>
</td>
</tr>
<tr id="i46" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#put(java.lang.String,java.util.List)">put</a></span>&#8203;(java.lang.String&nbsp;name,
   java.util.List&lt;java.lang.String&gt;&nbsp;list)</code></th>
<td class="colLast">
<div class="block">Set a field.</div>
</td>
</tr>
<tr id="i47" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#put(org.eclipse.jetty.http.HttpField)">put</a></span>&#8203;(<a href="HttpField.html" title="class in org.eclipse.jetty.http">HttpField</a>&nbsp;field)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i48" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#put(org.eclipse.jetty.http.HttpHeader,java.lang.String)">put</a></span>&#8203;(<a href="HttpHeader.html" title="enum in org.eclipse.jetty.http">HttpHeader</a>&nbsp;header,
   java.lang.String&nbsp;value)</code></th>
<td class="colLast">
<div class="block">Set a field.</div>
</td>
</tr>
<tr id="i49" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#put(org.eclipse.jetty.http.HttpHeader,org.eclipse.jetty.http.HttpHeaderValue)">put</a></span>&#8203;(<a href="HttpHeader.html" title="enum in org.eclipse.jetty.http">HttpHeader</a>&nbsp;header,
   <a href="HttpHeaderValue.html" title="enum in org.eclipse.jetty.http">HttpHeaderValue</a>&nbsp;value)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i50" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#putDateField(java.lang.String,long)">putDateField</a></span>&#8203;(java.lang.String&nbsp;name,
            long&nbsp;date)</code></th>
<td class="colLast">
<div class="block">Sets the value of a date field.</div>
</td>
</tr>
<tr id="i51" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#putDateField(org.eclipse.jetty.http.HttpHeader,long)">putDateField</a></span>&#8203;(<a href="HttpHeader.html" title="enum in org.eclipse.jetty.http">HttpHeader</a>&nbsp;name,
            long&nbsp;date)</code></th>
<td class="colLast">
<div class="block">Sets the value of a date field.</div>
</td>
</tr>
<tr id="i52" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#putLongField(java.lang.String,long)">putLongField</a></span>&#8203;(java.lang.String&nbsp;name,
            long&nbsp;value)</code></th>
<td class="colLast">
<div class="block">Sets the value of an long field.</div>
</td>
</tr>
<tr id="i53" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#putLongField(org.eclipse.jetty.http.HttpHeader,long)">putLongField</a></span>&#8203;(<a href="HttpHeader.html" title="enum in org.eclipse.jetty.http">HttpHeader</a>&nbsp;name,
            long&nbsp;value)</code></th>
<td class="colLast">
<div class="block">Sets the value of an long field.</div>
</td>
</tr>
<tr id="i54" class="altColor">
<td class="colFirst"><code>static java.util.List&lt;java.lang.String&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#qualityList(java.util.Enumeration)">qualityList</a></span>&#8203;(java.util.Enumeration&lt;java.lang.String&gt;&nbsp;e)</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
</td>
</tr>
<tr id="i55" class="rowColor">
<td class="colFirst"><code><a href="HttpField.html" title="class in org.eclipse.jetty.http">HttpField</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#remove(java.lang.String)">remove</a></span>&#8203;(java.lang.String&nbsp;name)</code></th>
<td class="colLast">
<div class="block">Remove a field.</div>
</td>
</tr>
<tr id="i56" class="altColor">
<td class="colFirst"><code><a href="HttpField.html" title="class in org.eclipse.jetty.http">HttpField</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#remove(org.eclipse.jetty.http.HttpHeader)">remove</a></span>&#8203;(<a href="HttpHeader.html" title="enum in org.eclipse.jetty.http">HttpHeader</a>&nbsp;name)</code></th>
<td class="colLast">
<div class="block">Remove a field.</div>
</td>
</tr>
<tr id="i57" class="rowColor">
<td class="colFirst"><code>int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#size()">size</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i58" class="altColor">
<td class="colFirst"><code>java.util.stream.Stream&lt;<a href="HttpField.html" title="class in org.eclipse.jetty.http">HttpField</a>&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#stream()">stream</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i59" class="rowColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#stripParameters(java.lang.String)">stripParameters</a></span>&#8203;(java.lang.String&nbsp;value)</code></th>
<td class="colLast">
<div class="block">Get field value without parameters.</div>
</td>
</tr>
<tr id="i60" class="altColor">
<td class="colFirst"><code>java.lang.String</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#toString()">toString</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i61" class="rowColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#valueParameters(java.lang.String,java.util.Map)">valueParameters</a></span>&#8203;(java.lang.String&nbsp;value,
               java.util.Map&lt;java.lang.String,&#8203;java.lang.String&gt;&nbsp;parameters)</code></th>
<td class="colLast">
<div class="block">Get field value parameters.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a id="methods.inherited.from.class.java.lang.Object">
<!--   -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.Object</h3>
<code>clone, finalize, getClass, notify, notifyAll, wait, wait, wait</code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a id="methods.inherited.from.class.java.lang.Iterable">
<!--   -->
</a>
<h3>Methods inherited from interface&nbsp;java.lang.Iterable</h3>
<code>forEach, spliterator</code></li>
</ul>
</li>
</ul>
</section>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ FIELD DETAIL =========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="field.detail">
<!--   -->
</a>
<h3>Field Detail</h3>
<a id="__separators">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>__separators</h4>
<pre>@Deprecated
public static final&nbsp;java.lang.String __separators</pre>
<div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span></div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../constant-values.html#org.eclipse.jetty.http.HttpFields.__separators">Constant Field Values</a></dd>
</dl>
</li>
</ul>
</li>
</ul>
</section>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="constructor.detail">
<!--   -->
</a>
<h3>Constructor Detail</h3>
<a id="&lt;init&gt;()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>HttpFields</h4>
<pre>public&nbsp;HttpFields()</pre>
<div class="block">Initialize an empty HttpFields.</div>
</li>
</ul>
<a id="&lt;init&gt;(int)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>HttpFields</h4>
<pre>public&nbsp;HttpFields&#8203;(int&nbsp;capacity)</pre>
<div class="block">Initialize an empty HttpFields.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>capacity</code> - the capacity of the http fields</dd>
</dl>
</li>
</ul>
<a id="&lt;init&gt;(org.eclipse.jetty.http.HttpFields)">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>HttpFields</h4>
<pre>public&nbsp;HttpFields&#8203;(<a href="HttpFields.html" title="class in org.eclipse.jetty.http">HttpFields</a>&nbsp;fields)</pre>
<div class="block">Initialize HttpFields from copy.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>fields</code> - the fields to copy data from</dd>
</dl>
</li>
</ul>
</li>
</ul>
</section>
<!-- ============ METHOD DETAIL ========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="method.detail">
<!--   -->
</a>
<h3>Method Detail</h3>
<a id="computeField(org.eclipse.jetty.http.HttpHeader,java.util.function.BiFunction)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>computeField</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;computeField&#8203;(<a href="HttpHeader.html" title="enum in org.eclipse.jetty.http">HttpHeader</a>&nbsp;header,
                         java.util.function.BiFunction&lt;<a href="HttpHeader.html" title="enum in org.eclipse.jetty.http">HttpHeader</a>,&#8203;java.util.List&lt;<a href="HttpField.html" title="class in org.eclipse.jetty.http">HttpField</a>&gt;,&#8203;<a href="HttpField.html" title="class in org.eclipse.jetty.http">HttpField</a>&gt;&nbsp;computeFn)</pre>
<div class="block"><p>Computes a single field for the given HttpHeader and for existing fields with the same header.</p>

 <p>The compute function receives the field name and a list of fields with the same name
 so that their values can be used to compute the value of the field that is returned
 by the compute function.
 If the compute function returns <code>null</code>, the fields with the given name are removed.</p>
 <p>This method comes handy when you want to add an HTTP header if it does not exist,
 or add a value if the HTTP header already exists, similarly to
 <code>Map.compute(Object, BiFunction)</code>.</p>

 <p>This method can be used to <a href="#put(org.eclipse.jetty.http.HttpField)"><code>put</code></a> a new field (or blindly replace its value):</p>
 <pre>
 httpFields.computeField("X-New-Header",
     (name, fields) -&gt; new HttpField(name, "NewValue"));
 </pre>

 <p>This method can be used to coalesce many fields into one:</p>
 <pre>
 // Input:
 GET / HTTP/1.1
 Host: localhost
 Cookie: foo=1
 Cookie: bar=2,baz=3
 User-Agent: Jetty

 // Computation:
 httpFields.computeField("Cookie", (name, fields) -&gt;
 {
     // No cookies, nothing to do.
     if (fields == null)
         return null;

     // Coalesces all cookies.
     String coalesced = fields.stream()
         .flatMap(field -&gt; Stream.of(field.getValues()))
         .collect(Collectors.joining(", "));

     // Returns a single Cookie header with all cookies.
     return new HttpField(name, coalesced);
 }

 // Output:
 GET / HTTP/1.1
 Host: localhost
 Cookie: foo=1, bar=2, baz=3
 User-Agent: Jetty
 </pre>

 <p>This method can be used to replace a field:</p>
 <pre>
 httpFields.computeField("X-Length", (name, fields) -&gt;
 {
     if (fields == null)
         return null;

     // Get any value among the X-Length headers.
     String length = fields.stream()
         .map(HttpField::getValue)
         .findAny()
         .orElse("0");

     // Replace X-Length headers with X-Capacity header.
     return new HttpField("X-Capacity", length);
 });
 </pre>

 <p>This method can be used to remove a field:</p>
 <pre>
 httpFields.computeField("Connection", (name, fields) -&gt; null);
 </pre></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>header</code> - the HTTP header</dd>
<dd><code>computeFn</code> - the compute function</dd>
</dl>
</li>
</ul>
<a id="computeField(java.lang.String,java.util.function.BiFunction)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>computeField</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;computeField&#8203;(java.lang.String&nbsp;name,
                         java.util.function.BiFunction&lt;java.lang.String,&#8203;java.util.List&lt;<a href="HttpField.html" title="class in org.eclipse.jetty.http">HttpField</a>&gt;,&#8203;<a href="HttpField.html" title="class in org.eclipse.jetty.http">HttpField</a>&gt;&nbsp;computeFn)</pre>
<div class="block"><p>Computes a single field for the given HTTP header name and for existing fields with the same name.</p></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>name</code> - the HTTP header name</dd>
<dd><code>computeFn</code> - the compute function</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="#computeField(org.eclipse.jetty.http.HttpHeader,java.util.function.BiFunction)"><code>computeField(HttpHeader, BiFunction)</code></a></dd>
</dl>
</li>
</ul>
<a id="size()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>size</h4>
<pre class="methodSignature">public&nbsp;int&nbsp;size()</pre>
</li>
</ul>
<a id="iterator()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>iterator</h4>
<pre class="methodSignature">public&nbsp;java.util.Iterator&lt;<a href="HttpField.html" title="class in org.eclipse.jetty.http">HttpField</a>&gt;&nbsp;iterator()</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code>iterator</code>&nbsp;in interface&nbsp;<code>java.lang.Iterable&lt;<a href="HttpField.html" title="class in org.eclipse.jetty.http">HttpField</a>&gt;</code></dd>
</dl>
</li>
</ul>
<a id="listIterator()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>listIterator</h4>
<pre class="methodSignature">public&nbsp;java.util.ListIterator&lt;<a href="HttpField.html" title="class in org.eclipse.jetty.http">HttpField</a>&gt;&nbsp;listIterator()</pre>
</li>
</ul>
<a id="stream()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>stream</h4>
<pre class="methodSignature">public&nbsp;java.util.stream.Stream&lt;<a href="HttpField.html" title="class in org.eclipse.jetty.http">HttpField</a>&gt;&nbsp;stream()</pre>
</li>
</ul>
<a id="getFieldNamesCollection()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getFieldNamesCollection</h4>
<pre class="methodSignature">public&nbsp;java.util.Set&lt;java.lang.String&gt;&nbsp;getFieldNamesCollection()</pre>
<div class="block">Get Collection of header names.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the unique set of field names.</dd>
</dl>
</li>
</ul>
<a id="getFieldNames()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getFieldNames</h4>
<pre class="methodSignature">public&nbsp;java.util.Enumeration&lt;java.lang.String&gt;&nbsp;getFieldNames()</pre>
<div class="block">Get enumeration of header _names. Returns an enumeration of strings representing the header
 _names for this request.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>an enumeration of field names</dd>
</dl>
</li>
</ul>
<a id="getField(int)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getField</h4>
<pre class="methodSignature">public&nbsp;<a href="HttpField.html" title="class in org.eclipse.jetty.http">HttpField</a>&nbsp;getField&#8203;(int&nbsp;index)</pre>
<div class="block">Get a Field by index.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>index</code> - the field index</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>A Field value or null if the Field value has not been set</dd>
</dl>
</li>
</ul>
<a id="getField(org.eclipse.jetty.http.HttpHeader)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getField</h4>
<pre class="methodSignature">public&nbsp;<a href="HttpField.html" title="class in org.eclipse.jetty.http">HttpField</a>&nbsp;getField&#8203;(<a href="HttpHeader.html" title="enum in org.eclipse.jetty.http">HttpHeader</a>&nbsp;header)</pre>
</li>
</ul>
<a id="getField(java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getField</h4>
<pre class="methodSignature">public&nbsp;<a href="HttpField.html" title="class in org.eclipse.jetty.http">HttpField</a>&nbsp;getField&#8203;(java.lang.String&nbsp;name)</pre>
</li>
</ul>
<a id="getFields(org.eclipse.jetty.http.HttpHeader)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getFields</h4>
<pre class="methodSignature">public&nbsp;java.util.List&lt;<a href="HttpField.html" title="class in org.eclipse.jetty.http">HttpField</a>&gt;&nbsp;getFields&#8203;(<a href="HttpHeader.html" title="enum in org.eclipse.jetty.http">HttpHeader</a>&nbsp;header)</pre>
</li>
</ul>
<a id="getFields(java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getFields</h4>
<pre class="methodSignature">public&nbsp;java.util.List&lt;<a href="HttpField.html" title="class in org.eclipse.jetty.http">HttpField</a>&gt;&nbsp;getFields&#8203;(java.lang.String&nbsp;name)</pre>
</li>
</ul>
<a id="contains(org.eclipse.jetty.http.HttpField)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>contains</h4>
<pre class="methodSignature">public&nbsp;boolean&nbsp;contains&#8203;(<a href="HttpField.html" title="class in org.eclipse.jetty.http">HttpField</a>&nbsp;field)</pre>
</li>
</ul>
<a id="contains(org.eclipse.jetty.http.HttpHeader,java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>contains</h4>
<pre class="methodSignature">public&nbsp;boolean&nbsp;contains&#8203;(<a href="HttpHeader.html" title="enum in org.eclipse.jetty.http">HttpHeader</a>&nbsp;header,
                        java.lang.String&nbsp;value)</pre>
</li>
</ul>
<a id="contains(java.lang.String,java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>contains</h4>
<pre class="methodSignature">public&nbsp;boolean&nbsp;contains&#8203;(java.lang.String&nbsp;name,
                        java.lang.String&nbsp;value)</pre>
</li>
</ul>
<a id="contains(org.eclipse.jetty.http.HttpHeader)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>contains</h4>
<pre class="methodSignature">public&nbsp;boolean&nbsp;contains&#8203;(<a href="HttpHeader.html" title="enum in org.eclipse.jetty.http">HttpHeader</a>&nbsp;header)</pre>
</li>
</ul>
<a id="containsKey(java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>containsKey</h4>
<pre class="methodSignature">public&nbsp;boolean&nbsp;containsKey&#8203;(java.lang.String&nbsp;name)</pre>
</li>
</ul>
<a id="getStringField(org.eclipse.jetty.http.HttpHeader)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getStringField</h4>
<pre class="methodSignature">@Deprecated
public&nbsp;java.lang.String&nbsp;getStringField&#8203;(<a href="HttpHeader.html" title="enum in org.eclipse.jetty.http">HttpHeader</a>&nbsp;header)</pre>
<div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span></div>
</li>
</ul>
<a id="get(org.eclipse.jetty.http.HttpHeader)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>get</h4>
<pre class="methodSignature">public&nbsp;java.lang.String&nbsp;get&#8203;(<a href="HttpHeader.html" title="enum in org.eclipse.jetty.http">HttpHeader</a>&nbsp;header)</pre>
</li>
</ul>
<a id="getStringField(java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getStringField</h4>
<pre class="methodSignature">@Deprecated
public&nbsp;java.lang.String&nbsp;getStringField&#8203;(java.lang.String&nbsp;name)</pre>
<div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span></div>
</li>
</ul>
<a id="get(java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>get</h4>
<pre class="methodSignature">public&nbsp;java.lang.String&nbsp;get&#8203;(java.lang.String&nbsp;header)</pre>
</li>
</ul>
<a id="getValuesList(org.eclipse.jetty.http.HttpHeader)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getValuesList</h4>
<pre class="methodSignature">public&nbsp;java.util.List&lt;java.lang.String&gt;&nbsp;getValuesList&#8203;(<a href="HttpHeader.html" title="enum in org.eclipse.jetty.http">HttpHeader</a>&nbsp;header)</pre>
<div class="block">Get multiple header of the same name</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>header</code> - the header</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>List the values</dd>
</dl>
</li>
</ul>
<a id="getValuesList(java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getValuesList</h4>
<pre class="methodSignature">public&nbsp;java.util.List&lt;java.lang.String&gt;&nbsp;getValuesList&#8203;(java.lang.String&nbsp;name)</pre>
<div class="block">Get multiple header of the same name</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>name</code> - the case-insensitive field name</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>List the header values</dd>
</dl>
</li>
</ul>
<a id="addCSV(org.eclipse.jetty.http.HttpHeader,java.lang.String...)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addCSV</h4>
<pre class="methodSignature">public&nbsp;boolean&nbsp;addCSV&#8203;(<a href="HttpHeader.html" title="enum in org.eclipse.jetty.http">HttpHeader</a>&nbsp;header,
                      java.lang.String...&nbsp;values)</pre>
<div class="block">Add comma separated values, but only if not already
 present.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>header</code> - The header to add the value(s) to</dd>
<dd><code>values</code> - The value(s) to add</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>True if headers were modified</dd>
</dl>
</li>
</ul>
<a id="addCSV(java.lang.String,java.lang.String...)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addCSV</h4>
<pre class="methodSignature">public&nbsp;boolean&nbsp;addCSV&#8203;(java.lang.String&nbsp;name,
                      java.lang.String...&nbsp;values)</pre>
<div class="block">Add comma separated values, but only if not already
 present.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>name</code> - The header to add the value(s) to</dd>
<dd><code>values</code> - The value(s) to add</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>True if headers were modified</dd>
</dl>
</li>
</ul>
<a id="addCSV(org.eclipse.jetty.http.QuotedCSV,java.lang.String...)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addCSV</h4>
<pre class="methodSignature">protected&nbsp;java.lang.String&nbsp;addCSV&#8203;(<a href="QuotedCSV.html" title="class in org.eclipse.jetty.http">QuotedCSV</a>&nbsp;existing,
                                  java.lang.String...&nbsp;values)</pre>
</li>
</ul>
<a id="getCSV(org.eclipse.jetty.http.HttpHeader,boolean)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCSV</h4>
<pre class="methodSignature">public&nbsp;java.util.List&lt;java.lang.String&gt;&nbsp;getCSV&#8203;(<a href="HttpHeader.html" title="enum in org.eclipse.jetty.http">HttpHeader</a>&nbsp;header,
                                               boolean&nbsp;keepQuotes)</pre>
<div class="block">Get multiple field values of the same name, split
 as a <a href="QuotedCSV.html" title="class in org.eclipse.jetty.http"><code>QuotedCSV</code></a></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>header</code> - The header</dd>
<dd><code>keepQuotes</code> - True if the fields are kept quoted</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>List the values with OWS stripped</dd>
</dl>
</li>
</ul>
<a id="getCSV(java.lang.String,boolean)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCSV</h4>
<pre class="methodSignature">public&nbsp;java.util.List&lt;java.lang.String&gt;&nbsp;getCSV&#8203;(java.lang.String&nbsp;name,
                                               boolean&nbsp;keepQuotes)</pre>
<div class="block">Get multiple field values of the same name
 as a <a href="QuotedCSV.html" title="class in org.eclipse.jetty.http"><code>QuotedCSV</code></a></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>name</code> - the case-insensitive field name</dd>
<dd><code>keepQuotes</code> - True if the fields are kept quoted</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>List the values with OWS stripped</dd>
</dl>
</li>
</ul>
<a id="getQualityCSV(org.eclipse.jetty.http.HttpHeader)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getQualityCSV</h4>
<pre class="methodSignature">public&nbsp;java.util.List&lt;java.lang.String&gt;&nbsp;getQualityCSV&#8203;(<a href="HttpHeader.html" title="enum in org.eclipse.jetty.http">HttpHeader</a>&nbsp;header)</pre>
<div class="block">Get multiple field values of the same name, split and
 sorted as a <a href="QuotedQualityCSV.html" title="class in org.eclipse.jetty.http"><code>QuotedQualityCSV</code></a></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>header</code> - The header</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>List the values in quality order with the q param and OWS stripped</dd>
</dl>
</li>
</ul>
<a id="getQualityCSV(org.eclipse.jetty.http.HttpHeader,java.util.function.ToIntFunction)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getQualityCSV</h4>
<pre class="methodSignature">public&nbsp;java.util.List&lt;java.lang.String&gt;&nbsp;getQualityCSV&#8203;(<a href="HttpHeader.html" title="enum in org.eclipse.jetty.http">HttpHeader</a>&nbsp;header,
                                                      java.util.function.ToIntFunction&lt;java.lang.String&gt;&nbsp;secondaryOrdering)</pre>
<div class="block">Get multiple field values of the same name, split and
 sorted as a <a href="QuotedQualityCSV.html" title="class in org.eclipse.jetty.http"><code>QuotedQualityCSV</code></a></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>header</code> - The header</dd>
<dd><code>secondaryOrdering</code> - Function to apply an ordering other than specified by quality</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>List the values in quality order with the q param and OWS stripped</dd>
</dl>
</li>
</ul>
<a id="getQualityCSV(java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getQualityCSV</h4>
<pre class="methodSignature">public&nbsp;java.util.List&lt;java.lang.String&gt;&nbsp;getQualityCSV&#8203;(java.lang.String&nbsp;name)</pre>
<div class="block">Get multiple field values of the same name, split and
 sorted as a <a href="QuotedQualityCSV.html" title="class in org.eclipse.jetty.http"><code>QuotedQualityCSV</code></a></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>name</code> - the case-insensitive field name</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>List the values in quality order with the q param and OWS stripped</dd>
</dl>
</li>
</ul>
<a id="getValues(java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getValues</h4>
<pre class="methodSignature">public&nbsp;java.util.Enumeration&lt;java.lang.String&gt;&nbsp;getValues&#8203;(java.lang.String&nbsp;name)</pre>
<div class="block">Get multi headers</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>name</code> - the case-insensitive field name</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Enumeration of the values</dd>
</dl>
</li>
</ul>
<a id="getValues(java.lang.String,java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getValues</h4>
<pre class="methodSignature">@Deprecated
public&nbsp;java.util.Enumeration&lt;java.lang.String&gt;&nbsp;getValues&#8203;(java.lang.String&nbsp;name,
                                                         java.lang.String&nbsp;separators)</pre>
<div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span></div>
<div class="block">Get multi field values with separator. The multiple values can be represented as separate
 headers of the same name, or by a single header using the separator(s), or a combination of
 both. Separators may be quoted.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>name</code> - the case-insensitive field name</dd>
<dd><code>separators</code> - String of separators.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Enumeration of the values, or null if no such header.</dd>
</dl>
</li>
</ul>
<a id="put(org.eclipse.jetty.http.HttpField)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>put</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;put&#8203;(<a href="HttpField.html" title="class in org.eclipse.jetty.http">HttpField</a>&nbsp;field)</pre>
</li>
</ul>
<a id="put(java.lang.String,java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>put</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;put&#8203;(java.lang.String&nbsp;name,
                java.lang.String&nbsp;value)</pre>
<div class="block">Set a field.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>name</code> - the name of the field</dd>
<dd><code>value</code> - the value of the field. If null the field is cleared.</dd>
</dl>
</li>
</ul>
<a id="put(org.eclipse.jetty.http.HttpHeader,org.eclipse.jetty.http.HttpHeaderValue)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>put</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;put&#8203;(<a href="HttpHeader.html" title="enum in org.eclipse.jetty.http">HttpHeader</a>&nbsp;header,
                <a href="HttpHeaderValue.html" title="enum in org.eclipse.jetty.http">HttpHeaderValue</a>&nbsp;value)</pre>
</li>
</ul>
<a id="put(org.eclipse.jetty.http.HttpHeader,java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>put</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;put&#8203;(<a href="HttpHeader.html" title="enum in org.eclipse.jetty.http">HttpHeader</a>&nbsp;header,
                java.lang.String&nbsp;value)</pre>
<div class="block">Set a field.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>header</code> - the header name of the field</dd>
<dd><code>value</code> - the value of the field. If null the field is cleared.</dd>
</dl>
</li>
</ul>
<a id="put(java.lang.String,java.util.List)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>put</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;put&#8203;(java.lang.String&nbsp;name,
                java.util.List&lt;java.lang.String&gt;&nbsp;list)</pre>
<div class="block">Set a field.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>name</code> - the name of the field</dd>
<dd><code>list</code> - the List value of the field. If null the field is cleared.</dd>
</dl>
</li>
</ul>
<a id="add(java.lang.String,java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>add</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;add&#8203;(java.lang.String&nbsp;name,
                java.lang.String&nbsp;value)</pre>
<div class="block">Add to or set a field. If the field is allowed to have multiple values, add will add multiple
 headers of the same name.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>name</code> - the name of the field</dd>
<dd><code>value</code> - the value of the field.</dd>
</dl>
</li>
</ul>
<a id="add(org.eclipse.jetty.http.HttpHeader,org.eclipse.jetty.http.HttpHeaderValue)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>add</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;add&#8203;(<a href="HttpHeader.html" title="enum in org.eclipse.jetty.http">HttpHeader</a>&nbsp;header,
                <a href="HttpHeaderValue.html" title="enum in org.eclipse.jetty.http">HttpHeaderValue</a>&nbsp;value)</pre>
</li>
</ul>
<a id="add(org.eclipse.jetty.http.HttpHeader,java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>add</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;add&#8203;(<a href="HttpHeader.html" title="enum in org.eclipse.jetty.http">HttpHeader</a>&nbsp;header,
                java.lang.String&nbsp;value)</pre>
<div class="block">Add to or set a field. If the field is allowed to have multiple values, add will add multiple
 headers of the same name.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>header</code> - the header</dd>
<dd><code>value</code> - the value of the field.</dd>
</dl>
</li>
</ul>
<a id="remove(org.eclipse.jetty.http.HttpHeader)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>remove</h4>
<pre class="methodSignature">public&nbsp;<a href="HttpField.html" title="class in org.eclipse.jetty.http">HttpField</a>&nbsp;remove&#8203;(<a href="HttpHeader.html" title="enum in org.eclipse.jetty.http">HttpHeader</a>&nbsp;name)</pre>
<div class="block">Remove a field.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>name</code> - the field to remove</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the header that was removed</dd>
</dl>
</li>
</ul>
<a id="remove(java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>remove</h4>
<pre class="methodSignature">public&nbsp;<a href="HttpField.html" title="class in org.eclipse.jetty.http">HttpField</a>&nbsp;remove&#8203;(java.lang.String&nbsp;name)</pre>
<div class="block">Remove a field.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>name</code> - the field to remove</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the header that was removed</dd>
</dl>
</li>
</ul>
<a id="getLongField(java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getLongField</h4>
<pre class="methodSignature">public&nbsp;long&nbsp;getLongField&#8203;(java.lang.String&nbsp;name)
                  throws java.lang.NumberFormatException</pre>
<div class="block">Get a header as an long value. Returns the value of an integer field or -1 if not found. The
 case of the field name is ignored.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>name</code> - the case-insensitive field name</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the value of the field as a long</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.lang.NumberFormatException</code> - If bad long found</dd>
</dl>
</li>
</ul>
<a id="getDateField(java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getDateField</h4>
<pre class="methodSignature">public&nbsp;long&nbsp;getDateField&#8203;(java.lang.String&nbsp;name)</pre>
<div class="block">Get a header as a date value. Returns the value of a date field, or -1 if not found. The case
 of the field name is ignored.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>name</code> - the case-insensitive field name</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the value of the field as a number of milliseconds since unix epoch</dd>
</dl>
</li>
</ul>
<a id="putLongField(org.eclipse.jetty.http.HttpHeader,long)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>putLongField</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;putLongField&#8203;(<a href="HttpHeader.html" title="enum in org.eclipse.jetty.http">HttpHeader</a>&nbsp;name,
                         long&nbsp;value)</pre>
<div class="block">Sets the value of an long field.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>name</code> - the field name</dd>
<dd><code>value</code> - the field long value</dd>
</dl>
</li>
</ul>
<a id="putLongField(java.lang.String,long)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>putLongField</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;putLongField&#8203;(java.lang.String&nbsp;name,
                         long&nbsp;value)</pre>
<div class="block">Sets the value of an long field.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>name</code> - the field name</dd>
<dd><code>value</code> - the field long value</dd>
</dl>
</li>
</ul>
<a id="putDateField(org.eclipse.jetty.http.HttpHeader,long)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>putDateField</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;putDateField&#8203;(<a href="HttpHeader.html" title="enum in org.eclipse.jetty.http">HttpHeader</a>&nbsp;name,
                         long&nbsp;date)</pre>
<div class="block">Sets the value of a date field.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>name</code> - the field name</dd>
<dd><code>date</code> - the field date value</dd>
</dl>
</li>
</ul>
<a id="putDateField(java.lang.String,long)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>putDateField</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;putDateField&#8203;(java.lang.String&nbsp;name,
                         long&nbsp;date)</pre>
<div class="block">Sets the value of a date field.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>name</code> - the field name</dd>
<dd><code>date</code> - the field date value</dd>
</dl>
</li>
</ul>
<a id="addDateField(java.lang.String,long)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addDateField</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;addDateField&#8203;(java.lang.String&nbsp;name,
                         long&nbsp;date)</pre>
<div class="block">Sets the value of a date field.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>name</code> - the field name</dd>
<dd><code>date</code> - the field date value</dd>
</dl>
</li>
</ul>
<a id="hashCode()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hashCode</h4>
<pre class="methodSignature">public&nbsp;int&nbsp;hashCode()</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code>hashCode</code>&nbsp;in class&nbsp;<code>java.lang.Object</code></dd>
</dl>
</li>
</ul>
<a id="equals(java.lang.Object)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>equals</h4>
<pre class="methodSignature">public&nbsp;boolean&nbsp;equals&#8203;(java.lang.Object&nbsp;o)</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code>equals</code>&nbsp;in class&nbsp;<code>java.lang.Object</code></dd>
</dl>
</li>
</ul>
<a id="toString()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>toString</h4>
<pre class="methodSignature">public&nbsp;java.lang.String&nbsp;toString()</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code>toString</code>&nbsp;in class&nbsp;<code>java.lang.Object</code></dd>
</dl>
</li>
</ul>
<a id="clear()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>clear</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;clear()</pre>
</li>
</ul>
<a id="add(org.eclipse.jetty.http.HttpField)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>add</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;add&#8203;(<a href="HttpField.html" title="class in org.eclipse.jetty.http">HttpField</a>&nbsp;field)</pre>
</li>
</ul>
<a id="addAll(org.eclipse.jetty.http.HttpFields)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addAll</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;addAll&#8203;(<a href="HttpFields.html" title="class in org.eclipse.jetty.http">HttpFields</a>&nbsp;fields)</pre>
</li>
</ul>
<a id="add(org.eclipse.jetty.http.HttpFields)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>add</h4>
<pre class="methodSignature">@Deprecated
public&nbsp;void&nbsp;add&#8203;(<a href="HttpFields.html" title="class in org.eclipse.jetty.http">HttpFields</a>&nbsp;fields)</pre>
<div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span></div>
<div class="block">Add fields from another HttpFields instance. Single valued fields are replaced, while all
 others are added.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>fields</code> - the fields to add</dd>
</dl>
</li>
</ul>
<a id="stripParameters(java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>stripParameters</h4>
<pre class="methodSignature">public static&nbsp;java.lang.String&nbsp;stripParameters&#8203;(java.lang.String&nbsp;value)</pre>
<div class="block">Get field value without parameters. Some field values can have parameters. This method separates the
 value from the parameters and optionally populates a map with the parameters. For example:

 <PRE>

 FieldName : Value ; param1=val1 ; param2=val2

 </PRE></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>value</code> - The Field value, possibly with parameters.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>The value.</dd>
</dl>
</li>
</ul>
<a id="valueParameters(java.lang.String,java.util.Map)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>valueParameters</h4>
<pre class="methodSignature">public static&nbsp;java.lang.String&nbsp;valueParameters&#8203;(java.lang.String&nbsp;value,
                                               java.util.Map&lt;java.lang.String,&#8203;java.lang.String&gt;&nbsp;parameters)</pre>
<div class="block">Get field value parameters. Some field values can have parameters. This method separates the
 value from the parameters and optionally populates a map with the parameters. For example:

 <PRE>

 FieldName : Value ; param1=val1 ; param2=val2

 </PRE></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>value</code> - The Field value, possibly with parameters.</dd>
<dd><code>parameters</code> - A map to populate with the parameters, or null</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>The value.</dd>
</dl>
</li>
</ul>
<a id="getQuality(java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getQuality</h4>
<pre class="methodSignature">@Deprecated
public static&nbsp;java.lang.Float&nbsp;getQuality&#8203;(java.lang.String&nbsp;value)</pre>
<div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span></div>
</li>
</ul>
<a id="qualityList(java.util.Enumeration)">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>qualityList</h4>
<pre class="methodSignature">@Deprecated
public static&nbsp;java.util.List&lt;java.lang.String&gt;&nbsp;qualityList&#8203;(java.util.Enumeration&lt;java.lang.String&gt;&nbsp;e)</pre>
<div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span></div>
<div class="block">List values in quality order.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>e</code> - Enumeration of values with quality parameters</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>values in quality order.</dd>
</dl>
</li>
</ul>
</li>
</ul>
</section>
</li>
</ul>
</div>
</div>
</main>
<!-- ========= END OF CLASS DATA ========= -->
<footer role="contentinfo">
<nav role="navigation">
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a id="navbar.bottom">
<!--   -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a id="navbar.bottom.firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/HttpFields.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" id="allclasses_navbar_bottom">
<li><a href="../../../../allclasses.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>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
</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 id="skip.navbar.bottom">
<!--   -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
</nav>
<p class="legalCopy"><small>Copyright &#169; 1995&#x2013;2021 <a href="https://webtide.com">Webtide</a>. All rights reserved.</small></p>
</footer>
</body>
</html>
