<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<!-- Generated by javadoc (build 1.6.0_26) on Wed Sep 14 22:31:03 PDT 2011 -->
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
<TITLE>
Index (Abdera2 Common Library 2.0-SNAPSHOT API)
</TITLE>

<META NAME="date" CONTENT="2011-09-14">

<LINK REL ="stylesheet" TYPE="text/css" HREF="./stylesheet.css" TITLE="Style">

<SCRIPT type="text/javascript">
function windowTitle()
{
    if (location.href.indexOf('is-external=true') == -1) {
        parent.document.title="Index (Abdera2 Common Library 2.0-SNAPSHOT API)";
    }
}
</SCRIPT>
<NOSCRIPT>
</NOSCRIPT>

</HEAD>

<BODY BGCOLOR="white" onload="windowTitle();">
<HR>


<!-- ========= START OF TOP NAVBAR ======= -->
<A NAME="navbar_top"><!-- --></A>
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_top_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
  <TR ALIGN="center" VALIGN="top">
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="./overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <FONT CLASS="NavBarFont1">Package</FONT>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <FONT CLASS="NavBarFont1">Use</FONT>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="./overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="./deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Index</B></FONT>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="./help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
  </TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>

<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;PREV&nbsp;
&nbsp;NEXT</FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
  <A HREF="./index.html?index-all.html" target="_top"><B>FRAMES</B></A>  &nbsp;
&nbsp;<A HREF="index-all.html" target="_top"><B>NO FRAMES</B></A>  &nbsp;
&nbsp;<SCRIPT type="text/javascript">
  <!--
  if(window==top) {
    document.writeln('<A HREF="./allclasses-noframe.html"><B>All Classes</B></A>');
  }
  //-->
</SCRIPT>
<NOSCRIPT>
  <A HREF="./allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>


</FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_top"></A>
<!-- ========= END OF TOP NAVBAR ========= -->

<A HREF="#_A_">A</A> <A HREF="#_B_">B</A> <A HREF="#_C_">C</A> <A HREF="#_D_">D</A> <A HREF="#_E_">E</A> <A HREF="#_F_">F</A> <A HREF="#_G_">G</A> <A HREF="#_H_">H</A> <A HREF="#_I_">I</A> <A HREF="#_J_">J</A> <A HREF="#_L_">L</A> <A HREF="#_M_">M</A> <A HREF="#_N_">N</A> <A HREF="#_O_">O</A> <A HREF="#_P_">P</A> <A HREF="#_Q_">Q</A> <A HREF="#_R_">R</A> <A HREF="#_S_">S</A> <A HREF="#_T_">T</A> <A HREF="#_U_">U</A> <A HREF="#_V_">V</A> <A HREF="#_W_">W</A> <A HREF="#_X_">X</A> <A HREF="#_Y_">Y</A> <A HREF="#___">_</A> <HR>
<A NAME="_A_"><!-- --></A><H2>
<B>A</B></H2>
<DL>
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/async/AbderaAsyncService.html" title="class in org.apache.abdera2.common.protocol.servlet.async"><B>AbderaAsyncService</B></A> - Class in <A HREF="./org/apache/abdera2/common/protocol/servlet/async/package-summary.html">org.apache.abdera2.common.protocol.servlet.async</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/async/AbderaAsyncService.html#AbderaAsyncService()"><B>AbderaAsyncService()</B></A> - 
Constructor for class org.apache.abdera2.common.protocol.servlet.async.<A HREF="./org/apache/abdera2/common/protocol/servlet/async/AbderaAsyncService.html" title="class in org.apache.abdera2.common.protocol.servlet.async">AbderaAsyncService</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/async/AbderaChannelServlet.html" title="class in org.apache.abdera2.common.protocol.servlet.async"><B>AbderaChannelServlet</B></A> - Class in <A HREF="./org/apache/abdera2/common/protocol/servlet/async/package-summary.html">org.apache.abdera2.common.protocol.servlet.async</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/async/AbderaChannelServlet.html#AbderaChannelServlet()"><B>AbderaChannelServlet()</B></A> - 
Constructor for class org.apache.abdera2.common.protocol.servlet.async.<A HREF="./org/apache/abdera2/common/protocol/servlet/async/AbderaChannelServlet.html" title="class in org.apache.abdera2.common.protocol.servlet.async">AbderaChannelServlet</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/async/AbderaChannelServlet.AsyncListener.html" title="class in org.apache.abdera2.common.protocol.servlet.async"><B>AbderaChannelServlet.AsyncListener</B></A>&lt;<A HREF="./org/apache/abdera2/common/protocol/servlet/async/AbderaChannelServlet.AsyncListener.html" title="type parameter in AbderaChannelServlet.AsyncListener">T</A>&gt; - Class in <A HREF="./org/apache/abdera2/common/protocol/servlet/async/package-summary.html">org.apache.abdera2.common.protocol.servlet.async</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/async/AbderaChannelServlet.AsyncListener.html#AbderaChannelServlet.AsyncListener(javax.servlet.AsyncContext)"><B>AbderaChannelServlet.AsyncListener(AsyncContext)</B></A> - 
Constructor for class org.apache.abdera2.common.protocol.servlet.async.<A HREF="./org/apache/abdera2/common/protocol/servlet/async/AbderaChannelServlet.AsyncListener.html" title="class in org.apache.abdera2.common.protocol.servlet.async">AbderaChannelServlet.AsyncListener</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/AbderaServlet.html" title="class in org.apache.abdera2.common.protocol.servlet"><B>AbderaServlet</B></A> - Class in <A HREF="./org/apache/abdera2/common/protocol/servlet/package-summary.html">org.apache.abdera2.common.protocol.servlet</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/AbderaServlet.html#AbderaServlet()"><B>AbderaServlet()</B></A> - 
Constructor for class org.apache.abdera2.common.protocol.servlet.<A HREF="./org/apache/abdera2/common/protocol/servlet/AbderaServlet.html" title="class in org.apache.abdera2.common.protocol.servlet">AbderaServlet</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/async/AbderaTask.html" title="class in org.apache.abdera2.common.protocol.servlet.async"><B>AbderaTask</B></A> - Class in <A HREF="./org/apache/abdera2/common/protocol/servlet/async/package-summary.html">org.apache.abdera2.common.protocol.servlet.async</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractBaseRequestContext.html#absoluteUrlFor(java.lang.Object, java.lang.Object)"><B>absoluteUrlFor(Object, Object)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractBaseRequestContext.html" title="class in org.apache.abdera2.common.protocol">AbstractBaseRequestContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html#absoluteUrlFor(java.lang.Object, java.lang.Object)"><B>absoluteUrlFor(Object, Object)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseRequestContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/RequestContext.html#absoluteUrlFor(java.lang.Object, java.lang.Object)"><B>absoluteUrlFor(Object, Object)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/RequestContext.html" title="interface in org.apache.abdera2.common.protocol">RequestContext</A>
<DD>Construct an absolute URL using the Provider's Target Builder.
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/AbstractAbderaServlet.html" title="class in org.apache.abdera2.common.protocol.servlet"><B>AbstractAbderaServlet</B></A> - Class in <A HREF="./org/apache/abdera2/common/protocol/servlet/package-summary.html">org.apache.abdera2.common.protocol.servlet</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/AbstractAbderaServlet.html#AbstractAbderaServlet()"><B>AbstractAbderaServlet()</B></A> - 
Constructor for class org.apache.abdera2.common.protocol.servlet.<A HREF="./org/apache/abdera2/common/protocol/servlet/AbstractAbderaServlet.html" title="class in org.apache.abdera2.common.protocol.servlet">AbstractAbderaServlet</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractBaseRequestContext.html" title="class in org.apache.abdera2.common.protocol"><B>AbstractBaseRequestContext</B></A> - Class in <A HREF="./org/apache/abdera2/common/protocol/package-summary.html">org.apache.abdera2.common.protocol</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractBaseRequestContext.html#AbstractBaseRequestContext(org.apache.abdera2.common.protocol.Provider, java.lang.String, org.apache.abdera2.common.iri.IRI, org.apache.abdera2.common.iri.IRI)"><B>AbstractBaseRequestContext(Provider, String, IRI, IRI)</B></A> - 
Constructor for class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractBaseRequestContext.html" title="class in org.apache.abdera2.common.protocol">AbstractBaseRequestContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractCollectionAdapter.html" title="class in org.apache.abdera2.common.protocol"><B>AbstractCollectionAdapter</B></A> - Class in <A HREF="./org/apache/abdera2/common/protocol/package-summary.html">org.apache.abdera2.common.protocol</A><DD>Base CollectionAdapter implementation that provides a number of helper utility methods for adapter implementations.<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractCollectionAdapter.html#AbstractCollectionAdapter()"><B>AbstractCollectionAdapter()</B></A> - 
Constructor for class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractCollectionAdapter.html" title="class in org.apache.abdera2.common.protocol">AbstractCollectionAdapter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/AbstractContext.html" title="class in org.apache.abdera2.common.templates"><B>AbstractContext</B></A> - Class in <A HREF="./org/apache/abdera2/common/templates/package-summary.html">org.apache.abdera2.common.templates</A><DD>Abstract base for custom Context implementations<DT><A HREF="./org/apache/abdera2/common/templates/AbstractContext.html#AbstractContext()"><B>AbstractContext()</B></A> - 
Constructor for class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/AbstractContext.html" title="class in org.apache.abdera2.common.templates">AbstractContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractMessage.html" title="class in org.apache.abdera2.common.protocol"><B>AbstractMessage</B></A> - Class in <A HREF="./org/apache/abdera2/common/protocol/package-summary.html">org.apache.abdera2.common.protocol</A><DD>Root impl for Message interface impls.<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractMessage.html#AbstractMessage()"><B>AbstractMessage()</B></A> - 
Constructor for class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractMessage.html" title="class in org.apache.abdera2.common.protocol">AbstractMessage</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/pusher/AbstractPusher.html" title="class in org.apache.abdera2.common.pusher"><B>AbstractPusher</B></A>&lt;<A HREF="./org/apache/abdera2/common/pusher/AbstractPusher.html" title="type parameter in AbstractPusher">T</A>&gt; - Class in <A HREF="./org/apache/abdera2/common/pusher/package-summary.html">org.apache.abdera2.common.pusher</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/pusher/AbstractPusher.html#AbstractPusher()"><B>AbstractPusher()</B></A> - 
Constructor for class org.apache.abdera2.common.pusher.<A HREF="./org/apache/abdera2/common/pusher/AbstractPusher.html" title="class in org.apache.abdera2.common.pusher">AbstractPusher</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractRequest.html" title="class in org.apache.abdera2.common.protocol"><B>AbstractRequest</B></A> - Class in <A HREF="./org/apache/abdera2/common/protocol/package-summary.html">org.apache.abdera2.common.protocol</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractRequest.html#AbstractRequest()"><B>AbstractRequest()</B></A> - 
Constructor for class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractRequest.html" title="class in org.apache.abdera2.common.protocol">AbstractRequest</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractResponse.html" title="class in org.apache.abdera2.common.protocol"><B>AbstractResponse</B></A> - Class in <A HREF="./org/apache/abdera2/common/protocol/package-summary.html">org.apache.abdera2.common.protocol</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractResponse.html#AbstractResponse()"><B>AbstractResponse()</B></A> - 
Constructor for class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractResponse.html" title="class in org.apache.abdera2.common.protocol">AbstractResponse</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html" title="class in org.apache.abdera2.common.protocol"><B>AbstractResponseContext</B></A> - Class in <A HREF="./org/apache/abdera2/common/protocol/package-summary.html">org.apache.abdera2.common.protocol</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html#AbstractResponseContext()"><B>AbstractResponseContext()</B></A> - 
Constructor for class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html" title="class in org.apache.abdera2.common.protocol">AbstractResponseContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/iri/AbstractScheme.html" title="class in org.apache.abdera2.common.iri"><B>AbstractScheme</B></A> - Class in <A HREF="./org/apache/abdera2/common/iri/package-summary.html">org.apache.abdera2.common.iri</A><DD>Base implementation for IRI scheme providers<DT><A HREF="./org/apache/abdera2/common/iri/AbstractScheme.html#AbstractScheme(java.lang.String, int)"><B>AbstractScheme(String, int)</B></A> - 
Constructor for class org.apache.abdera2.common.iri.<A HREF="./org/apache/abdera2/common/iri/AbstractScheme.html" title="class in org.apache.abdera2.common.iri">AbstractScheme</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractServiceManager.html" title="class in org.apache.abdera2.common.protocol"><B>AbstractServiceManager</B></A>&lt;<A HREF="./org/apache/abdera2/common/protocol/AbstractServiceManager.html" title="type parameter in AbstractServiceManager">P</A> extends <A HREF="./org/apache/abdera2/common/protocol/Provider.html" title="interface in org.apache.abdera2.common.protocol">Provider</A>&gt; - Class in <A HREF="./org/apache/abdera2/common/protocol/package-summary.html">org.apache.abdera2.common.protocol</A><DD>The ServiceManager is used by the AbderaServlet to bootstrap the server instance.<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractServiceManager.html#AbstractServiceManager()"><B>AbstractServiceManager()</B></A> - 
Constructor for class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractServiceManager.html" title="class in org.apache.abdera2.common.protocol">AbstractServiceManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractWorkspaceManager.html" title="class in org.apache.abdera2.common.protocol"><B>AbstractWorkspaceManager</B></A> - Class in <A HREF="./org/apache/abdera2/common/protocol/package-summary.html">org.apache.abdera2.common.protocol</A><DD>Base implementation for WorkspaceManager implementations<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractWorkspaceManager.html#AbstractWorkspaceManager()"><B>AbstractWorkspaceManager()</B></A> - 
Constructor for class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractWorkspaceManager.html" title="class in org.apache.abdera2.common.protocol">AbstractWorkspaceManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractWorkspaceProvider.html" title="class in org.apache.abdera2.common.protocol"><B>AbstractWorkspaceProvider</B></A> - Class in <A HREF="./org/apache/abdera2/common/protocol/package-summary.html">org.apache.abdera2.common.protocol</A><DD>An abstract base Provider implementation that implements the WorkspaceManager interface.<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractWorkspaceProvider.html#AbstractWorkspaceProvider()"><B>AbstractWorkspaceProvider()</B></A> - 
Constructor for class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractWorkspaceProvider.html" title="class in org.apache.abdera2.common.protocol">AbstractWorkspaceProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#ACCEPT"><B>ACCEPT</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Coordinates.html#add(org.apache.abdera2.common.geo.Coordinates)"><B>add(Coordinates)</B></A> - 
Method in class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Coordinates.html" title="class in org.apache.abdera2.common.geo">Coordinates</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Coordinates.html#add(org.apache.abdera2.common.geo.Coordinate)"><B>add(Coordinate)</B></A> - 
Method in class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Coordinates.html" title="class in org.apache.abdera2.common.geo">Coordinates</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Coordinates.html#add(org.apache.abdera2.common.geo.Coordinate...)"><B>add(Coordinate...)</B></A> - 
Method in class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Coordinates.html" title="class in org.apache.abdera2.common.geo">Coordinates</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Coordinates.html#add(double, double)"><B>add(double, double)</B></A> - 
Method in class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Coordinates.html" title="class in org.apache.abdera2.common.geo">Coordinates</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Coordinates.html#add(java.lang.String)"><B>add(String)</B></A> - 
Method in class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Coordinates.html" title="class in org.apache.abdera2.common.geo">Coordinates</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/Method.html#add(java.lang.String, boolean, boolean)"><B>add(String, boolean, boolean)</B></A> - 
Static method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/Method.html" title="class in org.apache.abdera2.common.http">Method</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/MultiContext.html#add(org.apache.abdera2.common.templates.Context)"><B>add(Context)</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/MultiContext.html" title="class in org.apache.abdera2.common.templates">MultiContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/MultiContext.html#add(java.lang.Object)"><B>add(Object)</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/MultiContext.html" title="class in org.apache.abdera2.common.templates">MultiContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/TemplateManager.html#add(T, org.apache.abdera2.common.templates.Template)"><B>add(T, Template)</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/TemplateManager.html" title="class in org.apache.abdera2.common.templates">TemplateManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/TemplateManager.html#add(T, java.lang.String)"><B>add(T, String)</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/TemplateManager.html" title="class in org.apache.abdera2.common.templates">TemplateManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/TemplateManager.html#add(T, java.lang.Object)"><B>add(T, Object)</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/TemplateManager.html" title="class in org.apache.abdera2.common.templates">TemplateManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/TemplateManager.html#add(java.util.Map)"><B>add(Map&lt;T, Object&gt;)</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/TemplateManager.html" title="class in org.apache.abdera2.common.templates">TemplateManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BasicWorkspaceInfo.html#addCollection(org.apache.abdera2.common.protocol.CollectionInfo)"><B>addCollection(CollectionInfo)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BasicWorkspaceInfo.html" title="class in org.apache.abdera2.common.protocol">BasicWorkspaceInfo</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html#addEncodedHeader(java.lang.String, java.lang.String, java.lang.String)"><B>addEncodedHeader(String, String, String)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html" title="class in org.apache.abdera2.common.protocol">AbstractResponseContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html#addEncodedHeader(java.lang.String, java.lang.String, java.lang.String)"><B>addEncodedHeader(String, String, String)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseResponseContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/ResponseContext.html#addEncodedHeader(java.lang.String, java.lang.String, java.lang.String)"><B>addEncodedHeader(String, String, String)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ResponseContext.html" title="interface in org.apache.abdera2.common.protocol">ResponseContext</A>
<DD>Add an RFC 2047 encoded header in the response
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html#addEncodedHeaders(java.lang.String, java.lang.String, java.lang.String...)"><B>addEncodedHeaders(String, String, String...)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html" title="class in org.apache.abdera2.common.protocol">AbstractResponseContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html#addEncodedHeaders(java.lang.String, java.lang.String, java.lang.String...)"><B>addEncodedHeaders(String, String, String...)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseResponseContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/ResponseContext.html#addEncodedHeaders(java.lang.String, java.lang.String, java.lang.String...)"><B>addEncodedHeaders(String, String, String...)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ResponseContext.html" title="interface in org.apache.abdera2.common.protocol">ResponseContext</A>
<DD>Add an RFC 2047 encoded header in the response
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseProvider.html#addFilter(org.apache.abdera2.common.protocol.Filter...)"><B>addFilter(Filter...)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseProvider.html" title="class in org.apache.abdera2.common.protocol">BaseProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html#addHeader(java.lang.String, java.lang.Object)"><B>addHeader(String, Object)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html" title="class in org.apache.abdera2.common.protocol">AbstractResponseContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html#addHeader(java.lang.String, java.lang.Object)"><B>addHeader(String, Object)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseResponseContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/ResponseContext.html#addHeader(java.lang.String, java.lang.Object)"><B>addHeader(String, Object)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ResponseContext.html" title="interface in org.apache.abdera2.common.protocol">ResponseContext</A>
<DD>Add a header to the response
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html#addHeaders(java.lang.String, java.lang.Object...)"><B>addHeaders(String, Object...)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html" title="class in org.apache.abdera2.common.protocol">AbstractResponseContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html#addHeaders(java.lang.String, java.lang.Object...)"><B>addHeaders(String, Object...)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseResponseContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/ResponseContext.html#addHeaders(java.lang.String, java.lang.Object...)"><B>addHeaders(String, Object...)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ResponseContext.html" title="interface in org.apache.abdera2.common.protocol">ResponseContext</A>
<DD>Add a header to the response
<DT><A HREF="./org/apache/abdera2/common/http/WebLink.html#addMedia(java.lang.String)"><B>addMedia(String)</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/WebLink.html" title="class in org.apache.abdera2.common.http">WebLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/Preference.html#addParam(java.lang.String, java.lang.String)"><B>addParam(String, String)</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/Preference.html" title="class in org.apache.abdera2.common.http">Preference</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/WebLink.html#addParam(java.lang.String, java.lang.String)"><B>addParam(String, String)</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/WebLink.html" title="class in org.apache.abdera2.common.http">WebLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/WebLink.html#addRel(java.lang.String)"><B>addRel(String)</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/WebLink.html" title="class in org.apache.abdera2.common.http">WebLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/WebLink.html#addRel(org.apache.abdera2.common.iri.IRI)"><B>addRel(IRI)</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/WebLink.html" title="class in org.apache.abdera2.common.http">WebLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseProvider.html#addRequestProcessors(java.util.Map)"><B>addRequestProcessors(Map&lt;TargetType, RequestProcessor&gt;)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseProvider.html" title="class in org.apache.abdera2.common.protocol">BaseProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/Provider.html#addRequestProcessors(java.util.Map)"><B>addRequestProcessors(Map&lt;TargetType, RequestProcessor&gt;)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/Provider.html" title="interface in org.apache.abdera2.common.protocol">Provider</A>
<DD>Add a map of <CODE>AtompubRequestProcessor</CODE>s to register on this provider, without overriding already registered ones.
<DT><A HREF="./org/apache/abdera2/common/http/WebLink.html#addRev(java.lang.String)"><B>addRev(String)</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/WebLink.html" title="class in org.apache.abdera2.common.http">WebLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/WebLink.html#addRev(org.apache.abdera2.common.iri.IRI)"><B>addRev(IRI)</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/WebLink.html" title="class in org.apache.abdera2.common.http">WebLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/RouteManager.html#addRoute(org.apache.abdera2.common.templates.Route)"><B>addRoute(Route&lt;T&gt;)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/RouteManager.html" title="class in org.apache.abdera2.common.protocol">RouteManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/RouteManager.html#addRoute(T, java.lang.String)"><B>addRoute(T, String)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/RouteManager.html" title="class in org.apache.abdera2.common.protocol">RouteManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/RouteManager.html#addRoute(org.apache.abdera2.common.templates.Route, org.apache.abdera2.common.protocol.TargetType)"><B>addRoute(Route&lt;T&gt;, TargetType)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/RouteManager.html" title="class in org.apache.abdera2.common.protocol">RouteManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/RouteManager.html#addRoute(T, java.lang.String, org.apache.abdera2.common.protocol.TargetType)"><B>addRoute(T, String, TargetType)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/RouteManager.html" title="class in org.apache.abdera2.common.protocol">RouteManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/RouteManager.html#addRoute(T, java.lang.String, org.apache.abdera2.common.protocol.TargetType, org.apache.abdera2.common.protocol.CollectionAdapter)"><B>addRoute(T, String, TargetType, CollectionAdapter)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/RouteManager.html" title="class in org.apache.abdera2.common.protocol">RouteManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractWorkspaceManager.html#addWorkspace(org.apache.abdera2.common.protocol.WorkspaceInfo)"><B>addWorkspace(WorkspaceInfo)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractWorkspaceManager.html" title="class in org.apache.abdera2.common.protocol">AbstractWorkspaceManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractWorkspaceProvider.html#addWorkspace(org.apache.abdera2.common.protocol.WorkspaceInfo)"><B>addWorkspace(WorkspaceInfo)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractWorkspaceProvider.html" title="class in org.apache.abdera2.common.protocol">AbstractWorkspaceProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/async/AbderaChannelServlet.AsyncListener.html#afterItems()"><B>afterItems()</B></A> - 
Method in class org.apache.abdera2.common.protocol.servlet.async.<A HREF="./org/apache/abdera2/common/protocol/servlet/async/AbderaChannelServlet.AsyncListener.html" title="class in org.apache.abdera2.common.protocol.servlet.async">AbderaChannelServlet.AsyncListener</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/pusher/Listener.html#afterItems()"><B>afterItems()</B></A> - 
Method in interface org.apache.abdera2.common.pusher.<A HREF="./org/apache/abdera2/common/pusher/Listener.html" title="interface in org.apache.abdera2.common.pusher">Listener</A>
<DD>Called by the Receiver when this listener is done receiving items
<DT><A HREF="./org/apache/abdera2/common/pusher/SelectorListener.html#afterItems()"><B>afterItems()</B></A> - 
Method in class org.apache.abdera2.common.pusher.<A HREF="./org/apache/abdera2/common/pusher/SelectorListener.html" title="class in org.apache.abdera2.common.pusher">SelectorListener</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#AID"><B>AID</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#ALTERNATE"><B>ALTERNATE</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/Authentication.html#alwaysQuote(java.lang.String)"><B>alwaysQuote(String)</B></A> - 
Static method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/Authentication.html" title="class in org.apache.abdera2.common.http">Authentication</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/anno/AnnoUtil.html" title="class in org.apache.abdera2.common.anno"><B>AnnoUtil</B></A> - Class in <A HREF="./org/apache/abdera2/common/anno/package-summary.html">org.apache.abdera2.common.anno</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/anno/AnnoUtil.html#AnnoUtil()"><B>AnnoUtil()</B></A> - 
Constructor for class org.apache.abdera2.common.anno.<A HREF="./org/apache/abdera2/common/anno/AnnoUtil.html" title="class in org.apache.abdera2.common.anno">AnnoUtil</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/SimpleSubjectResolver.html#ANONYMOUS"><B>ANONYMOUS</B></A> - 
Static variable in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/SimpleSubjectResolver.html" title="class in org.apache.abdera2.common.protocol">SimpleSubjectResolver</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#APP_MEDIA_TYPE"><B>APP_MEDIA_TYPE</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#APP_NS"><B>APP_NS</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#APP_NS_PRE_RFC"><B>APP_NS_PRE_RFC</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD><B>Deprecated.</B>&nbsp;<I>Use Constants.APP_NS instead</I>
<DT><A HREF="./org/apache/abdera2/common/Constants.html#APP_PREFIX"><B>APP_PREFIX</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/lang/Range.html#append(org.apache.abdera2.common.lang.Subtag)"><B>append(Subtag)</B></A> - 
Method in class org.apache.abdera2.common.lang.<A HREF="./org/apache/abdera2/common/lang/Range.html" title="class in org.apache.abdera2.common.lang">Range</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/lang/Range.html#appendWildcard()"><B>appendWildcard()</B></A> - 
Method in class org.apache.abdera2.common.lang.<A HREF="./org/apache/abdera2/common/lang/Range.html" title="class in org.apache.abdera2.common.lang">Range</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Discover.DefaultLoader.html#args"><B>args</B></A> - 
Variable in class org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Discover.DefaultLoader.html" title="class in org.apache.abdera2.common">Discover.DefaultLoader</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Discover.LineReaderLoaderIterator.html#args"><B>args</B></A> - 
Variable in class org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Discover.LineReaderLoaderIterator.html" title="class in org.apache.abdera2.common">Discover.LineReaderLoaderIterator</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Coordinate.html#asIsoPosition()"><B>asIsoPosition()</B></A> - 
Method in class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Coordinate.html" title="class in org.apache.abdera2.common.geo">Coordinate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/lang/SubtagSet.html#asList()"><B>asList()</B></A> - 
Method in class org.apache.abdera2.common.lang.<A HREF="./org/apache/abdera2/common/lang/SubtagSet.html" title="class in org.apache.abdera2.common.lang">SubtagSet</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/lang/Lang.html#asRange()"><B>asRange()</B></A> - 
Method in class org.apache.abdera2.common.lang.<A HREF="./org/apache/abdera2/common/lang/Lang.html" title="class in org.apache.abdera2.common.lang">Lang</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/async/AsyncAbderaServlet.html" title="class in org.apache.abdera2.common.protocol.servlet.async"><B>AsyncAbderaServlet</B></A> - Class in <A HREF="./org/apache/abdera2/common/protocol/servlet/async/package-summary.html">org.apache.abdera2.common.protocol.servlet.async</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/async/AsyncAbderaServlet.html#AsyncAbderaServlet()"><B>AsyncAbderaServlet()</B></A> - 
Constructor for class org.apache.abdera2.common.protocol.servlet.async.<A HREF="./org/apache/abdera2/common/protocol/servlet/async/AsyncAbderaServlet.html" title="class in org.apache.abdera2.common.protocol.servlet.async">AsyncAbderaServlet</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#ATITLE"><B>ATITLE</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#ATOM_MEDIA_TYPE"><B>ATOM_MEDIA_TYPE</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#ATOM_NS"><B>ATOM_NS</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#AURI"><B>AURI</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/Authentication.html" title="class in org.apache.abdera2.common.http"><B>Authentication</B></A> - Class in <A HREF="./org/apache/abdera2/common/http/package-summary.html">org.apache.abdera2.common.http</A><DD>Implementation of the HTTP Challenge/Credentials Construct.<DT><A HREF="./org/apache/abdera2/common/http/Authentication.html#Authentication(java.lang.String)"><B>Authentication(String)</B></A> - 
Constructor for class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/Authentication.html" title="class in org.apache.abdera2.common.http">Authentication</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/Authentication.html#Authentication(java.lang.String, java.lang.String)"><B>Authentication(String, String)</B></A> - 
Constructor for class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/Authentication.html" title="class in org.apache.abdera2.common.http">Authentication</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#AUTHOR"><B>AUTHOR</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
</DL>
<HR>
<A NAME="_B_"><!-- --></A><H2>
<B>B</B></H2>
<DL>
<DT><A HREF="./org/apache/abdera2/common/protocol/ProviderHelper.html#badrequest(org.apache.abdera2.common.protocol.RequestContext, java.lang.String)"><B>badrequest(RequestContext, String)</B></A> - 
Static method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ProviderHelper.html" title="class in org.apache.abdera2.common.protocol">ProviderHelper</A>
<DD>Return a 400 bad request error
<DT><A HREF="./org/apache/abdera2/common/protocol/ProviderHelper.html#badrequest(org.apache.abdera2.common.protocol.RequestContext)"><B>badrequest(RequestContext)</B></A> - 
Static method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ProviderHelper.html" title="class in org.apache.abdera2.common.protocol">ProviderHelper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#BASE"><B>BASE</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/QueryContext.html#baseFromQuery(java.lang.String)"><B>baseFromQuery(String)</B></A> - 
Static method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/QueryContext.html" title="class in org.apache.abdera2.common.templates">QueryContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseProvider.html" title="class in org.apache.abdera2.common.protocol"><B>BaseProvider</B></A> - Class in <A HREF="./org/apache/abdera2/common/protocol/package-summary.html">org.apache.abdera2.common.protocol</A><DD>Base Provider implementation that provides the core implementation details for all Providers.<DT><A HREF="./org/apache/abdera2/common/protocol/BaseProvider.html#BaseProvider()"><B>BaseProvider()</B></A> - 
Constructor for class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseProvider.html" title="class in org.apache.abdera2.common.protocol">BaseProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html" title="class in org.apache.abdera2.common.protocol"><B>BaseRequestContextWrapper</B></A> - Class in <A HREF="./org/apache/abdera2/common/protocol/package-summary.html">org.apache.abdera2.common.protocol</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html#BaseRequestContextWrapper(org.apache.abdera2.common.protocol.RequestContext)"><B>BaseRequestContextWrapper(RequestContext)</B></A> - 
Constructor for class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseRequestContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html" title="class in org.apache.abdera2.common.protocol"><B>BaseResponseContextWrapper</B></A> - Class in <A HREF="./org/apache/abdera2/common/protocol/package-summary.html">org.apache.abdera2.common.protocol</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html#BaseResponseContextWrapper(org.apache.abdera2.common.protocol.ResponseContext)"><B>BaseResponseContextWrapper(ResponseContext)</B></A> - 
Constructor for class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseResponseContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractBaseRequestContext.html#baseUri"><B>baseUri</B></A> - 
Variable in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractBaseRequestContext.html" title="class in org.apache.abdera2.common.protocol">AbstractBaseRequestContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/Authentication.html#BASIC"><B>BASIC</B></A> - 
Static variable in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/Authentication.html" title="class in org.apache.abdera2.common.http">Authentication</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/Authentication.html#basic(java.lang.String, java.lang.String)"><B>basic(String, String)</B></A> - 
Static method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/Authentication.html" title="class in org.apache.abdera2.common.http">Authentication</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BasicCollectionInfo.html" title="class in org.apache.abdera2.common.protocol"><B>BasicCollectionInfo</B></A> - Class in <A HREF="./org/apache/abdera2/common/protocol/package-summary.html">org.apache.abdera2.common.protocol</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/protocol/BasicCollectionInfo.html#BasicCollectionInfo(java.lang.String, java.lang.String, java.lang.String...)"><B>BasicCollectionInfo(String, String, String...)</B></A> - 
Constructor for class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BasicCollectionInfo.html" title="class in org.apache.abdera2.common.protocol">BasicCollectionInfo</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BasicWorkspaceInfo.html" title="class in org.apache.abdera2.common.protocol"><B>BasicWorkspaceInfo</B></A> - Class in <A HREF="./org/apache/abdera2/common/protocol/package-summary.html">org.apache.abdera2.common.protocol</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/protocol/BasicWorkspaceInfo.html#BasicWorkspaceInfo()"><B>BasicWorkspaceInfo()</B></A> - 
Constructor for class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BasicWorkspaceInfo.html" title="class in org.apache.abdera2.common.protocol">BasicWorkspaceInfo</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BasicWorkspaceInfo.html#BasicWorkspaceInfo(java.lang.String)"><B>BasicWorkspaceInfo(String)</B></A> - 
Constructor for class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BasicWorkspaceInfo.html" title="class in org.apache.abdera2.common.protocol">BasicWorkspaceInfo</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/async/AbderaChannelServlet.AsyncListener.html#beforeItems()"><B>beforeItems()</B></A> - 
Method in class org.apache.abdera2.common.protocol.servlet.async.<A HREF="./org/apache/abdera2/common/protocol/servlet/async/AbderaChannelServlet.AsyncListener.html" title="class in org.apache.abdera2.common.protocol.servlet.async">AbderaChannelServlet.AsyncListener</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/pusher/Listener.html#beforeItems()"><B>beforeItems()</B></A> - 
Method in interface org.apache.abdera2.common.pusher.<A HREF="./org/apache/abdera2/common/pusher/Listener.html" title="interface in org.apache.abdera2.common.pusher">Listener</A>
<DD>Called when the Listener is added to a Receiver before any items are
 passed to the onItem method
<DT><A HREF="./org/apache/abdera2/common/pusher/SelectorListener.html#beforeItems()"><B>beforeItems()</B></A> - 
Method in class org.apache.abdera2.common.pusher.<A HREF="./org/apache/abdera2/common/pusher/SelectorListener.html" title="class in org.apache.abdera2.common.pusher">SelectorListener</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/ProviderHelper.html#beforeOrEqual(java.util.Date, java.util.Date)"><B>beforeOrEqual(Date, Date)</B></A> - 
Static method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ProviderHelper.html" title="class in org.apache.abdera2.common.protocol">ProviderHelper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html#binary"><B>binary</B></A> - 
Variable in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html" title="class in org.apache.abdera2.common.protocol">AbstractResponseContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/io/CharsetSniffingInputStream.html#bomset"><B>bomset</B></A> - 
Variable in class org.apache.abdera2.common.io.<A HREF="./org/apache/abdera2/common/io/CharsetSniffingInputStream.html" title="class in org.apache.abdera2.common.io">CharsetSniffingInputStream</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Box.html" title="class in org.apache.abdera2.common.geo"><B>Box</B></A> - Class in <A HREF="./org/apache/abdera2/common/geo/package-summary.html">org.apache.abdera2.common.geo</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/geo/Box.html#Box()"><B>Box()</B></A> - 
Constructor for class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Box.html" title="class in org.apache.abdera2.common.geo">Box</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Box.html#Box(org.apache.abdera2.common.geo.Multiple)"><B>Box(Multiple)</B></A> - 
Constructor for class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Box.html" title="class in org.apache.abdera2.common.geo">Box</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Box.html#Box(org.apache.abdera2.common.geo.Point, org.apache.abdera2.common.geo.Point)"><B>Box(Point, Point)</B></A> - 
Constructor for class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Box.html" title="class in org.apache.abdera2.common.geo">Box</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Box.html#Box(org.apache.abdera2.common.geo.Coordinate, org.apache.abdera2.common.geo.Coordinate)"><B>Box(Coordinate, Coordinate)</B></A> - 
Constructor for class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Box.html" title="class in org.apache.abdera2.common.geo">Box</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Box.html#Box(org.apache.abdera2.common.geo.Coordinates)"><B>Box(Coordinates)</B></A> - 
Constructor for class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Box.html" title="class in org.apache.abdera2.common.geo">Box</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Box.html#Box(java.lang.String)"><B>Box(String)</B></A> - 
Constructor for class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Box.html" title="class in org.apache.abdera2.common.geo">Box</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Box.html#Box(org.apache.abdera2.common.geo.Multiple...)"><B>Box(Multiple...)</B></A> - 
Constructor for class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Box.html" title="class in org.apache.abdera2.common.geo">Box</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Box.html#Box(org.apache.abdera2.common.geo.Point...)"><B>Box(Point...)</B></A> - 
Constructor for class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Box.html" title="class in org.apache.abdera2.common.geo">Box</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Box.html#Box(double...)"><B>Box(double...)</B></A> - 
Constructor for class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Box.html" title="class in org.apache.abdera2.common.geo">Box</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/CacheControlUtil.html#buildCacheControl(org.apache.abdera2.common.http.CacheControl)"><B>buildCacheControl(CacheControl)</B></A> - 
Static method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/CacheControlUtil.html" title="class in org.apache.abdera2.common.http">CacheControlUtil</A>
<DD>Construct the Cache-Control header from info in the request object
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractCollectionAdapter.html#buildHeadEntryResponse(org.apache.abdera2.common.protocol.RequestContext, java.lang.String, java.util.Date)"><B>buildHeadEntryResponse(RequestContext, String, Date)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractCollectionAdapter.html" title="class in org.apache.abdera2.common.protocol">AbstractCollectionAdapter</A>
<DD>Creates the ResponseContext for a HEAD entry request.
</DL>
<HR>
<A NAME="_C_"><!-- --></A><H2>
<B>C</B></H2>
<DL>
<DT><A HREF="./org/apache/abdera2/common/http/CacheControl.html" title="class in org.apache.abdera2.common.http"><B>CacheControl</B></A> - Class in <A HREF="./org/apache/abdera2/common/http/package-summary.html">org.apache.abdera2.common.http</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/http/CacheControl.html#CacheControl()"><B>CacheControl()</B></A> - 
Constructor for class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/CacheControl.html" title="class in org.apache.abdera2.common.http">CacheControl</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/CacheControl.html#CacheControl(java.lang.String)"><B>CacheControl(String)</B></A> - 
Constructor for class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/CacheControl.html" title="class in org.apache.abdera2.common.http">CacheControl</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/CacheControlUtil.html" title="class in org.apache.abdera2.common.http"><B>CacheControlUtil</B></A> - Class in <A HREF="./org/apache/abdera2/common/http/package-summary.html">org.apache.abdera2.common.http</A><DD>Provides parsing and properly handling of the HTTP Cache-Control header.<DT><A HREF="./org/apache/abdera2/common/http/CacheControlUtil.html#CacheControlUtil()"><B>CacheControlUtil()</B></A> - 
Constructor for class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/CacheControlUtil.html" title="class in org.apache.abdera2.common.http">CacheControlUtil</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/CacheControlUtil.CacheControlParser.html" title="class in org.apache.abdera2.common.http"><B>CacheControlUtil.CacheControlParser</B></A> - Class in <A HREF="./org/apache/abdera2/common/http/package-summary.html">org.apache.abdera2.common.http</A><DD>Parser for the Cache-Control header<DT><A HREF="./org/apache/abdera2/common/http/CacheControlUtil.CacheControlParser.html#CacheControlUtil.CacheControlParser(java.lang.String)"><B>CacheControlUtil.CacheControlParser(String)</B></A> - 
Constructor for class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/CacheControlUtil.CacheControlParser.html" title="class in org.apache.abdera2.common.http">CacheControlUtil.CacheControlParser</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/CacheControlUtil.Directive.html" title="enum in org.apache.abdera2.common.http"><B>CacheControlUtil.Directive</B></A> - Enum in <A HREF="./org/apache/abdera2/common/http/package-summary.html">org.apache.abdera2.common.http</A><DD>Cache Control Directives<DT><A HREF="./org/apache/abdera2/common/templates/CachingContext.html" title="class in org.apache.abdera2.common.templates"><B>CachingContext</B></A> - Class in <A HREF="./org/apache/abdera2/common/templates/package-summary.html">org.apache.abdera2.common.templates</A><DD>Abstract Context implementation that caches resolved values so that do not have to be resolved again<DT><A HREF="./org/apache/abdera2/common/templates/CachingContext.html#CachingContext()"><B>CachingContext()</B></A> - 
Constructor for class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/CachingContext.html" title="class in org.apache.abdera2.common.templates">CachingContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/async/AbderaTask.html#cancel()"><B>cancel()</B></A> - 
Method in class org.apache.abdera2.common.protocol.servlet.async.<A HREF="./org/apache/abdera2/common/protocol/servlet/async/AbderaTask.html" title="class in org.apache.abdera2.common.protocol.servlet.async">AbderaTask</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/async/AbderaTask.html#cancel(javax.servlet.AsyncContext, java.lang.String)"><B>cancel(AsyncContext, String)</B></A> - 
Static method in class org.apache.abdera2.common.protocol.servlet.async.<A HREF="./org/apache/abdera2/common/protocol/servlet/async/AbderaTask.html" title="class in org.apache.abdera2.common.protocol.servlet.async">AbderaTask</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/async/DefaultProcessor.html#cancelRemaining()"><B>cancelRemaining()</B></A> - 
Method in class org.apache.abdera2.common.protocol.servlet.async.<A HREF="./org/apache/abdera2/common/protocol/servlet/async/DefaultProcessor.html" title="class in org.apache.abdera2.common.protocol.servlet.async">DefaultProcessor</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/async/ProcessorQueue.html#cancelRemaining()"><B>cancelRemaining()</B></A> - 
Method in interface org.apache.abdera2.common.protocol.servlet.async.<A HREF="./org/apache/abdera2/common/protocol/servlet/async/ProcessorQueue.html" title="interface in org.apache.abdera2.common.protocol.servlet.async">ProcessorQueue</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#CAT_MEDIA_TYPE"><B>CAT_MEDIA_TYPE</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#CATEGORIES"><B>CATEGORIES</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/TargetType.html#CATEGORIES"><B>CATEGORIES</B></A> - 
Static variable in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/TargetType.html" title="class in org.apache.abdera2.common.protocol">TargetType</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#CATEGORY"><B>CATEGORY</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/ServiceManager.html#CHANNELMANAGER"><B>CHANNELMANAGER</B></A> - 
Static variable in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ServiceManager.html" title="interface in org.apache.abdera2.common.protocol">ServiceManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/pusher/ChannelManager.html" title="interface in org.apache.abdera2.common.pusher"><B>ChannelManager</B></A> - Interface in <A HREF="./org/apache/abdera2/common/pusher/package-summary.html">org.apache.abdera2.common.pusher</A><DD>A "Channel" is a logical pairing of related Pusher and Receiver interfaces.<DT><A HREF="./org/apache/abdera2/common/text/Codec.StarCodec.html#charset"><B>charset</B></A> - 
Variable in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/Codec.StarCodec.html" title="class in org.apache.abdera2.common.text">Codec.StarCodec</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/io/CharsetSniffingInputStream.html" title="class in org.apache.abdera2.common.io"><B>CharsetSniffingInputStream</B></A> - Class in <A HREF="./org/apache/abdera2/common/io/package-summary.html">org.apache.abdera2.common.io</A><DD>Will attempt to autodetect the character encoding from the stream By default, this will preserve the BOM if it exists<DT><A HREF="./org/apache/abdera2/common/io/CharsetSniffingInputStream.html#CharsetSniffingInputStream(java.io.InputStream)"><B>CharsetSniffingInputStream(InputStream)</B></A> - 
Constructor for class org.apache.abdera2.common.io.<A HREF="./org/apache/abdera2/common/io/CharsetSniffingInputStream.html" title="class in org.apache.abdera2.common.io">CharsetSniffingInputStream</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/io/CharsetSniffingInputStream.html#CharsetSniffingInputStream(java.io.InputStream, boolean)"><B>CharsetSniffingInputStream(InputStream, boolean)</B></A> - 
Constructor for class org.apache.abdera2.common.io.<A HREF="./org/apache/abdera2/common/io/CharsetSniffingInputStream.html" title="class in org.apache.abdera2.common.io">CharsetSniffingInputStream</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/io/CharsetSniffingInputStream.Encoding.html" title="enum in org.apache.abdera2.common.io"><B>CharsetSniffingInputStream.Encoding</B></A> - Enum in <A HREF="./org/apache/abdera2/common/io/package-summary.html">org.apache.abdera2.common.io</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/text/CharUtils.html" title="class in org.apache.abdera2.common.text"><B>CharUtils</B></A> - Class in <A HREF="./org/apache/abdera2/common/text/package-summary.html">org.apache.abdera2.common.text</A><DD>General utilities for dealing with Unicode characters<DT><A HREF="./org/apache/abdera2/common/text/CharUtils.Profile.html" title="enum in org.apache.abdera2.common.text"><B>CharUtils.Profile</B></A> - Enum in <A HREF="./org/apache/abdera2/common/text/package-summary.html">org.apache.abdera2.common.text</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/http/CacheControl.html#check(int)"><B>check(int)</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/CacheControl.html" title="class in org.apache.abdera2.common.http">CacheControl</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Discover.LoaderIterator.html#cl"><B>cl</B></A> - 
Variable in class org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Discover.LoaderIterator.html" title="class in org.apache.abdera2.common">Discover.LoaderIterator</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#CLASS"><B>CLASS</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Discover.LineReaderLoaderIterator.html#classesonly"><B>classesonly</B></A> - 
Variable in class org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Discover.LineReaderLoaderIterator.html" title="class in org.apache.abdera2.common">Discover.LineReaderLoaderIterator</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Coordinates.html#clear()"><B>clear()</B></A> - 
Method in class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Coordinates.html" title="class in org.apache.abdera2.common.geo">Coordinates</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/io/DynamicPushbackInputStream.html#clear()"><B>clear()</B></A> - 
Method in class org.apache.abdera2.common.io.<A HREF="./org/apache/abdera2/common/io/DynamicPushbackInputStream.html" title="class in org.apache.abdera2.common.io">DynamicPushbackInputStream</A>
<DD>Clear the buffer
<DT><A HREF="./org/apache/abdera2/common/templates/CachingContext.html#clear()"><B>clear()</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/CachingContext.html" title="class in org.apache.abdera2.common.templates">CachingContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/Context.html#clear()"><B>clear()</B></A> - 
Method in interface org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/Context.html" title="interface in org.apache.abdera2.common.templates">Context</A>
<DD>Clear this context
<DT><A HREF="./org/apache/abdera2/common/templates/DelegatingContext.html#clear()"><B>clear()</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/DelegatingContext.html" title="class in org.apache.abdera2.common.templates">DelegatingContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/pusher/MapChannelManager.html#clearChannels()"><B>clearChannels()</B></A> - 
Method in class org.apache.abdera2.common.pusher.<A HREF="./org/apache/abdera2/common/pusher/MapChannelManager.html" title="class in org.apache.abdera2.common.pusher">MapChannelManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/date/DateTime.html#clone()"><B>clone()</B></A> - 
Method in class org.apache.abdera2.common.date.<A HREF="./org/apache/abdera2/common/date/DateTime.html" title="class in org.apache.abdera2.common.date">DateTime</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Coordinate.html#clone()"><B>clone()</B></A> - 
Method in class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Coordinate.html" title="class in org.apache.abdera2.common.geo">Coordinate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Coordinates.html#clone()"><B>clone()</B></A> - 
Method in class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Coordinates.html" title="class in org.apache.abdera2.common.geo">Coordinates</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Position.html#clone()"><B>clone()</B></A> - 
Method in class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Position.html" title="class in org.apache.abdera2.common.geo">Position</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/EntityTag.html#clone()"><B>clone()</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/EntityTag.html" title="class in org.apache.abdera2.common.http">EntityTag</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/iri/IRI.html#clone()"><B>clone()</B></A> - 
Method in class org.apache.abdera2.common.iri.<A HREF="./org/apache/abdera2/common/iri/IRI.html" title="class in org.apache.abdera2.common.iri">IRI</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/Route.html#clone()"><B>clone()</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/Route.html" title="class in org.apache.abdera2.common.templates">Route</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/async/AbderaAsyncService.html#CM"><B>CM</B></A> - 
Static variable in class org.apache.abdera2.common.protocol.servlet.async.<A HREF="./org/apache/abdera2/common/protocol/servlet/async/AbderaAsyncService.html" title="class in org.apache.abdera2.common.protocol.servlet.async">AbderaAsyncService</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/Codec.html" title="enum in org.apache.abdera2.common.text"><B>Codec</B></A> - Enum in <A HREF="./org/apache/abdera2/common/text/package-summary.html">org.apache.abdera2.common.text</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/text/Codec.StarCodec.html" title="class in org.apache.abdera2.common.text"><B>Codec.StarCodec</B></A> - Class in <A HREF="./org/apache/abdera2/common/text/package-summary.html">org.apache.abdera2.common.text</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/text/Codec.StarCodec.html#Codec.StarCodec()"><B>Codec.StarCodec()</B></A> - 
Constructor for class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/Codec.StarCodec.html" title="class in org.apache.abdera2.common.text">Codec.StarCodec</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/Codec.StarCodec.html#Codec.StarCodec(java.lang.String)"><B>Codec.StarCodec(String)</B></A> - 
Constructor for class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/Codec.StarCodec.html" title="class in org.apache.abdera2.common.text">Codec.StarCodec</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/CodepointIterator.html" title="class in org.apache.abdera2.common.text"><B>CodepointIterator</B></A> - Class in <A HREF="./org/apache/abdera2/common/text/package-summary.html">org.apache.abdera2.common.text</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/text/CodepointIterator.html#CodepointIterator()"><B>CodepointIterator()</B></A> - 
Constructor for class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/CodepointIterator.html" title="class in org.apache.abdera2.common.text">CodepointIterator</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#COLLECTION"><B>COLLECTION</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/TargetType.html#COLLECTION"><B>COLLECTION</B></A> - 
Static variable in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/TargetType.html" title="class in org.apache.abdera2.common.protocol">TargetType</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractWorkspaceManager.html#COLLECTION_ADAPTER_ATTRIBUTE"><B>COLLECTION_ADAPTER_ATTRIBUTE</B></A> - 
Static variable in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractWorkspaceManager.html" title="class in org.apache.abdera2.common.protocol">AbstractWorkspaceManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/CollectionAdapter.html" title="interface in org.apache.abdera2.common.protocol"><B>CollectionAdapter</B></A> - Interface in <A HREF="./org/apache/abdera2/common/protocol/package-summary.html">org.apache.abdera2.common.protocol</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/protocol/CollectionInfo.html" title="interface in org.apache.abdera2.common.protocol"><B>CollectionInfo</B></A> - Interface in <A HREF="./org/apache/abdera2/common/protocol/package-summary.html">org.apache.abdera2.common.protocol</A><DD>Metadata interface used by WorkspaceManager and Provider implementations to construct Atompub Service Documents.<DT><A HREF="./org/apache/abdera2/common/protocol/CollectionRequestProcessor.html" title="class in org.apache.abdera2.common.protocol"><B>CollectionRequestProcessor</B></A> - Class in <A HREF="./org/apache/abdera2/common/protocol/package-summary.html">org.apache.abdera2.common.protocol</A><DD><CODE>org.apache.AtompubRequestProcessor.protocol.server.RequestProcessor</CODE> implementation which processes requests for collection
 documents.<DT><A HREF="./org/apache/abdera2/common/protocol/CollectionRequestProcessor.html#CollectionRequestProcessor()"><B>CollectionRequestProcessor()</B></A> - 
Constructor for class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/CollectionRequestProcessor.html" title="class in org.apache.abdera2.common.protocol">CollectionRequestProcessor</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BasicWorkspaceInfo.html#collections"><B>collections</B></A> - 
Variable in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BasicWorkspaceInfo.html" title="class in org.apache.abdera2.common.protocol">BasicWorkspaceInfo</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/ProviderHelper.html#combine(java.lang.String...)"><B>combine(String...)</B></A> - 
Static method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ProviderHelper.html" title="class in org.apache.abdera2.common.protocol">ProviderHelper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/mediatype/MimeTypeHelper.html#compare(javax.activation.MimeType, javax.activation.MimeType)"><B>compare(MimeType, MimeType)</B></A> - 
Static method in class org.apache.abdera2.common.mediatype.<A HREF="./org/apache/abdera2/common/mediatype/MimeTypeHelper.html" title="class in org.apache.abdera2.common.mediatype">MimeTypeHelper</A>
<DD>Compare two media types according to their relative level of specificity
<DT><A HREF="./org/apache/abdera2/common/mediatype/MimeTypeHelper.html#compare(java.lang.String, java.lang.String)"><B>compare(String, String)</B></A> - 
Static method in class org.apache.abdera2.common.mediatype.<A HREF="./org/apache/abdera2/common/mediatype/MimeTypeHelper.html" title="class in org.apache.abdera2.common.mediatype">MimeTypeHelper</A>
<DD>Compare two media types according to their relative level of specificity
<DT><A HREF="./org/apache/abdera2/common/geo/Coordinate.html#compareTo(org.apache.abdera2.common.geo.Coordinate)"><B>compareTo(Coordinate)</B></A> - 
Method in class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Coordinate.html" title="class in org.apache.abdera2.common.geo">Coordinate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Coordinates.html#compareTo(org.apache.abdera2.common.geo.Coordinates)"><B>compareTo(Coordinates)</B></A> - 
Method in class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Coordinates.html" title="class in org.apache.abdera2.common.geo">Coordinates</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Multiple.html#compareTo(org.apache.abdera2.common.geo.Position)"><B>compareTo(Position)</B></A> - 
Method in class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Multiple.html" title="class in org.apache.abdera2.common.geo">Multiple</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Point.html#compareTo(org.apache.abdera2.common.geo.Position)"><B>compareTo(Position)</B></A> - 
Method in class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Point.html" title="class in org.apache.abdera2.common.geo">Point</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/EntityTag.html#compareTo(org.apache.abdera2.common.http.EntityTag)"><B>compareTo(EntityTag)</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/EntityTag.html" title="class in org.apache.abdera2.common.http">EntityTag</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/QualityHelper.QToken.html#compareTo(org.apache.abdera2.common.http.QualityHelper.QToken)"><B>compareTo(QualityHelper.QToken)</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/QualityHelper.QToken.html" title="class in org.apache.abdera2.common.http">QualityHelper.QToken</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/lang/Subtag.html#compareTo(org.apache.abdera2.common.lang.Subtag)"><B>compareTo(Subtag)</B></A> - 
Method in class org.apache.abdera2.common.lang.<A HREF="./org/apache/abdera2/common/lang/Subtag.html" title="class in org.apache.abdera2.common.lang">Subtag</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/lang/SubtagSet.html#compareTo(org.apache.abdera2.common.lang.SubtagSet)"><B>compareTo(SubtagSet)</B></A> - 
Method in class org.apache.abdera2.common.lang.<A HREF="./org/apache/abdera2/common/lang/SubtagSet.html" title="class in org.apache.abdera2.common.lang">SubtagSet</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractCollectionAdapter.html#compensate(org.apache.abdera2.common.protocol.RequestContext, java.lang.Throwable)"><B>compensate(RequestContext, Throwable)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractCollectionAdapter.html" title="class in org.apache.abdera2.common.protocol">AbstractCollectionAdapter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/Transactional.html#compensate(org.apache.abdera2.common.protocol.RequestContext, java.lang.Throwable)"><B>compensate(RequestContext, Throwable)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/Transactional.html" title="interface in org.apache.abdera2.common.protocol">Transactional</A>
<DD>Called by the provider when a processing error occurs
<DT><A HREF="./org/apache/abdera2/common/io/Compression.html" title="class in org.apache.abdera2.common.io"><B>Compression</B></A> - Class in <A HREF="./org/apache/abdera2/common/io/package-summary.html">org.apache.abdera2.common.io</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/io/Compression.html#Compression()"><B>Compression()</B></A> - 
Constructor for class org.apache.abdera2.common.io.<A HREF="./org/apache/abdera2/common/io/Compression.html" title="class in org.apache.abdera2.common.io">Compression</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/io/Compression.CompressionCodec.html" title="enum in org.apache.abdera2.common.io"><B>Compression.CompressionCodec</B></A> - Enum in <A HREF="./org/apache/abdera2/common/io/package-summary.html">org.apache.abdera2.common.io</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/protocol/CompressionFilter.html" title="class in org.apache.abdera2.common.protocol"><B>CompressionFilter</B></A> - Class in <A HREF="./org/apache/abdera2/common/protocol/package-summary.html">org.apache.abdera2.common.protocol</A><DD>Abdera Filter implementation that selectively applies compression to the response payload<DT><A HREF="./org/apache/abdera2/common/protocol/CompressionFilter.html#CompressionFilter()"><B>CompressionFilter()</B></A> - 
Constructor for class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/CompressionFilter.html" title="class in org.apache.abdera2.common.protocol">CompressionFilter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/CompressionFilter.CompressingOutputStream.html" title="class in org.apache.abdera2.common.protocol"><B>CompressionFilter.CompressingOutputStream</B></A> - Class in <A HREF="./org/apache/abdera2/common/protocol/package-summary.html">org.apache.abdera2.common.protocol</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/protocol/CompressionFilter.CompressingOutputStream.html#CompressionFilter.CompressingOutputStream(org.apache.abdera2.common.io.Compression.CompressionCodec, java.io.OutputStream)"><B>CompressionFilter.CompressingOutputStream(Compression.CompressionCodec, OutputStream)</B></A> - 
Constructor for class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/CompressionFilter.CompressingOutputStream.html" title="class in org.apache.abdera2.common.protocol">CompressionFilter.CompressingOutputStream</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/CompressionFilter.CompressingOutputStream.html#CompressionFilter.CompressingOutputStream(java.util.zip.DeflaterOutputStream)"><B>CompressionFilter.CompressingOutputStream(DeflaterOutputStream)</B></A> - 
Constructor for class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/CompressionFilter.CompressingOutputStream.html" title="class in org.apache.abdera2.common.protocol">CompressionFilter.CompressingOutputStream</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/CompressionFilter.CompressingResponseContextWrapper.html" title="class in org.apache.abdera2.common.protocol"><B>CompressionFilter.CompressingResponseContextWrapper</B></A> - Class in <A HREF="./org/apache/abdera2/common/protocol/package-summary.html">org.apache.abdera2.common.protocol</A><DD>A HttpServletResponseWrapper implementation that applies GZip or Deflate compression to response output.<DT><A HREF="./org/apache/abdera2/common/protocol/CompressionFilter.CompressingResponseContextWrapper.html#CompressionFilter.CompressingResponseContextWrapper(org.apache.abdera2.common.protocol.ResponseContext, org.apache.abdera2.common.io.Compression.CompressionCodec)"><B>CompressionFilter.CompressingResponseContextWrapper(ResponseContext, Compression.CompressionCodec)</B></A> - 
Constructor for class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/CompressionFilter.CompressingResponseContextWrapper.html" title="class in org.apache.abdera2.common.protocol">CompressionFilter.CompressingResponseContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/mediatype/MimeTypeHelper.html#condense(java.lang.String...)"><B>condense(String...)</B></A> - 
Static method in class org.apache.abdera2.common.mediatype.<A HREF="./org/apache/abdera2/common/mediatype/MimeTypeHelper.html" title="class in org.apache.abdera2.common.mediatype">MimeTypeHelper</A>
<DD>This will take an array of media types and will condense them based on wildcards, etc.
<DT><A HREF="./org/apache/abdera2/common/protocol/ProviderHelper.html#conflict(org.apache.abdera2.common.protocol.RequestContext, java.lang.String)"><B>conflict(RequestContext, String)</B></A> - 
Static method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ProviderHelper.html" title="class in org.apache.abdera2.common.protocol">ProviderHelper</A>
<DD>Return a 409 conflict error
<DT><A HREF="./org/apache/abdera2/common/protocol/ProviderHelper.html#conflict(org.apache.abdera2.common.protocol.RequestContext)"><B>conflict(RequestContext)</B></A> - 
Static method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ProviderHelper.html" title="class in org.apache.abdera2.common.protocol">ProviderHelper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common"><B>Constants</B></A> - Interface in <A HREF="./org/apache/abdera2/common/package-summary.html">org.apache.abdera2.common</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/geo/Coordinates.html#contains(double, double)"><B>contains(double, double)</B></A> - 
Method in class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Coordinates.html" title="class in org.apache.abdera2.common.geo">Coordinates</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Coordinates.html#contains(java.lang.String)"><B>contains(String)</B></A> - 
Method in class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Coordinates.html" title="class in org.apache.abdera2.common.geo">Coordinates</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Coordinates.html#contains(org.apache.abdera2.common.geo.Coordinate)"><B>contains(Coordinate)</B></A> - 
Method in class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Coordinates.html" title="class in org.apache.abdera2.common.geo">Coordinates</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Coordinates.html#contains(org.apache.abdera2.common.geo.Coordinate...)"><B>contains(Coordinate...)</B></A> - 
Method in class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Coordinates.html" title="class in org.apache.abdera2.common.geo">Coordinates</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/Preference.html#contains(java.lang.Iterable, java.lang.String)"><B>contains(Iterable&lt;Preference&gt;, String)</B></A> - 
Static method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/Preference.html" title="class in org.apache.abdera2.common.http">Preference</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/lang/SubtagSet.html#contains(org.apache.abdera2.common.lang.Subtag)"><B>contains(Subtag)</B></A> - 
Method in class org.apache.abdera2.common.lang.<A HREF="./org/apache/abdera2/common/lang/SubtagSet.html" title="class in org.apache.abdera2.common.lang">SubtagSet</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/lang/SubtagSet.html#contains(java.lang.String)"><B>contains(String)</B></A> - 
Method in class org.apache.abdera2.common.lang.<A HREF="./org/apache/abdera2/common/lang/SubtagSet.html" title="class in org.apache.abdera2.common.lang">SubtagSet</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/lang/SubtagSet.html#contains(java.lang.String, org.apache.abdera2.common.lang.Subtag.Type)"><B>contains(String, Subtag.Type)</B></A> - 
Method in class org.apache.abdera2.common.lang.<A HREF="./org/apache/abdera2/common/lang/SubtagSet.html" title="class in org.apache.abdera2.common.lang">SubtagSet</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/RequestTemplateContext.html#contains(java.lang.String)"><B>contains(String)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/RequestTemplateContext.html" title="class in org.apache.abdera2.common.protocol">RequestTemplateContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/Context.html#contains(java.lang.String)"><B>contains(String)</B></A> - 
Method in interface org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/Context.html" title="interface in org.apache.abdera2.common.templates">Context</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/DefaultingContext.html#contains(java.lang.String)"><B>contains(String)</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/DefaultingContext.html" title="class in org.apache.abdera2.common.templates">DefaultingContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/DelegatingContext.html#contains(java.lang.String)"><B>contains(String)</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/DelegatingContext.html" title="class in org.apache.abdera2.common.templates">DelegatingContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/MapContext.html#contains(java.lang.String)"><B>contains(String)</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/MapContext.html" title="class in org.apache.abdera2.common.templates">MapContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/MultiContext.html#contains(java.lang.String)"><B>contains(String)</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/MultiContext.html" title="class in org.apache.abdera2.common.templates">MultiContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/ObjectContext.html#contains(java.lang.String)"><B>contains(String)</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/ObjectContext.html" title="class in org.apache.abdera2.common.templates">ObjectContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#CONTENT"><B>CONTENT</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/SimpleTarget.html#context"><B>context</B></A> - 
Variable in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/SimpleTarget.html" title="class in org.apache.abdera2.common.protocol">SimpleTarget</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/Context.html" title="interface in org.apache.abdera2.common.templates"><B>Context</B></A> - Interface in <A HREF="./org/apache/abdera2/common/templates/package-summary.html">org.apache.abdera2.common.templates</A><DD>Used to resolve values for template variables<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/async/AbderaAsyncService.html#contextDestroyed(javax.servlet.ServletContextEvent)"><B>contextDestroyed(ServletContextEvent)</B></A> - 
Method in class org.apache.abdera2.common.protocol.servlet.async.<A HREF="./org/apache/abdera2/common/protocol/servlet/async/AbderaAsyncService.html" title="class in org.apache.abdera2.common.protocol.servlet.async">AbderaAsyncService</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/async/AbderaAsyncService.html#contextInitialized(javax.servlet.ServletContextEvent)"><B>contextInitialized(ServletContextEvent)</B></A> - 
Method in class org.apache.abdera2.common.protocol.servlet.async.<A HREF="./org/apache/abdera2/common/protocol/servlet/async/AbderaAsyncService.html" title="class in org.apache.abdera2.common.protocol.servlet.async">AbderaAsyncService</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#CONTRIBUTOR"><B>CONTRIBUTOR</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#CONTROL"><B>CONTROL</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#CONTROL_NS"><B>CONTROL_NS</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD><B>Deprecated.</B>&nbsp;<I></I>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#CONTROL_PREFIX"><B>CONTROL_PREFIX</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Coordinate.html" title="class in org.apache.abdera2.common.geo"><B>Coordinate</B></A> - Class in <A HREF="./org/apache/abdera2/common/geo/package-summary.html">org.apache.abdera2.common.geo</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/geo/Coordinate.html#Coordinate()"><B>Coordinate()</B></A> - 
Constructor for class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Coordinate.html" title="class in org.apache.abdera2.common.geo">Coordinate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Coordinate.html#Coordinate(org.apache.abdera2.common.geo.IsoPosition)"><B>Coordinate(IsoPosition)</B></A> - 
Constructor for class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Coordinate.html" title="class in org.apache.abdera2.common.geo">Coordinate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Coordinate.html#Coordinate(double, double)"><B>Coordinate(double, double)</B></A> - 
Constructor for class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Coordinate.html" title="class in org.apache.abdera2.common.geo">Coordinate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Coordinate.html#Coordinate(java.lang.String)"><B>Coordinate(String)</B></A> - 
Constructor for class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Coordinate.html" title="class in org.apache.abdera2.common.geo">Coordinate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Coordinates.html" title="class in org.apache.abdera2.common.geo"><B>Coordinates</B></A> - Class in <A HREF="./org/apache/abdera2/common/geo/package-summary.html">org.apache.abdera2.common.geo</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/geo/Coordinates.html#Coordinates()"><B>Coordinates()</B></A> - 
Constructor for class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Coordinates.html" title="class in org.apache.abdera2.common.geo">Coordinates</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Coordinates.html#Coordinates(org.apache.abdera2.common.geo.Coordinate...)"><B>Coordinates(Coordinate...)</B></A> - 
Constructor for class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Coordinates.html" title="class in org.apache.abdera2.common.geo">Coordinates</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Coordinates.html#Coordinates(org.apache.abdera2.common.geo.Coordinates)"><B>Coordinates(Coordinates)</B></A> - 
Constructor for class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Coordinates.html" title="class in org.apache.abdera2.common.geo">Coordinates</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Coordinates.html#Coordinates(java.lang.String)"><B>Coordinates(String)</B></A> - 
Constructor for class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Coordinates.html" title="class in org.apache.abdera2.common.geo">Coordinates</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Multiple.html#coordinates"><B>coordinates</B></A> - 
Variable in class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Multiple.html" title="class in org.apache.abdera2.common.geo">Multiple</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Coordinates.html#coords"><B>coords</B></A> - 
Variable in class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Coordinates.html" title="class in org.apache.abdera2.common.geo">Coordinates</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/lang/Lang.html#copy()"><B>copy()</B></A> - 
Method in class org.apache.abdera2.common.lang.<A HREF="./org/apache/abdera2/common/lang/Lang.html" title="class in org.apache.abdera2.common.lang">Lang</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Discover.DefaultLoaderIterator.html#create(java.lang.String, java.lang.Object[])"><B>create(String, Object[])</B></A> - 
Method in class org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Discover.DefaultLoaderIterator.html" title="class in org.apache.abdera2.common">Discover.DefaultLoaderIterator</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/Slug.html#create(java.lang.String)"><B>create(String)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/Slug.html" title="class in org.apache.abdera2.common.text">Slug</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/Slug.html#create(java.lang.String, java.lang.String)"><B>create(String, String)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/Slug.html" title="class in org.apache.abdera2.common.text">Slug</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/Slug.html#create(java.lang.String, java.lang.String, boolean)"><B>create(String, String, boolean)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/Slug.html" title="class in org.apache.abdera2.common.text">Slug</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/Slug.html#create(java.lang.String, java.lang.String, java.lang.String)"><B>create(String, String, String)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/Slug.html" title="class in org.apache.abdera2.common.text">Slug</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/Slug.html#create(java.lang.String, java.lang.String, boolean, java.lang.String)"><B>create(String, String, boolean, String)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/Slug.html" title="class in org.apache.abdera2.common.text">Slug</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/Slug.html#create(java.lang.String, java.lang.String, boolean, org.apache.abdera2.common.text.NormalizationForm)"><B>create(String, String, boolean, NormalizationForm)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/Slug.html" title="class in org.apache.abdera2.common.text">Slug</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/Slug.html#create(java.lang.String, java.lang.String, boolean, org.apache.abdera2.common.text.NormalizationForm, java.lang.String)"><B>create(String, String, boolean, NormalizationForm, String)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/Slug.html" title="class in org.apache.abdera2.common.text">Slug</A>
<DD>Used to sanitize a string.
<DT><A HREF="./org/apache/abdera2/common/pusher/MapChannelManager.html#createChannel()"><B>createChannel()</B></A> - 
Method in class org.apache.abdera2.common.pusher.<A HREF="./org/apache/abdera2/common/pusher/MapChannelManager.html" title="class in org.apache.abdera2.common.pusher">MapChannelManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/pusher/SimpleChannelManager.html#createChannel()"><B>createChannel()</B></A> - 
Method in class org.apache.abdera2.common.pusher.<A HREF="./org/apache/abdera2/common/pusher/SimpleChannelManager.html" title="class in org.apache.abdera2.common.pusher">SimpleChannelManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractCollectionAdapter.html#createErrorResponse(org.apache.abdera2.common.protocol.ResponseContextException)"><B>createErrorResponse(ResponseContextException)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractCollectionAdapter.html" title="class in org.apache.abdera2.common.protocol">AbstractCollectionAdapter</A>
<DD>Create a ResponseContext (or take it from the Exception) for an exception that occurred in the application.
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseProvider.html#createErrorResponse(org.apache.abdera2.common.protocol.RequestContext, java.lang.Throwable)"><B>createErrorResponse(RequestContext, Throwable)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseProvider.html" title="class in org.apache.abdera2.common.protocol">BaseProvider</A>
<DD>Subclass to customize the kind of error response to return
<DT><A HREF="./org/apache/abdera2/common/protocol/Provider.html#createErrorResponse(int, java.lang.String, java.lang.Throwable)"><B>createErrorResponse(int, String, Throwable)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/Provider.html" title="interface in org.apache.abdera2.common.protocol">Provider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/ProviderHelper.html#createErrorResponse(org.apache.abdera2.common.protocol.Provider, int, java.lang.String)"><B>createErrorResponse(Provider, int, String)</B></A> - 
Static method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ProviderHelper.html" title="class in org.apache.abdera2.common.protocol">ProviderHelper</A>
<DD>Returns an Error document based on the StreamWriter
<DT><A HREF="./org/apache/abdera2/common/protocol/ProviderHelper.html#createErrorResponse(org.apache.abdera2.common.protocol.Provider, int, java.lang.String, java.lang.Throwable)"><B>createErrorResponse(Provider, int, String, Throwable)</B></A> - 
Static method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ProviderHelper.html" title="class in org.apache.abdera2.common.protocol">ProviderHelper</A>
<DD>Returns an Error document based on the StreamWriter
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/async/AbderaChannelServlet.html#createListener(javax.servlet.AsyncContext)"><B>createListener(AsyncContext)</B></A> - 
Method in class org.apache.abdera2.common.protocol.servlet.async.<A HREF="./org/apache/abdera2/common/protocol/servlet/async/AbderaChannelServlet.html" title="class in org.apache.abdera2.common.protocol.servlet.async">AbderaChannelServlet</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/AbstractAbderaServlet.html#createProvider()"><B>createProvider()</B></A> - 
Method in class org.apache.abdera2.common.protocol.servlet.<A HREF="./org/apache/abdera2/common/protocol/servlet/AbstractAbderaServlet.html" title="class in org.apache.abdera2.common.protocol.servlet">AbstractAbderaServlet</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/AbstractAbderaServlet.html#createServiceManager()"><B>createServiceManager()</B></A> - 
Method in class org.apache.abdera2.common.protocol.servlet.<A HREF="./org/apache/abdera2/common/protocol/servlet/AbstractAbderaServlet.html" title="class in org.apache.abdera2.common.protocol.servlet">AbstractAbderaServlet</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/async/AbderaAsyncService.html#createServiceManager(javax.servlet.ServletContext)"><B>createServiceManager(ServletContext)</B></A> - 
Method in class org.apache.abdera2.common.protocol.servlet.async.<A HREF="./org/apache/abdera2/common/protocol/servlet/async/AbderaAsyncService.html" title="class in org.apache.abdera2.common.protocol.servlet.async">AbderaAsyncService</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/misc/PoolManager.html#currentSize()"><B>currentSize()</B></A> - 
Method in class org.apache.abdera2.common.misc.<A HREF="./org/apache/abdera2/common/misc/PoolManager.html" title="class in org.apache.abdera2.common.misc">PoolManager</A>
<DD>&nbsp;
</DL>
<HR>
<A NAME="_D_"><!-- --></A><H2>
<B>D</B></H2>
<DL>
<DT><A HREF="./org/apache/abdera2/common/date/DateTime.html" title="class in org.apache.abdera2.common.date"><B>DateTime</B></A> - Class in <A HREF="./org/apache/abdera2/common/date/package-summary.html">org.apache.abdera2.common.date</A><DD>
 Provides an implementation of the RFC 3339 date-time.<DT><A HREF="./org/apache/abdera2/common/date/DateTime.html#DateTime()"><B>DateTime()</B></A> - 
Constructor for class org.apache.abdera2.common.date.<A HREF="./org/apache/abdera2/common/date/DateTime.html" title="class in org.apache.abdera2.common.date">DateTime</A>
<DD>Create an AtomDate using the current date and time
<DT><A HREF="./org/apache/abdera2/common/date/DateTime.html#DateTime(java.lang.String)"><B>DateTime(String)</B></A> - 
Constructor for class org.apache.abdera2.common.date.<A HREF="./org/apache/abdera2/common/date/DateTime.html" title="class in org.apache.abdera2.common.date">DateTime</A>
<DD>Create an AtomDate using the serialized string format (e.g.
<DT><A HREF="./org/apache/abdera2/common/date/DateTime.html#DateTime(java.util.Date)"><B>DateTime(Date)</B></A> - 
Constructor for class org.apache.abdera2.common.date.<A HREF="./org/apache/abdera2/common/date/DateTime.html" title="class in org.apache.abdera2.common.date">DateTime</A>
<DD>Create an AtomDate using a java.util.Date
<DT><A HREF="./org/apache/abdera2/common/date/DateTime.html#DateTime(java.util.Calendar)"><B>DateTime(Calendar)</B></A> - 
Constructor for class org.apache.abdera2.common.date.<A HREF="./org/apache/abdera2/common/date/DateTime.html" title="class in org.apache.abdera2.common.date">DateTime</A>
<DD>Create an AtomDate using a java.util.Calendar.
<DT><A HREF="./org/apache/abdera2/common/date/DateTime.html#DateTime(long)"><B>DateTime(long)</B></A> - 
Constructor for class org.apache.abdera2.common.date.<A HREF="./org/apache/abdera2/common/date/DateTime.html" title="class in org.apache.abdera2.common.date">DateTime</A>
<DD>Create an AtomDate using the number of milliseconds since January 1, 1970, 00:00:00 GMT
<DT><A HREF="./org/apache/abdera2/common/text/Codec.html#decode(java.lang.String)"><B>decode(String)</B></A> - 
Static method in enum org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/Codec.html" title="enum in org.apache.abdera2.common.text">Codec</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/Codec.StarCodec.html#decode(java.lang.Object)"><B>decode(Object)</B></A> - 
Method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/Codec.StarCodec.html" title="class in org.apache.abdera2.common.text">Codec.StarCodec</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/Codec.StarCodec.html#decode(java.lang.String)"><B>decode(String)</B></A> - 
Method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/Codec.StarCodec.html" title="class in org.apache.abdera2.common.text">Codec.StarCodec</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/UrlEncoding.html#decode(java.lang.String, java.lang.String)"><B>decode(String, String)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/UrlEncoding.html" title="class in org.apache.abdera2.common.text">UrlEncoding</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/UrlEncoding.html#decode(java.lang.String)"><B>decode(String)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/UrlEncoding.html" title="class in org.apache.abdera2.common.text">UrlEncoding</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/Codec.html#DEFAULT_CHARSET"><B>DEFAULT_CHARSET</B></A> - 
Static variable in enum org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/Codec.html" title="enum in org.apache.abdera2.common.text">Codec</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Position.html#DEFAULT_FEATURE_TYPE_TAG"><B>DEFAULT_FEATURE_TYPE_TAG</B></A> - 
Static variable in class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Position.html" title="class in org.apache.abdera2.common.geo">Position</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Position.html#DEFAULT_RELATIONSHIP_TAG"><B>DEFAULT_RELATIONSHIP_TAG</B></A> - 
Static variable in class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Position.html" title="class in org.apache.abdera2.common.geo">Position</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/async/DefaultTaskExecutor.html#DEFAULT_TERMINATION_TIMEOUT"><B>DEFAULT_TERMINATION_TIMEOUT</B></A> - 
Static variable in class org.apache.abdera2.common.protocol.servlet.async.<A HREF="./org/apache/abdera2/common/protocol/servlet/async/DefaultTaskExecutor.html" title="class in org.apache.abdera2.common.protocol.servlet.async">DefaultTaskExecutor</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/ProviderHelper.html#defaultCheckMethod(org.apache.abdera2.common.protocol.RequestContext, java.lang.String[])"><B>defaultCheckMethod(RequestContext, String[])</B></A> - 
Static method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ProviderHelper.html" title="class in org.apache.abdera2.common.protocol">ProviderHelper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/anno/DefaultImplementation.html" title="annotation in org.apache.abdera2.common.anno"><B>DefaultImplementation</B></A> - Annotation Type in <A HREF="./org/apache/abdera2/common/anno/package-summary.html">org.apache.abdera2.common.anno</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/templates/DefaultingContext.html" title="class in org.apache.abdera2.common.templates"><B>DefaultingContext</B></A> - Class in <A HREF="./org/apache/abdera2/common/templates/package-summary.html">org.apache.abdera2.common.templates</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/templates/DefaultingContext.html#DefaultingContext(org.apache.abdera2.common.templates.Context, org.apache.abdera2.common.templates.Context)"><B>DefaultingContext(Context, Context)</B></A> - 
Constructor for class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/DefaultingContext.html" title="class in org.apache.abdera2.common.templates">DefaultingContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/async/DefaultProcessor.html" title="class in org.apache.abdera2.common.protocol.servlet.async"><B>DefaultProcessor</B></A> - Class in <A HREF="./org/apache/abdera2/common/protocol/servlet/async/package-summary.html">org.apache.abdera2.common.protocol.servlet.async</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/async/DefaultProcessor.html#DefaultProcessor()"><B>DefaultProcessor()</B></A> - 
Constructor for class org.apache.abdera2.common.protocol.servlet.async.<A HREF="./org/apache/abdera2/common/protocol/servlet/async/DefaultProcessor.html" title="class in org.apache.abdera2.common.protocol.servlet.async">DefaultProcessor</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/async/DefaultTaskExecutor.html" title="class in org.apache.abdera2.common.protocol.servlet.async"><B>DefaultTaskExecutor</B></A> - Class in <A HREF="./org/apache/abdera2/common/protocol/servlet/async/package-summary.html">org.apache.abdera2.common.protocol.servlet.async</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/async/DefaultTaskExecutor.html#DefaultTaskExecutor()"><B>DefaultTaskExecutor()</B></A> - 
Constructor for class org.apache.abdera2.common.protocol.servlet.async.<A HREF="./org/apache/abdera2/common/protocol/servlet/async/DefaultTaskExecutor.html" title="class in org.apache.abdera2.common.protocol.servlet.async">DefaultTaskExecutor</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/DefaultWorkspaceManager.html" title="class in org.apache.abdera2.common.protocol"><B>DefaultWorkspaceManager</B></A> - Class in <A HREF="./org/apache/abdera2/common/protocol/package-summary.html">org.apache.abdera2.common.protocol</A><DD>The DefaultWorkspaceManager is used by the DefaultProvider<DT><A HREF="./org/apache/abdera2/common/protocol/DefaultWorkspaceManager.html#DefaultWorkspaceManager()"><B>DefaultWorkspaceManager()</B></A> - 
Constructor for class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/DefaultWorkspaceManager.html" title="class in org.apache.abdera2.common.protocol">DefaultWorkspaceManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/DelegatingContext.html" title="class in org.apache.abdera2.common.templates"><B>DelegatingContext</B></A> - Class in <A HREF="./org/apache/abdera2/common/templates/package-summary.html">org.apache.abdera2.common.templates</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/templates/DelegatingContext.html#DelegatingContext(org.apache.abdera2.common.templates.Context)"><B>DelegatingContext(Context)</B></A> - 
Constructor for class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/DelegatingContext.html" title="class in org.apache.abdera2.common.templates">DelegatingContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/Method.html#DELETE"><B>DELETE</B></A> - 
Static variable in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/Method.html" title="class in org.apache.abdera2.common.http">Method</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/CollectionAdapter.html#deleteItem(org.apache.abdera2.common.protocol.RequestContext)"><B>deleteItem(RequestContext)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/CollectionAdapter.html" title="interface in org.apache.abdera2.common.protocol">CollectionAdapter</A>
<DD>Delete an entry from the collection
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractCollectionAdapter.html#deleteMedia(org.apache.abdera2.common.protocol.RequestContext)"><B>deleteMedia(RequestContext)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractCollectionAdapter.html" title="class in org.apache.abdera2.common.protocol">AbstractCollectionAdapter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/MediaCollectionAdapter.html#deleteMedia(org.apache.abdera2.common.protocol.RequestContext)"><B>deleteMedia(RequestContext)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/MediaCollectionAdapter.html" title="interface in org.apache.abdera2.common.protocol">MediaCollectionAdapter</A>
<DD>Delete a media resource from the collection
<DT><A HREF="./org/apache/abdera2/common/io/Compression.html#describe(org.apache.abdera2.common.io.Compression.CompressionCodec, org.apache.abdera2.common.io.Compression.CompressionCodec...)"><B>describe(Compression.CompressionCodec, Compression.CompressionCodec...)</B></A> - 
Static method in class org.apache.abdera2.common.io.<A HREF="./org/apache/abdera2/common/io/Compression.html" title="class in org.apache.abdera2.common.io">Compression</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/io/CharsetSniffingInputStream.html#detectEncoding()"><B>detectEncoding()</B></A> - 
Method in class org.apache.abdera2.common.io.<A HREF="./org/apache/abdera2/common/io/CharsetSniffingInputStream.html" title="class in org.apache.abdera2.common.io">CharsetSniffingInputStream</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/xml/XMLStreamSniffingInputStream.html#detectEncoding()"><B>detectEncoding()</B></A> - 
Method in class org.apache.abdera2.common.xml.<A HREF="./org/apache/abdera2/common/xml/XMLStreamSniffingInputStream.html" title="class in org.apache.abdera2.common.xml">XMLStreamSniffingInputStream</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/Authentication.html#DIGEST"><B>DIGEST</B></A> - 
Static variable in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/Authentication.html" title="class in org.apache.abdera2.common.http">Authentication</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Discover.html" title="class in org.apache.abdera2.common"><B>Discover</B></A> - Class in <A HREF="./org/apache/abdera2/common/package-summary.html">org.apache.abdera2.common</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/Discover.DefaultLoader.html" title="class in org.apache.abdera2.common"><B>Discover.DefaultLoader</B></A>&lt;<A HREF="./org/apache/abdera2/common/Discover.DefaultLoader.html" title="type parameter in Discover.DefaultLoader">T</A>&gt; - Class in <A HREF="./org/apache/abdera2/common/package-summary.html">org.apache.abdera2.common</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/Discover.DefaultLoader.html#Discover.DefaultLoader(java.lang.String, boolean, java.lang.Object[])"><B>Discover.DefaultLoader(String, boolean, Object[])</B></A> - 
Constructor for class org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Discover.DefaultLoader.html" title="class in org.apache.abdera2.common">Discover.DefaultLoader</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Discover.DefaultLoader.html#Discover.DefaultLoader(java.lang.String, boolean, java.lang.Object[], java.lang.ClassLoader)"><B>Discover.DefaultLoader(String, boolean, Object[], ClassLoader)</B></A> - 
Constructor for class org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Discover.DefaultLoader.html" title="class in org.apache.abdera2.common">Discover.DefaultLoader</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Discover.DefaultLoader.html#Discover.DefaultLoader(java.lang.Class, boolean, java.lang.Object[], java.lang.ClassLoader)"><B>Discover.DefaultLoader(Class&lt;T&gt;, boolean, Object[], ClassLoader)</B></A> - 
Constructor for class org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Discover.DefaultLoader.html" title="class in org.apache.abdera2.common">Discover.DefaultLoader</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Discover.DefaultLoader.html#Discover.DefaultLoader(java.lang.Class, boolean, java.lang.Object[])"><B>Discover.DefaultLoader(Class&lt;T&gt;, boolean, Object[])</B></A> - 
Constructor for class org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Discover.DefaultLoader.html" title="class in org.apache.abdera2.common">Discover.DefaultLoader</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Discover.DefaultLoaderIterator.html" title="class in org.apache.abdera2.common"><B>Discover.DefaultLoaderIterator</B></A>&lt;<A HREF="./org/apache/abdera2/common/Discover.DefaultLoaderIterator.html" title="type parameter in Discover.DefaultLoaderIterator">T</A>&gt; - Class in <A HREF="./org/apache/abdera2/common/package-summary.html">org.apache.abdera2.common</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/Discover.DefaultLoaderIterator.html#Discover.DefaultLoaderIterator(java.lang.ClassLoader, java.io.InputStream, boolean, java.lang.Object[])"><B>Discover.DefaultLoaderIterator(ClassLoader, InputStream, boolean, Object[])</B></A> - 
Constructor for class org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Discover.DefaultLoaderIterator.html" title="class in org.apache.abdera2.common">Discover.DefaultLoaderIterator</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Discover.LineReaderLoaderIterator.html" title="class in org.apache.abdera2.common"><B>Discover.LineReaderLoaderIterator</B></A>&lt;<A HREF="./org/apache/abdera2/common/Discover.LineReaderLoaderIterator.html" title="type parameter in Discover.LineReaderLoaderIterator">T</A>&gt; - Class in <A HREF="./org/apache/abdera2/common/package-summary.html">org.apache.abdera2.common</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/Discover.LineReaderLoaderIterator.html#Discover.LineReaderLoaderIterator(java.lang.ClassLoader, java.io.InputStream, boolean, java.lang.Object[])"><B>Discover.LineReaderLoaderIterator(ClassLoader, InputStream, boolean, Object[])</B></A> - 
Constructor for class org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Discover.LineReaderLoaderIterator.html" title="class in org.apache.abdera2.common">Discover.LineReaderLoaderIterator</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Discover.LoaderIterator.html" title="class in org.apache.abdera2.common"><B>Discover.LoaderIterator</B></A>&lt;<A HREF="./org/apache/abdera2/common/Discover.LoaderIterator.html" title="type parameter in Discover.LoaderIterator">T</A>&gt; - Class in <A HREF="./org/apache/abdera2/common/package-summary.html">org.apache.abdera2.common</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/Discover.LoaderIterator.html#Discover.LoaderIterator(java.lang.ClassLoader)"><B>Discover.LoaderIterator(ClassLoader)</B></A> - 
Constructor for class org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Discover.LoaderIterator.html" title="class in org.apache.abdera2.common">Discover.LoaderIterator</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#DIV"><B>DIV</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/async/AbderaChannelServlet.html#doGet(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse)"><B>doGet(HttpServletRequest, HttpServletResponse)</B></A> - 
Method in class org.apache.abdera2.common.protocol.servlet.async.<A HREF="./org/apache/abdera2/common/protocol/servlet/async/AbderaChannelServlet.html" title="class in org.apache.abdera2.common.protocol.servlet.async">AbderaChannelServlet</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#DRAFT"><B>DRAFT</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/io/DynamicPushbackInputStream.html" title="class in org.apache.abdera2.common.io"><B>DynamicPushbackInputStream</B></A> - Class in <A HREF="./org/apache/abdera2/common/io/package-summary.html">org.apache.abdera2.common.io</A><DD>PushbackInputStream implementation that performs dynamic resizing of the unread buffer<DT><A HREF="./org/apache/abdera2/common/io/DynamicPushbackInputStream.html#DynamicPushbackInputStream(java.io.InputStream)"><B>DynamicPushbackInputStream(InputStream)</B></A> - 
Constructor for class org.apache.abdera2.common.io.<A HREF="./org/apache/abdera2/common/io/DynamicPushbackInputStream.html" title="class in org.apache.abdera2.common.io">DynamicPushbackInputStream</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/io/DynamicPushbackInputStream.html#DynamicPushbackInputStream(java.io.InputStream, int)"><B>DynamicPushbackInputStream(InputStream, int)</B></A> - 
Constructor for class org.apache.abdera2.common.io.<A HREF="./org/apache/abdera2/common/io/DynamicPushbackInputStream.html" title="class in org.apache.abdera2.common.io">DynamicPushbackInputStream</A>
<DD>&nbsp;
</DL>
<HR>
<A NAME="_E_"><!-- --></A><H2>
<B>E</B></H2>
<DL>
<DT><A HREF="./org/apache/abdera2/common/Constants.html#EDITED"><B>EDITED</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Position.html#elevation"><B>elevation</B></A> - 
Variable in class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Position.html" title="class in org.apache.abdera2.common.geo">Position</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#EMAIL"><B>EMAIL</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html#EMPTY"><B>EMPTY</B></A> - 
Static variable in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html" title="class in org.apache.abdera2.common.protocol">AbstractResponseContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/EmptyResponseContext.html" title="class in org.apache.abdera2.common.protocol"><B>EmptyResponseContext</B></A> - Class in <A HREF="./org/apache/abdera2/common/protocol/package-summary.html">org.apache.abdera2.common.protocol</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/protocol/EmptyResponseContext.html#EmptyResponseContext(int)"><B>EmptyResponseContext(int)</B></A> - 
Constructor for class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/EmptyResponseContext.html" title="class in org.apache.abdera2.common.protocol">EmptyResponseContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/EmptyResponseContext.html#EmptyResponseContext(int, java.lang.String)"><B>EmptyResponseContext(int, String)</B></A> - 
Constructor for class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/EmptyResponseContext.html" title="class in org.apache.abdera2.common.protocol">EmptyResponseContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/Codec.html#encode(java.lang.String, java.lang.String, org.apache.abdera2.common.text.Codec)"><B>encode(String, String, Codec)</B></A> - 
Static method in enum org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/Codec.html" title="enum in org.apache.abdera2.common.text">Codec</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/Codec.html#encode(java.lang.String, org.apache.abdera2.common.text.Codec)"><B>encode(String, Codec)</B></A> - 
Static method in enum org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/Codec.html" title="enum in org.apache.abdera2.common.text">Codec</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/Codec.html#encode(java.lang.String)"><B>encode(String)</B></A> - 
Static method in enum org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/Codec.html" title="enum in org.apache.abdera2.common.text">Codec</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/Codec.html#encode(java.lang.String, java.lang.String)"><B>encode(String, String)</B></A> - 
Static method in enum org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/Codec.html" title="enum in org.apache.abdera2.common.text">Codec</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/Codec.StarCodec.html#encode(java.lang.Object)"><B>encode(Object)</B></A> - 
Method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/Codec.StarCodec.html" title="class in org.apache.abdera2.common.text">Codec.StarCodec</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/Codec.StarCodec.html#encode(java.lang.String)"><B>encode(String)</B></A> - 
Method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/Codec.StarCodec.html" title="class in org.apache.abdera2.common.text">Codec.StarCodec</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/UrlEncoding.html#encode(char...)"><B>encode(char...)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/UrlEncoding.html" title="class in org.apache.abdera2.common.text">UrlEncoding</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/UrlEncoding.html#encode(char[], org.apache.abdera2.common.text.CharUtils.Profile)"><B>encode(char[], CharUtils.Profile)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/UrlEncoding.html" title="class in org.apache.abdera2.common.text">UrlEncoding</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/UrlEncoding.html#encode(char[], org.apache.abdera2.common.text.CharUtils.Profile...)"><B>encode(char[], CharUtils.Profile...)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/UrlEncoding.html" title="class in org.apache.abdera2.common.text">UrlEncoding</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/UrlEncoding.html#encode(char[], java.lang.String)"><B>encode(char[], String)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/UrlEncoding.html" title="class in org.apache.abdera2.common.text">UrlEncoding</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/UrlEncoding.html#encode(char[], java.lang.String, org.apache.abdera2.common.text.CharUtils.Profile)"><B>encode(char[], String, CharUtils.Profile)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/UrlEncoding.html" title="class in org.apache.abdera2.common.text">UrlEncoding</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/UrlEncoding.html#encode(char[], java.lang.String, org.apache.abdera2.common.text.CharUtils.Profile...)"><B>encode(char[], String, CharUtils.Profile...)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/UrlEncoding.html" title="class in org.apache.abdera2.common.text">UrlEncoding</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/UrlEncoding.html#encode(char[], int, int)"><B>encode(char[], int, int)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/UrlEncoding.html" title="class in org.apache.abdera2.common.text">UrlEncoding</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/UrlEncoding.html#encode(char[], int, int, java.lang.String)"><B>encode(char[], int, int, String)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/UrlEncoding.html" title="class in org.apache.abdera2.common.text">UrlEncoding</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/UrlEncoding.html#encode(char[], int, int, org.apache.abdera2.common.text.CharUtils.Profile)"><B>encode(char[], int, int, CharUtils.Profile)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/UrlEncoding.html" title="class in org.apache.abdera2.common.text">UrlEncoding</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/UrlEncoding.html#encode(char[], int, int, org.apache.abdera2.common.text.CharUtils.Profile...)"><B>encode(char[], int, int, CharUtils.Profile...)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/UrlEncoding.html" title="class in org.apache.abdera2.common.text">UrlEncoding</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/UrlEncoding.html#encode(char[], int, int, java.lang.String, org.apache.abdera2.common.text.CharUtils.Profile)"><B>encode(char[], int, int, String, CharUtils.Profile)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/UrlEncoding.html" title="class in org.apache.abdera2.common.text">UrlEncoding</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/UrlEncoding.html#encode(char[], int, int, java.lang.String, org.apache.abdera2.common.text.CharUtils.Profile...)"><B>encode(char[], int, int, String, CharUtils.Profile...)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/UrlEncoding.html" title="class in org.apache.abdera2.common.text">UrlEncoding</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/UrlEncoding.html#encode(java.io.InputStream)"><B>encode(InputStream)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/UrlEncoding.html" title="class in org.apache.abdera2.common.text">UrlEncoding</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/UrlEncoding.html#encode(java.io.InputStream, java.lang.String)"><B>encode(InputStream, String)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/UrlEncoding.html" title="class in org.apache.abdera2.common.text">UrlEncoding</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/UrlEncoding.html#encode(java.io.InputStream, java.lang.String, org.apache.abdera2.common.text.CharUtils.Profile)"><B>encode(InputStream, String, CharUtils.Profile)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/UrlEncoding.html" title="class in org.apache.abdera2.common.text">UrlEncoding</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/UrlEncoding.html#encode(java.io.InputStream, java.lang.String, java.lang.String)"><B>encode(InputStream, String, String)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/UrlEncoding.html" title="class in org.apache.abdera2.common.text">UrlEncoding</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/UrlEncoding.html#encode(java.io.InputStream, java.lang.String, java.lang.String, org.apache.abdera2.common.text.CharUtils.Profile)"><B>encode(InputStream, String, String, CharUtils.Profile)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/UrlEncoding.html" title="class in org.apache.abdera2.common.text">UrlEncoding</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/UrlEncoding.html#encode(java.io.InputStream, java.lang.String, java.lang.String, org.apache.abdera2.common.text.CharUtils.Profile...)"><B>encode(InputStream, String, String, CharUtils.Profile...)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/UrlEncoding.html" title="class in org.apache.abdera2.common.text">UrlEncoding</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/UrlEncoding.html#encode(java.io.InputStream, java.lang.String, org.apache.abdera2.common.text.CharUtils.Profile...)"><B>encode(InputStream, String, CharUtils.Profile...)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/UrlEncoding.html" title="class in org.apache.abdera2.common.text">UrlEncoding</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/UrlEncoding.html#encode(java.io.Reader)"><B>encode(Reader)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/UrlEncoding.html" title="class in org.apache.abdera2.common.text">UrlEncoding</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/UrlEncoding.html#encode(java.lang.Readable)"><B>encode(Readable)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/UrlEncoding.html" title="class in org.apache.abdera2.common.text">UrlEncoding</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/UrlEncoding.html#encode(java.io.Reader, java.lang.String)"><B>encode(Reader, String)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/UrlEncoding.html" title="class in org.apache.abdera2.common.text">UrlEncoding</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/UrlEncoding.html#encode(java.lang.Readable, java.lang.String)"><B>encode(Readable, String)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/UrlEncoding.html" title="class in org.apache.abdera2.common.text">UrlEncoding</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/UrlEncoding.html#encode(java.io.Reader, java.lang.String, org.apache.abdera2.common.text.CharUtils.Profile)"><B>encode(Reader, String, CharUtils.Profile)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/UrlEncoding.html" title="class in org.apache.abdera2.common.text">UrlEncoding</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/UrlEncoding.html#encode(java.io.Reader, org.apache.abdera2.common.text.CharUtils.Profile)"><B>encode(Reader, CharUtils.Profile)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/UrlEncoding.html" title="class in org.apache.abdera2.common.text">UrlEncoding</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/UrlEncoding.html#encode(java.io.Reader, org.apache.abdera2.common.text.CharUtils.Profile...)"><B>encode(Reader, CharUtils.Profile...)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/UrlEncoding.html" title="class in org.apache.abdera2.common.text">UrlEncoding</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/UrlEncoding.html#encode(java.lang.Readable, java.lang.String, org.apache.abdera2.common.text.CharUtils.Profile)"><B>encode(Readable, String, CharUtils.Profile)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/UrlEncoding.html" title="class in org.apache.abdera2.common.text">UrlEncoding</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/UrlEncoding.html#encode(java.lang.Readable, org.apache.abdera2.common.text.CharUtils.Profile)"><B>encode(Readable, CharUtils.Profile)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/UrlEncoding.html" title="class in org.apache.abdera2.common.text">UrlEncoding</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/UrlEncoding.html#encode(java.lang.Readable, org.apache.abdera2.common.text.CharUtils.Profile...)"><B>encode(Readable, CharUtils.Profile...)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/UrlEncoding.html" title="class in org.apache.abdera2.common.text">UrlEncoding</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/UrlEncoding.html#encode(java.lang.Readable, java.lang.String, org.apache.abdera2.common.text.CharUtils.Profile...)"><B>encode(Readable, String, CharUtils.Profile...)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/UrlEncoding.html" title="class in org.apache.abdera2.common.text">UrlEncoding</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/UrlEncoding.html#encode(java.io.Reader, java.lang.String, org.apache.abdera2.common.text.CharUtils.Profile...)"><B>encode(Reader, String, CharUtils.Profile...)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/UrlEncoding.html" title="class in org.apache.abdera2.common.text">UrlEncoding</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/UrlEncoding.html#encode(byte...)"><B>encode(byte...)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/UrlEncoding.html" title="class in org.apache.abdera2.common.text">UrlEncoding</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/UrlEncoding.html#encode(byte[], int, int)"><B>encode(byte[], int, int)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/UrlEncoding.html" title="class in org.apache.abdera2.common.text">UrlEncoding</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/UrlEncoding.html#encode(java.lang.CharSequence)"><B>encode(CharSequence)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/UrlEncoding.html" title="class in org.apache.abdera2.common.text">UrlEncoding</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/UrlEncoding.html#encode(java.lang.CharSequence, org.apache.abdera2.common.text.CharUtils.Profile)"><B>encode(CharSequence, CharUtils.Profile)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/UrlEncoding.html" title="class in org.apache.abdera2.common.text">UrlEncoding</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/UrlEncoding.html#encode(java.lang.CharSequence, org.apache.abdera2.common.text.CharUtils.Profile...)"><B>encode(CharSequence, CharUtils.Profile...)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/UrlEncoding.html" title="class in org.apache.abdera2.common.text">UrlEncoding</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/UrlEncoding.html#encode(java.lang.CharSequence, int, int)"><B>encode(CharSequence, int, int)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/UrlEncoding.html" title="class in org.apache.abdera2.common.text">UrlEncoding</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/UrlEncoding.html#encode(java.lang.CharSequence, int, int, org.apache.abdera2.common.text.CharUtils.Profile)"><B>encode(CharSequence, int, int, CharUtils.Profile)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/UrlEncoding.html" title="class in org.apache.abdera2.common.text">UrlEncoding</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/UrlEncoding.html#encode(java.lang.CharSequence, int, int, org.apache.abdera2.common.text.CharUtils.Profile...)"><B>encode(CharSequence, int, int, CharUtils.Profile...)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/UrlEncoding.html" title="class in org.apache.abdera2.common.text">UrlEncoding</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/UrlEncoding.html#encode(java.lang.CharSequence, int, int, java.lang.String, org.apache.abdera2.common.text.CharUtils.Profile...)"><B>encode(CharSequence, int, int, String, CharUtils.Profile...)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/UrlEncoding.html" title="class in org.apache.abdera2.common.text">UrlEncoding</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/UrlEncoding.html#encode(java.lang.CharSequence, java.lang.String, org.apache.abdera2.common.text.CharUtils.Profile...)"><B>encode(CharSequence, String, CharUtils.Profile...)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/UrlEncoding.html" title="class in org.apache.abdera2.common.text">UrlEncoding</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/io/CharsetSniffingInputStream.html#encoding"><B>encoding</B></A> - 
Variable in class org.apache.abdera2.common.io.<A HREF="./org/apache/abdera2/common/io/CharsetSniffingInputStream.html" title="class in org.apache.abdera2.common.io">CharsetSniffingInputStream</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/SimpleResponseContext.html#encoding"><B>encoding</B></A> - 
Variable in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/SimpleResponseContext.html" title="class in org.apache.abdera2.common.protocol">SimpleResponseContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractCollectionAdapter.html#end(org.apache.abdera2.common.protocol.RequestContext, org.apache.abdera2.common.protocol.ResponseContext)"><B>end(RequestContext, ResponseContext)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractCollectionAdapter.html" title="class in org.apache.abdera2.common.protocol">AbstractCollectionAdapter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/Transactional.html#end(org.apache.abdera2.common.protocol.RequestContext, org.apache.abdera2.common.protocol.ResponseContext)"><B>end(RequestContext, ResponseContext)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/Transactional.html" title="interface in org.apache.abdera2.common.protocol">Transactional</A>
<DD>Called by the provider after dispatching the request to the adapter
<DT><A HREF="./org/apache/abdera2/common/http/EntityTag.html" title="class in org.apache.abdera2.common.http"><B>EntityTag</B></A> - Class in <A HREF="./org/apache/abdera2/common/http/package-summary.html">org.apache.abdera2.common.http</A><DD>Implements an EntityTag.<DT><A HREF="./org/apache/abdera2/common/http/EntityTag.html#EntityTag(java.lang.String)"><B>EntityTag(String)</B></A> - 
Constructor for class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/EntityTag.html" title="class in org.apache.abdera2.common.http">EntityTag</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/EntityTag.html#EntityTag(java.lang.String, boolean)"><B>EntityTag(String, boolean)</B></A> - 
Constructor for class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/EntityTag.html" title="class in org.apache.abdera2.common.http">EntityTag</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/EntityTag.EntityTagGenerator.html" title="interface in org.apache.abdera2.common.http"><B>EntityTag.EntityTagGenerator</B></A>&lt;<A HREF="./org/apache/abdera2/common/http/EntityTag.EntityTagGenerator.html" title="type parameter in EntityTag.EntityTagGenerator">T</A>&gt; - Interface in <A HREF="./org/apache/abdera2/common/http/package-summary.html">org.apache.abdera2.common.http</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/http/EntityTag.ETagGenerator.html" title="annotation in org.apache.abdera2.common.http"><B>EntityTag.ETagGenerator</B></A> - Annotation Type in <A HREF="./org/apache/abdera2/common/http/package-summary.html">org.apache.abdera2.common.http</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/Constants.html#ENTRY"><B>ENTRY</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/TargetType.html#ENTRY"><B>ENTRY</B></A> - 
Static variable in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/TargetType.html" title="class in org.apache.abdera2.common.protocol">TargetType</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#ENTRY_MEDIA_TYPE"><B>ENTRY_MEDIA_TYPE</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/EntryRequestProcessor.html" title="class in org.apache.abdera2.common.protocol"><B>EntryRequestProcessor</B></A> - Class in <A HREF="./org/apache/abdera2/common/protocol/package-summary.html">org.apache.abdera2.common.protocol</A><DD><CODE>org.apache.AtompubRequestProcessor.protocol.server.RequestProcessor</CODE> implementation which processes requests for entry
 documents.<DT><A HREF="./org/apache/abdera2/common/protocol/EntryRequestProcessor.html#EntryRequestProcessor()"><B>EntryRequestProcessor()</B></A> - 
Constructor for class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/EntryRequestProcessor.html" title="class in org.apache.abdera2.common.protocol">EntryRequestProcessor</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/date/DateTime.html#equals(java.lang.Object)"><B>equals(Object)</B></A> - 
Method in class org.apache.abdera2.common.date.<A HREF="./org/apache/abdera2/common/date/DateTime.html" title="class in org.apache.abdera2.common.date">DateTime</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Coordinate.html#equals(java.lang.Object)"><B>equals(Object)</B></A> - 
Method in class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Coordinate.html" title="class in org.apache.abdera2.common.geo">Coordinate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Coordinates.html#equals(java.lang.Object)"><B>equals(Object)</B></A> - 
Method in class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Coordinates.html" title="class in org.apache.abdera2.common.geo">Coordinates</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Multiple.html#equals(java.lang.Object)"><B>equals(Object)</B></A> - 
Method in class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Multiple.html" title="class in org.apache.abdera2.common.geo">Multiple</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Point.html#equals(java.lang.Object)"><B>equals(Object)</B></A> - 
Method in class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Point.html" title="class in org.apache.abdera2.common.geo">Point</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Position.html#equals(java.lang.Object)"><B>equals(Object)</B></A> - 
Method in class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Position.html" title="class in org.apache.abdera2.common.geo">Position</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/Authentication.html#equals(java.lang.Object)"><B>equals(Object)</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/Authentication.html" title="class in org.apache.abdera2.common.http">Authentication</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/CacheControl.html#equals(java.lang.Object)"><B>equals(Object)</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/CacheControl.html" title="class in org.apache.abdera2.common.http">CacheControl</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/EntityTag.html#equals(java.lang.Object)"><B>equals(Object)</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/EntityTag.html" title="class in org.apache.abdera2.common.http">EntityTag</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/EntityTag.html#equals(java.lang.Object, boolean)"><B>equals(Object, boolean)</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/EntityTag.html" title="class in org.apache.abdera2.common.http">EntityTag</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/Method.html#equals(java.lang.Object)"><B>equals(Object)</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/Method.html" title="class in org.apache.abdera2.common.http">Method</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/Preference.html#equals(java.lang.Object)"><B>equals(Object)</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/Preference.html" title="class in org.apache.abdera2.common.http">Preference</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/QualityHelper.QToken.html#equals(java.lang.Object)"><B>equals(Object)</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/QualityHelper.QToken.html" title="class in org.apache.abdera2.common.http">QualityHelper.QToken</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/WebLink.html#equals(java.lang.Object)"><B>equals(Object)</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/WebLink.html" title="class in org.apache.abdera2.common.http">WebLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/io/CharsetSniffingInputStream.Encoding.html#equals(byte[])"><B>equals(byte[])</B></A> - 
Method in enum org.apache.abdera2.common.io.<A HREF="./org/apache/abdera2/common/io/CharsetSniffingInputStream.Encoding.html" title="enum in org.apache.abdera2.common.io">CharsetSniffingInputStream.Encoding</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/iri/AbstractScheme.html#equals(java.lang.Object)"><B>equals(Object)</B></A> - 
Method in class org.apache.abdera2.common.iri.<A HREF="./org/apache/abdera2/common/iri/AbstractScheme.html" title="class in org.apache.abdera2.common.iri">AbstractScheme</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/iri/IRI.html#equals(java.lang.Object)"><B>equals(Object)</B></A> - 
Method in class org.apache.abdera2.common.iri.<A HREF="./org/apache/abdera2/common/iri/IRI.html" title="class in org.apache.abdera2.common.iri">IRI</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/lang/Subtag.html#equals(java.lang.Object)"><B>equals(Object)</B></A> - 
Method in class org.apache.abdera2.common.lang.<A HREF="./org/apache/abdera2/common/lang/Subtag.html" title="class in org.apache.abdera2.common.lang">Subtag</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/lang/SubtagSet.html#equals(java.lang.Object)"><B>equals(Object)</B></A> - 
Method in class org.apache.abdera2.common.lang.<A HREF="./org/apache/abdera2/common/lang/SubtagSet.html" title="class in org.apache.abdera2.common.lang">SubtagSet</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BasicCollectionInfo.html#equals(java.lang.Object)"><B>equals(Object)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BasicCollectionInfo.html" title="class in org.apache.abdera2.common.protocol">BasicCollectionInfo</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BasicWorkspaceInfo.html#equals(java.lang.Object)"><B>equals(Object)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BasicWorkspaceInfo.html" title="class in org.apache.abdera2.common.protocol">BasicWorkspaceInfo</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/RegexTargetResolver.html#equals(java.lang.Object)"><B>equals(Object)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/RegexTargetResolver.html" title="class in org.apache.abdera2.common.protocol">RegexTargetResolver</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/RegexTargetResolver.RegexTarget.html#equals(java.lang.Object)"><B>equals(Object)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/RegexTargetResolver.RegexTarget.html" title="class in org.apache.abdera2.common.protocol">RegexTargetResolver.RegexTarget</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/SimpleSubjectResolver.AnonymousPrincipal.html#equals(java.lang.Object)"><B>equals(Object)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/SimpleSubjectResolver.AnonymousPrincipal.html" title="class in org.apache.abdera2.common.protocol">SimpleSubjectResolver.AnonymousPrincipal</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/SimpleTarget.html#equals(java.lang.Object)"><B>equals(Object)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/SimpleTarget.html" title="class in org.apache.abdera2.common.protocol">SimpleTarget</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/TargetType.html#equals(java.lang.Object)"><B>equals(Object)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/TargetType.html" title="class in org.apache.abdera2.common.protocol">TargetType</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/Expression.html#equals(java.lang.Object)"><B>equals(Object)</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/Expression.html" title="class in org.apache.abdera2.common.templates">Expression</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/Expression.VarSpec.html#equals(java.lang.Object)"><B>equals(Object)</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/Expression.VarSpec.html" title="class in org.apache.abdera2.common.templates">Expression.VarSpec</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/MapContext.html#equals(java.lang.Object)"><B>equals(Object)</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/MapContext.html" title="class in org.apache.abdera2.common.templates">MapContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/ObjectContext.html#equals(java.lang.Object)"><B>equals(Object)</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/ObjectContext.html" title="class in org.apache.abdera2.common.templates">ObjectContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/Route.html#equals(java.lang.Object)"><B>equals(Object)</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/Route.html" title="class in org.apache.abdera2.common.templates">Route</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/Template.html#equals(java.lang.Object)"><B>equals(Object)</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/Template.html" title="class in org.apache.abdera2.common.templates">Template</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/TemplateManager.html#equals(java.lang.Object)"><B>equals(Object)</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/TemplateManager.html" title="class in org.apache.abdera2.common.templates">TemplateManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/Slug.html#equals(java.lang.Object)"><B>equals(Object)</B></A> - 
Method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/Slug.html" title="class in org.apache.abdera2.common.text">Slug</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/AbstractAbderaServlet.html#error(java.lang.String, java.lang.Throwable, javax.servlet.http.HttpServletResponse)"><B>error(String, Throwable, HttpServletResponse)</B></A> - 
Method in class org.apache.abdera2.common.protocol.servlet.<A HREF="./org/apache/abdera2/common/protocol/servlet/AbstractAbderaServlet.html" title="class in org.apache.abdera2.common.protocol.servlet">AbstractAbderaServlet</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/async/AbderaTask.html#error(java.lang.String, java.lang.Throwable, javax.servlet.http.HttpServletResponse, org.apache.abdera2.common.protocol.Provider)"><B>error(String, Throwable, HttpServletResponse, Provider)</B></A> - 
Method in class org.apache.abdera2.common.protocol.servlet.async.<A HREF="./org/apache/abdera2/common/protocol/servlet/async/AbderaTask.html" title="class in org.apache.abdera2.common.protocol.servlet.async">AbderaTask</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/Operation.html#eval(org.apache.abdera2.common.templates.Expression.VarSpec, org.apache.abdera2.common.templates.Context, boolean, java.lang.String, java.lang.String)"><B>eval(Expression.VarSpec, Context, boolean, String, String)</B></A> - 
Static method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/Operation.html" title="class in org.apache.abdera2.common.templates">Operation</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/Expression.html#evaluate(org.apache.abdera2.common.templates.Context)"><B>evaluate(Context)</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/Expression.html" title="class in org.apache.abdera2.common.templates">Expression</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/Operation.html#evaluate(org.apache.abdera2.common.templates.Expression, org.apache.abdera2.common.templates.Context)"><B>evaluate(Expression, Context)</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/Operation.html" title="class in org.apache.abdera2.common.templates">Operation</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/async/DefaultTaskExecutor.html#execute(java.lang.Runnable)"><B>execute(Runnable)</B></A> - 
Method in class org.apache.abdera2.common.protocol.servlet.async.<A HREF="./org/apache/abdera2/common/protocol/servlet/async/DefaultTaskExecutor.html" title="class in org.apache.abdera2.common.protocol.servlet.async">DefaultTaskExecutor</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/QueryContext.html#expand(boolean)"><B>expand(boolean)</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/QueryContext.html" title="class in org.apache.abdera2.common.templates">QueryContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/QueryContext.html#expand()"><B>expand()</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/QueryContext.html" title="class in org.apache.abdera2.common.templates">QueryContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/QueryContext.html#expand(boolean, org.apache.abdera2.common.templates.Context)"><B>expand(boolean, Context)</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/QueryContext.html" title="class in org.apache.abdera2.common.templates">QueryContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/QueryContext.html#expand(org.apache.abdera2.common.templates.Context)"><B>expand(Context)</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/QueryContext.html" title="class in org.apache.abdera2.common.templates">QueryContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/Route.html#expand(org.apache.abdera2.common.templates.Context)"><B>expand(Context)</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/Route.html" title="class in org.apache.abdera2.common.templates">Route</A>
<DD>Expand the route pattern given the specified context
<DT><A HREF="./org/apache/abdera2/common/templates/Route.html#expand(java.lang.Object)"><B>expand(Object)</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/Route.html" title="class in org.apache.abdera2.common.templates">Route</A>
<DD>Expand the route pattern given the specified context object
<DT><A HREF="./org/apache/abdera2/common/templates/Route.html#expand(java.lang.Object, boolean)"><B>expand(Object, boolean)</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/Route.html" title="class in org.apache.abdera2.common.templates">Route</A>
<DD>Expand the route pattern using IRI escaping rules
<DT><A HREF="./org/apache/abdera2/common/templates/Route.html#expand(java.lang.String, org.apache.abdera2.common.templates.Context)"><B>expand(String, Context)</B></A> - 
Static method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/Route.html" title="class in org.apache.abdera2.common.templates">Route</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/Route.html#expand(java.lang.String, java.lang.Object)"><B>expand(String, Object)</B></A> - 
Static method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/Route.html" title="class in org.apache.abdera2.common.templates">Route</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/Route.html#expand(java.lang.String, java.lang.Object, boolean)"><B>expand(String, Object, boolean)</B></A> - 
Static method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/Route.html" title="class in org.apache.abdera2.common.templates">Route</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/Template.html#expand(org.apache.abdera2.common.templates.Context)"><B>expand(Context)</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/Template.html" title="class in org.apache.abdera2.common.templates">Template</A>
<DD>Expand the URI Template using the specified Context.
<DT><A HREF="./org/apache/abdera2/common/templates/Template.html#expand(java.lang.Object)"><B>expand(Object)</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/Template.html" title="class in org.apache.abdera2.common.templates">Template</A>
<DD>Expand the URI Template using the non-private fields and methods of the specified object to resolve the template
 tokens
<DT><A HREF="./org/apache/abdera2/common/templates/Template.html#expand(java.lang.Object, boolean)"><B>expand(Object, boolean)</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/Template.html" title="class in org.apache.abdera2.common.templates">Template</A>
<DD>Expand the template using the non-private fields and methods of the specified object to resolve the template
 tokens.
<DT><A HREF="./org/apache/abdera2/common/templates/Template.html#expand(java.lang.String, org.apache.abdera2.common.templates.Context)"><B>expand(String, Context)</B></A> - 
Static method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/Template.html" title="class in org.apache.abdera2.common.templates">Template</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/Template.html#expand(java.lang.String, java.lang.Object)"><B>expand(String, Object)</B></A> - 
Static method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/Template.html" title="class in org.apache.abdera2.common.templates">Template</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/Template.html#expand(java.lang.String, java.lang.Object, boolean)"><B>expand(String, Object, boolean)</B></A> - 
Static method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/Template.html" title="class in org.apache.abdera2.common.templates">Template</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/TemplateManager.html#expand(T, java.lang.Object)"><B>expand(T, Object)</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/TemplateManager.html" title="class in org.apache.abdera2.common.templates">TemplateManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/TemplateManager.html#expand(T)"><B>expand(T)</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/TemplateManager.html" title="class in org.apache.abdera2.common.templates">TemplateManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/TemplateManager.html#expand(T, org.apache.abdera2.common.templates.Context)"><B>expand(T, Context)</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/TemplateManager.html" title="class in org.apache.abdera2.common.templates">TemplateManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/TemplateManager.html#expandAndResolve(T, java.lang.Object, java.lang.String)"><B>expandAndResolve(T, Object, String)</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/TemplateManager.html" title="class in org.apache.abdera2.common.templates">TemplateManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/TemplateManager.html#expandAndResolve(T, java.lang.Object, org.apache.abdera2.common.iri.IRI)"><B>expandAndResolve(T, Object, IRI)</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/TemplateManager.html" title="class in org.apache.abdera2.common.templates">TemplateManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/TemplateManager.html#expandAndResolve(T, java.lang.Object)"><B>expandAndResolve(T, Object)</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/TemplateManager.html" title="class in org.apache.abdera2.common.templates">TemplateManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/TemplateManager.html#expandAndResolve(T, org.apache.abdera2.common.templates.Context, java.lang.String)"><B>expandAndResolve(T, Context, String)</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/TemplateManager.html" title="class in org.apache.abdera2.common.templates">TemplateManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/TemplateManager.html#expandAndResolve(T, org.apache.abdera2.common.templates.Context, org.apache.abdera2.common.iri.IRI)"><B>expandAndResolve(T, Context, IRI)</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/TemplateManager.html" title="class in org.apache.abdera2.common.templates">TemplateManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/TemplateManager.html#expandAndResolve(T, org.apache.abdera2.common.templates.Context)"><B>expandAndResolve(T, Context)</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/TemplateManager.html" title="class in org.apache.abdera2.common.templates">TemplateManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/Route.html#expandAnnotated(java.lang.Object)"><B>expandAnnotated(Object)</B></A> - 
Static method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/Route.html" title="class in org.apache.abdera2.common.templates">Route</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/Template.html#expandAnnotated(java.lang.Object)"><B>expandAnnotated(Object)</B></A> - 
Static method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/Template.html" title="class in org.apache.abdera2.common.templates">Template</A>
<DD>Use an Object annotated with the URITemplate annotation to expand a template
<DT><A HREF="./org/apache/abdera2/common/templates/QueryContext.html#expandQuery(java.lang.String, org.apache.abdera2.common.templates.Context)"><B>expandQuery(String, Context)</B></A> - 
Static method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/QueryContext.html" title="class in org.apache.abdera2.common.templates">QueryContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/QueryContext.html#expandQuery(java.lang.String, org.apache.abdera2.common.templates.Context, java.lang.String)"><B>expandQuery(String, Context, String)</B></A> - 
Static method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/QueryContext.html" title="class in org.apache.abdera2.common.templates">QueryContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/QueryContext.html#expandQuery(java.lang.String, org.apache.abdera2.common.templates.Context, org.apache.abdera2.common.templates.Template)"><B>expandQuery(String, Context, Template)</B></A> - 
Static method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/QueryContext.html" title="class in org.apache.abdera2.common.templates">QueryContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/Expression.html" title="class in org.apache.abdera2.common.templates"><B>Expression</B></A> - Class in <A HREF="./org/apache/abdera2/common/templates/package-summary.html">org.apache.abdera2.common.templates</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/templates/Expression.html#Expression(java.lang.String)"><B>Expression(String)</B></A> - 
Constructor for class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/Expression.html" title="class in org.apache.abdera2.common.templates">Expression</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/Expression.VarSpec.html" title="class in org.apache.abdera2.common.templates"><B>Expression.VarSpec</B></A> - Class in <A HREF="./org/apache/abdera2/common/templates/package-summary.html">org.apache.abdera2.common.templates</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/templates/Expression.VarSpec.html#Expression.VarSpec(java.lang.String, java.lang.String)"><B>Expression.VarSpec(String, String)</B></A> - 
Constructor for class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/Expression.VarSpec.html" title="class in org.apache.abdera2.common.templates">Expression.VarSpec</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/Template.html#extend(org.apache.abdera2.common.templates.Template)"><B>extend(Template)</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/Template.html" title="class in org.apache.abdera2.common.templates">Template</A>
<DD>Create a new Template by appending the given template to this
<DT><A HREF="./org/apache/abdera2/common/templates/Template.html#extend(java.lang.String)"><B>extend(String)</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/Template.html" title="class in org.apache.abdera2.common.templates">Template</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/lang/Lang.html#extension()"><B>extension()</B></A> - 
Method in class org.apache.abdera2.common.lang.<A HREF="./org/apache/abdera2/common/lang/Lang.html" title="class in org.apache.abdera2.common.lang">Lang</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/lang/Lang.html#extension(java.lang.String)"><B>extension(String)</B></A> - 
Method in class org.apache.abdera2.common.lang.<A HREF="./org/apache/abdera2/common/lang/Lang.html" title="class in org.apache.abdera2.common.lang">Lang</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractCollectionAdapter.html#extensionRequest(org.apache.abdera2.common.protocol.RequestContext)"><B>extensionRequest(RequestContext)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractCollectionAdapter.html" title="class in org.apache.abdera2.common.protocol">AbstractCollectionAdapter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/CollectionAdapter.html#extensionRequest(org.apache.abdera2.common.protocol.RequestContext)"><B>extensionRequest(RequestContext)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/CollectionAdapter.html" title="interface in org.apache.abdera2.common.protocol">CollectionAdapter</A>
<DD>Any request that is not covered by the postEntry, deleteEntry, etc methods will be passed on to the
 extensionRequest method.
<DT><A HREF="./org/apache/abdera2/common/lang/Lang.html#extensions()"><B>extensions()</B></A> - 
Method in class org.apache.abdera2.common.lang.<A HREF="./org/apache/abdera2/common/lang/Lang.html" title="class in org.apache.abdera2.common.lang">Lang</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/lang/Lang.html#extlang()"><B>extlang()</B></A> - 
Method in class org.apache.abdera2.common.lang.<A HREF="./org/apache/abdera2/common/lang/Lang.html" title="class in org.apache.abdera2.common.lang">Lang</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/lang/Subtag.html#extractExtensionGroup()"><B>extractExtensionGroup()</B></A> - 
Method in class org.apache.abdera2.common.lang.<A HREF="./org/apache/abdera2/common/lang/Subtag.html" title="class in org.apache.abdera2.common.lang">Subtag</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/CacheControl.html#exts"><B>exts</B></A> - 
Variable in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/CacheControl.html" title="class in org.apache.abdera2.common.http">CacheControl</A>
<DD>&nbsp;
</DL>
<HR>
<A NAME="_F_"><!-- --></A><H2>
<B>F</B></H2>
<DL>
<DT><A HREF="./org/apache/abdera2/common/geo/Position.html#featureTypeTag"><B>featureTypeTag</B></A> - 
Variable in class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Position.html" title="class in org.apache.abdera2.common.geo">Position</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#FEED"><B>FEED</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#FEED_MEDIA_TYPE"><B>FEED_MEDIA_TYPE</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/RegexTargetResolver.html#fields"><B>fields</B></A> - 
Variable in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/RegexTargetResolver.html" title="class in org.apache.abdera2.common.protocol">RegexTargetResolver</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/RegexTargetResolver.RegexTarget.html#fields"><B>fields</B></A> - 
Variable in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/RegexTargetResolver.RegexTarget.html" title="class in org.apache.abdera2.common.protocol">RegexTargetResolver.RegexTarget</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/lang/Range.html#filter(org.apache.abdera2.common.lang.Lang...)"><B>filter(Lang...)</B></A> - 
Method in class org.apache.abdera2.common.lang.<A HREF="./org/apache/abdera2/common/lang/Range.html" title="class in org.apache.abdera2.common.lang">Range</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/lang/Range.html#filter(java.lang.String...)"><B>filter(String...)</B></A> - 
Method in class org.apache.abdera2.common.lang.<A HREF="./org/apache/abdera2/common/lang/Range.html" title="class in org.apache.abdera2.common.lang">Range</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/lang/Range.html#filter(java.lang.String, org.apache.abdera2.common.lang.Lang...)"><B>filter(String, Lang...)</B></A> - 
Static method in class org.apache.abdera2.common.lang.<A HREF="./org/apache/abdera2/common/lang/Range.html" title="class in org.apache.abdera2.common.lang">Range</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/lang/Range.html#filter(java.lang.String, java.lang.String...)"><B>filter(String, String...)</B></A> - 
Static method in class org.apache.abdera2.common.lang.<A HREF="./org/apache/abdera2/common/lang/Range.html" title="class in org.apache.abdera2.common.lang">Range</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/CompressionFilter.html#filter(org.apache.abdera2.common.protocol.RequestContext, org.apache.abdera2.common.protocol.FilterChain)"><B>filter(RequestContext, FilterChain)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/CompressionFilter.html" title="class in org.apache.abdera2.common.protocol">CompressionFilter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/Filter.html" title="interface in org.apache.abdera2.common.protocol"><B>Filter</B></A> - Interface in <A HREF="./org/apache/abdera2/common/protocol/package-summary.html">org.apache.abdera2.common.protocol</A><DD>Filters are invoked by AbderaServlet immediately before passing the request off to the Provider for processing The
 filters use a model generally identical to that of Servlet Filters, with each filter forwarding the request on to the
 next filter in the chain.<DT><A HREF="./org/apache/abdera2/common/protocol/Filter.html#filter(org.apache.abdera2.common.protocol.RequestContext, org.apache.abdera2.common.protocol.FilterChain)"><B>filter(RequestContext, FilterChain)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/Filter.html" title="interface in org.apache.abdera2.common.protocol">Filter</A>
<DD>Process the filter request.
<DT><A HREF="./org/apache/abdera2/common/protocol/MethodOverrideFilter.html#filter(org.apache.abdera2.common.protocol.RequestContext, org.apache.abdera2.common.protocol.FilterChain)"><B>filter(RequestContext, FilterChain)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/MethodOverrideFilter.html" title="class in org.apache.abdera2.common.protocol">MethodOverrideFilter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/CharUtils.Profile.html#filter()"><B>filter()</B></A> - 
Method in enum org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/CharUtils.Profile.html" title="enum in org.apache.abdera2.common.text">CharUtils.Profile</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/CharUtils.Profile.html#filter(int)"><B>filter(int)</B></A> - 
Method in enum org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/CharUtils.Profile.html" title="enum in org.apache.abdera2.common.text">CharUtils.Profile</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/FilterChain.html" title="class in org.apache.abdera2.common.protocol"><B>FilterChain</B></A> - Class in <A HREF="./org/apache/abdera2/common/protocol/package-summary.html">org.apache.abdera2.common.protocol</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/protocol/FilterChain.html#FilterChain(org.apache.abdera2.common.protocol.Provider, org.apache.abdera2.common.protocol.RequestContext)"><B>FilterChain(Provider, RequestContext)</B></A> - 
Constructor for class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/FilterChain.html" title="class in org.apache.abdera2.common.protocol">FilterChain</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/io/FilteredCharReader.html" title="class in org.apache.abdera2.common.io"><B>FilteredCharReader</B></A> - Class in <A HREF="./org/apache/abdera2/common/io/package-summary.html">org.apache.abdera2.common.io</A><DD>A reader implementation that profiles out unwanted characters By default, unwanted characters are simply removed from
 the stream.<DT><A HREF="./org/apache/abdera2/common/io/FilteredCharReader.html#FilteredCharReader(java.io.InputStream, org.apache.abdera2.common.text.CharUtils.Profile)"><B>FilteredCharReader(InputStream, CharUtils.Profile)</B></A> - 
Constructor for class org.apache.abdera2.common.io.<A HREF="./org/apache/abdera2/common/io/FilteredCharReader.html" title="class in org.apache.abdera2.common.io">FilteredCharReader</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/io/FilteredCharReader.html#FilteredCharReader(java.io.InputStream, java.lang.String, org.apache.abdera2.common.text.CharUtils.Profile)"><B>FilteredCharReader(InputStream, String, CharUtils.Profile)</B></A> - 
Constructor for class org.apache.abdera2.common.io.<A HREF="./org/apache/abdera2/common/io/FilteredCharReader.html" title="class in org.apache.abdera2.common.io">FilteredCharReader</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/io/FilteredCharReader.html#FilteredCharReader(java.io.InputStream, org.apache.abdera2.common.text.CharUtils.Profile, char)"><B>FilteredCharReader(InputStream, CharUtils.Profile, char)</B></A> - 
Constructor for class org.apache.abdera2.common.io.<A HREF="./org/apache/abdera2/common/io/FilteredCharReader.html" title="class in org.apache.abdera2.common.io">FilteredCharReader</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/io/FilteredCharReader.html#FilteredCharReader(java.io.InputStream, java.lang.String, org.apache.abdera2.common.text.CharUtils.Profile, char)"><B>FilteredCharReader(InputStream, String, CharUtils.Profile, char)</B></A> - 
Constructor for class org.apache.abdera2.common.io.<A HREF="./org/apache/abdera2/common/io/FilteredCharReader.html" title="class in org.apache.abdera2.common.io">FilteredCharReader</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/io/FilteredCharReader.html#FilteredCharReader(java.io.Reader)"><B>FilteredCharReader(Reader)</B></A> - 
Constructor for class org.apache.abdera2.common.io.<A HREF="./org/apache/abdera2/common/io/FilteredCharReader.html" title="class in org.apache.abdera2.common.io">FilteredCharReader</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/io/FilteredCharReader.html#FilteredCharReader(java.io.Reader, org.apache.abdera2.common.text.CharUtils.Profile)"><B>FilteredCharReader(Reader, CharUtils.Profile)</B></A> - 
Constructor for class org.apache.abdera2.common.io.<A HREF="./org/apache/abdera2/common/io/FilteredCharReader.html" title="class in org.apache.abdera2.common.io">FilteredCharReader</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/io/FilteredCharReader.html#FilteredCharReader(java.io.Reader, char)"><B>FilteredCharReader(Reader, char)</B></A> - 
Constructor for class org.apache.abdera2.common.io.<A HREF="./org/apache/abdera2/common/io/FilteredCharReader.html" title="class in org.apache.abdera2.common.io">FilteredCharReader</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/io/FilteredCharReader.html#FilteredCharReader(java.io.Reader, org.apache.abdera2.common.text.CharUtils.Profile, char)"><B>FilteredCharReader(Reader, CharUtils.Profile, char)</B></A> - 
Constructor for class org.apache.abdera2.common.io.<A HREF="./org/apache/abdera2/common/io/FilteredCharReader.html" title="class in org.apache.abdera2.common.io">FilteredCharReader</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseProvider.html#filters"><B>filters</B></A> - 
Variable in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseProvider.html" title="class in org.apache.abdera2.common.protocol">BaseProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/async/AbderaChannelServlet.AsyncListener.html#finish()"><B>finish()</B></A> - 
Method in class org.apache.abdera2.common.protocol.servlet.async.<A HREF="./org/apache/abdera2/common/protocol/servlet/async/AbderaChannelServlet.AsyncListener.html" title="class in org.apache.abdera2.common.protocol.servlet.async">AbderaChannelServlet.AsyncListener</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#FIXED"><B>FIXED</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/CacheControl.html#flags"><B>flags</B></A> - 
Variable in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/CacheControl.html" title="class in org.apache.abdera2.common.http">CacheControl</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractMessage.html#flags"><B>flags</B></A> - 
Variable in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractMessage.html" title="class in org.apache.abdera2.common.protocol">AbstractMessage</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Position.html#floor"><B>floor</B></A> - 
Variable in class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Position.html" title="class in org.apache.abdera2.common.geo">Position</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/ProviderHelper.html#forbidden(org.apache.abdera2.common.protocol.RequestContext, java.lang.String)"><B>forbidden(RequestContext, String)</B></A> - 
Static method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ProviderHelper.html" title="class in org.apache.abdera2.common.protocol">ProviderHelper</A>
<DD>Return an unauthorized error
<DT><A HREF="./org/apache/abdera2/common/protocol/ProviderHelper.html#forbidden(org.apache.abdera2.common.protocol.RequestContext)"><B>forbidden(RequestContext)</B></A> - 
Static method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ProviderHelper.html" title="class in org.apache.abdera2.common.protocol">ProviderHelper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/date/DateTime.html#format(java.util.Date)"><B>format(Date)</B></A> - 
Static method in class org.apache.abdera2.common.date.<A HREF="./org/apache/abdera2/common/date/DateTime.html" title="class in org.apache.abdera2.common.date">DateTime</A>
<DD>Create the serialized string form from a java.util.Date
<DT><A HREF="./org/apache/abdera2/common/date/DateTime.html#formatNow()"><B>formatNow()</B></A> - 
Static method in class org.apache.abdera2.common.date.<A HREF="./org/apache/abdera2/common/date/DateTime.html" title="class in org.apache.abdera2.common.date">DateTime</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/lang/Lang.html#fromLocale(java.util.Locale)"><B>fromLocale(Locale)</B></A> - 
Static method in class org.apache.abdera2.common.lang.<A HREF="./org/apache/abdera2/common/lang/Lang.html" title="class in org.apache.abdera2.common.lang">Lang</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/TemplateManager.html#fromMap(java.util.Map)"><B>fromMap(Map&lt;T, Object&gt;)</B></A> - 
Static method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/TemplateManager.html" title="class in org.apache.abdera2.common.templates">TemplateManager</A>
<DD>&nbsp;
</DL>
<HR>
<A NAME="_G_"><!-- --></A><H2>
<B>G</B></H2>
<DL>
<DT><A HREF="./org/apache/abdera2/common/http/EntityTag.html#generate(java.lang.String...)"><B>generate(String...)</B></A> - 
Static method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/EntityTag.html" title="class in org.apache.abdera2.common.http">EntityTag</A>
<DD>Utility method for generating ETags.
<DT><A HREF="./org/apache/abdera2/common/http/EntityTag.html#generate(T)"><B>generate(T)</B></A> - 
Static method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/EntityTag.html" title="class in org.apache.abdera2.common.http">EntityTag</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/EntityTag.EntityTagGenerator.html#generateFor(T)"><B>generateFor(T)</B></A> - 
Method in interface org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/EntityTag.EntityTagGenerator.html" title="interface in org.apache.abdera2.common.http">EntityTag.EntityTagGenerator</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#GENERATOR"><B>GENERATOR</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/EntityTag.html#generator(T, org.apache.abdera2.common.http.EntityTag.EntityTagGenerator)"><B>generator(T, EntityTag.EntityTagGenerator&lt;T&gt;)</B></A> - 
Static method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/EntityTag.html" title="class in org.apache.abdera2.common.http">EntityTag</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Coordinates.html#get(int)"><B>get(int)</B></A> - 
Method in class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Coordinates.html" title="class in org.apache.abdera2.common.geo">Coordinates</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/Method.html#GET"><B>GET</B></A> - 
Static variable in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/Method.html" title="class in org.apache.abdera2.common.http">Method</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/Method.html#get(java.lang.String)"><B>get(String)</B></A> - 
Static method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/Method.html" title="class in org.apache.abdera2.common.http">Method</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/Method.html#get(java.lang.String, boolean)"><B>get(String, boolean)</B></A> - 
Static method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/Method.html" title="class in org.apache.abdera2.common.http">Method</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/iri/SchemeRegistry.html#get(java.lang.String)"><B>get(String)</B></A> - 
Static method in class org.apache.abdera2.common.iri.<A HREF="./org/apache/abdera2/common/iri/SchemeRegistry.html" title="class in org.apache.abdera2.common.iri">SchemeRegistry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/lang/SubtagSet.html#get(int)"><B>get(int)</B></A> - 
Method in class org.apache.abdera2.common.lang.<A HREF="./org/apache/abdera2/common/lang/SubtagSet.html" title="class in org.apache.abdera2.common.lang">SubtagSet</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Localizer.html#get(java.lang.String)"><B>get(String)</B></A> - 
Static method in class org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Localizer.html" title="class in org.apache.abdera2.common">Localizer</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Localizer.html#get(java.lang.String, java.lang.String)"><B>get(String, String)</B></A> - 
Static method in class org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Localizer.html" title="class in org.apache.abdera2.common">Localizer</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/misc/ItemManager.html#get(R)"><B>get(R)</B></A> - 
Method in interface org.apache.abdera2.common.misc.<A HREF="./org/apache/abdera2/common/misc/ItemManager.html" title="interface in org.apache.abdera2.common.misc">ItemManager</A>
<DD>Get an item based on the specified request
<DT><A HREF="./org/apache/abdera2/common/misc/PoolManager.html#get(R)"><B>get(R)</B></A> - 
Method in class org.apache.abdera2.common.misc.<A HREF="./org/apache/abdera2/common/misc/PoolManager.html" title="class in org.apache.abdera2.common.misc">PoolManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/TargetType.html#get(java.lang.String)"><B>get(String)</B></A> - 
Static method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/TargetType.html" title="class in org.apache.abdera2.common.protocol">TargetType</A>
<DD>Get the specified target type
<DT><A HREF="./org/apache/abdera2/common/protocol/TargetType.html#get(java.lang.String, boolean)"><B>get(String, boolean)</B></A> - 
Static method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/TargetType.html" title="class in org.apache.abdera2.common.protocol">TargetType</A>
<DD>Get the specified target type.
<DT><A HREF="./org/apache/abdera2/common/pusher/MapChannelManager.html#get(java.lang.String)"><B>get(String)</B></A> - 
Method in class org.apache.abdera2.common.pusher.<A HREF="./org/apache/abdera2/common/pusher/MapChannelManager.html" title="class in org.apache.abdera2.common.pusher">MapChannelManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/Operation.html#get(java.lang.String)"><B>get(String)</B></A> - 
Static method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/Operation.html" title="class in org.apache.abdera2.common.templates">Operation</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/CodepointIterator.html#get()"><B>get()</B></A> - 
Method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/CodepointIterator.html" title="class in org.apache.abdera2.common.text">CodepointIterator</A>
<DD>Get the next codepoint
<DT><A HREF="./org/apache/abdera2/common/xml/XMLVersion.html#get(java.lang.String)"><B>get(String)</B></A> - 
Static method in enum org.apache.abdera2.common.xml.<A HREF="./org/apache/abdera2/common/xml/XMLVersion.html" title="enum in org.apache.abdera2.common.xml">XMLVersion</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractRequest.html#getAccept()"><B>getAccept()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractRequest.html" title="class in org.apache.abdera2.common.protocol">AbstractRequest</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html#getAccept()"><B>getAccept()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseRequestContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/Request.html#getAccept()"><B>getAccept()</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/Request.html" title="interface in org.apache.abdera2.common.protocol">Request</A>
<DD>Get the value of the Accept header
<DT><A HREF="./org/apache/abdera2/common/protocol/ProviderHelper.html#getAcceptableTypes(org.apache.abdera2.common.protocol.RequestContext)"><B>getAcceptableTypes(RequestContext)</B></A> - 
Static method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ProviderHelper.html" title="class in org.apache.abdera2.common.protocol">ProviderHelper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractRequest.html#getAcceptCharset()"><B>getAcceptCharset()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractRequest.html" title="class in org.apache.abdera2.common.protocol">AbstractRequest</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html#getAcceptCharset()"><B>getAcceptCharset()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseRequestContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/Request.html#getAcceptCharset()"><B>getAcceptCharset()</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/Request.html" title="interface in org.apache.abdera2.common.protocol">Request</A>
<DD>Get the value of the Accept-Charset header
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractRequest.html#getAcceptEncoding()"><B>getAcceptEncoding()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractRequest.html" title="class in org.apache.abdera2.common.protocol">AbstractRequest</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html#getAcceptEncoding()"><B>getAcceptEncoding()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseRequestContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/Request.html#getAcceptEncoding()"><B>getAcceptEncoding()</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/Request.html" title="interface in org.apache.abdera2.common.protocol">Request</A>
<DD>Get the value of the Accept-Encoding header
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractRequest.html#getAcceptLanguage()"><B>getAcceptLanguage()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractRequest.html" title="class in org.apache.abdera2.common.protocol">AbstractRequest</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html#getAcceptLanguage()"><B>getAcceptLanguage()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseRequestContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/Request.html#getAcceptLanguage()"><B>getAcceptLanguage()</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/Request.html" title="interface in org.apache.abdera2.common.protocol">Request</A>
<DD>Get the value of the Accept-Language header
<DT><A HREF="./org/apache/abdera2/common/protocol/BasicCollectionInfo.html#getAccepts(org.apache.abdera2.common.protocol.RequestContext)"><B>getAccepts(RequestContext)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BasicCollectionInfo.html" title="class in org.apache.abdera2.common.protocol">BasicCollectionInfo</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/CollectionInfo.html#getAccepts(org.apache.abdera2.common.protocol.RequestContext)"><B>getAccepts(RequestContext)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/CollectionInfo.html" title="interface in org.apache.abdera2.common.protocol">CollectionInfo</A>
<DD>Returns an array of MIME media types for the app:collection element's app:accept elements.
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractResponse.html#getAge()"><B>getAge()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractResponse.html" title="class in org.apache.abdera2.common.protocol">AbstractResponse</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html#getAge()"><B>getAge()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseResponseContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/Response.html#getAge()"><B>getAge()</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/Response.html" title="interface in org.apache.abdera2.common.protocol">Response</A>
<DD>Get the age of this response as specified by the server
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractResponse.html#getAllow()"><B>getAllow()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractResponse.html" title="class in org.apache.abdera2.common.protocol">AbstractResponse</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html#getAllow()"><B>getAllow()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseResponseContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/Response.html#getAllow()"><B>getAllow()</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/Response.html" title="interface in org.apache.abdera2.common.protocol">Response</A>
<DD>Get the value of the Allow response header
<DT><A HREF="./org/apache/abdera2/common/geo/IsoPosition.html#getAltitude()"><B>getAltitude()</B></A> - 
Method in class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/IsoPosition.html" title="class in org.apache.abdera2.common.geo">IsoPosition</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/WebLink.html#getAnchor()"><B>getAnchor()</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/WebLink.html" title="class in org.apache.abdera2.common.http">WebLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/iri/IRI.html#getASCIIAuthority()"><B>getASCIIAuthority()</B></A> - 
Method in class org.apache.abdera2.common.iri.<A HREF="./org/apache/abdera2/common/iri/IRI.html" title="class in org.apache.abdera2.common.iri">IRI</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/iri/IRI.html#getASCIIFragment()"><B>getASCIIFragment()</B></A> - 
Method in class org.apache.abdera2.common.iri.<A HREF="./org/apache/abdera2/common/iri/IRI.html" title="class in org.apache.abdera2.common.iri">IRI</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/iri/IRI.html#getASCIIHost()"><B>getASCIIHost()</B></A> - 
Method in class org.apache.abdera2.common.iri.<A HREF="./org/apache/abdera2/common/iri/IRI.html" title="class in org.apache.abdera2.common.iri">IRI</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/iri/IRI.html#getASCIIPath()"><B>getASCIIPath()</B></A> - 
Method in class org.apache.abdera2.common.iri.<A HREF="./org/apache/abdera2/common/iri/IRI.html" title="class in org.apache.abdera2.common.iri">IRI</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/iri/IRI.html#getASCIIQuery()"><B>getASCIIQuery()</B></A> - 
Method in class org.apache.abdera2.common.iri.<A HREF="./org/apache/abdera2/common/iri/IRI.html" title="class in org.apache.abdera2.common.iri">IRI</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/iri/IRI.html#getASCIISchemeSpecificPart()"><B>getASCIISchemeSpecificPart()</B></A> - 
Method in class org.apache.abdera2.common.iri.<A HREF="./org/apache/abdera2/common/iri/IRI.html" title="class in org.apache.abdera2.common.iri">IRI</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/iri/IRI.html#getASCIIUserInfo()"><B>getASCIIUserInfo()</B></A> - 
Method in class org.apache.abdera2.common.iri.<A HREF="./org/apache/abdera2/common/iri/IRI.html" title="class in org.apache.abdera2.common.iri">IRI</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html#getAttribute(org.apache.abdera2.common.protocol.RequestContext.Scope, java.lang.String)"><B>getAttribute(RequestContext.Scope, String)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseRequestContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/RequestContext.html#getAttribute(org.apache.abdera2.common.protocol.RequestContext.Scope, java.lang.String)"><B>getAttribute(RequestContext.Scope, String)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/RequestContext.html" title="interface in org.apache.abdera2.common.protocol">RequestContext</A>
<DD>Get the named attribute from the specified scope
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/ServletRequestContext.html#getAttribute(org.apache.abdera2.common.protocol.RequestContext.Scope, java.lang.String)"><B>getAttribute(RequestContext.Scope, String)</B></A> - 
Method in class org.apache.abdera2.common.protocol.servlet.<A HREF="./org/apache/abdera2/common/protocol/servlet/ServletRequestContext.html" title="class in org.apache.abdera2.common.protocol.servlet">ServletRequestContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html#getAttributeNames(org.apache.abdera2.common.protocol.RequestContext.Scope)"><B>getAttributeNames(RequestContext.Scope)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseRequestContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/RequestContext.html#getAttributeNames(org.apache.abdera2.common.protocol.RequestContext.Scope)"><B>getAttributeNames(RequestContext.Scope)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/RequestContext.html" title="interface in org.apache.abdera2.common.protocol">RequestContext</A>
<DD>Return the list of attribute names in the specified scope
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/ServletRequestContext.html#getAttributeNames(org.apache.abdera2.common.protocol.RequestContext.Scope)"><B>getAttributeNames(RequestContext.Scope)</B></A> - 
Method in class org.apache.abdera2.common.protocol.servlet.<A HREF="./org/apache/abdera2/common/protocol/servlet/ServletRequestContext.html" title="class in org.apache.abdera2.common.protocol.servlet">ServletRequestContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractRequest.html#getAuthentication()"><B>getAuthentication()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractRequest.html" title="class in org.apache.abdera2.common.protocol">AbstractRequest</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractResponse.html#getAuthentication()"><B>getAuthentication()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractResponse.html" title="class in org.apache.abdera2.common.protocol">AbstractResponse</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html#getAuthentication()"><B>getAuthentication()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseRequestContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html#getAuthentication()"><B>getAuthentication()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseResponseContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/Message.html#getAuthentication()"><B>getAuthentication()</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/Message.html" title="interface in org.apache.abdera2.common.protocol">Message</A>
<DD>Return the Authentication Data (WWW-Authentication or Authorization)
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractCollectionAdapter.html#getAuthor(org.apache.abdera2.common.protocol.RequestContext)"><B>getAuthor(RequestContext)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractCollectionAdapter.html" title="class in org.apache.abdera2.common.protocol">AbstractCollectionAdapter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/iri/IRI.html#getAuthority()"><B>getAuthority()</B></A> - 
Method in class org.apache.abdera2.common.iri.<A HREF="./org/apache/abdera2/common/iri/IRI.html" title="class in org.apache.abdera2.common.iri">IRI</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/Authentication.html#getBase64Token()"><B>getBase64Token()</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/Authentication.html" title="class in org.apache.abdera2.common.http">Authentication</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractBaseRequestContext.html#getBaseUri()"><B>getBaseUri()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractBaseRequestContext.html" title="class in org.apache.abdera2.common.protocol">AbstractBaseRequestContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html#getBaseUri()"><B>getBaseUri()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseRequestContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/RequestContext.html#getBaseUri()"><B>getBaseUri()</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/RequestContext.html" title="interface in org.apache.abdera2.common.protocol">RequestContext</A>
<DD>Get the absolute base URI ...
<DT><A HREF="./org/apache/abdera2/common/io/CharsetSniffingInputStream.Encoding.html#getBom()"><B>getBom()</B></A> - 
Method in enum org.apache.abdera2.common.io.<A HREF="./org/apache/abdera2/common/io/CharsetSniffingInputStream.Encoding.html" title="enum in org.apache.abdera2.common.io">CharsetSniffingInputStream.Encoding</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractMessage.html#getCacheControl()"><B>getCacheControl()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractMessage.html" title="class in org.apache.abdera2.common.protocol">AbstractMessage</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html#getCacheControl()"><B>getCacheControl()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseRequestContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html#getCacheControl()"><B>getCacheControl()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseResponseContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/Message.html#getCacheControl()"><B>getCacheControl()</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/Message.html" title="interface in org.apache.abdera2.common.protocol">Message</A>
<DD>Return the Cache Control Data
<DT><A HREF="./org/apache/abdera2/common/date/DateTime.html#getCalendar()"><B>getCalendar()</B></A> - 
Method in class org.apache.abdera2.common.date.<A HREF="./org/apache/abdera2/common/date/DateTime.html" title="class in org.apache.abdera2.common.date">DateTime</A>
<DD>Returns the value of this Atom Date as a java.util.Calendar
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/async/AbderaChannelServlet.html#getChannel(javax.servlet.AsyncContext)"><B>getChannel(AsyncContext)</B></A> - 
Method in class org.apache.abdera2.common.protocol.servlet.async.<A HREF="./org/apache/abdera2/common/protocol/servlet/async/AbderaChannelServlet.html" title="class in org.apache.abdera2.common.protocol.servlet.async">AbderaChannelServlet</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/mediatype/MimeTypeHelper.html#getCharset(java.lang.String)"><B>getCharset(String)</B></A> - 
Static method in class org.apache.abdera2.common.mediatype.<A HREF="./org/apache/abdera2/common/mediatype/MimeTypeHelper.html" title="class in org.apache.abdera2.common.mediatype">MimeTypeHelper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/io/Compression.html#getCodec(java.lang.String)"><B>getCodec(String)</B></A> - 
Static method in class org.apache.abdera2.common.io.<A HREF="./org/apache/abdera2/common/io/Compression.html" title="class in org.apache.abdera2.common.io">Compression</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/DefaultWorkspaceManager.html#getCollectionAdapter(org.apache.abdera2.common.protocol.RequestContext)"><B>getCollectionAdapter(RequestContext)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/DefaultWorkspaceManager.html" title="class in org.apache.abdera2.common.protocol">DefaultWorkspaceManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/WorkspaceManager.html#getCollectionAdapter(org.apache.abdera2.common.protocol.RequestContext)"><B>getCollectionAdapter(RequestContext)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/WorkspaceManager.html" title="interface in org.apache.abdera2.common.protocol">WorkspaceManager</A>
<DD>Get the Collection Adapter that will handle this request
<DT><A HREF="./org/apache/abdera2/common/protocol/BasicWorkspaceInfo.html#getCollections(org.apache.abdera2.common.protocol.RequestContext)"><B>getCollections(RequestContext)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BasicWorkspaceInfo.html" title="class in org.apache.abdera2.common.protocol">BasicWorkspaceInfo</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BasicWorkspaceInfo.html#getCollections()"><B>getCollections()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BasicWorkspaceInfo.html" title="class in org.apache.abdera2.common.protocol">BasicWorkspaceInfo</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/WorkspaceInfo.html#getCollections(org.apache.abdera2.common.protocol.RequestContext)"><B>getCollections(RequestContext)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/WorkspaceInfo.html" title="interface in org.apache.abdera2.common.protocol">WorkspaceInfo</A>
<DD>Return the listing of collections available as part of the workspace
<DT><A HREF="./org/apache/abdera2/common/mediatype/MimeTypeHelper.html#getComparator()"><B>getComparator()</B></A> - 
Static method in class org.apache.abdera2.common.mediatype.<A HREF="./org/apache/abdera2/common/mediatype/MimeTypeHelper.html" title="class in org.apache.abdera2.common.mediatype">MimeTypeHelper</A>
<DD>Returns a Comparator that can be used to compare and sort MIME media types according to their level of
 specificity (e.g.
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractMessage.html#getContentLanguage()"><B>getContentLanguage()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractMessage.html" title="class in org.apache.abdera2.common.protocol">AbstractMessage</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html#getContentLanguage()"><B>getContentLanguage()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseRequestContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html#getContentLanguage()"><B>getContentLanguage()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseResponseContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/Message.html#getContentLanguage()"><B>getContentLanguage()</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/Message.html" title="interface in org.apache.abdera2.common.protocol">Message</A>
<DD>Return the value of the Content-Language header
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractResponse.html#getContentLength()"><B>getContentLength()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractResponse.html" title="class in org.apache.abdera2.common.protocol">AbstractResponse</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html#getContentLength()"><B>getContentLength()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseResponseContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/Response.html#getContentLength()"><B>getContentLength()</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/Response.html" title="interface in org.apache.abdera2.common.protocol">Response</A>
<DD>Get the value of the Content-Length response header
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractMessage.html#getContentLocation()"><B>getContentLocation()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractMessage.html" title="class in org.apache.abdera2.common.protocol">AbstractMessage</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html#getContentLocation()"><B>getContentLocation()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseRequestContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html#getContentLocation()"><B>getContentLocation()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseResponseContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/Message.html#getContentLocation()"><B>getContentLocation()</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/Message.html" title="interface in org.apache.abdera2.common.protocol">Message</A>
<DD>Return the value of the Content-Location header
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractMessage.html#getContentType()"><B>getContentType()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractMessage.html" title="class in org.apache.abdera2.common.protocol">AbstractMessage</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html#getContentType()"><B>getContentType()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseRequestContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html#getContentType()"><B>getContentType()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseResponseContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/Message.html#getContentType()"><B>getContentType()</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/Message.html" title="interface in org.apache.abdera2.common.protocol">Message</A>
<DD>Return the value of the Content-Type header
<DT><A HREF="./org/apache/abdera2/common/protocol/TemplateManagerTargetBuilder.html#getContext(org.apache.abdera2.common.protocol.RequestContext, java.lang.Object)"><B>getContext(RequestContext, Object)</B></A> - 
Static method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/TemplateManagerTargetBuilder.html" title="class in org.apache.abdera2.common.protocol">TemplateManagerTargetBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/WebLink.html#getContextIri(org.apache.abdera2.common.iri.IRI)"><B>getContextIri(IRI)</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/WebLink.html" title="class in org.apache.abdera2.common.http">WebLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html#getContextPath()"><B>getContextPath()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseRequestContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/RequestContext.html#getContextPath()"><B>getContextPath()</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/RequestContext.html" title="interface in org.apache.abdera2.common.protocol">RequestContext</A>
<DD>Return the web applications context path
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/ServletRequestContext.html#getContextPath()"><B>getContextPath()</B></A> - 
Method in class org.apache.abdera2.common.protocol.servlet.<A HREF="./org/apache/abdera2/common/protocol/servlet/ServletRequestContext.html" title="class in org.apache.abdera2.common.protocol.servlet">ServletRequestContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Point.html#getCoordinate()"><B>getCoordinate()</B></A> - 
Method in class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Point.html" title="class in org.apache.abdera2.common.geo">Point</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Multiple.html#getCoordinates()"><B>getCoordinates()</B></A> - 
Method in class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Multiple.html" title="class in org.apache.abdera2.common.geo">Multiple</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/date/DateTime.html#getDate()"><B>getDate()</B></A> - 
Method in class org.apache.abdera2.common.date.<A HREF="./org/apache/abdera2/common/date/DateTime.html" title="class in org.apache.abdera2.common.date">DateTime</A>
<DD>Returns the value of this Atom Date
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html#getDateHeader(java.lang.String)"><B>getDateHeader(String)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html" title="class in org.apache.abdera2.common.protocol">AbstractResponseContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html#getDateHeader(java.lang.String)"><B>getDateHeader(String)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseRequestContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html#getDateHeader(java.lang.String)"><B>getDateHeader(String)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseResponseContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/Message.html#getDateHeader(java.lang.String)"><B>getDateHeader(String)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/Message.html" title="interface in org.apache.abdera2.common.protocol">Message</A>
<DD>Return the value of a Date header
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/ServletRequestContext.html#getDateHeader(java.lang.String)"><B>getDateHeader(String)</B></A> - 
Method in class org.apache.abdera2.common.protocol.servlet.<A HREF="./org/apache/abdera2/common/protocol/servlet/ServletRequestContext.html" title="class in org.apache.abdera2.common.protocol.servlet">ServletRequestContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractMessage.html#getDecodedHeader(java.lang.String)"><B>getDecodedHeader(String)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractMessage.html" title="class in org.apache.abdera2.common.protocol">AbstractMessage</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html#getDecodedHeader(java.lang.String)"><B>getDecodedHeader(String)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseRequestContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html#getDecodedHeader(java.lang.String)"><B>getDecodedHeader(String)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseResponseContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/Message.html#getDecodedHeader(java.lang.String)"><B>getDecodedHeader(String)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/Message.html" title="interface in org.apache.abdera2.common.protocol">Message</A>
<DD>Get the decoded value of a RFC 2047 header
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractMessage.html#getDecodedHeaders(java.lang.String)"><B>getDecodedHeaders(String)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractMessage.html" title="class in org.apache.abdera2.common.protocol">AbstractMessage</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html#getDecodedHeaders(java.lang.String)"><B>getDecodedHeaders(String)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseRequestContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html#getDecodedHeaders(java.lang.String)"><B>getDecodedHeaders(String)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseResponseContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/Message.html#getDecodedHeaders(java.lang.String)"><B>getDecodedHeaders(String)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/Message.html" title="interface in org.apache.abdera2.common.protocol">Message</A>
<DD>Return multiple decoded values for the specified header
<DT><A HREF="./org/apache/abdera2/common/templates/TemplateManager.html#getDefaultContext()"><B>getDefaultContext()</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/TemplateManager.html" title="class in org.apache.abdera2.common.templates">TemplateManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/anno/AnnoUtil.html#getDefaultImplementation(java.lang.Class)"><B>getDefaultImplementation(Class&lt;?&gt;)</B></A> - 
Static method in class org.apache.abdera2.common.anno.<A HREF="./org/apache/abdera2/common/anno/AnnoUtil.html" title="class in org.apache.abdera2.common.anno">AnnoUtil</A>
<DD>Retrieve the default implementation for the specified Class.
<DT><A HREF="./org/apache/abdera2/common/protocol/ProviderHelper.html#getDefaultMethods(org.apache.abdera2.common.protocol.RequestContext)"><B>getDefaultMethods(RequestContext)</B></A> - 
Static method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ProviderHelper.html" title="class in org.apache.abdera2.common.protocol">ProviderHelper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/Route.html#getDefaultValue(java.lang.String)"><B>getDefaultValue(String)</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/Route.html" title="class in org.apache.abdera2.common.templates">Route</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/Route.html#getDefaultValues()"><B>getDefaultValues()</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/Route.html" title="class in org.apache.abdera2.common.templates">Route</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Position.html#getElevation()"><B>getElevation()</B></A> - 
Method in class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Position.html" title="class in org.apache.abdera2.common.geo">Position</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/io/CharsetSniffingInputStream.Encoding.html#getEncoding()"><B>getEncoding()</B></A> - 
Method in enum org.apache.abdera2.common.io.<A HREF="./org/apache/abdera2/common/io/CharsetSniffingInputStream.Encoding.html" title="enum in org.apache.abdera2.common.io">CharsetSniffingInputStream.Encoding</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/io/CharsetSniffingInputStream.html#getEncoding()"><B>getEncoding()</B></A> - 
Method in class org.apache.abdera2.common.io.<A HREF="./org/apache/abdera2/common/io/CharsetSniffingInputStream.html" title="class in org.apache.abdera2.common.io">CharsetSniffingInputStream</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/SimpleResponseContext.html#getEncoding()"><B>getEncoding()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/SimpleResponseContext.html" title="class in org.apache.abdera2.common.protocol">SimpleResponseContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractResponse.html#getEntityTag()"><B>getEntityTag()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractResponse.html" title="class in org.apache.abdera2.common.protocol">AbstractResponse</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractWorkspaceManager.html#getEntityTag()"><B>getEntityTag()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractWorkspaceManager.html" title="class in org.apache.abdera2.common.protocol">AbstractWorkspaceManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractWorkspaceProvider.html#getEntityTag()"><B>getEntityTag()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractWorkspaceProvider.html" title="class in org.apache.abdera2.common.protocol">AbstractWorkspaceProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html#getEntityTag()"><B>getEntityTag()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseResponseContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/Response.html#getEntityTag()"><B>getEntityTag()</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/Response.html" title="interface in org.apache.abdera2.common.protocol">Response</A>
<DD>Get the Entity Tag returned by the server
<DT><A HREF="./org/apache/abdera2/common/protocol/WorkspaceManager.html#getEntityTag()"><B>getEntityTag()</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/WorkspaceManager.html" title="interface in org.apache.abdera2.common.protocol">WorkspaceManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractResponse.html#getExpires()"><B>getExpires()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractResponse.html" title="class in org.apache.abdera2.common.protocol">AbstractResponse</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html#getExpires()"><B>getExpires()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseResponseContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/Response.html#getExpires()"><B>getExpires()</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/Response.html" title="interface in org.apache.abdera2.common.protocol">Response</A>
<DD>Get the date/time this response expires
<DT><A HREF="./org/apache/abdera2/common/http/CacheControl.html#getExtension(java.lang.String)"><B>getExtension(String)</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/CacheControl.html" title="class in org.apache.abdera2.common.http">CacheControl</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/CacheControlUtil.CacheControlParser.html#getExtensions()"><B>getExtensions()</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/CacheControlUtil.CacheControlParser.html" title="class in org.apache.abdera2.common.http">CacheControlUtil.CacheControlParser</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Position.html#getFeatureTypeTag()"><B>getFeatureTypeTag()</B></A> - 
Method in class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Position.html" title="class in org.apache.abdera2.common.geo">Position</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseProvider.html#getFilters(org.apache.abdera2.common.protocol.RequestContext)"><B>getFilters(RequestContext)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseProvider.html" title="class in org.apache.abdera2.common.protocol">BaseProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/Provider.html#getFilters(org.apache.abdera2.common.protocol.RequestContext)"><B>getFilters(RequestContext)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/Provider.html" title="interface in org.apache.abdera2.common.protocol">Provider</A>
<DD>Return the listing of filters for this request
<DT><A HREF="./org/apache/abdera2/common/geo/Position.html#getFloor()"><B>getFloor()</B></A> - 
Method in class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Position.html" title="class in org.apache.abdera2.common.geo">Position</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/iri/IRI.html#getFragment()"><B>getFragment()</B></A> - 
Method in class org.apache.abdera2.common.iri.<A HREF="./org/apache/abdera2/common/iri/IRI.html" title="class in org.apache.abdera2.common.iri">IRI</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html#getHeader(java.lang.String)"><B>getHeader(String)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html" title="class in org.apache.abdera2.common.protocol">AbstractResponseContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html#getHeader(java.lang.String)"><B>getHeader(String)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseRequestContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html#getHeader(java.lang.String)"><B>getHeader(String)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseResponseContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/Message.html#getHeader(java.lang.String)"><B>getHeader(String)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/Message.html" title="interface in org.apache.abdera2.common.protocol">Message</A>
<DD>Get the value of the specified header
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/ServletRequestContext.html#getHeader(java.lang.String)"><B>getHeader(String)</B></A> - 
Method in class org.apache.abdera2.common.protocol.servlet.<A HREF="./org/apache/abdera2/common/protocol/servlet/ServletRequestContext.html" title="class in org.apache.abdera2.common.protocol.servlet">ServletRequestContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html#getHeaderNames()"><B>getHeaderNames()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html" title="class in org.apache.abdera2.common.protocol">AbstractResponseContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html#getHeaderNames()"><B>getHeaderNames()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseRequestContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html#getHeaderNames()"><B>getHeaderNames()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseResponseContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/Message.html#getHeaderNames()"><B>getHeaderNames()</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/Message.html" title="interface in org.apache.abdera2.common.protocol">Message</A>
<DD>Return a listing of header names
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/ServletRequestContext.html#getHeaderNames()"><B>getHeaderNames()</B></A> - 
Method in class org.apache.abdera2.common.protocol.servlet.<A HREF="./org/apache/abdera2/common/protocol/servlet/ServletRequestContext.html" title="class in org.apache.abdera2.common.protocol.servlet">ServletRequestContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html#getHeaders()"><B>getHeaders()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html" title="class in org.apache.abdera2.common.protocol">AbstractResponseContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html#getHeaders(java.lang.String)"><B>getHeaders(String)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html" title="class in org.apache.abdera2.common.protocol">AbstractResponseContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html#getHeaders(java.lang.String)"><B>getHeaders(String)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseRequestContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html#getHeaders(java.lang.String)"><B>getHeaders(String)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseResponseContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/Message.html#getHeaders(java.lang.String)"><B>getHeaders(String)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/Message.html" title="interface in org.apache.abdera2.common.protocol">Message</A>
<DD>Return multiple values for the specified header
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/ServletRequestContext.html#getHeaders(java.lang.String)"><B>getHeaders(String)</B></A> - 
Method in class org.apache.abdera2.common.protocol.servlet.<A HREF="./org/apache/abdera2/common/protocol/servlet/ServletRequestContext.html" title="class in org.apache.abdera2.common.protocol.servlet">ServletRequestContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/iri/IRI.html#getHost()"><B>getHost()</B></A> - 
Method in class org.apache.abdera2.common.iri.<A HREF="./org/apache/abdera2/common/iri/IRI.html" title="class in org.apache.abdera2.common.iri">IRI</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractCollectionAdapter.html#getHref()"><B>getHref()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractCollectionAdapter.html" title="class in org.apache.abdera2.common.protocol">AbstractCollectionAdapter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractCollectionAdapter.html#getHref(org.apache.abdera2.common.protocol.RequestContext)"><B>getHref(RequestContext)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractCollectionAdapter.html" title="class in org.apache.abdera2.common.protocol">AbstractCollectionAdapter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BasicCollectionInfo.html#getHref(org.apache.abdera2.common.protocol.RequestContext)"><B>getHref(RequestContext)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BasicCollectionInfo.html" title="class in org.apache.abdera2.common.protocol">BasicCollectionInfo</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/CollectionInfo.html#getHref(org.apache.abdera2.common.protocol.RequestContext)"><B>getHref(RequestContext)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/CollectionInfo.html" title="interface in org.apache.abdera2.common.protocol">CollectionInfo</A>
<DD>Get the value of the app:collection element's href attribute.
<DT><A HREF="./org/apache/abdera2/common/http/WebLink.html#getHrefLang()"><B>getHrefLang()</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/WebLink.html" title="class in org.apache.abdera2.common.http">WebLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractCollectionAdapter.html#getId(org.apache.abdera2.common.protocol.RequestContext)"><B>getId(RequestContext)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractCollectionAdapter.html" title="class in org.apache.abdera2.common.protocol">AbstractCollectionAdapter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/async/AbderaTask.html#getId()"><B>getId()</B></A> - 
Method in class org.apache.abdera2.common.protocol.servlet.async.<A HREF="./org/apache/abdera2/common/protocol/servlet/async/AbderaTask.html" title="class in org.apache.abdera2.common.protocol.servlet.async">AbderaTask</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/RegexTargetResolver.RegexTarget.html#getIdentity()"><B>getIdentity()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/RegexTargetResolver.RegexTarget.html" title="class in org.apache.abdera2.common.protocol">RegexTargetResolver.RegexTarget</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/SimpleTarget.html#getIdentity()"><B>getIdentity()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/SimpleTarget.html" title="class in org.apache.abdera2.common.protocol">SimpleTarget</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/Target.html#getIdentity()"><B>getIdentity()</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/Target.html" title="interface in org.apache.abdera2.common.protocol">Target</A>
<DD>Return the identity of this target.
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractRequest.html#getIfMatch()"><B>getIfMatch()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractRequest.html" title="class in org.apache.abdera2.common.protocol">AbstractRequest</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html#getIfMatch()"><B>getIfMatch()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseRequestContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/Request.html#getIfMatch()"><B>getIfMatch()</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/Request.html" title="interface in org.apache.abdera2.common.protocol">Request</A>
<DD>Get a listing of Etags from the If-Match header
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractRequest.html#getIfModifiedSince()"><B>getIfModifiedSince()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractRequest.html" title="class in org.apache.abdera2.common.protocol">AbstractRequest</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html#getIfModifiedSince()"><B>getIfModifiedSince()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseRequestContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/Request.html#getIfModifiedSince()"><B>getIfModifiedSince()</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/Request.html" title="interface in org.apache.abdera2.common.protocol">Request</A>
<DD>Get the value of the If-Modified-Since header
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractRequest.html#getIfNoneMatch()"><B>getIfNoneMatch()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractRequest.html" title="class in org.apache.abdera2.common.protocol">AbstractRequest</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html#getIfNoneMatch()"><B>getIfNoneMatch()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseRequestContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/Request.html#getIfNoneMatch()"><B>getIfNoneMatch()</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/Request.html" title="interface in org.apache.abdera2.common.protocol">Request</A>
<DD>Get a listing of ETags from the If-None-Match header
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractRequest.html#getIfUnmodifiedSince()"><B>getIfUnmodifiedSince()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractRequest.html" title="class in org.apache.abdera2.common.protocol">AbstractRequest</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html#getIfUnmodifiedSince()"><B>getIfUnmodifiedSince()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseRequestContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/Request.html#getIfUnmodifiedSince()"><B>getIfUnmodifiedSince()</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/Request.html" title="interface in org.apache.abdera2.common.protocol">Request</A>
<DD>Get the value of the If-Unmodified-Since header
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html#getInputStream()"><B>getInputStream()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseRequestContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/RequestContext.html#getInputStream()"><B>getInputStream()</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/RequestContext.html" title="interface in org.apache.abdera2.common.protocol">RequestContext</A>
<DD>Get the InputStream containing the request entity
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/ServletRequestContext.html#getInputStream()"><B>getInputStream()</B></A> - 
Method in class org.apache.abdera2.common.protocol.servlet.<A HREF="./org/apache/abdera2/common/protocol/servlet/ServletRequestContext.html" title="class in org.apache.abdera2.common.protocol.servlet">ServletRequestContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/iri/SchemeRegistry.html#getInstance()"><B>getInstance()</B></A> - 
Static method in class org.apache.abdera2.common.iri.<A HREF="./org/apache/abdera2/common/iri/SchemeRegistry.html" title="class in org.apache.abdera2.common.iri">SchemeRegistry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Localizer.html#getInstance()"><B>getInstance()</B></A> - 
Static method in class org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Localizer.html" title="class in org.apache.abdera2.common">Localizer</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/misc/PoolManager.html#getInstance()"><B>getInstance()</B></A> - 
Method in class org.apache.abdera2.common.misc.<A HREF="./org/apache/abdera2/common/misc/PoolManager.html" title="class in org.apache.abdera2.common.misc">PoolManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/ServiceManager.Factory.html#getInstance()"><B>getInstance()</B></A> - 
Static method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ServiceManager.Factory.html" title="class in org.apache.abdera2.common.protocol">ServiceManager.Factory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/ServiceManager.Factory.html#getInstance(java.lang.String)"><B>getInstance(String)</B></A> - 
Static method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ServiceManager.Factory.html" title="class in org.apache.abdera2.common.protocol">ServiceManager.Factory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/CodepointIterator.html#getInstance(char[])"><B>getInstance(char[])</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/CodepointIterator.html" title="class in org.apache.abdera2.common.text">CodepointIterator</A>
<DD>Get a CodepointIterator for the specified char array
<DT><A HREF="./org/apache/abdera2/common/text/CodepointIterator.html#getInstance(java.lang.CharSequence)"><B>getInstance(CharSequence)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/CodepointIterator.html" title="class in org.apache.abdera2.common.text">CodepointIterator</A>
<DD>Get a CodepointIterator for the specified CharSequence
<DT><A HREF="./org/apache/abdera2/common/text/CodepointIterator.html#getInstance(byte[])"><B>getInstance(byte[])</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/CodepointIterator.html" title="class in org.apache.abdera2.common.text">CodepointIterator</A>
<DD>Get a CodepointIterator for the specified byte array, using the default charset
<DT><A HREF="./org/apache/abdera2/common/text/CodepointIterator.html#getInstance(byte[], java.lang.String)"><B>getInstance(byte[], String)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/CodepointIterator.html" title="class in org.apache.abdera2.common.text">CodepointIterator</A>
<DD>Get a CodepointIterator for the specified byte array, using the specified charset
<DT><A HREF="./org/apache/abdera2/common/text/CodepointIterator.html#getInstance(java.nio.CharBuffer)"><B>getInstance(CharBuffer)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/CodepointIterator.html" title="class in org.apache.abdera2.common.text">CodepointIterator</A>
<DD>Get a CodepointIterator for the specified CharBuffer
<DT><A HREF="./org/apache/abdera2/common/text/CodepointIterator.html#getInstance(java.nio.channels.ReadableByteChannel)"><B>getInstance(ReadableByteChannel)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/CodepointIterator.html" title="class in org.apache.abdera2.common.text">CodepointIterator</A>
<DD>Get a CodepointIterator for the specified ReadableByteChannel
<DT><A HREF="./org/apache/abdera2/common/text/CodepointIterator.html#getInstance(java.nio.channels.ReadableByteChannel, java.lang.String)"><B>getInstance(ReadableByteChannel, String)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/CodepointIterator.html" title="class in org.apache.abdera2.common.text">CodepointIterator</A>
<DD>Get a CodepointIterator for the specified ReadableByteChannel
<DT><A HREF="./org/apache/abdera2/common/text/CodepointIterator.html#getInstance(java.io.InputStream)"><B>getInstance(InputStream)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/CodepointIterator.html" title="class in org.apache.abdera2.common.text">CodepointIterator</A>
<DD>Get a CodepointIterator for the specified InputStream
<DT><A HREF="./org/apache/abdera2/common/text/CodepointIterator.html#getInstance(java.io.InputStream, java.lang.String)"><B>getInstance(InputStream, String)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/CodepointIterator.html" title="class in org.apache.abdera2.common.text">CodepointIterator</A>
<DD>Get a CodepointIterator for the specified InputStream using the specified charset
<DT><A HREF="./org/apache/abdera2/common/text/CodepointIterator.html#getInstance(java.io.Reader)"><B>getInstance(Reader)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/CodepointIterator.html" title="class in org.apache.abdera2.common.text">CodepointIterator</A>
<DD>Get a CodepointIterator for the specified Reader
<DT><A HREF="./org/apache/abdera2/common/io/CharsetSniffingInputStream.html#getInternal()"><B>getInternal()</B></A> - 
Method in class org.apache.abdera2.common.io.<A HREF="./org/apache/abdera2/common/io/CharsetSniffingInputStream.html" title="class in org.apache.abdera2.common.io">CharsetSniffingInputStream</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/WebLink.html#getIri()"><B>getIri()</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/WebLink.html" title="class in org.apache.abdera2.common.http">WebLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/CollectionAdapter.html#getItem(org.apache.abdera2.common.protocol.RequestContext)"><B>getItem(RequestContext)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/CollectionAdapter.html" title="interface in org.apache.abdera2.common.protocol">CollectionAdapter</A>
<DD>Get an entry from the collection
<DT><A HREF="./org/apache/abdera2/common/protocol/CollectionAdapter.html#getItemList(org.apache.abdera2.common.protocol.RequestContext)"><B>getItemList(RequestContext)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/CollectionAdapter.html" title="interface in org.apache.abdera2.common.protocol">CollectionAdapter</A>
<DD>Get the collections Atom feed document
<DT><A HREF="./org/apache/abdera2/common/templates/Route.html#getKey()"><B>getKey()</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/Route.html" title="class in org.apache.abdera2.common.templates">Route</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractResponse.html#getLastModified()"><B>getLastModified()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractResponse.html" title="class in org.apache.abdera2.common.protocol">AbstractResponse</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractWorkspaceManager.html#getLastModified()"><B>getLastModified()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractWorkspaceManager.html" title="class in org.apache.abdera2.common.protocol">AbstractWorkspaceManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractWorkspaceProvider.html#getLastModified()"><B>getLastModified()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractWorkspaceProvider.html" title="class in org.apache.abdera2.common.protocol">AbstractWorkspaceProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html#getLastModified()"><B>getLastModified()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseResponseContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/Response.html#getLastModified()"><B>getLastModified()</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/Response.html" title="interface in org.apache.abdera2.common.protocol">Response</A>
<DD>Get the value of the Last-Modified response header
<DT><A HREF="./org/apache/abdera2/common/protocol/WorkspaceManager.html#getLastModified()"><B>getLastModified()</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/WorkspaceManager.html" title="interface in org.apache.abdera2.common.protocol">WorkspaceManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Coordinate.html#getLatitude()"><B>getLatitude()</B></A> - 
Method in class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Coordinate.html" title="class in org.apache.abdera2.common.geo">Coordinate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/IsoPosition.html#getLatitude()"><B>getLatitude()</B></A> - 
Method in class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/IsoPosition.html" title="class in org.apache.abdera2.common.geo">IsoPosition</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/Expression.VarSpec.html#getLength()"><B>getLength()</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/Expression.VarSpec.html" title="class in org.apache.abdera2.common.templates">Expression.VarSpec</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Localizer.html#getLocale()"><B>getLocale()</B></A> - 
Method in class org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Localizer.html" title="class in org.apache.abdera2.common">Localizer</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractResponse.html#getLocation()"><B>getLocation()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractResponse.html" title="class in org.apache.abdera2.common.protocol">AbstractResponse</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html#getLocation()"><B>getLocation()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseResponseContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/Response.html#getLocation()"><B>getLocation()</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/Response.html" title="interface in org.apache.abdera2.common.protocol">Response</A>
<DD>Get the value of the Location response header
<DT><A HREF="./org/apache/abdera2/common/geo/Coordinate.html#getLongitude()"><B>getLongitude()</B></A> - 
Method in class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Coordinate.html" title="class in org.apache.abdera2.common.geo">Coordinate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/IsoPosition.html#getLongitude()"><B>getLongitude()</B></A> - 
Method in class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/IsoPosition.html" title="class in org.apache.abdera2.common.geo">IsoPosition</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Box.html#getLowerCorner()"><B>getLowerCorner()</B></A> - 
Method in class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Box.html" title="class in org.apache.abdera2.common.geo">Box</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/RegexTargetResolver.RegexTarget.html#getMatcher()"><B>getMatcher()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/RegexTargetResolver.RegexTarget.html" title="class in org.apache.abdera2.common.protocol">RegexTargetResolver.RegexTarget</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/RouteManager.RouteTarget.html#getMatcher()"><B>getMatcher()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/RouteManager.RouteTarget.html" title="class in org.apache.abdera2.common.protocol">RouteManager.RouteTarget</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/SimpleTarget.html#getMatcher()"><B>getMatcher()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/SimpleTarget.html" title="class in org.apache.abdera2.common.protocol">SimpleTarget</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/Target.html#getMatcher()"><B>getMatcher()</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/Target.html" title="interface in org.apache.abdera2.common.protocol">Target</A>
<DD>Return the object that matches with the uri
<DT><A HREF="./org/apache/abdera2/common/http/CacheControl.html#getMaxAge()"><B>getMaxAge()</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/CacheControl.html" title="class in org.apache.abdera2.common.http">CacheControl</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/CacheControl.html#getMaxStale()"><B>getMaxStale()</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/CacheControl.html" title="class in org.apache.abdera2.common.http">CacheControl</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/WebLink.html#getMedia()"><B>getMedia()</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/WebLink.html" title="class in org.apache.abdera2.common.http">WebLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractCollectionAdapter.html#getMedia(org.apache.abdera2.common.protocol.RequestContext)"><B>getMedia(RequestContext)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractCollectionAdapter.html" title="class in org.apache.abdera2.common.protocol">AbstractCollectionAdapter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/MediaCollectionAdapter.html#getMedia(org.apache.abdera2.common.protocol.RequestContext)"><B>getMedia(RequestContext)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/MediaCollectionAdapter.html" title="interface in org.apache.abdera2.common.protocol">MediaCollectionAdapter</A>
<DD>Get a media resource
<DT><A HREF="./org/apache/abdera2/common/http/WebLink.html#getMediaType()"><B>getMediaType()</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/WebLink.html" title="class in org.apache.abdera2.common.http">WebLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/ResponseContextException.html#getMessage()"><B>getMessage()</B></A> - 
Method in exception org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ResponseContextException.html" title="class in org.apache.abdera2.common.protocol">ResponseContextException</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/InvalidCharacterException.html#getMessage()"><B>getMessage()</B></A> - 
Method in exception org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/InvalidCharacterException.html" title="class in org.apache.abdera2.common.text">InvalidCharacterException</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractBaseRequestContext.html#getMethod()"><B>getMethod()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractBaseRequestContext.html" title="class in org.apache.abdera2.common.protocol">AbstractBaseRequestContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html#getMethod()"><B>getMethod()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseRequestContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/RequestContext.html#getMethod()"><B>getMethod()</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/RequestContext.html" title="interface in org.apache.abdera2.common.protocol">RequestContext</A>
<DD>Get the HTTP method
<DT><A HREF="./org/apache/abdera2/common/protocol/MethodOverrideFilter.html#getMethods()"><B>getMethods()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/MethodOverrideFilter.html" title="class in org.apache.abdera2.common.protocol">MethodOverrideFilter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/CacheControl.html#getMinFresh()"><B>getMinFresh()</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/CacheControl.html" title="class in org.apache.abdera2.common.http">CacheControl</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/anno/AnnoUtil.html#getName(java.lang.Object)"><B>getName(Object)</B></A> - 
Static method in class org.apache.abdera2.common.anno.<A HREF="./org/apache/abdera2/common/anno/AnnoUtil.html" title="class in org.apache.abdera2.common.anno">AnnoUtil</A>
<DD>Retrieves the value of the Name attribute from the specified 
 item.
<DT><A HREF="./org/apache/abdera2/common/protocol/SimpleSubjectResolver.AnonymousPrincipal.html#getName()"><B>getName()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/SimpleSubjectResolver.AnonymousPrincipal.html" title="class in org.apache.abdera2.common.protocol">SimpleSubjectResolver.AnonymousPrincipal</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/Expression.VarSpec.html#getName()"><B>getName()</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/Expression.VarSpec.html" title="class in org.apache.abdera2.common.templates">Expression.VarSpec</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/anno/AnnoUtil.html#getNamespaces(java.lang.Object)"><B>getNamespaces(Object)</B></A> - 
Static method in class org.apache.abdera2.common.anno.<A HREF="./org/apache/abdera2/common/anno/AnnoUtil.html" title="class in org.apache.abdera2.common.anno">AnnoUtil</A>
<DD>Returns the Namespace URIs handled by this Extension Factory
<DT><A HREF="./org/apache/abdera2/common/http/CacheControl.html#getNoCacheHeaders()"><B>getNoCacheHeaders()</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/CacheControl.html" title="class in org.apache.abdera2.common.http">CacheControl</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/ProviderHelper.html#getOffset(org.apache.abdera2.common.protocol.RequestContext, java.lang.String, int)"><B>getOffset(RequestContext, String, int)</B></A> - 
Static method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ProviderHelper.html" title="class in org.apache.abdera2.common.protocol">ProviderHelper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/Expression.html#getOperation()"><B>getOperation()</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/Expression.html" title="class in org.apache.abdera2.common.templates">Expression</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/ProviderHelper.html#getPageSize(org.apache.abdera2.common.protocol.RequestContext, java.lang.String, int)"><B>getPageSize(RequestContext, String, int)</B></A> - 
Static method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ProviderHelper.html" title="class in org.apache.abdera2.common.protocol">ProviderHelper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/Authentication.html#getParam(java.lang.String)"><B>getParam(String)</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/Authentication.html" title="class in org.apache.abdera2.common.http">Authentication</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/Preference.html#getParam(java.lang.String)"><B>getParam(String)</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/Preference.html" title="class in org.apache.abdera2.common.http">Preference</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/WebLink.html#getParam(java.lang.String)"><B>getParam(String)</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/WebLink.html" title="class in org.apache.abdera2.common.http">WebLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html#getParameter(java.lang.String)"><B>getParameter(String)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseRequestContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/RegexTargetResolver.RegexTarget.html#getParameter(java.lang.String)"><B>getParameter(String)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/RegexTargetResolver.RegexTarget.html" title="class in org.apache.abdera2.common.protocol">RegexTargetResolver.RegexTarget</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/RequestContext.html#getParameter(java.lang.String)"><B>getParameter(String)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/RequestContext.html" title="interface in org.apache.abdera2.common.protocol">RequestContext</A>
<DD>Get the specified request parameter
<DT><A HREF="./org/apache/abdera2/common/protocol/RouteManager.RouteTarget.html#getParameter(java.lang.String)"><B>getParameter(String)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/RouteManager.RouteTarget.html" title="class in org.apache.abdera2.common.protocol">RouteManager.RouteTarget</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/ServletRequestContext.html#getParameter(java.lang.String)"><B>getParameter(String)</B></A> - 
Method in class org.apache.abdera2.common.protocol.servlet.<A HREF="./org/apache/abdera2/common/protocol/servlet/ServletRequestContext.html" title="class in org.apache.abdera2.common.protocol.servlet">ServletRequestContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/SimpleTarget.html#getParameter(java.lang.String)"><B>getParameter(String)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/SimpleTarget.html" title="class in org.apache.abdera2.common.protocol">SimpleTarget</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/Target.html#getParameter(java.lang.String)"><B>getParameter(String)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/Target.html" title="interface in org.apache.abdera2.common.protocol">Target</A>
<DD>Return the named target parameter
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html#getParameterNames()"><B>getParameterNames()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseRequestContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/RegexTargetResolver.RegexTarget.html#getParameterNames()"><B>getParameterNames()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/RegexTargetResolver.RegexTarget.html" title="class in org.apache.abdera2.common.protocol">RegexTargetResolver.RegexTarget</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/RequestContext.html#getParameterNames()"><B>getParameterNames()</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/RequestContext.html" title="interface in org.apache.abdera2.common.protocol">RequestContext</A>
<DD>Return the listing of parameter names
<DT><A HREF="./org/apache/abdera2/common/protocol/RouteManager.RouteTarget.html#getParameterNames()"><B>getParameterNames()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/RouteManager.RouteTarget.html" title="class in org.apache.abdera2.common.protocol">RouteManager.RouteTarget</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/ServletRequestContext.html#getParameterNames()"><B>getParameterNames()</B></A> - 
Method in class org.apache.abdera2.common.protocol.servlet.<A HREF="./org/apache/abdera2/common/protocol/servlet/ServletRequestContext.html" title="class in org.apache.abdera2.common.protocol.servlet">ServletRequestContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/SimpleTarget.html#getParameterNames()"><B>getParameterNames()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/SimpleTarget.html" title="class in org.apache.abdera2.common.protocol">SimpleTarget</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/Target.html#getParameterNames()"><B>getParameterNames()</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/Target.html" title="interface in org.apache.abdera2.common.protocol">Target</A>
<DD>Return a listing of all parameter names
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html#getParameters(java.lang.String)"><B>getParameters(String)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseRequestContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/RequestContext.html#getParameters(java.lang.String)"><B>getParameters(String)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/RequestContext.html" title="interface in org.apache.abdera2.common.protocol">RequestContext</A>
<DD>Return all the values for the specified parameter
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/ServletRequestContext.html#getParameters(java.lang.String)"><B>getParameters(String)</B></A> - 
Method in class org.apache.abdera2.common.protocol.servlet.<A HREF="./org/apache/abdera2/common/protocol/servlet/ServletRequestContext.html" title="class in org.apache.abdera2.common.protocol.servlet">ServletRequestContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/iri/IRI.html#getPath()"><B>getPath()</B></A> - 
Method in class org.apache.abdera2.common.iri.<A HREF="./org/apache/abdera2/common/iri/IRI.html" title="class in org.apache.abdera2.common.iri">IRI</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/Route.html#getPattern()"><B>getPattern()</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/Route.html" title="class in org.apache.abdera2.common.templates">Route</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/iri/IRI.html#getPort()"><B>getPort()</B></A> - 
Method in class org.apache.abdera2.common.iri.<A HREF="./org/apache/abdera2/common/iri/IRI.html" title="class in org.apache.abdera2.common.iri">IRI</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractMessage.html#getPrefer()"><B>getPrefer()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractMessage.html" title="class in org.apache.abdera2.common.protocol">AbstractMessage</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html#getPrefer()"><B>getPrefer()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseRequestContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html#getPrefer()"><B>getPrefer()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseResponseContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/Message.html#getPrefer()"><B>getPrefer()</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/Message.html" title="interface in org.apache.abdera2.common.protocol">Message</A>
<DD>Return the Prefer header
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractMessage.html#getPreferApplied()"><B>getPreferApplied()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractMessage.html" title="class in org.apache.abdera2.common.protocol">AbstractMessage</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html#getPreferApplied()"><B>getPreferApplied()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseRequestContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html#getPreferApplied()"><B>getPreferApplied()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseResponseContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/Message.html#getPreferApplied()"><B>getPreferApplied()</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/Message.html" title="interface in org.apache.abdera2.common.protocol">Message</A>
<DD>Return the Applied Preferences
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html#getPreferredLocale()"><B>getPreferredLocale()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseRequestContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/RequestContext.html#getPreferredLocale()"><B>getPreferredLocale()</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/RequestContext.html" title="interface in org.apache.abdera2.common.protocol">RequestContext</A>
<DD>Get the client's preferred locale as specified in the request
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/ServletRequestContext.html#getPreferredLocale()"><B>getPreferredLocale()</B></A> - 
Method in class org.apache.abdera2.common.protocol.servlet.<A HREF="./org/apache/abdera2/common/protocol/servlet/ServletRequestContext.html" title="class in org.apache.abdera2.common.protocol.servlet">ServletRequestContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html#getPreferredLocales()"><B>getPreferredLocales()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseRequestContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/RequestContext.html#getPreferredLocales()"><B>getPreferredLocales()</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/RequestContext.html" title="interface in org.apache.abdera2.common.protocol">RequestContext</A>
<DD>Get a listing of the client's preferred locales as specified in the request.
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/ServletRequestContext.html#getPreferredLocales()"><B>getPreferredLocales()</B></A> - 
Method in class org.apache.abdera2.common.protocol.servlet.<A HREF="./org/apache/abdera2/common/protocol/servlet/ServletRequestContext.html" title="class in org.apache.abdera2.common.protocol.servlet">ServletRequestContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractBaseRequestContext.html#getPrincipal()"><B>getPrincipal()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractBaseRequestContext.html" title="class in org.apache.abdera2.common.protocol">AbstractBaseRequestContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html#getPrincipal()"><B>getPrincipal()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseRequestContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/RequestContext.html#getPrincipal()"><B>getPrincipal()</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/RequestContext.html" title="interface in org.apache.abdera2.common.protocol">RequestContext</A>
<DD>Get this requests authenticated Principal object
<DT><A HREF="./org/apache/abdera2/common/http/CacheControl.html#getPrivateHeaders()"><B>getPrivateHeaders()</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/CacheControl.html" title="class in org.apache.abdera2.common.http">CacheControl</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/async/DefaultProcessor.html#getProcessor()"><B>getProcessor()</B></A> - 
Method in class org.apache.abdera2.common.protocol.servlet.async.<A HREF="./org/apache/abdera2/common/protocol/servlet/async/DefaultProcessor.html" title="class in org.apache.abdera2.common.protocol.servlet.async">DefaultProcessor</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/async/ProcessorQueue.html#getProcessor()"><B>getProcessor()</B></A> - 
Method in interface org.apache.abdera2.common.protocol.servlet.async.<A HREF="./org/apache/abdera2/common/protocol/servlet/async/ProcessorQueue.html" title="interface in org.apache.abdera2.common.protocol.servlet.async">ProcessorQueue</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/AbstractAbderaServlet.html#getProperties(javax.servlet.ServletConfig)"><B>getProperties(ServletConfig)</B></A> - 
Method in class org.apache.abdera2.common.protocol.servlet.<A HREF="./org/apache/abdera2/common/protocol/servlet/AbstractAbderaServlet.html" title="class in org.apache.abdera2.common.protocol.servlet">AbstractAbderaServlet</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/async/AbderaAsyncService.html#getProperties(javax.servlet.ServletContext)"><B>getProperties(ServletContext)</B></A> - 
Method in class org.apache.abdera2.common.protocol.servlet.async.<A HREF="./org/apache/abdera2/common/protocol/servlet/async/AbderaAsyncService.html" title="class in org.apache.abdera2.common.protocol.servlet.async">AbderaAsyncService</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseProvider.html#getProperty(java.lang.String)"><B>getProperty(String)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseProvider.html" title="class in org.apache.abdera2.common.protocol">BaseProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html#getProperty(org.apache.abdera2.common.protocol.RequestContext.Property)"><B>getProperty(RequestContext.Property)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseRequestContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/Provider.html#getProperty(java.lang.String)"><B>getProperty(String)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/Provider.html" title="interface in org.apache.abdera2.common.protocol">Provider</A>
<DD>Get the specified property
<DT><A HREF="./org/apache/abdera2/common/protocol/RequestContext.html#getProperty(org.apache.abdera2.common.protocol.RequestContext.Property)"><B>getProperty(RequestContext.Property)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/RequestContext.html" title="interface in org.apache.abdera2.common.protocol">RequestContext</A>
<DD>Get the specified system property
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/ServletRequestContext.html#getProperty(org.apache.abdera2.common.protocol.RequestContext.Property)"><B>getProperty(RequestContext.Property)</B></A> - 
Method in class org.apache.abdera2.common.protocol.servlet.<A HREF="./org/apache/abdera2/common/protocol/servlet/ServletRequestContext.html" title="class in org.apache.abdera2.common.protocol.servlet">ServletRequestContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseProvider.html#getPropertyNames()"><B>getPropertyNames()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseProvider.html" title="class in org.apache.abdera2.common.protocol">BaseProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/Provider.html#getPropertyNames()"><B>getPropertyNames()</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/Provider.html" title="interface in org.apache.abdera2.common.protocol">Provider</A>
<DD>Return a listing of all available properties
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractBaseRequestContext.html#getProvider()"><B>getProvider()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractBaseRequestContext.html" title="class in org.apache.abdera2.common.protocol">AbstractBaseRequestContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html#getProvider()"><B>getProvider()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseRequestContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/RequestContext.html#getProvider()"><B>getProvider()</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/RequestContext.html" title="interface in org.apache.abdera2.common.protocol">RequestContext</A>
<DD>Get the Provider associated with this request
<DT><A HREF="./org/apache/abdera2/common/pusher/ChannelManager.html#getPusher(java.lang.String)"><B>getPusher(String)</B></A> - 
Method in interface org.apache.abdera2.common.pusher.<A HREF="./org/apache/abdera2/common/pusher/ChannelManager.html" title="interface in org.apache.abdera2.common.pusher">ChannelManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/pusher/MapChannelManager.html#getPusher(java.lang.String)"><B>getPusher(String)</B></A> - 
Method in class org.apache.abdera2.common.pusher.<A HREF="./org/apache/abdera2/common/pusher/MapChannelManager.html" title="class in org.apache.abdera2.common.pusher">MapChannelManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/anno/AnnoUtil.html#getQName(java.lang.Object)"><B>getQName(Object)</B></A> - 
Static method in class org.apache.abdera2.common.anno.<A HREF="./org/apache/abdera2/common/anno/AnnoUtil.html" title="class in org.apache.abdera2.common.anno">AnnoUtil</A>
<DD>Retrieve a javax.xml.namespace.QName from an instance object using the 
 QName annotation
<DT><A HREF="./org/apache/abdera2/common/iri/IRI.html#getQuery()"><B>getQuery()</B></A> - 
Method in class org.apache.abdera2.common.iri.<A HREF="./org/apache/abdera2/common/iri/IRI.html" title="class in org.apache.abdera2.common.iri">IRI</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Position.html#getRadius()"><B>getRadius()</B></A> - 
Method in class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Position.html" title="class in org.apache.abdera2.common.geo">Position</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html#getReader()"><B>getReader()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseRequestContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/RequestContext.html#getReader()"><B>getReader()</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/RequestContext.html" title="interface in org.apache.abdera2.common.protocol">RequestContext</A>
<DD>Get a Reader containing the request entity
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/ServletRequestContext.html#getReader()"><B>getReader()</B></A> - 
Method in class org.apache.abdera2.common.protocol.servlet.<A HREF="./org/apache/abdera2/common/protocol/servlet/ServletRequestContext.html" title="class in org.apache.abdera2.common.protocol.servlet">ServletRequestContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/pusher/ChannelManager.html#getReceiver(java.lang.String)"><B>getReceiver(String)</B></A> - 
Method in interface org.apache.abdera2.common.pusher.<A HREF="./org/apache/abdera2/common/pusher/ChannelManager.html" title="interface in org.apache.abdera2.common.pusher">ChannelManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/pusher/MapChannelManager.html#getReceiver(java.lang.String)"><B>getReceiver(String)</B></A> - 
Method in class org.apache.abdera2.common.pusher.<A HREF="./org/apache/abdera2/common/pusher/MapChannelManager.html" title="class in org.apache.abdera2.common.pusher">MapChannelManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/WebLink.html#getRel()"><B>getRel()</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/WebLink.html" title="class in org.apache.abdera2.common.http">WebLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Position.html#getRelationshipTag()"><B>getRelationshipTag()</B></A> - 
Method in class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Position.html" title="class in org.apache.abdera2.common.geo">Position</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/async/AbderaChannelServlet.AsyncListener.html#getRequest()"><B>getRequest()</B></A> - 
Method in class org.apache.abdera2.common.protocol.servlet.async.<A HREF="./org/apache/abdera2/common/protocol/servlet/async/AbderaChannelServlet.AsyncListener.html" title="class in org.apache.abdera2.common.protocol.servlet.async">AbderaChannelServlet.AsyncListener</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/ServletRequestContext.html#getRequest()"><B>getRequest()</B></A> - 
Method in class org.apache.abdera2.common.protocol.servlet.<A HREF="./org/apache/abdera2/common/protocol/servlet/ServletRequestContext.html" title="class in org.apache.abdera2.common.protocol.servlet">ServletRequestContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/SimpleTarget.html#getRequestContext()"><B>getRequestContext()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/SimpleTarget.html" title="class in org.apache.abdera2.common.protocol">SimpleTarget</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseProvider.html#getRequestProcessors()"><B>getRequestProcessors()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseProvider.html" title="class in org.apache.abdera2.common.protocol">BaseProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/Provider.html#getRequestProcessors()"><B>getRequestProcessors()</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/Provider.html" title="interface in org.apache.abdera2.common.protocol">Provider</A>
<DD>Return a map of registered <CODE>AtompubRequestProcessor</CODE>s with related <A HREF="./org/apache/abdera2/common/protocol/TargetType.html" title="class in org.apache.abdera2.common.protocol"><CODE>TargetType</CODE></A>.
<DT><A HREF="./org/apache/abdera2/common/templates/Route.html#getRequirement(java.lang.String)"><B>getRequirement(String)</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/Route.html" title="class in org.apache.abdera2.common.templates">Route</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/Route.html#getRequirements()"><B>getRequirements()</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/Route.html" title="class in org.apache.abdera2.common.templates">Route</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/WebLink.html#getResolvedIri(org.apache.abdera2.common.iri.IRI)"><B>getResolvedIri(IRI)</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/WebLink.html" title="class in org.apache.abdera2.common.http">WebLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractBaseRequestContext.html#getResolvedUri()"><B>getResolvedUri()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractBaseRequestContext.html" title="class in org.apache.abdera2.common.protocol">AbstractBaseRequestContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html#getResolvedUri()"><B>getResolvedUri()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseRequestContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/RequestContext.html#getResolvedUri()"><B>getResolvedUri()</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/RequestContext.html" title="interface in org.apache.abdera2.common.protocol">RequestContext</A>
<DD>Get the absolute request URI (includes server name, port, etc)
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractCollectionAdapter.html#getResourceName(org.apache.abdera2.common.protocol.RequestContext)"><B>getResourceName(RequestContext)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractCollectionAdapter.html" title="class in org.apache.abdera2.common.protocol">AbstractCollectionAdapter</A>
<DD>Get's the name of the specific resource requested
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/async/AbderaChannelServlet.AsyncListener.html#getResponse()"><B>getResponse()</B></A> - 
Method in class org.apache.abdera2.common.protocol.servlet.async.<A HREF="./org/apache/abdera2/common/protocol/servlet/async/AbderaChannelServlet.AsyncListener.html" title="class in org.apache.abdera2.common.protocol.servlet.async">AbderaChannelServlet.AsyncListener</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/ResponseContextException.html#getResponseContext()"><B>getResponseContext()</B></A> - 
Method in exception org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ResponseContextException.html" title="class in org.apache.abdera2.common.protocol">ResponseContextException</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/WebLink.html#getRev()"><B>getRev()</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/WebLink.html" title="class in org.apache.abdera2.common.http">WebLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/RouteManager.RouteTarget.html#getRoute()"><B>getRoute()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/RouteManager.RouteTarget.html" title="class in org.apache.abdera2.common.protocol">RouteManager.RouteTarget</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/RouteManager.RouteTargetType.html#getRoute()"><B>getRoute()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/RouteManager.RouteTargetType.html" title="class in org.apache.abdera2.common.protocol">RouteManager.RouteTargetType</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/Authentication.html#getScheme()"><B>getScheme()</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/Authentication.html" title="class in org.apache.abdera2.common.http">Authentication</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/iri/IRI.html#getScheme()"><B>getScheme()</B></A> - 
Method in class org.apache.abdera2.common.iri.<A HREF="./org/apache/abdera2/common/iri/IRI.html" title="class in org.apache.abdera2.common.iri">IRI</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/iri/SchemeRegistry.html#getScheme(java.lang.String)"><B>getScheme(String)</B></A> - 
Method in class org.apache.abdera2.common.iri.<A HREF="./org/apache/abdera2/common/iri/SchemeRegistry.html" title="class in org.apache.abdera2.common.iri">SchemeRegistry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/iri/IRI.html#getSchemeSpecificPart()"><B>getSchemeSpecificPart()</B></A> - 
Method in class org.apache.abdera2.common.iri.<A HREF="./org/apache/abdera2/common/iri/IRI.html" title="class in org.apache.abdera2.common.iri">IRI</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/AbstractAbderaServlet.html#getServiceManager()"><B>getServiceManager()</B></A> - 
Method in class org.apache.abdera2.common.protocol.servlet.<A HREF="./org/apache/abdera2/common/protocol/servlet/AbstractAbderaServlet.html" title="class in org.apache.abdera2.common.protocol.servlet">AbstractAbderaServlet</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/ServletRequestContext.html#getServletContext()"><B>getServletContext()</B></A> - 
Method in class org.apache.abdera2.common.protocol.servlet.<A HREF="./org/apache/abdera2/common/protocol/servlet/ServletRequestContext.html" title="class in org.apache.abdera2.common.protocol.servlet">ServletRequestContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/ServletRequestContext.html#getSession()"><B>getSession()</B></A> - 
Method in class org.apache.abdera2.common.protocol.servlet.<A HREF="./org/apache/abdera2/common/protocol/servlet/ServletRequestContext.html" title="class in org.apache.abdera2.common.protocol.servlet">ServletRequestContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/ServletRequestContext.html#getSession(boolean)"><B>getSession(boolean)</B></A> - 
Method in class org.apache.abdera2.common.protocol.servlet.<A HREF="./org/apache/abdera2/common/protocol/servlet/ServletRequestContext.html" title="class in org.apache.abdera2.common.protocol.servlet">ServletRequestContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractMessage.html#getSlug()"><B>getSlug()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractMessage.html" title="class in org.apache.abdera2.common.protocol">AbstractMessage</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html#getSlug()"><B>getSlug()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseRequestContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html#getSlug()"><B>getSlug()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseResponseContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/Message.html#getSlug()"><B>getSlug()</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/Message.html" title="interface in org.apache.abdera2.common.protocol">Message</A>
<DD>Return the value of the Slug header
<DT><A HREF="./org/apache/abdera2/common/http/CacheControl.html#getSMaxAge()"><B>getSMaxAge()</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/CacheControl.html" title="class in org.apache.abdera2.common.http">CacheControl</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/CacheControl.html#getStaleIfError()"><B>getStaleIfError()</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/CacheControl.html" title="class in org.apache.abdera2.common.http">CacheControl</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/CacheControl.html#getStaleWhileRevalidate()"><B>getStaleWhileRevalidate()</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/CacheControl.html" title="class in org.apache.abdera2.common.http">CacheControl</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html#getStatus()"><B>getStatus()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html" title="class in org.apache.abdera2.common.protocol">AbstractResponseContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html#getStatus()"><B>getStatus()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseResponseContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/Response.html#getStatus()"><B>getStatus()</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/Response.html" title="interface in org.apache.abdera2.common.protocol">Response</A>
<DD>Get the specific response status code
<DT><A HREF="./org/apache/abdera2/common/protocol/ResponseContextException.html#getStatusCode()"><B>getStatusCode()</B></A> - 
Method in exception org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ResponseContextException.html" title="class in org.apache.abdera2.common.protocol">ResponseContextException</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html#getStatusText()"><B>getStatusText()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html" title="class in org.apache.abdera2.common.protocol">AbstractResponseContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html#getStatusText()"><B>getStatusText()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseResponseContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/Response.html#getStatusText()"><B>getStatusText()</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/Response.html" title="interface in org.apache.abdera2.common.protocol">Response</A>
<DD>Get the response status text
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractBaseRequestContext.html#getSubject()"><B>getSubject()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractBaseRequestContext.html" title="class in org.apache.abdera2.common.protocol">AbstractBaseRequestContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html#getSubject()"><B>getSubject()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseRequestContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/RequestContext.html#getSubject()"><B>getSubject()</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/RequestContext.html" title="interface in org.apache.abdera2.common.protocol">RequestContext</A>
<DD>Get this requests resolved Subject
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseProvider.html#getSubjectResolver(org.apache.abdera2.common.protocol.RequestContext)"><B>getSubjectResolver(RequestContext)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseProvider.html" title="class in org.apache.abdera2.common.protocol">BaseProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/EntityTag.html#getTag()"><B>getTag()</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/EntityTag.html" title="class in org.apache.abdera2.common.http">EntityTag</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractBaseRequestContext.html#getTarget()"><B>getTarget()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractBaseRequestContext.html" title="class in org.apache.abdera2.common.protocol">AbstractBaseRequestContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html#getTarget()"><B>getTarget()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseRequestContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/RegexTargetResolver.html#getTarget(org.apache.abdera2.common.protocol.TargetType, org.apache.abdera2.common.protocol.RequestContext, java.util.regex.Matcher, java.lang.String[])"><B>getTarget(TargetType, RequestContext, Matcher, String[])</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/RegexTargetResolver.html" title="class in org.apache.abdera2.common.protocol">RegexTargetResolver</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/RequestContext.html#getTarget()"><B>getTarget()</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/RequestContext.html" title="interface in org.apache.abdera2.common.protocol">RequestContext</A>
<DD>Get this requests resolved Target
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html#getTargetBasePath()"><B>getTargetBasePath()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseRequestContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/RequestContext.html#getTargetBasePath()"><B>getTargetBasePath()</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/RequestContext.html" title="interface in org.apache.abdera2.common.protocol">RequestContext</A>
<DD>Returns the subset of the request URI that is the base of the target path (e.g.
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/ServletRequestContext.html#getTargetBasePath()"><B>getTargetBasePath()</B></A> - 
Method in class org.apache.abdera2.common.protocol.servlet.<A HREF="./org/apache/abdera2/common/protocol/servlet/ServletRequestContext.html" title="class in org.apache.abdera2.common.protocol.servlet">ServletRequestContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractWorkspaceProvider.html#getTargetBuilder(org.apache.abdera2.common.protocol.Request)"><B>getTargetBuilder(Request)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractWorkspaceProvider.html" title="class in org.apache.abdera2.common.protocol">AbstractWorkspaceProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseProvider.html#getTargetBuilder(org.apache.abdera2.common.protocol.Request)"><B>getTargetBuilder(Request)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseProvider.html" title="class in org.apache.abdera2.common.protocol">BaseProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractBaseRequestContext.html#getTargetPath()"><B>getTargetPath()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractBaseRequestContext.html" title="class in org.apache.abdera2.common.protocol">AbstractBaseRequestContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html#getTargetPath()"><B>getTargetPath()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseRequestContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/RequestContext.html#getTargetPath()"><B>getTargetPath()</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/RequestContext.html" title="interface in org.apache.abdera2.common.protocol">RequestContext</A>
<DD>Returns the subset of the request URI that is to be used to resolve the Target (everything after the context
 path)
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractWorkspaceProvider.html#getTargetResolver(org.apache.abdera2.common.protocol.RequestContext)"><B>getTargetResolver(RequestContext)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractWorkspaceProvider.html" title="class in org.apache.abdera2.common.protocol">AbstractWorkspaceProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseProvider.html#getTargetResolver(org.apache.abdera2.common.protocol.RequestContext)"><B>getTargetResolver(RequestContext)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseProvider.html" title="class in org.apache.abdera2.common.protocol">BaseProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/RouteManager.RouteTargetType.html#getTargetType()"><B>getTargetType()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/RouteManager.RouteTargetType.html" title="class in org.apache.abdera2.common.protocol">RouteManager.RouteTargetType</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/QueryContext.html#getTemplate(boolean, org.apache.abdera2.common.templates.Context)"><B>getTemplate(boolean, Context)</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/QueryContext.html" title="class in org.apache.abdera2.common.templates">QueryContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/QueryContext.html#getTemplate(boolean)"><B>getTemplate(boolean)</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/QueryContext.html" title="class in org.apache.abdera2.common.templates">QueryContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/QueryContext.html#getTemplate()"><B>getTemplate()</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/QueryContext.html" title="class in org.apache.abdera2.common.templates">QueryContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/TemplateProvider.html#getTemplate()"><B>getTemplate()</B></A> - 
Method in interface org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/TemplateProvider.html" title="interface in org.apache.abdera2.common.templates">TemplateProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/date/DateTime.html#getTime()"><B>getTime()</B></A> - 
Method in class org.apache.abdera2.common.date.<A HREF="./org/apache/abdera2/common/date/DateTime.html" title="class in org.apache.abdera2.common.date">DateTime</A>
<DD>Returns the value of this Atom Date as the number of milliseconds since January 1, 1970, 00:00:00 GMT
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/async/AbderaChannelServlet.html#getTimeout(javax.servlet.ServletConfig, javax.servlet.ServletContext)"><B>getTimeout(ServletConfig, ServletContext)</B></A> - 
Method in class org.apache.abdera2.common.protocol.servlet.async.<A HREF="./org/apache/abdera2/common/protocol/servlet/async/AbderaChannelServlet.html" title="class in org.apache.abdera2.common.protocol.servlet.async">AbderaChannelServlet</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/WebLink.html#getTitle()"><B>getTitle()</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/WebLink.html" title="class in org.apache.abdera2.common.http">WebLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BasicCollectionInfo.html#getTitle(org.apache.abdera2.common.protocol.RequestContext)"><B>getTitle(RequestContext)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BasicCollectionInfo.html" title="class in org.apache.abdera2.common.protocol">BasicCollectionInfo</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BasicWorkspaceInfo.html#getTitle()"><B>getTitle()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BasicWorkspaceInfo.html" title="class in org.apache.abdera2.common.protocol">BasicWorkspaceInfo</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BasicWorkspaceInfo.html#getTitle(org.apache.abdera2.common.protocol.RequestContext)"><B>getTitle(RequestContext)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BasicWorkspaceInfo.html" title="class in org.apache.abdera2.common.protocol">BasicWorkspaceInfo</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/CollectionInfo.html#getTitle(org.apache.abdera2.common.protocol.RequestContext)"><B>getTitle(RequestContext)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/CollectionInfo.html" title="interface in org.apache.abdera2.common.protocol">CollectionInfo</A>
<DD>Get the value of the app:collection element's atom:title element.
<DT><A HREF="./org/apache/abdera2/common/protocol/WorkspaceInfo.html#getTitle(org.apache.abdera2.common.protocol.RequestContext)"><B>getTitle(RequestContext)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/WorkspaceInfo.html" title="interface in org.apache.abdera2.common.protocol">WorkspaceInfo</A>
<DD>Return the value of the app:workspace element's atom:title.
<DT><A HREF="./org/apache/abdera2/common/http/Preference.html#getToken()"><B>getToken()</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/Preference.html" title="class in org.apache.abdera2.common.http">Preference</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractResponse.html#getType()"><B>getType()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractResponse.html" title="class in org.apache.abdera2.common.protocol">AbstractResponse</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html#getType()"><B>getType()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseResponseContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/Response.html#getType()"><B>getType()</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/Response.html" title="interface in org.apache.abdera2.common.protocol">Response</A>
<DD>Get the response type classification
<DT><A HREF="./org/apache/abdera2/common/protocol/SimpleTarget.html#getType()"><B>getType()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/SimpleTarget.html" title="class in org.apache.abdera2.common.protocol">SimpleTarget</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/Target.html#getType()"><B>getType()</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/Target.html" title="interface in org.apache.abdera2.common.protocol">Target</A>
<DD>Return the resolved Target Type
<DT><A HREF="./org/apache/abdera2/common/geo/Box.html#getUpperCorner()"><B>getUpperCorner()</B></A> - 
Method in class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Box.html" title="class in org.apache.abdera2.common.geo">Box</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractBaseRequestContext.html#getUri()"><B>getUri()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractBaseRequestContext.html" title="class in org.apache.abdera2.common.protocol">AbstractBaseRequestContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html#getUri()"><B>getUri()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseRequestContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/RequestContext.html#getUri()"><B>getUri()</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/RequestContext.html" title="interface in org.apache.abdera2.common.protocol">RequestContext</A>
<DD>Get the request URI
<DT><A HREF="./org/apache/abdera2/common/iri/IRI.html#getUserInfo()"><B>getUserInfo()</B></A> - 
Method in class org.apache.abdera2.common.iri.<A HREF="./org/apache/abdera2/common/iri/IRI.html" title="class in org.apache.abdera2.common.iri">IRI</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/date/DateTime.html#getValue()"><B>getValue()</B></A> - 
Method in class org.apache.abdera2.common.date.<A HREF="./org/apache/abdera2/common/date/DateTime.html" title="class in org.apache.abdera2.common.date">DateTime</A>
<DD>Return the serialized string form of the Atom date
<DT><A HREF="./org/apache/abdera2/common/http/CacheControlUtil.CacheControlParser.html#getValue(org.apache.abdera2.common.http.CacheControlUtil.Directive)"><B>getValue(CacheControlUtil.Directive)</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/CacheControlUtil.CacheControlParser.html" title="class in org.apache.abdera2.common.http">CacheControlUtil.CacheControlParser</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/Preference.html#getValue()"><B>getValue()</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/Preference.html" title="class in org.apache.abdera2.common.http">Preference</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Localizer.html#getValue(java.lang.String)"><B>getValue(String)</B></A> - 
Method in class org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Localizer.html" title="class in org.apache.abdera2.common">Localizer</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Localizer.html#getValue(java.lang.String, java.lang.String)"><B>getValue(String, String)</B></A> - 
Method in class org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Localizer.html" title="class in org.apache.abdera2.common">Localizer</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/CacheControlUtil.CacheControlParser.html#getValues()"><B>getValues()</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/CacheControlUtil.CacheControlParser.html" title="class in org.apache.abdera2.common.http">CacheControlUtil.CacheControlParser</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/CacheControlUtil.CacheControlParser.html#getValues(org.apache.abdera2.common.http.CacheControlUtil.Directive)"><B>getValues(CacheControlUtil.Directive)</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/CacheControlUtil.CacheControlParser.html" title="class in org.apache.abdera2.common.http">CacheControlUtil.CacheControlParser</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/Route.html#getVariables()"><B>getVariables()</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/Route.html" title="class in org.apache.abdera2.common.templates">Route</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/Template.html#getVariables()"><B>getVariables()</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/Template.html" title="class in org.apache.abdera2.common.templates">Template</A>
<DD>Return the array of template variables
<DT><A HREF="./org/apache/abdera2/common/anno/AnnoUtil.html#getVersion(java.lang.Object)"><B>getVersion(Object)</B></A> - 
Static method in class org.apache.abdera2.common.anno.<A HREF="./org/apache/abdera2/common/anno/AnnoUtil.html" title="class in org.apache.abdera2.common.anno">AnnoUtil</A>
<DD>Retrieve the Version annotation from the specified item
<DT><A HREF="./org/apache/abdera2/common/xml/XmlVersionInputStream.html#getVersion()"><B>getVersion()</B></A> - 
Method in class org.apache.abdera2.common.xml.<A HREF="./org/apache/abdera2/common/xml/XmlVersionInputStream.html" title="class in org.apache.abdera2.common.xml">XmlVersionInputStream</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/xml/XmlVersionReader.html#getVersion()"><B>getVersion()</B></A> - 
Method in class org.apache.abdera2.common.xml.<A HREF="./org/apache/abdera2/common/xml/XmlVersionReader.html" title="class in org.apache.abdera2.common.xml">XmlVersionReader</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractMessage.html#getWebLinks()"><B>getWebLinks()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractMessage.html" title="class in org.apache.abdera2.common.protocol">AbstractMessage</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html#getWebLinks()"><B>getWebLinks()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseRequestContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html#getWebLinks()"><B>getWebLinks()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseResponseContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/Message.html#getWebLinks()"><B>getWebLinks()</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/Message.html" title="interface in org.apache.abdera2.common.protocol">Message</A>
<DD>Return the Link header
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractWorkspaceProvider.html#getWorkspaceManager(org.apache.abdera2.common.protocol.RequestContext)"><B>getWorkspaceManager(RequestContext)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractWorkspaceProvider.html" title="class in org.apache.abdera2.common.protocol">AbstractWorkspaceProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseProvider.html#getWorkspaceManager(org.apache.abdera2.common.protocol.RequestContext)"><B>getWorkspaceManager(RequestContext)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseProvider.html" title="class in org.apache.abdera2.common.protocol">BaseProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractWorkspaceManager.html#getWorkspaces(org.apache.abdera2.common.protocol.RequestContext)"><B>getWorkspaces(RequestContext)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractWorkspaceManager.html" title="class in org.apache.abdera2.common.protocol">AbstractWorkspaceManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractWorkspaceProvider.html#getWorkspaces(org.apache.abdera2.common.protocol.RequestContext)"><B>getWorkspaces(RequestContext)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractWorkspaceProvider.html" title="class in org.apache.abdera2.common.protocol">AbstractWorkspaceProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/WorkspaceManager.html#getWorkspaces(org.apache.abdera2.common.protocol.RequestContext)"><B>getWorkspaces(RequestContext)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/WorkspaceManager.html" title="interface in org.apache.abdera2.common.protocol">WorkspaceManager</A>
<DD>Return the list of available workspaces
</DL>
<HR>
<A NAME="_H_"><!-- --></A><H2>
<B>H</B></H2>
<DL>
<DT><A HREF="./org/apache/abdera2/common/anno/AnnoUtil.html#handlesNamespace(java.lang.String, java.lang.Object)"><B>handlesNamespace(String, Object)</B></A> - 
Static method in class org.apache.abdera2.common.anno.<A HREF="./org/apache/abdera2/common/anno/AnnoUtil.html" title="class in org.apache.abdera2.common.anno">AnnoUtil</A>
<DD>Returns true if the given object "handles" the given namespace based
 on values specified using the Namespace annotation
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html#hasEntity()"><B>hasEntity()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseResponseContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/EmptyResponseContext.html#hasEntity()"><B>hasEntity()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/EmptyResponseContext.html" title="class in org.apache.abdera2.common.protocol">EmptyResponseContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/MediaResponseContext.html#hasEntity()"><B>hasEntity()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/MediaResponseContext.html" title="class in org.apache.abdera2.common.protocol">MediaResponseContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/ResponseContext.html#hasEntity()"><B>hasEntity()</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ResponseContext.html" title="interface in org.apache.abdera2.common.protocol">ResponseContext</A>
<DD>True if the response contains an entity
<DT><A HREF="./org/apache/abdera2/common/date/DateTime.html#hashCode()"><B>hashCode()</B></A> - 
Method in class org.apache.abdera2.common.date.<A HREF="./org/apache/abdera2/common/date/DateTime.html" title="class in org.apache.abdera2.common.date">DateTime</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Coordinate.html#hashCode()"><B>hashCode()</B></A> - 
Method in class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Coordinate.html" title="class in org.apache.abdera2.common.geo">Coordinate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Coordinates.html#hashCode()"><B>hashCode()</B></A> - 
Method in class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Coordinates.html" title="class in org.apache.abdera2.common.geo">Coordinates</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Multiple.html#hashCode()"><B>hashCode()</B></A> - 
Method in class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Multiple.html" title="class in org.apache.abdera2.common.geo">Multiple</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Point.html#hashCode()"><B>hashCode()</B></A> - 
Method in class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Point.html" title="class in org.apache.abdera2.common.geo">Point</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Position.html#hashCode()"><B>hashCode()</B></A> - 
Method in class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Position.html" title="class in org.apache.abdera2.common.geo">Position</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/Authentication.html#hashCode()"><B>hashCode()</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/Authentication.html" title="class in org.apache.abdera2.common.http">Authentication</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/CacheControl.html#hashCode()"><B>hashCode()</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/CacheControl.html" title="class in org.apache.abdera2.common.http">CacheControl</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/EntityTag.html#hashCode()"><B>hashCode()</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/EntityTag.html" title="class in org.apache.abdera2.common.http">EntityTag</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/Method.html#hashCode()"><B>hashCode()</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/Method.html" title="class in org.apache.abdera2.common.http">Method</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/Preference.html#hashCode()"><B>hashCode()</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/Preference.html" title="class in org.apache.abdera2.common.http">Preference</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/QualityHelper.QToken.html#hashCode()"><B>hashCode()</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/QualityHelper.QToken.html" title="class in org.apache.abdera2.common.http">QualityHelper.QToken</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/WebLink.html#hashCode()"><B>hashCode()</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/WebLink.html" title="class in org.apache.abdera2.common.http">WebLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/iri/AbstractScheme.html#hashCode()"><B>hashCode()</B></A> - 
Method in class org.apache.abdera2.common.iri.<A HREF="./org/apache/abdera2/common/iri/AbstractScheme.html" title="class in org.apache.abdera2.common.iri">AbstractScheme</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/iri/IRI.html#hashCode()"><B>hashCode()</B></A> - 
Method in class org.apache.abdera2.common.iri.<A HREF="./org/apache/abdera2/common/iri/IRI.html" title="class in org.apache.abdera2.common.iri">IRI</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/lang/Subtag.html#hashCode()"><B>hashCode()</B></A> - 
Method in class org.apache.abdera2.common.lang.<A HREF="./org/apache/abdera2/common/lang/Subtag.html" title="class in org.apache.abdera2.common.lang">Subtag</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/lang/SubtagSet.html#hashCode()"><B>hashCode()</B></A> - 
Method in class org.apache.abdera2.common.lang.<A HREF="./org/apache/abdera2/common/lang/SubtagSet.html" title="class in org.apache.abdera2.common.lang">SubtagSet</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BasicCollectionInfo.html#hashCode()"><B>hashCode()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BasicCollectionInfo.html" title="class in org.apache.abdera2.common.protocol">BasicCollectionInfo</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BasicWorkspaceInfo.html#hashCode()"><B>hashCode()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BasicWorkspaceInfo.html" title="class in org.apache.abdera2.common.protocol">BasicWorkspaceInfo</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/RegexTargetResolver.html#hashCode()"><B>hashCode()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/RegexTargetResolver.html" title="class in org.apache.abdera2.common.protocol">RegexTargetResolver</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/RegexTargetResolver.RegexTarget.html#hashCode()"><B>hashCode()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/RegexTargetResolver.RegexTarget.html" title="class in org.apache.abdera2.common.protocol">RegexTargetResolver.RegexTarget</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/SimpleSubjectResolver.AnonymousPrincipal.html#hashCode()"><B>hashCode()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/SimpleSubjectResolver.AnonymousPrincipal.html" title="class in org.apache.abdera2.common.protocol">SimpleSubjectResolver.AnonymousPrincipal</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/SimpleTarget.html#hashCode()"><B>hashCode()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/SimpleTarget.html" title="class in org.apache.abdera2.common.protocol">SimpleTarget</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/TargetType.html#hashCode()"><B>hashCode()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/TargetType.html" title="class in org.apache.abdera2.common.protocol">TargetType</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/Expression.html#hashCode()"><B>hashCode()</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/Expression.html" title="class in org.apache.abdera2.common.templates">Expression</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/Expression.VarSpec.html#hashCode()"><B>hashCode()</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/Expression.VarSpec.html" title="class in org.apache.abdera2.common.templates">Expression.VarSpec</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/MapContext.html#hashCode()"><B>hashCode()</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/MapContext.html" title="class in org.apache.abdera2.common.templates">MapContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/ObjectContext.html#hashCode()"><B>hashCode()</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/ObjectContext.html" title="class in org.apache.abdera2.common.templates">ObjectContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/Route.html#hashCode()"><B>hashCode()</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/Route.html" title="class in org.apache.abdera2.common.templates">Route</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/Template.html#hashCode()"><B>hashCode()</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/Template.html" title="class in org.apache.abdera2.common.templates">Template</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/TemplateManager.html#hashCode()"><B>hashCode()</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/TemplateManager.html" title="class in org.apache.abdera2.common.templates">TemplateManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/Slug.html#hashCode()"><B>hashCode()</B></A> - 
Method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/Slug.html" title="class in org.apache.abdera2.common.text">Slug</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Discover.LineReaderLoaderIterator.html#hasNext()"><B>hasNext()</B></A> - 
Method in class org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Discover.LineReaderLoaderIterator.html" title="class in org.apache.abdera2.common">Discover.LineReaderLoaderIterator</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/lang/SubtagSet.SubtagIterator.html#hasNext()"><B>hasNext()</B></A> - 
Method in class org.apache.abdera2.common.lang.<A HREF="./org/apache/abdera2/common/lang/SubtagSet.SubtagIterator.html" title="class in org.apache.abdera2.common.lang">SubtagSet.SubtagIterator</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/misc/MultiIterator.html#hasNext()"><B>hasNext()</B></A> - 
Method in class org.apache.abdera2.common.misc.<A HREF="./org/apache/abdera2/common/misc/MultiIterator.html" title="class in org.apache.abdera2.common.misc">MultiIterator</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/async/DefaultProcessor.html#hasNext()"><B>hasNext()</B></A> - 
Method in class org.apache.abdera2.common.protocol.servlet.async.<A HREF="./org/apache/abdera2/common/protocol/servlet/async/DefaultProcessor.html" title="class in org.apache.abdera2.common.protocol.servlet.async">DefaultProcessor</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/async/ProcessorQueue.html#hasNext()"><B>hasNext()</B></A> - 
Method in interface org.apache.abdera2.common.protocol.servlet.async.<A HREF="./org/apache/abdera2/common/protocol/servlet/async/ProcessorQueue.html" title="interface in org.apache.abdera2.common.protocol.servlet.async">ProcessorQueue</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/CodepointIterator.html#hasNext()"><B>hasNext()</B></A> - 
Method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/CodepointIterator.html" title="class in org.apache.abdera2.common.text">CodepointIterator</A>
<DD>True if there are codepoints remaining
<DT><A HREF="./org/apache/abdera2/common/http/Authentication.html#hasParam(java.lang.String)"><B>hasParam(String)</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/Authentication.html" title="class in org.apache.abdera2.common.http">Authentication</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/Method.html#HEAD"><B>HEAD</B></A> - 
Static variable in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/Method.html" title="class in org.apache.abdera2.common.http">Method</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html#headers"><B>headers</B></A> - 
Variable in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html" title="class in org.apache.abdera2.common.protocol">AbstractResponseContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractCollectionAdapter.html#headItem(org.apache.abdera2.common.protocol.RequestContext)"><B>headItem(RequestContext)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractCollectionAdapter.html" title="class in org.apache.abdera2.common.protocol">AbstractCollectionAdapter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/CollectionAdapter.html#headItem(org.apache.abdera2.common.protocol.RequestContext)"><B>headItem(RequestContext)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/CollectionAdapter.html" title="interface in org.apache.abdera2.common.protocol">CollectionAdapter</A>
<DD>Get metadata for an entry from the collection
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractCollectionAdapter.html#headMedia(org.apache.abdera2.common.protocol.RequestContext)"><B>headMedia(RequestContext)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractCollectionAdapter.html" title="class in org.apache.abdera2.common.protocol">AbstractCollectionAdapter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/MediaCollectionAdapter.html#headMedia(org.apache.abdera2.common.protocol.RequestContext)"><B>headMedia(RequestContext)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/MediaCollectionAdapter.html" title="interface in org.apache.abdera2.common.protocol">MediaCollectionAdapter</A>
<DD>Get metdata for a media resource
<DT><A HREF="./org/apache/abdera2/common/text/UrlEncoding.html#HEX"><B>HEX</B></A> - 
Static variable in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/UrlEncoding.html" title="class in org.apache.abdera2.common.text">UrlEncoding</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/UrlEncoding.html#hex(java.lang.Appendable, int, int, byte...)"><B>hex(Appendable, int, int, byte...)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/UrlEncoding.html" title="class in org.apache.abdera2.common.text">UrlEncoding</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#HREF"><B>HREF</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#HREFLANG"><B>HREFLANG</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#HTML"><B>HTML</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
</DL>
<HR>
<A NAME="_I_"><!-- --></A><H2>
<B>I</B></H2>
<DL>
<DT><A HREF="./org/apache/abdera2/common/Constants.html#ICON"><B>ICON</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#ID"><B>ID</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Discover.DefaultLoader.html#id"><B>id</B></A> - 
Variable in class org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Discover.DefaultLoader.html" title="class in org.apache.abdera2.common">Discover.DefaultLoader</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/Method.html#idempotent()"><B>idempotent()</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/Method.html" title="class in org.apache.abdera2.common.http">Method</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseProvider.html#init(java.util.Map)"><B>init(Map&lt;String, String&gt;)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseProvider.html" title="class in org.apache.abdera2.common.protocol">BaseProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/Provider.html#init(java.util.Map)"><B>init(Map&lt;String, String&gt;)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/Provider.html" title="interface in org.apache.abdera2.common.protocol">Provider</A>
<DD>Initialize the Provider.
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/AbstractAbderaServlet.html#init()"><B>init()</B></A> - 
Method in class org.apache.abdera2.common.protocol.servlet.<A HREF="./org/apache/abdera2/common/protocol/servlet/AbstractAbderaServlet.html" title="class in org.apache.abdera2.common.protocol.servlet">AbstractAbderaServlet</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/async/DefaultTaskExecutor.html#init(java.util.Map)"><B>init(Map&lt;String, String&gt;)</B></A> - 
Method in class org.apache.abdera2.common.protocol.servlet.async.<A HREF="./org/apache/abdera2/common/protocol/servlet/async/DefaultTaskExecutor.html" title="class in org.apache.abdera2.common.protocol.servlet.async">DefaultTaskExecutor</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/async/TaskExecutor.html#init(java.util.Map)"><B>init(Map&lt;String, String&gt;)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.servlet.async.<A HREF="./org/apache/abdera2/common/protocol/servlet/async/TaskExecutor.html" title="interface in org.apache.abdera2.common.protocol.servlet.async">TaskExecutor</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/pusher/ChannelManager.html#init(java.util.Map)"><B>init(Map&lt;String, String&gt;)</B></A> - 
Method in interface org.apache.abdera2.common.pusher.<A HREF="./org/apache/abdera2/common/pusher/ChannelManager.html" title="interface in org.apache.abdera2.common.pusher">ChannelManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/pusher/MapChannelManager.html#init(java.util.Map)"><B>init(Map&lt;String, String&gt;)</B></A> - 
Method in class org.apache.abdera2.common.pusher.<A HREF="./org/apache/abdera2/common/pusher/MapChannelManager.html" title="class in org.apache.abdera2.common.pusher">MapChannelManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractBaseRequestContext.html#initTarget(org.apache.abdera2.common.protocol.Provider)"><B>initTarget(Provider)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractBaseRequestContext.html" title="class in org.apache.abdera2.common.protocol">AbstractBaseRequestContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractBaseRequestContext.html#initTarget()"><B>initTarget()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractBaseRequestContext.html" title="class in org.apache.abdera2.common.protocol">AbstractBaseRequestContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/misc/PoolManager.html#internalNewInstance()"><B>internalNewInstance()</B></A> - 
Method in class org.apache.abdera2.common.misc.<A HREF="./org/apache/abdera2/common/misc/PoolManager.html" title="class in org.apache.abdera2.common.misc">PoolManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/InvalidCharacterException.html" title="class in org.apache.abdera2.common.text"><B>InvalidCharacterException</B></A> - Exception in <A HREF="./org/apache/abdera2/common/text/package-summary.html">org.apache.abdera2.common.text</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/text/InvalidCharacterException.html#InvalidCharacterException(int)"><B>InvalidCharacterException(int)</B></A> - 
Constructor for exception org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/InvalidCharacterException.html" title="class in org.apache.abdera2.common.text">InvalidCharacterException</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/selector/InvertedSelector.html" title="class in org.apache.abdera2.common.selector"><B>InvertedSelector</B></A> - Class in <A HREF="./org/apache/abdera2/common/selector/package-summary.html">org.apache.abdera2.common.selector</A><DD>Selector that inverts the results of the wrapped selector<DT><A HREF="./org/apache/abdera2/common/selector/InvertedSelector.html#InvertedSelector(org.apache.abdera2.common.selector.Selector)"><B>InvertedSelector(Selector)</B></A> - 
Constructor for class org.apache.abdera2.common.selector.<A HREF="./org/apache/abdera2/common/selector/InvertedSelector.html" title="class in org.apache.abdera2.common.selector">InvertedSelector</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/async/AbderaTask.html#invoke()"><B>invoke()</B></A> - 
Method in class org.apache.abdera2.common.protocol.servlet.async.<A HREF="./org/apache/abdera2/common/protocol/servlet/async/AbderaTask.html" title="class in org.apache.abdera2.common.protocol.servlet.async">AbderaTask</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/CharUtils.html#invset_contains(int[], int)"><B>invset_contains(int[], int)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/CharUtils.html" title="class in org.apache.abdera2.common.text">CharUtils</A>
<DD>Treats the specified int array as an Inversion Set and returns true if the value is located within the set.
<DT><A HREF="./org/apache/abdera2/common/iri/IRI.html" title="class in org.apache.abdera2.common.iri"><B>IRI</B></A> - Class in <A HREF="./org/apache/abdera2/common/iri/package-summary.html">org.apache.abdera2.common.iri</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/iri/IRI.html#IRI(java.net.URL)"><B>IRI(URL)</B></A> - 
Constructor for class org.apache.abdera2.common.iri.<A HREF="./org/apache/abdera2/common/iri/IRI.html" title="class in org.apache.abdera2.common.iri">IRI</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/iri/IRI.html#IRI(java.net.URI)"><B>IRI(URI)</B></A> - 
Constructor for class org.apache.abdera2.common.iri.<A HREF="./org/apache/abdera2/common/iri/IRI.html" title="class in org.apache.abdera2.common.iri">IRI</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/iri/IRI.html#IRI(java.lang.String)"><B>IRI(String)</B></A> - 
Constructor for class org.apache.abdera2.common.iri.<A HREF="./org/apache/abdera2/common/iri/IRI.html" title="class in org.apache.abdera2.common.iri">IRI</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/iri/IRI.html#IRI(java.lang.String, org.apache.abdera2.common.text.NormalizationForm)"><B>IRI(String, NormalizationForm)</B></A> - 
Constructor for class org.apache.abdera2.common.iri.<A HREF="./org/apache/abdera2/common/iri/IRI.html" title="class in org.apache.abdera2.common.iri">IRI</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/iri/IRI.html#IRI(java.lang.String, java.lang.String, java.lang.String, int, java.lang.String, java.lang.String, java.lang.String)"><B>IRI(String, String, String, int, String, String, String)</B></A> - 
Constructor for class org.apache.abdera2.common.iri.<A HREF="./org/apache/abdera2/common/iri/IRI.html" title="class in org.apache.abdera2.common.iri">IRI</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/iri/IRI.html#IRI(java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String)"><B>IRI(String, String, String, String, String)</B></A> - 
Constructor for class org.apache.abdera2.common.iri.<A HREF="./org/apache/abdera2/common/iri/IRI.html" title="class in org.apache.abdera2.common.iri">IRI</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/iri/IRI.html#IRI(java.lang.String, java.lang.String, java.lang.String, java.lang.String)"><B>IRI(String, String, String, String)</B></A> - 
Constructor for class org.apache.abdera2.common.iri.<A HREF="./org/apache/abdera2/common/iri/IRI.html" title="class in org.apache.abdera2.common.iri">IRI</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/AbstractContext.html#iri"><B>iri</B></A> - 
Variable in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/AbstractContext.html" title="class in org.apache.abdera2.common.templates">AbstractContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/iri/IRISyntaxException.html" title="class in org.apache.abdera2.common.iri"><B>IRISyntaxException</B></A> - Exception in <A HREF="./org/apache/abdera2/common/iri/package-summary.html">org.apache.abdera2.common.iri</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/text/CharUtils.html#is5987(int)"><B>is5987(int)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/CharUtils.html" title="class in org.apache.abdera2.common.text">CharUtils</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/CharUtils.html#is_ifragment(int)"><B>is_ifragment(int)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/CharUtils.html" title="class in org.apache.abdera2.common.text">CharUtils</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/CharUtils.html#is_ihost(int)"><B>is_ihost(int)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/CharUtils.html" title="class in org.apache.abdera2.common.text">CharUtils</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/CharUtils.html#is_ipath(int)"><B>is_ipath(int)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/CharUtils.html" title="class in org.apache.abdera2.common.text">CharUtils</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/CharUtils.html#is_ipathnodelims(int)"><B>is_ipathnodelims(int)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/CharUtils.html" title="class in org.apache.abdera2.common.text">CharUtils</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/CharUtils.html#is_ipchar(int)"><B>is_ipchar(int)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/CharUtils.html" title="class in org.apache.abdera2.common.text">CharUtils</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/CharUtils.html#is_ipliteral(int)"><B>is_ipliteral(int)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/CharUtils.html" title="class in org.apache.abdera2.common.text">CharUtils</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/CharUtils.html#is_iprivate(int)"><B>is_iprivate(int)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/CharUtils.html" title="class in org.apache.abdera2.common.text">CharUtils</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/CharUtils.html#is_iquery(int)"><B>is_iquery(int)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/CharUtils.html" title="class in org.apache.abdera2.common.text">CharUtils</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/CharUtils.html#is_iregname(int)"><B>is_iregname(int)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/CharUtils.html" title="class in org.apache.abdera2.common.text">CharUtils</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/CharUtils.html#is_iserver(int)"><B>is_iserver(int)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/CharUtils.html" title="class in org.apache.abdera2.common.text">CharUtils</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/CharUtils.html#is_iunreserved(int)"><B>is_iunreserved(int)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/CharUtils.html" title="class in org.apache.abdera2.common.text">CharUtils</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/CharUtils.html#is_iuserinfo(int)"><B>is_iuserinfo(int)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/CharUtils.html" title="class in org.apache.abdera2.common.text">CharUtils</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/CharUtils.html#is_regname(int)"><B>is_regname(int)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/CharUtils.html" title="class in org.apache.abdera2.common.text">CharUtils</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/CharUtils.html#is_ucschar(int)"><B>is_ucschar(int)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/CharUtils.html" title="class in org.apache.abdera2.common.text">CharUtils</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/iri/IRI.html#isAbsolute()"><B>isAbsolute()</B></A> - 
Method in class org.apache.abdera2.common.iri.<A HREF="./org/apache/abdera2/common/iri/IRI.html" title="class in org.apache.abdera2.common.iri">IRI</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/CollectionRequestProcessor.html#isAcceptableItemType(org.apache.abdera2.common.protocol.RequestContext)"><B>isAcceptableItemType(RequestContext)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/CollectionRequestProcessor.html" title="class in org.apache.abdera2.common.protocol">CollectionRequestProcessor</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/CharUtils.html#isAlpha(int)"><B>isAlpha(int)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/CharUtils.html" title="class in org.apache.abdera2.common.text">CharUtils</A>
<DD>True if the codepoint is part of the ASCII alphabet (a-z, A-Z)
<DT><A HREF="./org/apache/abdera2/common/text/CharUtils.html#isAlphaDigit(int)"><B>isAlphaDigit(int)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/CharUtils.html" title="class in org.apache.abdera2.common.text">CharUtils</A>
<DD>True if isAlpha and isDigit both return true
<DT><A HREF="./org/apache/abdera2/common/mediatype/MimeTypeHelper.html#isApp(java.lang.String)"><B>isApp(String)</B></A> - 
Static method in class org.apache.abdera2.common.mediatype.<A HREF="./org/apache/abdera2/common/mediatype/MimeTypeHelper.html" title="class in org.apache.abdera2.common.mediatype">MimeTypeHelper</A>
<DD>Returns true if media type a matches application/atomsrv+xml
<DT><A HREF="./org/apache/abdera2/common/text/CharUtils.html#isAscii(int)"><B>isAscii(int)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/CharUtils.html" title="class in org.apache.abdera2.common.text">CharUtils</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/mediatype/MimeTypeHelper.html#isAtom(java.lang.String)"><B>isAtom(String)</B></A> - 
Static method in class org.apache.abdera2.common.mediatype.<A HREF="./org/apache/abdera2/common/mediatype/MimeTypeHelper.html" title="class in org.apache.abdera2.common.mediatype">MimeTypeHelper</A>
<DD>Returns true if media type a matches application/atom+xml
<DT><A HREF="./org/apache/abdera2/common/protocol/ProviderHelper.html#isAtom(org.apache.abdera2.common.protocol.RequestContext)"><B>isAtom(RequestContext)</B></A> - 
Static method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ProviderHelper.html" title="class in org.apache.abdera2.common.protocol">ProviderHelper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/lang/Range.html#isBasic()"><B>isBasic()</B></A> - 
Method in class org.apache.abdera2.common.lang.<A HREF="./org/apache/abdera2/common/lang/Range.html" title="class in org.apache.abdera2.common.lang">Range</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html#isBinary()"><B>isBinary()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html" title="class in org.apache.abdera2.common.protocol">AbstractResponseContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html#isBinary()"><B>isBinary()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseResponseContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/ResponseContext.html#isBinary()"><B>isBinary()</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ResponseContext.html" title="interface in org.apache.abdera2.common.protocol">ResponseContext</A>
<DD>True if the response contains a binary entity as opposed to a character based entity.
<DT><A HREF="./org/apache/abdera2/common/io/CharsetSniffingInputStream.html#isBomSet()"><B>isBomSet()</B></A> - 
Method in class org.apache.abdera2.common.io.<A HREF="./org/apache/abdera2/common/io/CharsetSniffingInputStream.html" title="class in org.apache.abdera2.common.io">CharsetSniffingInputStream</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/lang/Lang.html#isChildOf(org.apache.abdera2.common.lang.Lang)"><B>isChildOf(Lang)</B></A> - 
Method in class org.apache.abdera2.common.lang.<A HREF="./org/apache/abdera2/common/lang/Lang.html" title="class in org.apache.abdera2.common.lang">Lang</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/CharUtils.html#isCtl(int)"><B>isCtl(int)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/CharUtils.html" title="class in org.apache.abdera2.common.text">CharUtils</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/async/AbderaAsyncService.html#isDeployAtompubService(java.util.Map)"><B>isDeployAtompubService(Map&lt;String, String&gt;)</B></A> - 
Method in class org.apache.abdera2.common.protocol.servlet.async.<A HREF="./org/apache/abdera2/common/protocol/servlet/async/AbderaAsyncService.html" title="class in org.apache.abdera2.common.protocol.servlet.async">AbderaAsyncService</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/async/AbderaAsyncService.html#isDeployChannelService(java.util.Map)"><B>isDeployChannelService(Map&lt;String, String&gt;)</B></A> - 
Method in class org.apache.abdera2.common.protocol.servlet.async.<A HREF="./org/apache/abdera2/common/protocol/servlet/async/AbderaAsyncService.html" title="class in org.apache.abdera2.common.protocol.servlet.async">AbderaAsyncService</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/CharUtils.html#isDigit(int)"><B>isDigit(int)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/CharUtils.html" title="class in org.apache.abdera2.common.text">CharUtils</A>
<DD>True if the codepoint is a digit
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/async/AbderaChannelServlet.AsyncListener.html#isDone()"><B>isDone()</B></A> - 
Method in class org.apache.abdera2.common.protocol.servlet.async.<A HREF="./org/apache/abdera2/common/protocol/servlet/async/AbderaChannelServlet.AsyncListener.html" title="class in org.apache.abdera2.common.protocol.servlet.async">AbderaChannelServlet.AsyncListener</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/mediatype/MimeTypeHelper.html#isEntry(java.lang.String)"><B>isEntry(String)</B></A> - 
Static method in class org.apache.abdera2.common.mediatype.<A HREF="./org/apache/abdera2/common/mediatype/MimeTypeHelper.html" title="class in org.apache.abdera2.common.mediatype">MimeTypeHelper</A>
<DD>Returns true if media type a specifically identifies an Atom entry document
<DT><A HREF="./org/apache/abdera2/common/templates/Expression.VarSpec.html#isExplode()"><B>isExplode()</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/Expression.VarSpec.html" title="class in org.apache.abdera2.common.templates">Expression.VarSpec</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/lang/Subtag.html#isExtension()"><B>isExtension()</B></A> - 
Method in class org.apache.abdera2.common.lang.<A HREF="./org/apache/abdera2/common/lang/Subtag.html" title="class in org.apache.abdera2.common.lang">Subtag</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/lang/Subtag.html#isExtensionSingleton()"><B>isExtensionSingleton()</B></A> - 
Method in class org.apache.abdera2.common.lang.<A HREF="./org/apache/abdera2/common/lang/Subtag.html" title="class in org.apache.abdera2.common.lang">Subtag</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/mediatype/MimeTypeHelper.html#isFeed(java.lang.String)"><B>isFeed(String)</B></A> - 
Static method in class org.apache.abdera2.common.mediatype.<A HREF="./org/apache/abdera2/common/mediatype/MimeTypeHelper.html" title="class in org.apache.abdera2.common.mediatype">MimeTypeHelper</A>
<DD>Returns true if media type a explicitly identifies an Atom feed document
<DT><A HREF="./org/apache/abdera2/common/text/CharUtils.html#isFragment(int)"><B>isFragment(int)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/CharUtils.html" title="class in org.apache.abdera2.common.text">CharUtils</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/CharUtils.html#isGenDelim(int)"><B>isGenDelim(int)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/CharUtils.html" title="class in org.apache.abdera2.common.text">CharUtils</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/lang/Lang.html#isGrandfathered()"><B>isGrandfathered()</B></A> - 
Method in class org.apache.abdera2.common.lang.<A HREF="./org/apache/abdera2/common/lang/Lang.html" title="class in org.apache.abdera2.common.lang">Lang</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/Method.html#isIdempotent(java.lang.String)"><B>isIdempotent(String)</B></A> - 
Static method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/Method.html" title="class in org.apache.abdera2.common.http">Method</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/AbstractContext.html#isIri()"><B>isIri()</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/AbstractContext.html" title="class in org.apache.abdera2.common.templates">AbstractContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/Context.html#isIri()"><B>isIri()</B></A> - 
Method in interface org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/Context.html" title="interface in org.apache.abdera2.common.templates">Context</A>
<DD>True if IRI expansion is enabled
<DT><A HREF="./org/apache/abdera2/common/templates/DelegatingContext.html#isIri()"><B>isIri()</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/DelegatingContext.html" title="class in org.apache.abdera2.common.templates">DelegatingContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/MapContext.html#isIri()"><B>isIri()</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/MapContext.html" title="class in org.apache.abdera2.common.templates">MapContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/mediatype/MimeTypeHelper.html#isJson(java.lang.String)"><B>isJson(String)</B></A> - 
Static method in class org.apache.abdera2.common.mediatype.<A HREF="./org/apache/abdera2/common/mediatype/MimeTypeHelper.html" title="class in org.apache.abdera2.common.mediatype">MimeTypeHelper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/CharUtils.html#isMark(int)"><B>isMark(int)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/CharUtils.html" title="class in org.apache.abdera2.common.text">CharUtils</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/mediatype/MimeTypeHelper.html#isMatch(java.lang.String, java.lang.String)"><B>isMatch(String, String)</B></A> - 
Static method in class org.apache.abdera2.common.mediatype.<A HREF="./org/apache/abdera2/common/mediatype/MimeTypeHelper.html" title="class in org.apache.abdera2.common.mediatype">MimeTypeHelper</A>
<DD>Returns true if media type a matches media type b
<DT><A HREF="./org/apache/abdera2/common/mediatype/MimeTypeHelper.html#isMatch(javax.activation.MimeType, javax.activation.MimeType)"><B>isMatch(MimeType, MimeType)</B></A> - 
Static method in class org.apache.abdera2.common.mediatype.<A HREF="./org/apache/abdera2/common/mediatype/MimeTypeHelper.html" title="class in org.apache.abdera2.common.mediatype">MimeTypeHelper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/mediatype/MimeTypeHelper.html#isMatch(javax.activation.MimeType, javax.activation.MimeType, boolean)"><B>isMatch(MimeType, MimeType, boolean)</B></A> - 
Static method in class org.apache.abdera2.common.mediatype.<A HREF="./org/apache/abdera2/common/mediatype/MimeTypeHelper.html" title="class in org.apache.abdera2.common.mediatype">MimeTypeHelper</A>
<DD>Returns true if media type a matches media type b
<DT><A HREF="./org/apache/abdera2/common/mediatype/MimeTypeHelper.html#isMimeType(java.lang.String)"><B>isMimeType(String)</B></A> - 
Static method in class org.apache.abdera2.common.mediatype.<A HREF="./org/apache/abdera2/common/mediatype/MimeTypeHelper.html" title="class in org.apache.abdera2.common.mediatype">MimeTypeHelper</A>
<DD>Returns true if this is a valid media type
<DT><A HREF="./org/apache/abdera2/common/mediatype/MimeTypeHelper.html#isMultipart(java.lang.String)"><B>isMultipart(String)</B></A> - 
Static method in class org.apache.abdera2.common.mediatype.<A HREF="./org/apache/abdera2/common/mediatype/MimeTypeHelper.html" title="class in org.apache.abdera2.common.mediatype">MimeTypeHelper</A>
<DD>Returns true if media type is a multiparted file.
<DT><A HREF="./org/apache/abdera2/common/http/CacheControl.html#isMustRevalidate()"><B>isMustRevalidate()</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/CacheControl.html" title="class in org.apache.abdera2.common.http">CacheControl</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/CacheControl.html#isNoCache()"><B>isNoCache()</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/CacheControl.html" title="class in org.apache.abdera2.common.http">CacheControl</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/CacheControl.html#isNoStore()"><B>isNoStore()</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/CacheControl.html" title="class in org.apache.abdera2.common.http">CacheControl</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/CacheControl.html#isNoTransform()"><B>isNoTransform()</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/CacheControl.html" title="class in org.apache.abdera2.common.http">CacheControl</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/Expression.VarSpec.html#isNoval()"><B>isNoval()</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/Expression.VarSpec.html" title="class in org.apache.abdera2.common.templates">Expression.VarSpec</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/CacheControl.html#isOnlyIfCached()"><B>isOnlyIfCached()</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/CacheControl.html" title="class in org.apache.abdera2.common.http">CacheControl</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/iri/IRI.html#isOpaque()"><B>isOpaque()</B></A> - 
Method in class org.apache.abdera2.common.iri.<A HREF="./org/apache/abdera2/common/iri/IRI.html" title="class in org.apache.abdera2.common.iri">IRI</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/IsoPosition.html" title="class in org.apache.abdera2.common.geo"><B>IsoPosition</B></A> - Class in <A HREF="./org/apache/abdera2/common/geo/package-summary.html">org.apache.abdera2.common.geo</A><DD>ISO 6709 Position<DT><A HREF="./org/apache/abdera2/common/geo/IsoPosition.html#IsoPosition(double, java.lang.Double)"><B>IsoPosition(double, Double)</B></A> - 
Constructor for class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/IsoPosition.html" title="class in org.apache.abdera2.common.geo">IsoPosition</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/IsoPosition.html#IsoPosition(java.lang.Double, java.lang.Double, java.lang.Double)"><B>IsoPosition(Double, Double, Double)</B></A> - 
Constructor for class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/IsoPosition.html" title="class in org.apache.abdera2.common.geo">IsoPosition</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/lang/Lang.html#isParentOf(org.apache.abdera2.common.lang.Lang)"><B>isParentOf(Lang)</B></A> - 
Method in class org.apache.abdera2.common.lang.<A HREF="./org/apache/abdera2/common/lang/Lang.html" title="class in org.apache.abdera2.common.lang">Lang</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/CharUtils.html#isPath(int)"><B>isPath(int)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/CharUtils.html" title="class in org.apache.abdera2.common.text">CharUtils</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/iri/IRI.html#isPathAbsolute()"><B>isPathAbsolute()</B></A> - 
Method in class org.apache.abdera2.common.iri.<A HREF="./org/apache/abdera2/common/iri/IRI.html" title="class in org.apache.abdera2.common.iri">IRI</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/CharUtils.html#isPathNoDelims(int)"><B>isPathNoDelims(int)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/CharUtils.html" title="class in org.apache.abdera2.common.text">CharUtils</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/CharUtils.html#isPchar(int)"><B>isPchar(int)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/CharUtils.html" title="class in org.apache.abdera2.common.text">CharUtils</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/CharUtils.html#isPctEnc(int)"><B>isPctEnc(int)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/CharUtils.html" title="class in org.apache.abdera2.common.text">CharUtils</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/ProviderHelper.html#isPreferred(org.apache.abdera2.common.protocol.RequestContext, java.lang.String, java.lang.String)"><B>isPreferred(RequestContext, String, String)</B></A> - 
Static method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ProviderHelper.html" title="class in org.apache.abdera2.common.protocol">ProviderHelper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/ProviderHelper.html#isPreferred(java.lang.String[], java.lang.String, java.lang.String)"><B>isPreferred(String[], String, String)</B></A> - 
Static method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ProviderHelper.html" title="class in org.apache.abdera2.common.protocol">ProviderHelper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/CacheControl.html#isPrivate()"><B>isPrivate()</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/CacheControl.html" title="class in org.apache.abdera2.common.http">CacheControl</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/lang/Subtag.html#isPrivateSingleton()"><B>isPrivateSingleton()</B></A> - 
Method in class org.apache.abdera2.common.lang.<A HREF="./org/apache/abdera2/common/lang/Subtag.html" title="class in org.apache.abdera2.common.lang">Subtag</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/lang/Subtag.html#isPrivateUse()"><B>isPrivateUse()</B></A> - 
Method in class org.apache.abdera2.common.lang.<A HREF="./org/apache/abdera2/common/lang/Subtag.html" title="class in org.apache.abdera2.common.lang">Subtag</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/CacheControl.html#isProxyRevalidate()"><B>isProxyRevalidate()</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/CacheControl.html" title="class in org.apache.abdera2.common.http">CacheControl</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/CacheControl.html#isPublic()"><B>isPublic()</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/CacheControl.html" title="class in org.apache.abdera2.common.http">CacheControl</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/CharUtils.html#isQuery(int)"><B>isQuery(int)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/CharUtils.html" title="class in org.apache.abdera2.common.text">CharUtils</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/CharUtils.html#isReserved(int)"><B>isReserved(int)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/CharUtils.html" title="class in org.apache.abdera2.common.text">CharUtils</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/async/DefaultTaskExecutor.html#isRunning()"><B>isRunning()</B></A> - 
Method in class org.apache.abdera2.common.protocol.servlet.async.<A HREF="./org/apache/abdera2/common/protocol/servlet/async/DefaultTaskExecutor.html" title="class in org.apache.abdera2.common.protocol.servlet.async">DefaultTaskExecutor</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/async/TaskExecutor.html#isRunning()"><B>isRunning()</B></A> - 
Method in interface org.apache.abdera2.common.protocol.servlet.async.<A HREF="./org/apache/abdera2/common/protocol/servlet/async/TaskExecutor.html" title="interface in org.apache.abdera2.common.protocol.servlet.async">TaskExecutor</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/pusher/SimplePusher.html#isRunning()"><B>isRunning()</B></A> - 
Method in class org.apache.abdera2.common.pusher.<A HREF="./org/apache/abdera2/common/pusher/SimplePusher.html" title="class in org.apache.abdera2.common.pusher">SimplePusher</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/Method.html#isSafe(java.lang.String)"><B>isSafe(String)</B></A> - 
Static method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/Method.html" title="class in org.apache.abdera2.common.http">Method</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/iri/IRI.html#isSameDocumentReference()"><B>isSameDocumentReference()</B></A> - 
Method in class org.apache.abdera2.common.iri.<A HREF="./org/apache/abdera2/common/iri/IRI.html" title="class in org.apache.abdera2.common.iri">IRI</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/CharUtils.html#isScheme(int)"><B>isScheme(int)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/CharUtils.html" title="class in org.apache.abdera2.common.text">CharUtils</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/CharUtils.html#isSep(int)"><B>isSep(int)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/CharUtils.html" title="class in org.apache.abdera2.common.text">CharUtils</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/async/DefaultProcessor.html#isShutdown()"><B>isShutdown()</B></A> - 
Method in class org.apache.abdera2.common.protocol.servlet.async.<A HREF="./org/apache/abdera2/common/protocol/servlet/async/DefaultProcessor.html" title="class in org.apache.abdera2.common.protocol.servlet.async">DefaultProcessor</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/async/Processor.html#isShutdown()"><B>isShutdown()</B></A> - 
Method in interface org.apache.abdera2.common.protocol.servlet.async.<A HREF="./org/apache/abdera2/common/protocol/servlet/async/Processor.html" title="interface in org.apache.abdera2.common.protocol.servlet.async">Processor</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/pusher/ChannelManager.html#isShutdown()"><B>isShutdown()</B></A> - 
Method in interface org.apache.abdera2.common.pusher.<A HREF="./org/apache/abdera2/common/pusher/ChannelManager.html" title="interface in org.apache.abdera2.common.pusher">ChannelManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/pusher/MapChannelManager.html#isShutdown()"><B>isShutdown()</B></A> - 
Method in class org.apache.abdera2.common.pusher.<A HREF="./org/apache/abdera2/common/pusher/MapChannelManager.html" title="class in org.apache.abdera2.common.pusher">MapChannelManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/lang/Subtag.html#isSingleton()"><B>isSingleton()</B></A> - 
Method in class org.apache.abdera2.common.lang.<A HREF="./org/apache/abdera2/common/lang/Subtag.html" title="class in org.apache.abdera2.common.lang">Subtag</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/CharUtils.html#isSubDelim(int)"><B>isSubDelim(int)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/CharUtils.html" title="class in org.apache.abdera2.common.text">CharUtils</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/mediatype/MimeTypeHelper.html#isText(java.lang.String)"><B>isText(String)</B></A> - 
Static method in class org.apache.abdera2.common.mediatype.<A HREF="./org/apache/abdera2/common/mediatype/MimeTypeHelper.html" title="class in org.apache.abdera2.common.mediatype">MimeTypeHelper</A>
<DD>Returns true if media type a matches text/*
<DT><A HREF="./org/apache/abdera2/common/text/CharUtils.html#isToken(int)"><B>isToken(int)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/CharUtils.html" title="class in org.apache.abdera2.common.text">CharUtils</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/CharUtils.html#isToken(java.lang.String)"><B>isToken(String)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/CharUtils.html" title="class in org.apache.abdera2.common.text">CharUtils</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/CharUtils.html#isUnreserved(int)"><B>isUnreserved(int)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/CharUtils.html" title="class in org.apache.abdera2.common.text">CharUtils</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/CharUtils.html#isUserInfo(int)"><B>isUserInfo(int)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/CharUtils.html" title="class in org.apache.abdera2.common.text">CharUtils</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html#isUserInRole(java.lang.String)"><B>isUserInRole(String)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseRequestContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/RequestContext.html#isUserInRole(java.lang.String)"><B>isUserInRole(String)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/RequestContext.html" title="interface in org.apache.abdera2.common.protocol">RequestContext</A>
<DD>Check to see if the authenticated user is in the specified role
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/ServletRequestContext.html#isUserInRole(java.lang.String)"><B>isUserInRole(String)</B></A> - 
Method in class org.apache.abdera2.common.protocol.servlet.<A HREF="./org/apache/abdera2/common/protocol/servlet/ServletRequestContext.html" title="class in org.apache.abdera2.common.protocol.servlet">ServletRequestContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/EntityTag.html#isWeak()"><B>isWeak()</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/EntityTag.html" title="class in org.apache.abdera2.common.http">EntityTag</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/EntityTag.html#isWild()"><B>isWild()</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/EntityTag.html" title="class in org.apache.abdera2.common.http">EntityTag</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/mediatype/MimeTypeHelper.html#isXml(java.lang.String)"><B>isXml(String)</B></A> - 
Static method in class org.apache.abdera2.common.mediatype.<A HREF="./org/apache/abdera2/common/mediatype/MimeTypeHelper.html" title="class in org.apache.abdera2.common.mediatype">MimeTypeHelper</A>
<DD>Returns true if media type a matches application/xml, text/xml or application/*+xml
<DT><A HREF="./org/apache/abdera2/common/misc/ItemManager.html" title="interface in org.apache.abdera2.common.misc"><B>ItemManager</B></A>&lt;<A HREF="./org/apache/abdera2/common/misc/ItemManager.html" title="type parameter in ItemManager">T</A>,<A HREF="./org/apache/abdera2/common/misc/ItemManager.html" title="type parameter in ItemManager">R</A>&gt; - Interface in <A HREF="./org/apache/abdera2/common/misc/package-summary.html">org.apache.abdera2.common.misc</A><DD>ItemManager is an internal utility class that provides a simple get/release interface.<DT><A HREF="./org/apache/abdera2/common/Discover.DefaultLoader.html#iterator"><B>iterator</B></A> - 
Variable in class org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Discover.DefaultLoader.html" title="class in org.apache.abdera2.common">Discover.DefaultLoader</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Discover.DefaultLoader.html#iterator()"><B>iterator()</B></A> - 
Method in class org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Discover.DefaultLoader.html" title="class in org.apache.abdera2.common">Discover.DefaultLoader</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Coordinates.html#iterator()"><B>iterator()</B></A> - 
Method in class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Coordinates.html" title="class in org.apache.abdera2.common.geo">Coordinates</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Multiple.html#iterator()"><B>iterator()</B></A> - 
Method in class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Multiple.html" title="class in org.apache.abdera2.common.geo">Multiple</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/Authentication.html#iterator()"><B>iterator()</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/Authentication.html" title="class in org.apache.abdera2.common.http">Authentication</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/CacheControlUtil.CacheControlParser.html#iterator()"><B>iterator()</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/CacheControlUtil.CacheControlParser.html" title="class in org.apache.abdera2.common.http">CacheControlUtil.CacheControlParser</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/lang/SubtagSet.html#iterator()"><B>iterator()</B></A> - 
Method in class org.apache.abdera2.common.lang.<A HREF="./org/apache/abdera2/common/lang/SubtagSet.html" title="class in org.apache.abdera2.common.lang">SubtagSet</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractBaseRequestContext.html#iterator()"><B>iterator()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractBaseRequestContext.html" title="class in org.apache.abdera2.common.protocol">AbstractBaseRequestContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html#iterator()"><B>iterator()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseRequestContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/RequestTemplateContext.html#iterator()"><B>iterator()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/RequestTemplateContext.html" title="class in org.apache.abdera2.common.protocol">RequestTemplateContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/SimpleTarget.html#iterator()"><B>iterator()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/SimpleTarget.html" title="class in org.apache.abdera2.common.protocol">SimpleTarget</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/pusher/MapChannelManager.html#iterator()"><B>iterator()</B></A> - 
Method in class org.apache.abdera2.common.pusher.<A HREF="./org/apache/abdera2/common/pusher/MapChannelManager.html" title="class in org.apache.abdera2.common.pusher">MapChannelManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/DefaultingContext.html#iterator()"><B>iterator()</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/DefaultingContext.html" title="class in org.apache.abdera2.common.templates">DefaultingContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/DelegatingContext.html#iterator()"><B>iterator()</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/DelegatingContext.html" title="class in org.apache.abdera2.common.templates">DelegatingContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/Expression.html#iterator()"><B>iterator()</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/Expression.html" title="class in org.apache.abdera2.common.templates">Expression</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/MapContext.html#iterator()"><B>iterator()</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/MapContext.html" title="class in org.apache.abdera2.common.templates">MapContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/MultiContext.html#iterator()"><B>iterator()</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/MultiContext.html" title="class in org.apache.abdera2.common.templates">MultiContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/ObjectContext.html#iterator()"><B>iterator()</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/ObjectContext.html" title="class in org.apache.abdera2.common.templates">ObjectContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/Route.html#iterator()"><B>iterator()</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/Route.html" title="class in org.apache.abdera2.common.templates">Route</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/Template.html#iterator()"><B>iterator()</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/Template.html" title="class in org.apache.abdera2.common.templates">Template</A>
<DD>Iterate the template expressions
<DT><A HREF="./org/apache/abdera2/common/templates/TemplateManager.html#iterator()"><B>iterator()</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/TemplateManager.html" title="class in org.apache.abdera2.common.templates">TemplateManager</A>
<DD>&nbsp;
</DL>
<HR>
<A NAME="_J_"><!-- --></A><H2>
<B>J</B></H2>
<DL>
<DT><A HREF="./org/apache/abdera2/common/Constants.html#JSON_MEDIA_TYPE"><B>JSON_MEDIA_TYPE</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
</DL>
<HR>
<A NAME="_L_"><!-- --></A><H2>
<B>L</B></H2>
<DL>
<DT><A HREF="./org/apache/abdera2/common/Constants.html#LABEL"><B>LABEL</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/xml/XMLVersion.html#label()"><B>label()</B></A> - 
Method in enum org.apache.abdera2.common.xml.<A HREF="./org/apache/abdera2/common/xml/XMLVersion.html" title="enum in org.apache.abdera2.common.xml">XMLVersion</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#LANG"><B>LANG</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/lang/Lang.html" title="class in org.apache.abdera2.common.lang"><B>Lang</B></A> - Class in <A HREF="./org/apache/abdera2/common/lang/package-summary.html">org.apache.abdera2.common.lang</A><DD>Implementation of RFC 4646 Language Tags.<DT><A HREF="./org/apache/abdera2/common/lang/Lang.html#Lang()"><B>Lang()</B></A> - 
Constructor for class org.apache.abdera2.common.lang.<A HREF="./org/apache/abdera2/common/lang/Lang.html" title="class in org.apache.abdera2.common.lang">Lang</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/lang/Lang.html#Lang(java.util.Locale)"><B>Lang(Locale)</B></A> - 
Constructor for class org.apache.abdera2.common.lang.<A HREF="./org/apache/abdera2/common/lang/Lang.html" title="class in org.apache.abdera2.common.lang">Lang</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/lang/Lang.html#Lang(java.lang.String)"><B>Lang(String)</B></A> - 
Constructor for class org.apache.abdera2.common.lang.<A HREF="./org/apache/abdera2/common/lang/Lang.html" title="class in org.apache.abdera2.common.lang">Lang</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/lang/Lang.html#language()"><B>language()</B></A> - 
Method in class org.apache.abdera2.common.lang.<A HREF="./org/apache/abdera2/common/lang/Lang.html" title="class in org.apache.abdera2.common.lang">Lang</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#LENGTH"><B>LENGTH</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/lang/SubtagSet.html#length()"><B>length()</B></A> - 
Method in class org.apache.abdera2.common.lang.<A HREF="./org/apache/abdera2/common/lang/SubtagSet.html" title="class in org.apache.abdera2.common.lang">SubtagSet</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Line.html" title="class in org.apache.abdera2.common.geo"><B>Line</B></A> - Class in <A HREF="./org/apache/abdera2/common/geo/package-summary.html">org.apache.abdera2.common.geo</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/geo/Line.html#Line()"><B>Line()</B></A> - 
Constructor for class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Line.html" title="class in org.apache.abdera2.common.geo">Line</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Line.html#Line(org.apache.abdera2.common.geo.Multiple)"><B>Line(Multiple)</B></A> - 
Constructor for class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Line.html" title="class in org.apache.abdera2.common.geo">Line</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Line.html#Line(org.apache.abdera2.common.geo.Point)"><B>Line(Point)</B></A> - 
Constructor for class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Line.html" title="class in org.apache.abdera2.common.geo">Line</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Line.html#Line(org.apache.abdera2.common.geo.Coordinate...)"><B>Line(Coordinate...)</B></A> - 
Constructor for class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Line.html" title="class in org.apache.abdera2.common.geo">Line</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Line.html#Line(org.apache.abdera2.common.geo.Coordinates)"><B>Line(Coordinates)</B></A> - 
Constructor for class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Line.html" title="class in org.apache.abdera2.common.geo">Line</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Line.html#Line(java.lang.String)"><B>Line(String)</B></A> - 
Constructor for class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Line.html" title="class in org.apache.abdera2.common.geo">Line</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Line.html#Line(org.apache.abdera2.common.geo.Multiple...)"><B>Line(Multiple...)</B></A> - 
Constructor for class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Line.html" title="class in org.apache.abdera2.common.geo">Line</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Line.html#Line(org.apache.abdera2.common.geo.Point...)"><B>Line(Point...)</B></A> - 
Constructor for class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Line.html" title="class in org.apache.abdera2.common.geo">Line</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Line.html#Line(double...)"><B>Line(double...)</B></A> - 
Constructor for class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Line.html" title="class in org.apache.abdera2.common.geo">Line</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#LINK"><B>LINK</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/pusher/Listener.html" title="interface in org.apache.abdera2.common.pusher"><B>Listener</B></A>&lt;<A HREF="./org/apache/abdera2/common/pusher/Listener.html" title="type parameter in Listener">T</A>&gt; - Interface in <A HREF="./org/apache/abdera2/common/pusher/package-summary.html">org.apache.abdera2.common.pusher</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/http/CacheControl.html#listExtensions()"><B>listExtensions()</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/CacheControl.html" title="class in org.apache.abdera2.common.http">CacheControl</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#LN_ACCEPT"><B>LN_ACCEPT</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#LN_ALTERNATE"><B>LN_ALTERNATE</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#LN_ALTERNATE_MULTIPART_RELATED"><B>LN_ALTERNATE_MULTIPART_RELATED</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#LN_AUTHOR"><B>LN_AUTHOR</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#LN_BASE"><B>LN_BASE</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#LN_CATEGORIES"><B>LN_CATEGORIES</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#LN_CATEGORY"><B>LN_CATEGORY</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#LN_CLASS"><B>LN_CLASS</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#LN_COLLECTION"><B>LN_COLLECTION</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#LN_CONTENT"><B>LN_CONTENT</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#LN_CONTRIBUTOR"><B>LN_CONTRIBUTOR</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#LN_CONTROL"><B>LN_CONTROL</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#LN_DIV"><B>LN_DIV</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#LN_DRAFT"><B>LN_DRAFT</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#LN_EDITED"><B>LN_EDITED</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#LN_EMAIL"><B>LN_EMAIL</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#LN_ENTRY"><B>LN_ENTRY</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#LN_FEED"><B>LN_FEED</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#LN_FIXED"><B>LN_FIXED</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#LN_GENERATOR"><B>LN_GENERATOR</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#LN_HREF"><B>LN_HREF</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#LN_HREFLANG"><B>LN_HREFLANG</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#LN_ICON"><B>LN_ICON</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#LN_ID"><B>LN_ID</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#LN_LABEL"><B>LN_LABEL</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#LN_LANG"><B>LN_LANG</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#LN_LENGTH"><B>LN_LENGTH</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#LN_LINK"><B>LN_LINK</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#LN_LOGO"><B>LN_LOGO</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#LN_NAME"><B>LN_NAME</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#LN_PUBLISHED"><B>LN_PUBLISHED</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#LN_REL"><B>LN_REL</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#LN_RIGHTS"><B>LN_RIGHTS</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#LN_SCHEME"><B>LN_SCHEME</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#LN_SERVICE"><B>LN_SERVICE</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#LN_SOURCE"><B>LN_SOURCE</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#LN_SPACE"><B>LN_SPACE</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#LN_SRC"><B>LN_SRC</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#LN_SUBTITLE"><B>LN_SUBTITLE</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#LN_SUMMARY"><B>LN_SUMMARY</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#LN_TERM"><B>LN_TERM</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#LN_TITLE"><B>LN_TITLE</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#LN_TYPE"><B>LN_TYPE</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#LN_UPDATED"><B>LN_UPDATED</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#LN_URI"><B>LN_URI</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#LN_VERSION"><B>LN_VERSION</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#LN_WORKSPACE"><B>LN_WORKSPACE</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Discover.DefaultLoader.html#loader"><B>loader</B></A> - 
Variable in class org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Discover.DefaultLoader.html" title="class in org.apache.abdera2.common">Discover.DefaultLoader</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/lang/Lang.html#locale()"><B>locale()</B></A> - 
Method in class org.apache.abdera2.common.lang.<A HREF="./org/apache/abdera2/common/lang/Lang.html" title="class in org.apache.abdera2.common.lang">Lang</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Localizer.html" title="class in org.apache.abdera2.common"><B>Localizer</B></A> - Class in <A HREF="./org/apache/abdera2/common/package-summary.html">org.apache.abdera2.common</A><DD>Wraps ResourceBundle with a couple of additional, useful methods.<DT><A HREF="./org/apache/abdera2/common/Localizer.html#Localizer()"><B>Localizer()</B></A> - 
Constructor for class org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Localizer.html" title="class in org.apache.abdera2.common">Localizer</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Localizer.html#Localizer(java.util.Locale, java.lang.ClassLoader)"><B>Localizer(Locale, ClassLoader)</B></A> - 
Constructor for class org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Localizer.html" title="class in org.apache.abdera2.common">Localizer</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Localizer.html#Localizer(java.lang.String)"><B>Localizer(String)</B></A> - 
Constructor for class org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Localizer.html" title="class in org.apache.abdera2.common">Localizer</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Localizer.html#Localizer(java.lang.String, java.util.Locale)"><B>Localizer(String, Locale)</B></A> - 
Constructor for class org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Localizer.html" title="class in org.apache.abdera2.common">Localizer</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Localizer.html#Localizer(java.util.ResourceBundle)"><B>Localizer(ResourceBundle)</B></A> - 
Constructor for class org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Localizer.html" title="class in org.apache.abdera2.common">Localizer</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Localizer.html#Localizer(java.util.ResourceBundle, java.util.Locale)"><B>Localizer(ResourceBundle, Locale)</B></A> - 
Constructor for class org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Localizer.html" title="class in org.apache.abdera2.common">Localizer</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Discover.html#locate(java.lang.Class, java.lang.String, java.lang.Object...)"><B>locate(Class&lt;T&gt;, String, Object...)</B></A> - 
Static method in class org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Discover.html" title="class in org.apache.abdera2.common">Discover</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Discover.html#locate(java.lang.String, java.lang.String, java.lang.Object...)"><B>locate(String, String, Object...)</B></A> - 
Static method in class org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Discover.html" title="class in org.apache.abdera2.common">Discover</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Discover.html#locate(java.lang.Class, java.lang.String, java.lang.ClassLoader, java.lang.Object...)"><B>locate(Class&lt;T&gt;, String, ClassLoader, Object...)</B></A> - 
Static method in class org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Discover.html" title="class in org.apache.abdera2.common">Discover</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Discover.html#locate(java.lang.String, java.lang.String, java.lang.ClassLoader, java.lang.Object...)"><B>locate(String, String, ClassLoader, Object...)</B></A> - 
Static method in class org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Discover.html" title="class in org.apache.abdera2.common">Discover</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Discover.html#locate(java.lang.Class, java.lang.ClassLoader, java.lang.Object...)"><B>locate(Class&lt;T&gt;, ClassLoader, Object...)</B></A> - 
Static method in class org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Discover.html" title="class in org.apache.abdera2.common">Discover</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Discover.html#locate(java.lang.String, java.lang.ClassLoader, java.lang.Object...)"><B>locate(String, ClassLoader, Object...)</B></A> - 
Static method in class org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Discover.html" title="class in org.apache.abdera2.common">Discover</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Discover.html#locate(java.lang.Class, boolean, java.lang.ClassLoader, java.lang.Object...)"><B>locate(Class&lt;T&gt;, boolean, ClassLoader, Object...)</B></A> - 
Static method in class org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Discover.html" title="class in org.apache.abdera2.common">Discover</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Discover.html#locate(java.lang.String, boolean, java.lang.ClassLoader, java.lang.Object...)"><B>locate(String, boolean, ClassLoader, Object...)</B></A> - 
Static method in class org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Discover.html" title="class in org.apache.abdera2.common">Discover</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Discover.html#locate(java.lang.Class, java.lang.Object...)"><B>locate(Class&lt;T&gt;, Object...)</B></A> - 
Static method in class org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Discover.html" title="class in org.apache.abdera2.common">Discover</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Discover.html#locate(java.lang.String, java.lang.Object...)"><B>locate(String, Object...)</B></A> - 
Static method in class org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Discover.html" title="class in org.apache.abdera2.common">Discover</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Discover.html#locate(java.lang.Class, boolean, java.lang.Object...)"><B>locate(Class&lt;T&gt;, boolean, Object...)</B></A> - 
Static method in class org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Discover.html" title="class in org.apache.abdera2.common">Discover</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Discover.html#locate(java.lang.String, boolean, java.lang.Object...)"><B>locate(String, boolean, Object...)</B></A> - 
Static method in class org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Discover.html" title="class in org.apache.abdera2.common">Discover</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Discover.html#locate(java.lang.Iterable)"><B>locate(Iterable&lt;T&gt;)</B></A> - 
Static method in class org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Discover.html" title="class in org.apache.abdera2.common">Discover</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Discover.html#locateResource(java.lang.String, java.lang.ClassLoader, java.lang.Class)"><B>locateResource(String, ClassLoader, Class&lt;?&gt;)</B></A> - 
Static method in class org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Discover.html" title="class in org.apache.abdera2.common">Discover</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Discover.html#locateResourceAsStream(java.lang.String, java.lang.ClassLoader, java.lang.Class)"><B>locateResourceAsStream(String, ClassLoader, Class&lt;?&gt;)</B></A> - 
Static method in class org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Discover.html" title="class in org.apache.abdera2.common">Discover</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Discover.html#locateResources(java.lang.String, java.lang.ClassLoader, java.lang.Class)"><B>locateResources(String, ClassLoader, Class&lt;?&gt;)</B></A> - 
Static method in class org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Discover.html" title="class in org.apache.abdera2.common">Discover</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/ProviderHelper.html#locked(org.apache.abdera2.common.protocol.RequestContext, java.lang.String)"><B>locked(RequestContext, String)</B></A> - 
Static method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ProviderHelper.html" title="class in org.apache.abdera2.common.protocol">ProviderHelper</A>
<DD>Return a 423 locked error
<DT><A HREF="./org/apache/abdera2/common/protocol/ProviderHelper.html#locked(org.apache.abdera2.common.protocol.RequestContext)"><B>locked(RequestContext)</B></A> - 
Static method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ProviderHelper.html" title="class in org.apache.abdera2.common.protocol">ProviderHelper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/ProviderHelper.html#log"><B>log</B></A> - 
Static variable in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ProviderHelper.html" title="class in org.apache.abdera2.common.protocol">ProviderHelper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#LOGO"><B>LOGO</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
</DL>
<HR>
<A NAME="_M_"><!-- --></A><H2>
<B>M</B></H2>
<DL>
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/AbstractAbderaServlet.html#manager"><B>manager</B></A> - 
Variable in class org.apache.abdera2.common.protocol.servlet.<A HREF="./org/apache/abdera2/common/protocol/servlet/AbstractAbderaServlet.html" title="class in org.apache.abdera2.common.protocol.servlet">AbstractAbderaServlet</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/pusher/MapChannelManager.html" title="class in org.apache.abdera2.common.pusher"><B>MapChannelManager</B></A> - Class in <A HREF="./org/apache/abdera2/common/pusher/package-summary.html">org.apache.abdera2.common.pusher</A><DD>ChannelManager implementation based on an internal HashMap of Pusher/Receiver pairs<DT><A HREF="./org/apache/abdera2/common/pusher/MapChannelManager.html#MapChannelManager()"><B>MapChannelManager()</B></A> - 
Constructor for class org.apache.abdera2.common.pusher.<A HREF="./org/apache/abdera2/common/pusher/MapChannelManager.html" title="class in org.apache.abdera2.common.pusher">MapChannelManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/pusher/MapChannelManager.Channel.html" title="class in org.apache.abdera2.common.pusher"><B>MapChannelManager.Channel</B></A> - Class in <A HREF="./org/apache/abdera2/common/pusher/package-summary.html">org.apache.abdera2.common.pusher</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/pusher/MapChannelManager.Channel.html#MapChannelManager.Channel(org.apache.abdera2.common.pusher.Pusher, org.apache.abdera2.common.pusher.Receiver)"><B>MapChannelManager.Channel(Pusher&lt;?&gt;, Receiver&lt;?&gt;)</B></A> - 
Constructor for class org.apache.abdera2.common.pusher.<A HREF="./org/apache/abdera2/common/pusher/MapChannelManager.Channel.html" title="class in org.apache.abdera2.common.pusher">MapChannelManager.Channel</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/MapContext.html" title="class in org.apache.abdera2.common.templates"><B>MapContext</B></A> - Class in <A HREF="./org/apache/abdera2/common/templates/package-summary.html">org.apache.abdera2.common.templates</A><DD>Context implementation based on a HashMap<DT><A HREF="./org/apache/abdera2/common/templates/MapContext.html#MapContext()"><B>MapContext()</B></A> - 
Constructor for class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/MapContext.html" title="class in org.apache.abdera2.common.templates">MapContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/MapContext.html#MapContext(boolean)"><B>MapContext(boolean)</B></A> - 
Constructor for class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/MapContext.html" title="class in org.apache.abdera2.common.templates">MapContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/MapContext.html#MapContext(java.util.Map)"><B>MapContext(Map&lt;String, Object&gt;)</B></A> - 
Constructor for class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/MapContext.html" title="class in org.apache.abdera2.common.templates">MapContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/MapContext.html#MapContext(java.util.Map, boolean)"><B>MapContext(Map&lt;String, Object&gt;, boolean)</B></A> - 
Constructor for class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/MapContext.html" title="class in org.apache.abdera2.common.templates">MapContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/MapContext.html#MapContext(org.apache.abdera2.common.templates.Context)"><B>MapContext(Context)</B></A> - 
Constructor for class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/MapContext.html" title="class in org.apache.abdera2.common.templates">MapContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/Route.html#match(java.lang.String)"><B>match(String)</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/Route.html" title="class in org.apache.abdera2.common.templates">Route</A>
<DD>Returns true if the given uri matches the route pattern
<DT><A HREF="./org/apache/abdera2/common/protocol/RegexTargetResolver.RegexTarget.html#matcher"><B>matcher</B></A> - 
Variable in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/RegexTargetResolver.RegexTarget.html" title="class in org.apache.abdera2.common.protocol">RegexTargetResolver.RegexTarget</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/EntityTag.html#matches(org.apache.abdera2.common.http.EntityTag, org.apache.abdera2.common.http.EntityTag)"><B>matches(EntityTag, EntityTag)</B></A> - 
Static method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/EntityTag.html" title="class in org.apache.abdera2.common.http">EntityTag</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/EntityTag.html#matches(org.apache.abdera2.common.http.EntityTag, org.apache.abdera2.common.http.EntityTag, boolean)"><B>matches(EntityTag, EntityTag, boolean)</B></A> - 
Static method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/EntityTag.html" title="class in org.apache.abdera2.common.http">EntityTag</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/EntityTag.html#matches(java.lang.String, java.lang.String)"><B>matches(String, String)</B></A> - 
Static method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/EntityTag.html" title="class in org.apache.abdera2.common.http">EntityTag</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/EntityTag.html#matches(org.apache.abdera2.common.http.EntityTag, java.lang.String)"><B>matches(EntityTag, String)</B></A> - 
Static method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/EntityTag.html" title="class in org.apache.abdera2.common.http">EntityTag</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/EntityTag.html#matches(org.apache.abdera2.common.http.EntityTag, java.lang.String...)"><B>matches(EntityTag, String...)</B></A> - 
Static method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/EntityTag.html" title="class in org.apache.abdera2.common.http">EntityTag</A>
<DD>Checks that the passed in ETag matches the ETag generated by the generate method
<DT><A HREF="./org/apache/abdera2/common/http/Preference.html#matches(java.lang.String)"><B>matches(String)</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/Preference.html" title="class in org.apache.abdera2.common.http">Preference</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/lang/Range.html#matches(java.lang.String)"><B>matches(String)</B></A> - 
Method in class org.apache.abdera2.common.lang.<A HREF="./org/apache/abdera2/common/lang/Range.html" title="class in org.apache.abdera2.common.lang">Range</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/lang/Range.html#matches(java.lang.String, boolean)"><B>matches(String, boolean)</B></A> - 
Method in class org.apache.abdera2.common.lang.<A HREF="./org/apache/abdera2/common/lang/Range.html" title="class in org.apache.abdera2.common.lang">Range</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/lang/Range.html#matches(org.apache.abdera2.common.lang.Lang)"><B>matches(Lang)</B></A> - 
Method in class org.apache.abdera2.common.lang.<A HREF="./org/apache/abdera2/common/lang/Range.html" title="class in org.apache.abdera2.common.lang">Range</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/lang/Range.html#matches(org.apache.abdera2.common.lang.Lang, boolean)"><B>matches(Lang, boolean)</B></A> - 
Method in class org.apache.abdera2.common.lang.<A HREF="./org/apache/abdera2/common/lang/Range.html" title="class in org.apache.abdera2.common.lang">Range</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/lang/Range.html#matches(java.lang.String, org.apache.abdera2.common.lang.Lang, boolean)"><B>matches(String, Lang, boolean)</B></A> - 
Static method in class org.apache.abdera2.common.lang.<A HREF="./org/apache/abdera2/common/lang/Range.html" title="class in org.apache.abdera2.common.lang">Range</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/lang/Range.html#matches(java.lang.String, org.apache.abdera2.common.lang.Lang)"><B>matches(String, Lang)</B></A> - 
Static method in class org.apache.abdera2.common.lang.<A HREF="./org/apache/abdera2/common/lang/Range.html" title="class in org.apache.abdera2.common.lang">Range</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/lang/Range.html#matches(java.lang.String, java.lang.String, boolean)"><B>matches(String, String, boolean)</B></A> - 
Static method in class org.apache.abdera2.common.lang.<A HREF="./org/apache/abdera2/common/lang/Range.html" title="class in org.apache.abdera2.common.lang">Range</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/lang/Range.html#matches(java.lang.String, java.lang.String)"><B>matches(String, String)</B></A> - 
Static method in class org.apache.abdera2.common.lang.<A HREF="./org/apache/abdera2/common/lang/Range.html" title="class in org.apache.abdera2.common.lang">Range</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/EntityTag.html#matchesAny(org.apache.abdera2.common.http.EntityTag, java.lang.String)"><B>matchesAny(EntityTag, String)</B></A> - 
Static method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/EntityTag.html" title="class in org.apache.abdera2.common.http">EntityTag</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/EntityTag.html#matchesAny(org.apache.abdera2.common.http.EntityTag, java.lang.String, boolean)"><B>matchesAny(EntityTag, String, boolean)</B></A> - 
Static method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/EntityTag.html" title="class in org.apache.abdera2.common.http">EntityTag</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/EntityTag.html#matchesAny(java.lang.String, java.lang.String)"><B>matchesAny(String, String)</B></A> - 
Static method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/EntityTag.html" title="class in org.apache.abdera2.common.http">EntityTag</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/EntityTag.html#matchesAny(java.lang.String, java.lang.String, boolean)"><B>matchesAny(String, String, boolean)</B></A> - 
Static method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/EntityTag.html" title="class in org.apache.abdera2.common.http">EntityTag</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/EntityTag.html#matchesAny(org.apache.abdera2.common.http.EntityTag, java.lang.Iterable)"><B>matchesAny(EntityTag, Iterable&lt;EntityTag&gt;)</B></A> - 
Static method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/EntityTag.html" title="class in org.apache.abdera2.common.http">EntityTag</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/EntityTag.html#matchesAny(org.apache.abdera2.common.http.EntityTag, java.lang.Iterable, boolean)"><B>matchesAny(EntityTag, Iterable&lt;EntityTag&gt;, boolean)</B></A> - 
Static method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/EntityTag.html" title="class in org.apache.abdera2.common.http">EntityTag</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/CacheControl.html#max_age"><B>max_age</B></A> - 
Variable in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/CacheControl.html" title="class in org.apache.abdera2.common.http">CacheControl</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractMessage.html#max_age"><B>max_age</B></A> - 
Variable in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractMessage.html" title="class in org.apache.abdera2.common.protocol">AbstractMessage</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/CacheControl.html#max_stale"><B>max_stale</B></A> - 
Variable in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/CacheControl.html" title="class in org.apache.abdera2.common.http">CacheControl</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractRequest.html#max_stale"><B>max_stale</B></A> - 
Variable in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractRequest.html" title="class in org.apache.abdera2.common.protocol">AbstractRequest</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/CacheControl.html#MAXAGE(long)"><B>MAXAGE(long)</B></A> - 
Static method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/CacheControl.html" title="class in org.apache.abdera2.common.http">CacheControl</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/TargetType.html#MEDIA"><B>MEDIA</B></A> - 
Static variable in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/TargetType.html" title="class in org.apache.abdera2.common.protocol">TargetType</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/WebLink.html#MEDIA_ALL"><B>MEDIA_ALL</B></A> - 
Static variable in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/WebLink.html" title="class in org.apache.abdera2.common.http">WebLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/WebLink.html#MEDIA_AURAL"><B>MEDIA_AURAL</B></A> - 
Static variable in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/WebLink.html" title="class in org.apache.abdera2.common.http">WebLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/WebLink.html#MEDIA_BRAILLE"><B>MEDIA_BRAILLE</B></A> - 
Static variable in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/WebLink.html" title="class in org.apache.abdera2.common.http">WebLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/WebLink.html#MEDIA_HANDHELD"><B>MEDIA_HANDHELD</B></A> - 
Static variable in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/WebLink.html" title="class in org.apache.abdera2.common.http">WebLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/WebLink.html#MEDIA_PRINT"><B>MEDIA_PRINT</B></A> - 
Static variable in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/WebLink.html" title="class in org.apache.abdera2.common.http">WebLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/WebLink.html#MEDIA_PROJECTION"><B>MEDIA_PROJECTION</B></A> - 
Static variable in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/WebLink.html" title="class in org.apache.abdera2.common.http">WebLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/WebLink.html#MEDIA_SCREEN"><B>MEDIA_SCREEN</B></A> - 
Static variable in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/WebLink.html" title="class in org.apache.abdera2.common.http">WebLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/WebLink.html#MEDIA_TTY"><B>MEDIA_TTY</B></A> - 
Static variable in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/WebLink.html" title="class in org.apache.abdera2.common.http">WebLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/WebLink.html#MEDIA_TV"><B>MEDIA_TV</B></A> - 
Static variable in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/WebLink.html" title="class in org.apache.abdera2.common.http">WebLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/MediaCollectionAdapter.html" title="interface in org.apache.abdera2.common.protocol"><B>MediaCollectionAdapter</B></A> - Interface in <A HREF="./org/apache/abdera2/common/protocol/package-summary.html">org.apache.abdera2.common.protocol</A><DD>Extends CollectionAdapter with methods specific to the handling of Atompub Media Link Entries<DT><A HREF="./org/apache/abdera2/common/protocol/MediaRequestProcessor.html" title="class in org.apache.abdera2.common.protocol"><B>MediaRequestProcessor</B></A> - Class in <A HREF="./org/apache/abdera2/common/protocol/package-summary.html">org.apache.abdera2.common.protocol</A><DD><CODE>org.apache.AtompubRequestProcessor.protocol.server.RequestProcessor</CODE> implementation which processes requests for media
 documents.<DT><A HREF="./org/apache/abdera2/common/protocol/MediaRequestProcessor.html#MediaRequestProcessor()"><B>MediaRequestProcessor()</B></A> - 
Constructor for class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/MediaRequestProcessor.html" title="class in org.apache.abdera2.common.protocol">MediaRequestProcessor</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/MediaResponseContext.html" title="class in org.apache.abdera2.common.protocol"><B>MediaResponseContext</B></A> - Class in <A HREF="./org/apache/abdera2/common/protocol/package-summary.html">org.apache.abdera2.common.protocol</A><DD>ResponseContext implementation for arbitrary media resources<DT><A HREF="./org/apache/abdera2/common/protocol/MediaResponseContext.html#MediaResponseContext(java.io.InputStream, org.apache.abdera2.common.http.EntityTag, int, boolean)"><B>MediaResponseContext(InputStream, EntityTag, int, boolean)</B></A> - 
Constructor for class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/MediaResponseContext.html" title="class in org.apache.abdera2.common.protocol">MediaResponseContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/MediaResponseContext.html#MediaResponseContext(java.io.InputStream, org.apache.abdera2.common.http.EntityTag, int)"><B>MediaResponseContext(InputStream, EntityTag, int)</B></A> - 
Constructor for class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/MediaResponseContext.html" title="class in org.apache.abdera2.common.protocol">MediaResponseContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/MediaResponseContext.html#MediaResponseContext(java.io.InputStream, int, boolean)"><B>MediaResponseContext(InputStream, int, boolean)</B></A> - 
Constructor for class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/MediaResponseContext.html" title="class in org.apache.abdera2.common.protocol">MediaResponseContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/MediaResponseContext.html#MediaResponseContext(java.io.InputStream, int)"><B>MediaResponseContext(InputStream, int)</B></A> - 
Constructor for class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/MediaResponseContext.html" title="class in org.apache.abdera2.common.protocol">MediaResponseContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/MediaResponseContext.html#MediaResponseContext(java.io.InputStream, java.util.Date, int, boolean)"><B>MediaResponseContext(InputStream, Date, int, boolean)</B></A> - 
Constructor for class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/MediaResponseContext.html" title="class in org.apache.abdera2.common.protocol">MediaResponseContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/MediaResponseContext.html#MediaResponseContext(java.io.InputStream, java.util.Date, int)"><B>MediaResponseContext(InputStream, Date, int)</B></A> - 
Constructor for class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/MediaResponseContext.html" title="class in org.apache.abdera2.common.protocol">MediaResponseContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/MediaResponseContext.html#MediaResponseContext(byte[], int)"><B>MediaResponseContext(byte[], int)</B></A> - 
Constructor for class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/MediaResponseContext.html" title="class in org.apache.abdera2.common.protocol">MediaResponseContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/MediaResponseContext.html#MediaResponseContext(byte[], java.util.Date, int)"><B>MediaResponseContext(byte[], Date, int)</B></A> - 
Constructor for class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/MediaResponseContext.html" title="class in org.apache.abdera2.common.protocol">MediaResponseContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/MediaResponseContext.html#MediaResponseContext(byte[], org.apache.abdera2.common.http.EntityTag, int)"><B>MediaResponseContext(byte[], EntityTag, int)</B></A> - 
Constructor for class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/MediaResponseContext.html" title="class in org.apache.abdera2.common.protocol">MediaResponseContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/MediaResponseContext.html#MediaResponseContext(java.nio.channels.ReadableByteChannel, int, boolean)"><B>MediaResponseContext(ReadableByteChannel, int, boolean)</B></A> - 
Constructor for class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/MediaResponseContext.html" title="class in org.apache.abdera2.common.protocol">MediaResponseContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/MediaResponseContext.html#MediaResponseContext(java.nio.channels.ReadableByteChannel, int)"><B>MediaResponseContext(ReadableByteChannel, int)</B></A> - 
Constructor for class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/MediaResponseContext.html" title="class in org.apache.abdera2.common.protocol">MediaResponseContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/MediaResponseContext.html#MediaResponseContext(java.nio.channels.ReadableByteChannel, java.util.Date, int, boolean)"><B>MediaResponseContext(ReadableByteChannel, Date, int, boolean)</B></A> - 
Constructor for class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/MediaResponseContext.html" title="class in org.apache.abdera2.common.protocol">MediaResponseContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/MediaResponseContext.html#MediaResponseContext(java.nio.channels.ReadableByteChannel, java.util.Date, int)"><B>MediaResponseContext(ReadableByteChannel, Date, int)</B></A> - 
Constructor for class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/MediaResponseContext.html" title="class in org.apache.abdera2.common.protocol">MediaResponseContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/MediaResponseContext.html#MediaResponseContext(java.nio.channels.ReadableByteChannel, org.apache.abdera2.common.http.EntityTag, int, boolean)"><B>MediaResponseContext(ReadableByteChannel, EntityTag, int, boolean)</B></A> - 
Constructor for class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/MediaResponseContext.html" title="class in org.apache.abdera2.common.protocol">MediaResponseContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/MediaResponseContext.html#MediaResponseContext(java.nio.channels.ReadableByteChannel, org.apache.abdera2.common.http.EntityTag, int)"><B>MediaResponseContext(ReadableByteChannel, EntityTag, int)</B></A> - 
Constructor for class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/MediaResponseContext.html" title="class in org.apache.abdera2.common.protocol">MediaResponseContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/Message.html" title="interface in org.apache.abdera2.common.protocol"><B>Message</B></A> - Interface in <A HREF="./org/apache/abdera2/common/protocol/package-summary.html">org.apache.abdera2.common.protocol</A><DD>A protocol message.<DT><A HREF="./org/apache/abdera2/common/http/Method.html" title="class in org.apache.abdera2.common.http"><B>Method</B></A> - Class in <A HREF="./org/apache/abdera2/common/http/package-summary.html">org.apache.abdera2.common.http</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractBaseRequestContext.html#method"><B>method</B></A> - 
Variable in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractBaseRequestContext.html" title="class in org.apache.abdera2.common.protocol">AbstractBaseRequestContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/MethodOverrideFilter.html" title="class in org.apache.abdera2.common.protocol"><B>MethodOverrideFilter</B></A> - Class in <A HREF="./org/apache/abdera2/common/protocol/package-summary.html">org.apache.abdera2.common.protocol</A><DD>Abdera Filter implementation that supports the use of the X-HTTP-Method-Override header used by GData.<DT><A HREF="./org/apache/abdera2/common/protocol/MethodOverrideFilter.html#MethodOverrideFilter()"><B>MethodOverrideFilter()</B></A> - 
Constructor for class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/MethodOverrideFilter.html" title="class in org.apache.abdera2.common.protocol">MethodOverrideFilter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/MethodOverrideFilter.html#MethodOverrideFilter(java.lang.String...)"><B>MethodOverrideFilter(String...)</B></A> - 
Constructor for class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/MethodOverrideFilter.html" title="class in org.apache.abdera2.common.protocol">MethodOverrideFilter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/mediatype/MimeTypeHelper.html" title="class in org.apache.abdera2.common.mediatype"><B>MimeTypeHelper</B></A> - Class in <A HREF="./org/apache/abdera2/common/mediatype/package-summary.html">org.apache.abdera2.common.mediatype</A><DD>Utilities for working with MIME Media Types<DT><A HREF="./org/apache/abdera2/common/mediatype/MimeTypeHelper.html#MimeTypeHelper()"><B>MimeTypeHelper()</B></A> - 
Constructor for class org.apache.abdera2.common.mediatype.<A HREF="./org/apache/abdera2/common/mediatype/MimeTypeHelper.html" title="class in org.apache.abdera2.common.mediatype">MimeTypeHelper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/mediatype/MimeTypeParseException.html" title="class in org.apache.abdera2.common.mediatype"><B>MimeTypeParseException</B></A> - Exception in <A HREF="./org/apache/abdera2/common/mediatype/package-summary.html">org.apache.abdera2.common.mediatype</A><DD>An alternative to JAF's MimeTypeParseException that extends RuntimeException so we don't have to explicitly catch it
 everywhere.<DT><A HREF="./org/apache/abdera2/common/mediatype/MimeTypeParseException.html#MimeTypeParseException(javax.activation.MimeTypeParseException)"><B>MimeTypeParseException(MimeTypeParseException)</B></A> - 
Constructor for exception org.apache.abdera2.common.mediatype.<A HREF="./org/apache/abdera2/common/mediatype/MimeTypeParseException.html" title="class in org.apache.abdera2.common.mediatype">MimeTypeParseException</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/CacheControl.html#min_fresh"><B>min_fresh</B></A> - 
Variable in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/CacheControl.html" title="class in org.apache.abdera2.common.http">CacheControl</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractRequest.html#min_fresh"><B>min_fresh</B></A> - 
Variable in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractRequest.html" title="class in org.apache.abdera2.common.protocol">AbstractRequest</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/MultiContext.html" title="class in org.apache.abdera2.common.templates"><B>MultiContext</B></A> - Class in <A HREF="./org/apache/abdera2/common/templates/package-summary.html">org.apache.abdera2.common.templates</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/templates/MultiContext.html#MultiContext(org.apache.abdera2.common.templates.Context...)"><B>MultiContext(Context...)</B></A> - 
Constructor for class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/MultiContext.html" title="class in org.apache.abdera2.common.templates">MultiContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/MultiContext.html#MultiContext(java.lang.Iterable)"><B>MultiContext(Iterable&lt;Context&gt;)</B></A> - 
Constructor for class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/MultiContext.html" title="class in org.apache.abdera2.common.templates">MultiContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/MultiContext.html#MultiContext(java.util.Collection)"><B>MultiContext(Collection&lt;Context&gt;)</B></A> - 
Constructor for class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/MultiContext.html" title="class in org.apache.abdera2.common.templates">MultiContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/misc/MultiIterator.html" title="class in org.apache.abdera2.common.misc"><B>MultiIterator</B></A>&lt;<A HREF="./org/apache/abdera2/common/misc/MultiIterator.html" title="type parameter in MultiIterator">T</A>&gt; - Class in <A HREF="./org/apache/abdera2/common/misc/package-summary.html">org.apache.abdera2.common.misc</A><DD>Iterator implementation that wraps multiple iterators and invokes them in sequence.<DT><A HREF="./org/apache/abdera2/common/misc/MultiIterator.html#MultiIterator(java.lang.Iterable)"><B>MultiIterator(Iterable&lt;Iterator&lt;T&gt;&gt;)</B></A> - 
Constructor for class org.apache.abdera2.common.misc.<A HREF="./org/apache/abdera2/common/misc/MultiIterator.html" title="class in org.apache.abdera2.common.misc">MultiIterator</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/misc/MultiIterator.html#MultiIterator(java.util.Iterator...)"><B>MultiIterator(Iterator&lt;T&gt;...)</B></A> - 
Constructor for class org.apache.abdera2.common.misc.<A HREF="./org/apache/abdera2/common/misc/MultiIterator.html" title="class in org.apache.abdera2.common.misc">MultiIterator</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/misc/MultiIterator.html#MultiIterator(java.util.Iterator)"><B>MultiIterator(Iterator&lt;Iterator&lt;T&gt;&gt;)</B></A> - 
Constructor for class org.apache.abdera2.common.misc.<A HREF="./org/apache/abdera2/common/misc/MultiIterator.html" title="class in org.apache.abdera2.common.misc">MultiIterator</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#MULTIPART_RELATED_TYPE"><B>MULTIPART_RELATED_TYPE</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/io/MultipartInputStream.html" title="class in org.apache.abdera2.common.io"><B>MultipartInputStream</B></A> - Class in <A HREF="./org/apache/abdera2/common/io/package-summary.html">org.apache.abdera2.common.io</A><DD>InputStream that reads a given inputStream and skips the boundary tokens.<DT><A HREF="./org/apache/abdera2/common/io/MultipartInputStream.html#MultipartInputStream(java.io.InputStream, byte[])"><B>MultipartInputStream(InputStream, byte[])</B></A> - 
Constructor for class org.apache.abdera2.common.io.<A HREF="./org/apache/abdera2/common/io/MultipartInputStream.html" title="class in org.apache.abdera2.common.io">MultipartInputStream</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Multiple.html" title="class in org.apache.abdera2.common.geo"><B>Multiple</B></A> - Class in <A HREF="./org/apache/abdera2/common/geo/package-summary.html">org.apache.abdera2.common.geo</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/geo/Multiple.html#Multiple()"><B>Multiple()</B></A> - 
Constructor for class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Multiple.html" title="class in org.apache.abdera2.common.geo">Multiple</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Multiple.html#Multiple(org.apache.abdera2.common.geo.Multiple...)"><B>Multiple(Multiple...)</B></A> - 
Constructor for class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Multiple.html" title="class in org.apache.abdera2.common.geo">Multiple</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Multiple.html#Multiple(org.apache.abdera2.common.geo.Multiple)"><B>Multiple(Multiple)</B></A> - 
Constructor for class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Multiple.html" title="class in org.apache.abdera2.common.geo">Multiple</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Multiple.html#Multiple(org.apache.abdera2.common.geo.Point)"><B>Multiple(Point)</B></A> - 
Constructor for class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Multiple.html" title="class in org.apache.abdera2.common.geo">Multiple</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Multiple.html#Multiple(org.apache.abdera2.common.geo.Point...)"><B>Multiple(Point...)</B></A> - 
Constructor for class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Multiple.html" title="class in org.apache.abdera2.common.geo">Multiple</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Multiple.html#Multiple(org.apache.abdera2.common.geo.Coordinates)"><B>Multiple(Coordinates)</B></A> - 
Constructor for class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Multiple.html" title="class in org.apache.abdera2.common.geo">Multiple</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Multiple.html#Multiple(org.apache.abdera2.common.geo.Coordinate...)"><B>Multiple(Coordinate...)</B></A> - 
Constructor for class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Multiple.html" title="class in org.apache.abdera2.common.geo">Multiple</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Multiple.html#Multiple(java.lang.String)"><B>Multiple(String)</B></A> - 
Constructor for class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Multiple.html" title="class in org.apache.abdera2.common.geo">Multiple</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Multiple.html#Multiple(double...)"><B>Multiple(double...)</B></A> - 
Constructor for class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Multiple.html" title="class in org.apache.abdera2.common.geo">Multiple</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/selector/MultiSelector.html" title="class in org.apache.abdera2.common.selector"><B>MultiSelector</B></A> - Class in <A HREF="./org/apache/abdera2/common/selector/package-summary.html">org.apache.abdera2.common.selector</A><DD>Selector that is based on an internal array of Selectors that are
 invoked in order.<DT><A HREF="./org/apache/abdera2/common/selector/MultiSelector.html#MultiSelector(org.apache.abdera2.common.selector.Selector...)"><B>MultiSelector(Selector...)</B></A> - 
Constructor for class org.apache.abdera2.common.selector.<A HREF="./org/apache/abdera2/common/selector/MultiSelector.html" title="class in org.apache.abdera2.common.selector">MultiSelector</A>
<DD>&nbsp;
</DL>
<HR>
<A NAME="_N_"><!-- --></A><H2>
<B>N</B></H2>
<DL>
<DT><A HREF="./org/apache/abdera2/common/anno/Name.html" title="annotation in org.apache.abdera2.common.anno"><B>Name</B></A> - Annotation Type in <A HREF="./org/apache/abdera2/common/anno/package-summary.html">org.apache.abdera2.common.anno</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/Constants.html#NAME"><B>NAME</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/Method.html#name()"><B>name()</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/Method.html" title="class in org.apache.abdera2.common.http">Method</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/iri/AbstractScheme.html#name"><B>name</B></A> - 
Variable in class org.apache.abdera2.common.iri.<A HREF="./org/apache/abdera2/common/iri/AbstractScheme.html" title="class in org.apache.abdera2.common.iri">AbstractScheme</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/iri/AbstractScheme.html#name()"><B>name()</B></A> - 
Method in class org.apache.abdera2.common.iri.<A HREF="./org/apache/abdera2/common/iri/AbstractScheme.html" title="class in org.apache.abdera2.common.iri">AbstractScheme</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/iri/Scheme.html#name()"><B>name()</B></A> - 
Method in interface org.apache.abdera2.common.iri.<A HREF="./org/apache/abdera2/common/iri/Scheme.html" title="interface in org.apache.abdera2.common.iri">Scheme</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/lang/Subtag.html#name()"><B>name()</B></A> - 
Method in class org.apache.abdera2.common.lang.<A HREF="./org/apache/abdera2/common/lang/Subtag.html" title="class in org.apache.abdera2.common.lang">Subtag</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/lang/SubtagSet.SubtagIterator.html#name()"><B>name()</B></A> - 
Method in class org.apache.abdera2.common.lang.<A HREF="./org/apache/abdera2/common/lang/SubtagSet.SubtagIterator.html" title="class in org.apache.abdera2.common.lang">SubtagSet.SubtagIterator</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/async/Processor.html#NAME"><B>NAME</B></A> - 
Static variable in interface org.apache.abdera2.common.protocol.servlet.async.<A HREF="./org/apache/abdera2/common/protocol/servlet/async/Processor.html" title="interface in org.apache.abdera2.common.protocol.servlet.async">Processor</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/TargetType.html#name()"><B>name()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/TargetType.html" title="class in org.apache.abdera2.common.protocol">TargetType</A>
<DD>Return the target name
<DT><A HREF="./org/apache/abdera2/common/anno/Namespace.html" title="annotation in org.apache.abdera2.common.anno"><B>Namespace</B></A> - Annotation Type in <A HREF="./org/apache/abdera2/common/anno/package-summary.html">org.apache.abdera2.common.anno</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractServiceManager.html#newChannelManager(java.util.Map)"><B>newChannelManager(Map&lt;String, String&gt;)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractServiceManager.html" title="class in org.apache.abdera2.common.protocol">AbstractServiceManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/ServiceManager.html#newChannelManager(java.util.Map)"><B>newChannelManager(Map&lt;String, String&gt;)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ServiceManager.html" title="interface in org.apache.abdera2.common.protocol">ServiceManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractServiceManager.html#newProcessorQueue(java.util.Map)"><B>newProcessorQueue(Map&lt;String, String&gt;)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractServiceManager.html" title="class in org.apache.abdera2.common.protocol">AbstractServiceManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/ServiceManager.html#newProcessorQueue(java.util.Map)"><B>newProcessorQueue(Map&lt;String, String&gt;)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ServiceManager.html" title="interface in org.apache.abdera2.common.protocol">ServiceManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/ServiceManager.html#newProvider(java.util.Map)"><B>newProvider(Map&lt;String, String&gt;)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ServiceManager.html" title="interface in org.apache.abdera2.common.protocol">ServiceManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractServiceManager.html#newTaskExecutor(java.util.Map)"><B>newTaskExecutor(Map&lt;String, String&gt;)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractServiceManager.html" title="class in org.apache.abdera2.common.protocol">AbstractServiceManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/ServiceManager.html#newTaskExecutor(java.util.Map)"><B>newTaskExecutor(Map&lt;String, String&gt;)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ServiceManager.html" title="interface in org.apache.abdera2.common.protocol">ServiceManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/lang/Subtag.html#newWildcard()"><B>newWildcard()</B></A> - 
Static method in class org.apache.abdera2.common.lang.<A HREF="./org/apache/abdera2/common/lang/Subtag.html" title="class in org.apache.abdera2.common.lang">Subtag</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Discover.DefaultLoaderIterator.html#next()"><B>next()</B></A> - 
Method in class org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Discover.DefaultLoaderIterator.html" title="class in org.apache.abdera2.common">Discover.DefaultLoaderIterator</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/lang/Subtag.html#next()"><B>next()</B></A> - 
Method in class org.apache.abdera2.common.lang.<A HREF="./org/apache/abdera2/common/lang/Subtag.html" title="class in org.apache.abdera2.common.lang">Subtag</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/lang/SubtagSet.SubtagIterator.html#next()"><B>next()</B></A> - 
Method in class org.apache.abdera2.common.lang.<A HREF="./org/apache/abdera2/common/lang/SubtagSet.SubtagIterator.html" title="class in org.apache.abdera2.common.lang">SubtagSet.SubtagIterator</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/misc/MultiIterator.html#next()"><B>next()</B></A> - 
Method in class org.apache.abdera2.common.misc.<A HREF="./org/apache/abdera2/common/misc/MultiIterator.html" title="class in org.apache.abdera2.common.misc">MultiIterator</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/FilterChain.html#next(org.apache.abdera2.common.protocol.RequestContext)"><B>next(RequestContext)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/FilterChain.html" title="class in org.apache.abdera2.common.protocol">FilterChain</A>
<DD>Invoke the next filter in the chain.
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/async/DefaultProcessor.html#next()"><B>next()</B></A> - 
Method in class org.apache.abdera2.common.protocol.servlet.async.<A HREF="./org/apache/abdera2/common/protocol/servlet/async/DefaultProcessor.html" title="class in org.apache.abdera2.common.protocol.servlet.async">DefaultProcessor</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/async/ProcessorQueue.html#next()"><B>next()</B></A> - 
Method in interface org.apache.abdera2.common.protocol.servlet.async.<A HREF="./org/apache/abdera2/common/protocol/servlet/async/ProcessorQueue.html" title="interface in org.apache.abdera2.common.protocol.servlet.async">ProcessorQueue</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/CodepointIterator.html#next()"><B>next()</B></A> - 
Method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/CodepointIterator.html" title="class in org.apache.abdera2.common.text">CodepointIterator</A>
<DD>Return the next codepoint
<DT><A HREF="./org/apache/abdera2/common/Constants.html#NO"><B>NO</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/CacheControl.html#NOCACHE"><B>NOCACHE</B></A> - 
Static variable in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/CacheControl.html" title="class in org.apache.abdera2.common.http">CacheControl</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/CacheControl.html#NOCACHE()"><B>NOCACHE()</B></A> - 
Static method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/CacheControl.html" title="class in org.apache.abdera2.common.http">CacheControl</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/CacheControl.html#nocache_headers"><B>nocache_headers</B></A> - 
Variable in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/CacheControl.html" title="class in org.apache.abdera2.common.http">CacheControl</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/ProviderHelper.html#nocontent(java.lang.String)"><B>nocontent(String)</B></A> - 
Static method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ProviderHelper.html" title="class in org.apache.abdera2.common.protocol">ProviderHelper</A>
<DD>Return a 204 No Content response
<DT><A HREF="./org/apache/abdera2/common/protocol/ProviderHelper.html#nocontent()"><B>nocontent()</B></A> - 
Static method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ProviderHelper.html" title="class in org.apache.abdera2.common.protocol">ProviderHelper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/NormalizationForm.html" title="enum in org.apache.abdera2.common.text"><B>NormalizationForm</B></A> - Enum in <A HREF="./org/apache/abdera2/common/text/package-summary.html">org.apache.abdera2.common.text</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/iri/AbstractScheme.html#normalize(org.apache.abdera2.common.iri.IRI)"><B>normalize(IRI)</B></A> - 
Method in class org.apache.abdera2.common.iri.<A HREF="./org/apache/abdera2/common/iri/AbstractScheme.html" title="class in org.apache.abdera2.common.iri">AbstractScheme</A>
<DD>Default return unmodified
<DT><A HREF="./org/apache/abdera2/common/iri/IRI.html#normalize()"><B>normalize()</B></A> - 
Method in class org.apache.abdera2.common.iri.<A HREF="./org/apache/abdera2/common/iri/IRI.html" title="class in org.apache.abdera2.common.iri">IRI</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/iri/IRI.html#normalize(org.apache.abdera2.common.iri.IRI)"><B>normalize(IRI)</B></A> - 
Static method in class org.apache.abdera2.common.iri.<A HREF="./org/apache/abdera2/common/iri/IRI.html" title="class in org.apache.abdera2.common.iri">IRI</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/iri/IRI.html#normalize(java.lang.String)"><B>normalize(String)</B></A> - 
Static method in class org.apache.abdera2.common.iri.<A HREF="./org/apache/abdera2/common/iri/IRI.html" title="class in org.apache.abdera2.common.iri">IRI</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/iri/Scheme.html#normalize(org.apache.abdera2.common.iri.IRI)"><B>normalize(IRI)</B></A> - 
Method in interface org.apache.abdera2.common.iri.<A HREF="./org/apache/abdera2/common/iri/Scheme.html" title="interface in org.apache.abdera2.common.iri">Scheme</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/NormalizationForm.html#normalize(java.lang.CharSequence)"><B>normalize(CharSequence)</B></A> - 
Method in enum org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/NormalizationForm.html" title="enum in org.apache.abdera2.common.text">NormalizationForm</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/iri/AbstractScheme.html#normalizePath(java.lang.String)"><B>normalizePath(String)</B></A> - 
Method in class org.apache.abdera2.common.iri.<A HREF="./org/apache/abdera2/common/iri/AbstractScheme.html" title="class in org.apache.abdera2.common.iri">AbstractScheme</A>
<DD>Default return unmodified
<DT><A HREF="./org/apache/abdera2/common/iri/Scheme.html#normalizePath(java.lang.String)"><B>normalizePath(String)</B></A> - 
Method in interface org.apache.abdera2.common.iri.<A HREF="./org/apache/abdera2/common/iri/Scheme.html" title="interface in org.apache.abdera2.common.iri">Scheme</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/iri/IRI.html#normalizeString(java.lang.String)"><B>normalizeString(String)</B></A> - 
Static method in class org.apache.abdera2.common.iri.<A HREF="./org/apache/abdera2/common/iri/IRI.html" title="class in org.apache.abdera2.common.iri">IRI</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/CacheControl.html#NOSTORE"><B>NOSTORE</B></A> - 
Static variable in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/CacheControl.html" title="class in org.apache.abdera2.common.http">CacheControl</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/CacheControl.html#NOSTORE()"><B>NOSTORE()</B></A> - 
Static method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/CacheControl.html" title="class in org.apache.abdera2.common.http">CacheControl</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/TargetType.html#NOT_FOUND"><B>NOT_FOUND</B></A> - 
Static variable in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/TargetType.html" title="class in org.apache.abdera2.common.protocol">TargetType</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/ProviderHelper.html#notallowed(org.apache.abdera2.common.protocol.RequestContext, java.lang.String, java.lang.String...)"><B>notallowed(RequestContext, String, String...)</B></A> - 
Static method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ProviderHelper.html" title="class in org.apache.abdera2.common.protocol">ProviderHelper</A>
<DD>Return a 405 method not allowed error
<DT><A HREF="./org/apache/abdera2/common/protocol/ProviderHelper.html#notallowed(org.apache.abdera2.common.protocol.RequestContext, java.lang.String...)"><B>notallowed(RequestContext, String...)</B></A> - 
Static method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ProviderHelper.html" title="class in org.apache.abdera2.common.protocol">ProviderHelper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/ProviderHelper.html#notallowed(org.apache.abdera2.common.protocol.RequestContext)"><B>notallowed(RequestContext)</B></A> - 
Static method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ProviderHelper.html" title="class in org.apache.abdera2.common.protocol">ProviderHelper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/ProviderHelper.html#notfound(org.apache.abdera2.common.protocol.RequestContext, java.lang.String)"><B>notfound(RequestContext, String)</B></A> - 
Static method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ProviderHelper.html" title="class in org.apache.abdera2.common.protocol">ProviderHelper</A>
<DD>Return a 404 not found error
<DT><A HREF="./org/apache/abdera2/common/protocol/ProviderHelper.html#notfound(org.apache.abdera2.common.protocol.RequestContext)"><B>notfound(RequestContext)</B></A> - 
Static method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ProviderHelper.html" title="class in org.apache.abdera2.common.protocol">ProviderHelper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/ProviderHelper.html#notmodified(org.apache.abdera2.common.protocol.RequestContext, java.lang.String)"><B>notmodified(RequestContext, String)</B></A> - 
Static method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ProviderHelper.html" title="class in org.apache.abdera2.common.protocol">ProviderHelper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/ProviderHelper.html#notmodified(org.apache.abdera2.common.protocol.RequestContext)"><B>notmodified(RequestContext)</B></A> - 
Static method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ProviderHelper.html" title="class in org.apache.abdera2.common.protocol">ProviderHelper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/CacheControl.html#NOTRANSFORM"><B>NOTRANSFORM</B></A> - 
Static variable in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/CacheControl.html" title="class in org.apache.abdera2.common.http">CacheControl</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/ProviderHelper.html#notsupported(org.apache.abdera2.common.protocol.RequestContext, java.lang.String)"><B>notsupported(RequestContext, String)</B></A> - 
Static method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ProviderHelper.html" title="class in org.apache.abdera2.common.protocol">ProviderHelper</A>
<DD>Return a 415 media type not-supported error
<DT><A HREF="./org/apache/abdera2/common/protocol/ProviderHelper.html#notsupported(org.apache.abdera2.common.protocol.RequestContext)"><B>notsupported(RequestContext)</B></A> - 
Static method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ProviderHelper.html" title="class in org.apache.abdera2.common.protocol">ProviderHelper</A>
<DD>&nbsp;
</DL>
<HR>
<A NAME="_O_"><!-- --></A><H2>
<B>O</B></H2>
<DL>
<DT><A HREF="./org/apache/abdera2/common/templates/ObjectContext.html" title="class in org.apache.abdera2.common.templates"><B>ObjectContext</B></A> - Class in <A HREF="./org/apache/abdera2/common/templates/package-summary.html">org.apache.abdera2.common.templates</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/templates/ObjectContext.html#ObjectContext(java.lang.Object)"><B>ObjectContext(Object)</B></A> - 
Constructor for class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/ObjectContext.html" title="class in org.apache.abdera2.common.templates">ObjectContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/ObjectContext.html#ObjectContext(java.lang.Object, boolean)"><B>ObjectContext(Object, boolean)</B></A> - 
Constructor for class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/ObjectContext.html" title="class in org.apache.abdera2.common.templates">ObjectContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/pusher/Listener.html#onItem(T)"><B>onItem(T)</B></A> - 
Method in interface org.apache.abdera2.common.pusher.<A HREF="./org/apache/abdera2/common/pusher/Listener.html" title="interface in org.apache.abdera2.common.pusher">Listener</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/pusher/SelectorListener.html#onItem(T)"><B>onItem(T)</B></A> - 
Method in class org.apache.abdera2.common.pusher.<A HREF="./org/apache/abdera2/common/pusher/SelectorListener.html" title="class in org.apache.abdera2.common.pusher">SelectorListener</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/CacheControl.html#ONLYIFCACHED"><B>ONLYIFCACHED</B></A> - 
Static variable in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/CacheControl.html" title="class in org.apache.abdera2.common.http">CacheControl</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/Operation.html" title="class in org.apache.abdera2.common.templates"><B>Operation</B></A> - Class in <A HREF="./org/apache/abdera2/common/templates/package-summary.html">org.apache.abdera2.common.templates</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/templates/Operation.html#Operation()"><B>Operation()</B></A> - 
Constructor for class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/Operation.html" title="class in org.apache.abdera2.common.templates">Operation</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/Method.html#OPTIONS"><B>OPTIONS</B></A> - 
Static variable in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/Method.html" title="class in org.apache.abdera2.common.http">Method</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractCollectionAdapter.html#optionsItem(org.apache.abdera2.common.protocol.RequestContext)"><B>optionsItem(RequestContext)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractCollectionAdapter.html" title="class in org.apache.abdera2.common.protocol">AbstractCollectionAdapter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/CollectionAdapter.html#optionsItem(org.apache.abdera2.common.protocol.RequestContext)"><B>optionsItem(RequestContext)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/CollectionAdapter.html" title="interface in org.apache.abdera2.common.protocol">CollectionAdapter</A>
<DD>Get options for an entry from the collection
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractCollectionAdapter.html#optionsMedia(org.apache.abdera2.common.protocol.RequestContext)"><B>optionsMedia(RequestContext)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractCollectionAdapter.html" title="class in org.apache.abdera2.common.protocol">AbstractCollectionAdapter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/MediaCollectionAdapter.html#optionsMedia(org.apache.abdera2.common.protocol.RequestContext)"><B>optionsMedia(RequestContext)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/MediaCollectionAdapter.html" title="interface in org.apache.abdera2.common.protocol">MediaCollectionAdapter</A>
<DD>Get a media resource's options.
<DT><A HREF="./org/apache/abdera2/common/http/QualityHelper.html#orderByQ(java.lang.String)"><B>orderByQ(String)</B></A> - 
Static method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/QualityHelper.html" title="class in org.apache.abdera2.common.http">QualityHelper</A>
<DD>
 Utility method for parsing HTTP content negotiation headers and sorting their 
 qualified tokens according to q parameter values.
<DT><A HREF="./org/apache/abdera2/common/package-summary.html"><B>org.apache.abdera2.common</B></A> - package org.apache.abdera2.common<DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/anno/package-summary.html"><B>org.apache.abdera2.common.anno</B></A> - package org.apache.abdera2.common.anno<DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/date/package-summary.html"><B>org.apache.abdera2.common.date</B></A> - package org.apache.abdera2.common.date<DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/geo/package-summary.html"><B>org.apache.abdera2.common.geo</B></A> - package org.apache.abdera2.common.geo<DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/http/package-summary.html"><B>org.apache.abdera2.common.http</B></A> - package org.apache.abdera2.common.http<DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/io/package-summary.html"><B>org.apache.abdera2.common.io</B></A> - package org.apache.abdera2.common.io<DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/iri/package-summary.html"><B>org.apache.abdera2.common.iri</B></A> - package org.apache.abdera2.common.iri<DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/lang/package-summary.html"><B>org.apache.abdera2.common.lang</B></A> - package org.apache.abdera2.common.lang<DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/mediatype/package-summary.html"><B>org.apache.abdera2.common.mediatype</B></A> - package org.apache.abdera2.common.mediatype<DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/misc/package-summary.html"><B>org.apache.abdera2.common.misc</B></A> - package org.apache.abdera2.common.misc<DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/protocol/package-summary.html"><B>org.apache.abdera2.common.protocol</B></A> - package org.apache.abdera2.common.protocol<DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/package-summary.html"><B>org.apache.abdera2.common.protocol.servlet</B></A> - package org.apache.abdera2.common.protocol.servlet<DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/async/package-summary.html"><B>org.apache.abdera2.common.protocol.servlet.async</B></A> - package org.apache.abdera2.common.protocol.servlet.async<DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/pusher/package-summary.html"><B>org.apache.abdera2.common.pusher</B></A> - package org.apache.abdera2.common.pusher<DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/selector/package-summary.html"><B>org.apache.abdera2.common.selector</B></A> - package org.apache.abdera2.common.selector<DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/templates/package-summary.html"><B>org.apache.abdera2.common.templates</B></A> - package org.apache.abdera2.common.templates<DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/text/package-summary.html"><B>org.apache.abdera2.common.text</B></A> - package org.apache.abdera2.common.text<DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/xml/package-summary.html"><B>org.apache.abdera2.common.xml</B></A> - package org.apache.abdera2.common.xml<DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/AbstractAbderaServlet.html#output(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse, org.apache.abdera2.common.protocol.ResponseContext)"><B>output(HttpServletRequest, HttpServletResponse, ResponseContext)</B></A> - 
Method in class org.apache.abdera2.common.protocol.servlet.<A HREF="./org/apache/abdera2/common/protocol/servlet/AbstractAbderaServlet.html" title="class in org.apache.abdera2.common.protocol.servlet">AbstractAbderaServlet</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/async/AbderaTask.html#output(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse, org.apache.abdera2.common.protocol.ResponseContext, org.apache.abdera2.common.protocol.Provider)"><B>output(HttpServletRequest, HttpServletResponse, ResponseContext, Provider)</B></A> - 
Method in class org.apache.abdera2.common.protocol.servlet.async.<A HREF="./org/apache/abdera2/common/protocol/servlet/async/AbderaTask.html" title="class in org.apache.abdera2.common.protocol.servlet.async">AbderaTask</A>
<DD>&nbsp;
</DL>
<HR>
<A NAME="_P_"><!-- --></A><H2>
<B>P</B></H2>
<DL>
<DT><A HREF="./org/apache/abdera2/common/lang/Lang.html#parent()"><B>parent()</B></A> - 
Method in class org.apache.abdera2.common.lang.<A HREF="./org/apache/abdera2/common/lang/Lang.html" title="class in org.apache.abdera2.common.lang">Lang</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/date/DateTime.html#parse(java.lang.String)"><B>parse(String)</B></A> - 
Static method in class org.apache.abdera2.common.date.<A HREF="./org/apache/abdera2/common/date/DateTime.html" title="class in org.apache.abdera2.common.date">DateTime</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Coordinate.html#parse(java.lang.String)"><B>parse(String)</B></A> - 
Static method in class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Coordinate.html" title="class in org.apache.abdera2.common.geo">Coordinate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Coordinates.html#parse(java.lang.String)"><B>parse(String)</B></A> - 
Static method in class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Coordinates.html" title="class in org.apache.abdera2.common.geo">Coordinates</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/IsoPosition.html#parse(java.lang.String)"><B>parse(String)</B></A> - 
Static method in class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/IsoPosition.html" title="class in org.apache.abdera2.common.geo">IsoPosition</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/Authentication.html#parse(java.lang.String)"><B>parse(String)</B></A> - 
Static method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/Authentication.html" title="class in org.apache.abdera2.common.http">Authentication</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/EntityTag.html#parse(java.lang.String)"><B>parse(String)</B></A> - 
Static method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/EntityTag.html" title="class in org.apache.abdera2.common.http">EntityTag</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/Preference.html#parse(java.lang.String)"><B>parse(String)</B></A> - 
Static method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/Preference.html" title="class in org.apache.abdera2.common.http">Preference</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/WebLink.html#parse(java.lang.String)"><B>parse(String)</B></A> - 
Static method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/WebLink.html" title="class in org.apache.abdera2.common.http">WebLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/lang/Lang.html#parse(java.lang.String)"><B>parse(String)</B></A> - 
Static method in class org.apache.abdera2.common.lang.<A HREF="./org/apache/abdera2/common/lang/Lang.html" title="class in org.apache.abdera2.common.lang">Lang</A>
<DD>Parse a Lang tag
<DT><A HREF="./org/apache/abdera2/common/lang/Range.html#parse(java.lang.String)"><B>parse(String)</B></A> - 
Static method in class org.apache.abdera2.common.lang.<A HREF="./org/apache/abdera2/common/lang/Range.html" title="class in org.apache.abdera2.common.lang">Range</A>
<DD>Parse the language-range
<DT><A HREF="./org/apache/abdera2/common/lang/Range.html#parse(java.lang.String, boolean)"><B>parse(String, boolean)</B></A> - 
Static method in class org.apache.abdera2.common.lang.<A HREF="./org/apache/abdera2/common/lang/Range.html" title="class in org.apache.abdera2.common.lang">Range</A>
<DD>Parse the language-range
<DT><A HREF="./org/apache/abdera2/common/templates/Route.html#parse(java.lang.String)"><B>parse(String)</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/Route.html" title="class in org.apache.abdera2.common.templates">Route</A>
<DD>Parses the given uri using the route pattern
<DT><A HREF="./org/apache/abdera2/common/http/CacheControlUtil.html#parseCacheControl(java.lang.String, org.apache.abdera2.common.http.CacheControl)"><B>parseCacheControl(String, CacheControl)</B></A> - 
Static method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/CacheControlUtil.html" title="class in org.apache.abdera2.common.http">CacheControlUtil</A>
<DD>Parse the Cache-Control header
<DT><A HREF="./org/apache/abdera2/common/geo/Coordinate.html#parseIso(java.lang.String)"><B>parseIso(String)</B></A> - 
Static method in class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Coordinate.html" title="class in org.apache.abdera2.common.geo">Coordinate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Coordinates.html#parseIso(java.lang.String)"><B>parseIso(String)</B></A> - 
Static method in class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Coordinates.html" title="class in org.apache.abdera2.common.geo">Coordinates</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/EntityTag.html#parseTags(java.lang.String)"><B>parseTags(String)</B></A> - 
Static method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/EntityTag.html" title="class in org.apache.abdera2.common.http">EntityTag</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/Method.html#PATCH"><B>PATCH</B></A> - 
Static variable in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/Method.html" title="class in org.apache.abdera2.common.http">Method</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/PatchAdapter.html" title="interface in org.apache.abdera2.common.protocol"><B>PatchAdapter</B></A> - Interface in <A HREF="./org/apache/abdera2/common/protocol/package-summary.html">org.apache.abdera2.common.protocol</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/protocol/PatchAdapter.html#patchItem(org.apache.abdera2.common.protocol.RequestContext)"><B>patchItem(RequestContext)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/PatchAdapter.html" title="interface in org.apache.abdera2.common.protocol">PatchAdapter</A>
<DD>Post a new entry to the collection
<DT><A HREF="./org/apache/abdera2/common/protocol/PatchMediaAdapter.html#patchMedia(org.apache.abdera2.common.protocol.RequestContext)"><B>patchMedia(RequestContext)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/PatchMediaAdapter.html" title="interface in org.apache.abdera2.common.protocol">PatchMediaAdapter</A>
<DD>Post a new entry to the collection
<DT><A HREF="./org/apache/abdera2/common/protocol/PatchMediaAdapter.html" title="interface in org.apache.abdera2.common.protocol"><B>PatchMediaAdapter</B></A> - Interface in <A HREF="./org/apache/abdera2/common/protocol/package-summary.html">org.apache.abdera2.common.protocol</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/protocol/RegexTargetResolver.html#patterns"><B>patterns</B></A> - 
Variable in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/RegexTargetResolver.html" title="class in org.apache.abdera2.common.protocol">RegexTargetResolver</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/io/PeekAheadInputStream.html#peek()"><B>peek()</B></A> - 
Method in class org.apache.abdera2.common.io.<A HREF="./org/apache/abdera2/common/io/PeekAheadInputStream.html" title="class in org.apache.abdera2.common.io">PeekAheadInputStream</A>
<DD>Peek the next byte in the stream
<DT><A HREF="./org/apache/abdera2/common/io/PeekAheadInputStream.html#peek(byte[])"><B>peek(byte[])</B></A> - 
Method in class org.apache.abdera2.common.io.<A HREF="./org/apache/abdera2/common/io/PeekAheadInputStream.html" title="class in org.apache.abdera2.common.io">PeekAheadInputStream</A>
<DD>Peek the next bytes in the stream.
<DT><A HREF="./org/apache/abdera2/common/io/PeekAheadInputStream.html#peek(byte[], int, int)"><B>peek(byte[], int, int)</B></A> - 
Method in class org.apache.abdera2.common.io.<A HREF="./org/apache/abdera2/common/io/PeekAheadInputStream.html" title="class in org.apache.abdera2.common.io">PeekAheadInputStream</A>
<DD>Peek the next bytes in the stream.
<DT><A HREF="./org/apache/abdera2/common/io/PeekAheadInputStream.html" title="class in org.apache.abdera2.common.io"><B>PeekAheadInputStream</B></A> - Class in <A HREF="./org/apache/abdera2/common/io/package-summary.html">org.apache.abdera2.common.io</A><DD>A version of RewindableInputStream that provides methods for peeking ahead in the stream (equivalent to read()
 followed by an appropriate unread()<DT><A HREF="./org/apache/abdera2/common/io/PeekAheadInputStream.html#PeekAheadInputStream(java.io.InputStream)"><B>PeekAheadInputStream(InputStream)</B></A> - 
Constructor for class org.apache.abdera2.common.io.<A HREF="./org/apache/abdera2/common/io/PeekAheadInputStream.html" title="class in org.apache.abdera2.common.io">PeekAheadInputStream</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/io/PeekAheadInputStream.html#PeekAheadInputStream(java.io.InputStream, int)"><B>PeekAheadInputStream(InputStream, int)</B></A> - 
Constructor for class org.apache.abdera2.common.io.<A HREF="./org/apache/abdera2/common/io/PeekAheadInputStream.html" title="class in org.apache.abdera2.common.io">PeekAheadInputStream</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Point.html" title="class in org.apache.abdera2.common.geo"><B>Point</B></A> - Class in <A HREF="./org/apache/abdera2/common/geo/package-summary.html">org.apache.abdera2.common.geo</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/geo/Point.html#Point()"><B>Point()</B></A> - 
Constructor for class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Point.html" title="class in org.apache.abdera2.common.geo">Point</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Point.html#Point(org.apache.abdera2.common.geo.Point)"><B>Point(Point)</B></A> - 
Constructor for class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Point.html" title="class in org.apache.abdera2.common.geo">Point</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Point.html#Point(org.apache.abdera2.common.geo.Coordinate)"><B>Point(Coordinate)</B></A> - 
Constructor for class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Point.html" title="class in org.apache.abdera2.common.geo">Point</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Point.html#Point(double, double)"><B>Point(double, double)</B></A> - 
Constructor for class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Point.html" title="class in org.apache.abdera2.common.geo">Point</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Point.html#Point(java.lang.String)"><B>Point(String)</B></A> - 
Constructor for class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Point.html" title="class in org.apache.abdera2.common.geo">Point</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Point.html#Point(org.apache.abdera2.common.geo.IsoPosition)"><B>Point(IsoPosition)</B></A> - 
Constructor for class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Point.html" title="class in org.apache.abdera2.common.geo">Point</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Polygon.html" title="class in org.apache.abdera2.common.geo"><B>Polygon</B></A> - Class in <A HREF="./org/apache/abdera2/common/geo/package-summary.html">org.apache.abdera2.common.geo</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/geo/Polygon.html#Polygon()"><B>Polygon()</B></A> - 
Constructor for class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Polygon.html" title="class in org.apache.abdera2.common.geo">Polygon</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Polygon.html#Polygon(org.apache.abdera2.common.geo.Multiple)"><B>Polygon(Multiple)</B></A> - 
Constructor for class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Polygon.html" title="class in org.apache.abdera2.common.geo">Polygon</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Polygon.html#Polygon(org.apache.abdera2.common.geo.Point)"><B>Polygon(Point)</B></A> - 
Constructor for class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Polygon.html" title="class in org.apache.abdera2.common.geo">Polygon</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Polygon.html#Polygon(org.apache.abdera2.common.geo.Coordinate...)"><B>Polygon(Coordinate...)</B></A> - 
Constructor for class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Polygon.html" title="class in org.apache.abdera2.common.geo">Polygon</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Polygon.html#Polygon(org.apache.abdera2.common.geo.Coordinates)"><B>Polygon(Coordinates)</B></A> - 
Constructor for class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Polygon.html" title="class in org.apache.abdera2.common.geo">Polygon</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Polygon.html#Polygon(java.lang.String)"><B>Polygon(String)</B></A> - 
Constructor for class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Polygon.html" title="class in org.apache.abdera2.common.geo">Polygon</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Polygon.html#Polygon(org.apache.abdera2.common.geo.Multiple...)"><B>Polygon(Multiple...)</B></A> - 
Constructor for class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Polygon.html" title="class in org.apache.abdera2.common.geo">Polygon</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Polygon.html#Polygon(org.apache.abdera2.common.geo.Point...)"><B>Polygon(Point...)</B></A> - 
Constructor for class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Polygon.html" title="class in org.apache.abdera2.common.geo">Polygon</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Polygon.html#Polygon(double...)"><B>Polygon(double...)</B></A> - 
Constructor for class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Polygon.html" title="class in org.apache.abdera2.common.geo">Polygon</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/misc/PoolManager.html" title="class in org.apache.abdera2.common.misc"><B>PoolManager</B></A>&lt;<A HREF="./org/apache/abdera2/common/misc/PoolManager.html" title="type parameter in PoolManager">T</A>,<A HREF="./org/apache/abdera2/common/misc/PoolManager.html" title="type parameter in PoolManager">R</A>&gt; - Class in <A HREF="./org/apache/abdera2/common/misc/package-summary.html">org.apache.abdera2.common.misc</A><DD>Implements a simple pool manager.<DT><A HREF="./org/apache/abdera2/common/misc/PoolManager.html#PoolManager()"><B>PoolManager()</B></A> - 
Constructor for class org.apache.abdera2.common.misc.<A HREF="./org/apache/abdera2/common/misc/PoolManager.html" title="class in org.apache.abdera2.common.misc">PoolManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/misc/PoolManager.html#PoolManager(int)"><B>PoolManager(int)</B></A> - 
Constructor for class org.apache.abdera2.common.misc.<A HREF="./org/apache/abdera2/common/misc/PoolManager.html" title="class in org.apache.abdera2.common.misc">PoolManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/iri/AbstractScheme.html#port"><B>port</B></A> - 
Variable in class org.apache.abdera2.common.iri.<A HREF="./org/apache/abdera2/common/iri/AbstractScheme.html" title="class in org.apache.abdera2.common.iri">AbstractScheme</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/iri/AbstractScheme.html#port()"><B>port()</B></A> - 
Method in class org.apache.abdera2.common.iri.<A HREF="./org/apache/abdera2/common/iri/AbstractScheme.html" title="class in org.apache.abdera2.common.iri">AbstractScheme</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/iri/Scheme.html#port()"><B>port()</B></A> - 
Method in interface org.apache.abdera2.common.iri.<A HREF="./org/apache/abdera2/common/iri/Scheme.html" title="interface in org.apache.abdera2.common.iri">Scheme</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Position.html" title="class in org.apache.abdera2.common.geo"><B>Position</B></A> - Class in <A HREF="./org/apache/abdera2/common/geo/package-summary.html">org.apache.abdera2.common.geo</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/geo/Position.html#Position()"><B>Position()</B></A> - 
Constructor for class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Position.html" title="class in org.apache.abdera2.common.geo">Position</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/io/RewindableInputStream.html#position()"><B>position()</B></A> - 
Method in class org.apache.abdera2.common.io.<A HREF="./org/apache/abdera2/common/io/RewindableInputStream.html" title="class in org.apache.abdera2.common.io">RewindableInputStream</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/Method.html#POST"><B>POST</B></A> - 
Static variable in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/Method.html" title="class in org.apache.abdera2.common.http">Method</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/CollectionAdapter.html#postItem(org.apache.abdera2.common.protocol.RequestContext)"><B>postItem(RequestContext)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/CollectionAdapter.html" title="interface in org.apache.abdera2.common.protocol">CollectionAdapter</A>
<DD>Post a new entry to the collection
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractCollectionAdapter.html#postMedia(org.apache.abdera2.common.protocol.RequestContext)"><B>postMedia(RequestContext)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractCollectionAdapter.html" title="class in org.apache.abdera2.common.protocol">AbstractCollectionAdapter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/MediaCollectionAdapter.html#postMedia(org.apache.abdera2.common.protocol.RequestContext)"><B>postMedia(RequestContext)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/MediaCollectionAdapter.html" title="interface in org.apache.abdera2.common.protocol">MediaCollectionAdapter</A>
<DD>Add a new media resource to the collection, resulting in the creation of a new Media Link Entry.
<DT><A HREF="./org/apache/abdera2/common/Constants.html#PRE_RFC_ACCEPT"><B>PRE_RFC_ACCEPT</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD><B>Deprecated.</B>&nbsp;<I></I>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#PRE_RFC_CATEGORIES"><B>PRE_RFC_CATEGORIES</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD><B>Deprecated.</B>&nbsp;<I></I>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#PRE_RFC_COLLECTION"><B>PRE_RFC_COLLECTION</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD><B>Deprecated.</B>&nbsp;<I></I>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#PRE_RFC_CONTROL"><B>PRE_RFC_CONTROL</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD><B>Deprecated.</B>&nbsp;<I></I>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#PRE_RFC_DRAFT"><B>PRE_RFC_DRAFT</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD><B>Deprecated.</B>&nbsp;<I></I>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#PRE_RFC_EDITED"><B>PRE_RFC_EDITED</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD><B>Deprecated.</B>&nbsp;<I></I>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#PRE_RFC_SERVICE"><B>PRE_RFC_SERVICE</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD><B>Deprecated.</B>&nbsp;<I></I>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#PRE_RFC_WORKSPACE"><B>PRE_RFC_WORKSPACE</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD><B>Deprecated.</B>&nbsp;<I></I>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/ProviderHelper.html#preconditionfailed(org.apache.abdera2.common.protocol.RequestContext, java.lang.String)"><B>preconditionfailed(RequestContext, String)</B></A> - 
Static method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ProviderHelper.html" title="class in org.apache.abdera2.common.protocol">ProviderHelper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/ProviderHelper.html#preconditionfailed(org.apache.abdera2.common.protocol.RequestContext)"><B>preconditionfailed(RequestContext)</B></A> - 
Static method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ProviderHelper.html" title="class in org.apache.abdera2.common.protocol">ProviderHelper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/Preference.html#PREF_RETURN_ACCEPTED"><B>PREF_RETURN_ACCEPTED</B></A> - 
Static variable in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/Preference.html" title="class in org.apache.abdera2.common.http">Preference</A>
<DD>The "return-accepted" token indicates that the client prefers that
 the server respond with a 202 Accepted response indicating that the
 request has been accepted for processing.
<DT><A HREF="./org/apache/abdera2/common/http/Preference.html#PREF_RETURN_CONTENT"><B>PREF_RETURN_CONTENT</B></A> - 
Static variable in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/Preference.html" title="class in org.apache.abdera2.common.http">Preference</A>
<DD>The "return-content" token indicates that the client prefers that the
 server include an entity representing the current state of the
 resource in the response to a successful request.
<DT><A HREF="./org/apache/abdera2/common/http/Preference.html#PREF_RETURN_NO_CONTENT"><B>PREF_RETURN_NO_CONTENT</B></A> - 
Static variable in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/Preference.html" title="class in org.apache.abdera2.common.http">Preference</A>
<DD>The "return-no-content" token indicates that the client prefers that
 the server not include an entity in the response to a successful
 request.
<DT><A HREF="./org/apache/abdera2/common/http/Preference.html#PREF_RETURN_STATUS"><B>PREF_RETURN_STATUS</B></A> - 
Static variable in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/Preference.html" title="class in org.apache.abdera2.common.http">Preference</A>
<DD>The "return-status" token indicates that the client prefers that the
 server include an entity describing the status of the request in the
 response to a successful request.
<DT><A HREF="./org/apache/abdera2/common/http/Preference.html" title="class in org.apache.abdera2.common.http"><B>Preference</B></A> - Class in <A HREF="./org/apache/abdera2/common/http/package-summary.html">org.apache.abdera2.common.http</A><DD>Implementation of the Prefer HTTP Header, e.g.<DT><A HREF="./org/apache/abdera2/common/http/Preference.html#Preference(java.lang.String)"><B>Preference(String)</B></A> - 
Constructor for class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/Preference.html" title="class in org.apache.abdera2.common.http">Preference</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#PREFIX"><B>PREFIX</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#PREFIXED_TITLE"><B>PREFIXED_TITLE</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/io/CharsetSniffingInputStream.html#preserve"><B>preserve</B></A> - 
Variable in class org.apache.abdera2.common.io.<A HREF="./org/apache/abdera2/common/io/CharsetSniffingInputStream.html" title="class in org.apache.abdera2.common.io">CharsetSniffingInputStream</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/lang/Subtag.html#previous()"><B>previous()</B></A> - 
Method in class org.apache.abdera2.common.lang.<A HREF="./org/apache/abdera2/common/lang/Subtag.html" title="class in org.apache.abdera2.common.lang">Subtag</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractBaseRequestContext.html#principal"><B>principal</B></A> - 
Variable in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractBaseRequestContext.html" title="class in org.apache.abdera2.common.protocol">AbstractBaseRequestContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/CacheControl.html#PRIVATE"><B>PRIVATE</B></A> - 
Static variable in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/CacheControl.html" title="class in org.apache.abdera2.common.http">CacheControl</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/CacheControl.html#PRIVATE()"><B>PRIVATE()</B></A> - 
Static method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/CacheControl.html" title="class in org.apache.abdera2.common.http">CacheControl</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/CacheControl.html#private_headers"><B>private_headers</B></A> - 
Variable in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/CacheControl.html" title="class in org.apache.abdera2.common.http">CacheControl</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/lang/Lang.html#privateUse()"><B>privateUse()</B></A> - 
Method in class org.apache.abdera2.common.lang.<A HREF="./org/apache/abdera2/common/lang/Lang.html" title="class in org.apache.abdera2.common.lang">Lang</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseProvider.html#process(org.apache.abdera2.common.protocol.RequestContext)"><B>process(RequestContext)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseProvider.html" title="class in org.apache.abdera2.common.protocol">BaseProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/CollectionRequestProcessor.html#process(org.apache.abdera2.common.protocol.RequestContext, org.apache.abdera2.common.protocol.WorkspaceManager, org.apache.abdera2.common.protocol.CollectionAdapter)"><B>process(RequestContext, WorkspaceManager, CollectionAdapter)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/CollectionRequestProcessor.html" title="class in org.apache.abdera2.common.protocol">CollectionRequestProcessor</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/EntryRequestProcessor.html#process(org.apache.abdera2.common.protocol.RequestContext, org.apache.abdera2.common.protocol.WorkspaceManager, org.apache.abdera2.common.protocol.CollectionAdapter)"><B>process(RequestContext, WorkspaceManager, CollectionAdapter)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/EntryRequestProcessor.html" title="class in org.apache.abdera2.common.protocol">EntryRequestProcessor</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/MediaRequestProcessor.html#process(org.apache.abdera2.common.protocol.RequestContext, org.apache.abdera2.common.protocol.WorkspaceManager, org.apache.abdera2.common.protocol.CollectionAdapter)"><B>process(RequestContext, WorkspaceManager, CollectionAdapter)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/MediaRequestProcessor.html" title="class in org.apache.abdera2.common.protocol">MediaRequestProcessor</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/Provider.html#process(org.apache.abdera2.common.protocol.RequestContext)"><B>process(RequestContext)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/Provider.html" title="interface in org.apache.abdera2.common.protocol">Provider</A>
<DD>Process the request
<DT><A HREF="./org/apache/abdera2/common/protocol/RequestProcessor.html#process(org.apache.abdera2.common.protocol.RequestContext, org.apache.abdera2.common.protocol.WorkspaceManager, org.apache.abdera2.common.protocol.CollectionAdapter)"><B>process(RequestContext, WorkspaceManager, CollectionAdapter)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/RequestProcessor.html" title="interface in org.apache.abdera2.common.protocol">RequestProcessor</A>
<DD>Provide the actual request processing logic.
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/AbstractAbderaServlet.html#process(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse, javax.servlet.ServletContext)"><B>process(HttpServletRequest, HttpServletResponse, ServletContext)</B></A> - 
Method in class org.apache.abdera2.common.protocol.servlet.<A HREF="./org/apache/abdera2/common/protocol/servlet/AbstractAbderaServlet.html" title="class in org.apache.abdera2.common.protocol.servlet">AbstractAbderaServlet</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/async/AbderaTask.html#process(org.apache.abdera2.common.protocol.Provider, javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse)"><B>process(Provider, HttpServletRequest, HttpServletResponse)</B></A> - 
Method in class org.apache.abdera2.common.protocol.servlet.async.<A HREF="./org/apache/abdera2/common/protocol/servlet/async/AbderaTask.html" title="class in org.apache.abdera2.common.protocol.servlet.async">AbderaTask</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/EntryRequestProcessor.html#processEntry(org.apache.abdera2.common.protocol.RequestContext, org.apache.abdera2.common.protocol.CollectionAdapter)"><B>processEntry(RequestContext, CollectionAdapter)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/EntryRequestProcessor.html" title="class in org.apache.abdera2.common.protocol">EntryRequestProcessor</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseProvider.html#processExtensionRequest(org.apache.abdera2.common.protocol.RequestContext, org.apache.abdera2.common.protocol.CollectionAdapter)"><B>processExtensionRequest(RequestContext, CollectionAdapter)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseProvider.html" title="class in org.apache.abdera2.common.protocol">BaseProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/MediaRequestProcessor.html#processMedia(org.apache.abdera2.common.protocol.RequestContext, org.apache.abdera2.common.protocol.CollectionAdapter)"><B>processMedia(RequestContext, CollectionAdapter)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/MediaRequestProcessor.html" title="class in org.apache.abdera2.common.protocol">MediaRequestProcessor</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/async/Processor.html" title="interface in org.apache.abdera2.common.protocol.servlet.async"><B>Processor</B></A> - Interface in <A HREF="./org/apache/abdera2/common/protocol/servlet/async/package-summary.html">org.apache.abdera2.common.protocol.servlet.async</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/protocol/ServiceManager.html#PROCESSORQUEUE"><B>PROCESSORQUEUE</B></A> - 
Static variable in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ServiceManager.html" title="interface in org.apache.abdera2.common.protocol">ServiceManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/async/ProcessorQueue.html" title="interface in org.apache.abdera2.common.protocol.servlet.async"><B>ProcessorQueue</B></A> - Interface in <A HREF="./org/apache/abdera2/common/protocol/servlet/async/package-summary.html">org.apache.abdera2.common.protocol.servlet.async</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/xml/XMLVersion.html#profile()"><B>profile()</B></A> - 
Method in enum org.apache.abdera2.common.xml.<A HREF="./org/apache/abdera2/common/xml/XMLVersion.html" title="enum in org.apache.abdera2.common.xml">XMLVersion</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseProvider.html#properties"><B>properties</B></A> - 
Variable in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseProvider.html" title="class in org.apache.abdera2.common.protocol">BaseProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/async/AbderaAsyncService.html#PROPERTY_ATOMPUB_SERVICE"><B>PROPERTY_ATOMPUB_SERVICE</B></A> - 
Static variable in class org.apache.abdera2.common.protocol.servlet.async.<A HREF="./org/apache/abdera2/common/protocol/servlet/async/AbderaAsyncService.html" title="class in org.apache.abdera2.common.protocol.servlet.async">AbderaAsyncService</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/async/AbderaAsyncService.html#PROPERTY_CHANNEL_SERVICE"><B>PROPERTY_CHANNEL_SERVICE</B></A> - 
Static variable in class org.apache.abdera2.common.protocol.servlet.async.<A HREF="./org/apache/abdera2/common/protocol/servlet/async/AbderaAsyncService.html" title="class in org.apache.abdera2.common.protocol.servlet.async">AbderaAsyncService</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/async/AbderaAsyncService.html#PROPERTY_WORKER_THREADS"><B>PROPERTY_WORKER_THREADS</B></A> - 
Static variable in class org.apache.abdera2.common.protocol.servlet.async.<A HREF="./org/apache/abdera2/common/protocol/servlet/async/AbderaAsyncService.html" title="class in org.apache.abdera2.common.protocol.servlet.async">AbderaAsyncService</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractBaseRequestContext.html#provider"><B>provider</B></A> - 
Variable in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractBaseRequestContext.html" title="class in org.apache.abdera2.common.protocol">AbstractBaseRequestContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/Provider.html" title="interface in org.apache.abdera2.common.protocol"><B>Provider</B></A> - Interface in <A HREF="./org/apache/abdera2/common/protocol/package-summary.html">org.apache.abdera2.common.protocol</A><DD>Providers are responsible for processing all requests to the Atompub server.<br>
 Actual request processing is delegated to <CODE>AtompubRequestProcessor</CODE> implementations, depending on the request
 <A HREF="./org/apache/abdera2/common/protocol/TargetType.html" title="class in org.apache.abdera2.common.protocol"><CODE>TargetType</CODE></A>.<DT><A HREF="./org/apache/abdera2/common/protocol/ServiceManager.html#PROVIDER"><B>PROVIDER</B></A> - 
Static variable in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ServiceManager.html" title="interface in org.apache.abdera2.common.protocol">ServiceManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/AbstractAbderaServlet.html#provider"><B>provider</B></A> - 
Variable in class org.apache.abdera2.common.protocol.servlet.<A HREF="./org/apache/abdera2/common/protocol/servlet/AbstractAbderaServlet.html" title="class in org.apache.abdera2.common.protocol.servlet">AbstractAbderaServlet</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/async/AbderaAsyncService.html#PROVIDER"><B>PROVIDER</B></A> - 
Static variable in class org.apache.abdera2.common.protocol.servlet.async.<A HREF="./org/apache/abdera2/common/protocol/servlet/async/AbderaAsyncService.html" title="class in org.apache.abdera2.common.protocol.servlet.async">AbderaAsyncService</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/ProviderHelper.html" title="class in org.apache.abdera2.common.protocol"><B>ProviderHelper</B></A> - Class in <A HREF="./org/apache/abdera2/common/protocol/package-summary.html">org.apache.abdera2.common.protocol</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/http/CacheControl.html#PROXYREVALIDATE"><B>PROXYREVALIDATE</B></A> - 
Static variable in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/CacheControl.html" title="class in org.apache.abdera2.common.http">CacheControl</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/CacheControl.html#PUBLIC"><B>PUBLIC</B></A> - 
Static variable in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/CacheControl.html" title="class in org.apache.abdera2.common.http">CacheControl</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/CacheControl.html#PUBLIC()"><B>PUBLIC()</B></A> - 
Static method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/CacheControl.html" title="class in org.apache.abdera2.common.http">CacheControl</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#PUBLISHED"><B>PUBLISHED</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/pusher/Pusher.html#push(T)"><B>push(T)</B></A> - 
Method in interface org.apache.abdera2.common.pusher.<A HREF="./org/apache/abdera2/common/pusher/Pusher.html" title="interface in org.apache.abdera2.common.pusher">Pusher</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/pusher/SelectorPusher.html#push(T)"><B>push(T)</B></A> - 
Method in class org.apache.abdera2.common.pusher.<A HREF="./org/apache/abdera2/common/pusher/SelectorPusher.html" title="class in org.apache.abdera2.common.pusher">SelectorPusher</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/pusher/SimplePusher.html#push(T)"><B>push(T)</B></A> - 
Method in class org.apache.abdera2.common.pusher.<A HREF="./org/apache/abdera2/common/pusher/SimplePusher.html" title="class in org.apache.abdera2.common.pusher">SimplePusher</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/pusher/AbstractPusher.html#pushAll(java.lang.Iterable)"><B>pushAll(Iterable&lt;T&gt;)</B></A> - 
Method in class org.apache.abdera2.common.pusher.<A HREF="./org/apache/abdera2/common/pusher/AbstractPusher.html" title="class in org.apache.abdera2.common.pusher">AbstractPusher</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/pusher/Pusher.html#pushAll(java.lang.Iterable)"><B>pushAll(Iterable&lt;T&gt;)</B></A> - 
Method in interface org.apache.abdera2.common.pusher.<A HREF="./org/apache/abdera2/common/pusher/Pusher.html" title="interface in org.apache.abdera2.common.pusher">Pusher</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/pusher/Pusher.html" title="interface in org.apache.abdera2.common.pusher"><B>Pusher</B></A>&lt;<A HREF="./org/apache/abdera2/common/pusher/Pusher.html" title="type parameter in Pusher">T</A>&gt; - Interface in <A HREF="./org/apache/abdera2/common/pusher/package-summary.html">org.apache.abdera2.common.pusher</A><DD>Used to push items into a channel.<DT><A HREF="./org/apache/abdera2/common/http/Method.html#PUT"><B>PUT</B></A> - 
Static variable in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/Method.html" title="class in org.apache.abdera2.common.http">Method</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/CollectionAdapter.html#putItem(org.apache.abdera2.common.protocol.RequestContext)"><B>putItem(RequestContext)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/CollectionAdapter.html" title="interface in org.apache.abdera2.common.protocol">CollectionAdapter</A>
<DD>Update an existing entry
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractCollectionAdapter.html#putMedia(org.apache.abdera2.common.protocol.RequestContext)"><B>putMedia(RequestContext)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractCollectionAdapter.html" title="class in org.apache.abdera2.common.protocol">AbstractCollectionAdapter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/MediaCollectionAdapter.html#putMedia(org.apache.abdera2.common.protocol.RequestContext)"><B>putMedia(RequestContext)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/MediaCollectionAdapter.html" title="interface in org.apache.abdera2.common.protocol">MediaCollectionAdapter</A>
<DD>Update a media resource
</DL>
<HR>
<A NAME="_Q_"><!-- --></A><H2>
<B>Q</B></H2>
<DL>
<DT><A HREF="./org/apache/abdera2/common/http/QualityHelper.QToken.html#q()"><B>q()</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/QualityHelper.QToken.html" title="class in org.apache.abdera2.common.http">QualityHelper.QToken</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/anno/QName.html" title="annotation in org.apache.abdera2.common.anno"><B>QName</B></A> - Annotation Type in <A HREF="./org/apache/abdera2/common/anno/package-summary.html">org.apache.abdera2.common.anno</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/anno/AnnoUtil.html#qNameFromAnno(org.apache.abdera2.common.anno.QName)"><B>qNameFromAnno(QName)</B></A> - 
Static method in class org.apache.abdera2.common.anno.<A HREF="./org/apache/abdera2/common/anno/AnnoUtil.html" title="class in org.apache.abdera2.common.anno">AnnoUtil</A>
<DD>Retrieve a javax.xml.namespace.QName from a class using the QName annotation.
<DT><A HREF="./org/apache/abdera2/common/http/QualityHelper.html" title="class in org.apache.abdera2.common.http"><B>QualityHelper</B></A> - Class in <A HREF="./org/apache/abdera2/common/http/package-summary.html">org.apache.abdera2.common.http</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/http/QualityHelper.QToken.html" title="class in org.apache.abdera2.common.http"><B>QualityHelper.QToken</B></A> - Class in <A HREF="./org/apache/abdera2/common/http/package-summary.html">org.apache.abdera2.common.http</A><DD>A "Qualified Token"...<DT><A HREF="./org/apache/abdera2/common/templates/QueryContext.html" title="class in org.apache.abdera2.common.templates"><B>QueryContext</B></A> - Class in <A HREF="./org/apache/abdera2/common/templates/package-summary.html">org.apache.abdera2.common.templates</A><DD>Constructs a mutable Template Context based on an existing IRI/URI 
 Query String.<DT><A HREF="./org/apache/abdera2/common/templates/QueryContext.html#QueryContext(org.apache.abdera2.common.iri.IRI)"><B>QueryContext(IRI)</B></A> - 
Constructor for class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/QueryContext.html" title="class in org.apache.abdera2.common.templates">QueryContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/QueryContext.html#QueryContext(java.lang.String)"><B>QueryContext(String)</B></A> - 
Constructor for class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/QueryContext.html" title="class in org.apache.abdera2.common.templates">QueryContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/async/AbderaAsyncService.html#QUEUE"><B>QUEUE</B></A> - 
Static variable in class org.apache.abdera2.common.protocol.servlet.async.<A HREF="./org/apache/abdera2/common/protocol/servlet/async/AbderaAsyncService.html" title="class in org.apache.abdera2.common.protocol.servlet.async">AbderaAsyncService</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/CharUtils.html#quoted(java.lang.String, boolean)"><B>quoted(String, boolean)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/CharUtils.html" title="class in org.apache.abdera2.common.text">CharUtils</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/CharUtils.html#quotedIfNotToken(java.lang.String)"><B>quotedIfNotToken(String)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/CharUtils.html" title="class in org.apache.abdera2.common.text">CharUtils</A>
<DD>&nbsp;
</DL>
<HR>
<A NAME="_R_"><!-- --></A><H2>
<B>R</B></H2>
<DL>
<DT><A HREF="./org/apache/abdera2/common/geo/Position.html#radius"><B>radius</B></A> - 
Variable in class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Position.html" title="class in org.apache.abdera2.common.geo">Position</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/lang/Range.html" title="class in org.apache.abdera2.common.lang"><B>Range</B></A> - Class in <A HREF="./org/apache/abdera2/common/lang/package-summary.html">org.apache.abdera2.common.lang</A><DD>A language range used for matching language tags<DT><A HREF="./org/apache/abdera2/common/lang/Range.html#Range(java.lang.String, boolean)"><B>Range(String, boolean)</B></A> - 
Constructor for class org.apache.abdera2.common.lang.<A HREF="./org/apache/abdera2/common/lang/Range.html" title="class in org.apache.abdera2.common.lang">Range</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/lang/Range.html#Range(java.lang.String)"><B>Range(String)</B></A> - 
Constructor for class org.apache.abdera2.common.lang.<A HREF="./org/apache/abdera2/common/lang/Range.html" title="class in org.apache.abdera2.common.lang">Range</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/lang/Range.html#Range(org.apache.abdera2.common.lang.Lang)"><B>Range(Lang)</B></A> - 
Constructor for class org.apache.abdera2.common.lang.<A HREF="./org/apache/abdera2/common/lang/Range.html" title="class in org.apache.abdera2.common.lang">Range</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/lang/Range.html#Range(org.apache.abdera2.common.lang.Lang, boolean)"><B>Range(Lang, boolean)</B></A> - 
Constructor for class org.apache.abdera2.common.lang.<A HREF="./org/apache/abdera2/common/lang/Range.html" title="class in org.apache.abdera2.common.lang">Range</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Discover.LineReaderLoaderIterator.html#read()"><B>read()</B></A> - 
Method in class org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Discover.LineReaderLoaderIterator.html" title="class in org.apache.abdera2.common">Discover.LineReaderLoaderIterator</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/io/DynamicPushbackInputStream.html#read()"><B>read()</B></A> - 
Method in class org.apache.abdera2.common.io.<A HREF="./org/apache/abdera2/common/io/DynamicPushbackInputStream.html" title="class in org.apache.abdera2.common.io">DynamicPushbackInputStream</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/io/DynamicPushbackInputStream.html#read(byte[], int, int)"><B>read(byte[], int, int)</B></A> - 
Method in class org.apache.abdera2.common.io.<A HREF="./org/apache/abdera2/common/io/DynamicPushbackInputStream.html" title="class in org.apache.abdera2.common.io">DynamicPushbackInputStream</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/io/FilteredCharReader.html#read()"><B>read()</B></A> - 
Method in class org.apache.abdera2.common.io.<A HREF="./org/apache/abdera2/common/io/FilteredCharReader.html" title="class in org.apache.abdera2.common.io">FilteredCharReader</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/io/FilteredCharReader.html#read(char[], int, int)"><B>read(char[], int, int)</B></A> - 
Method in class org.apache.abdera2.common.io.<A HREF="./org/apache/abdera2/common/io/FilteredCharReader.html" title="class in org.apache.abdera2.common.io">FilteredCharReader</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/io/MultipartInputStream.html#read()"><B>read()</B></A> - 
Method in class org.apache.abdera2.common.io.<A HREF="./org/apache/abdera2/common/io/MultipartInputStream.html" title="class in org.apache.abdera2.common.io">MultipartInputStream</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/io/MultipartInputStream.html#read(byte[])"><B>read(byte[])</B></A> - 
Method in class org.apache.abdera2.common.io.<A HREF="./org/apache/abdera2/common/io/MultipartInputStream.html" title="class in org.apache.abdera2.common.io">MultipartInputStream</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/io/MultipartInputStream.html#read(byte[], int, int)"><B>read(byte[], int, int)</B></A> - 
Method in class org.apache.abdera2.common.io.<A HREF="./org/apache/abdera2/common/io/MultipartInputStream.html" title="class in org.apache.abdera2.common.io">MultipartInputStream</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/io/RewindableInputStream.html#read()"><B>read()</B></A> - 
Method in class org.apache.abdera2.common.io.<A HREF="./org/apache/abdera2/common/io/RewindableInputStream.html" title="class in org.apache.abdera2.common.io">RewindableInputStream</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/io/RewindableInputStream.html#read(byte[], int, int)"><B>read(byte[], int, int)</B></A> - 
Method in class org.apache.abdera2.common.io.<A HREF="./org/apache/abdera2/common/io/RewindableInputStream.html" title="class in org.apache.abdera2.common.io">RewindableInputStream</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/UrlEncoding.DecodingInputStream.html#read()"><B>read()</B></A> - 
Method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/UrlEncoding.DecodingInputStream.html" title="class in org.apache.abdera2.common.text">UrlEncoding.DecodingInputStream</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/UrlEncoding.DecodingInputStream.html#read(byte[], int, int)"><B>read(byte[], int, int)</B></A> - 
Method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/UrlEncoding.DecodingInputStream.html" title="class in org.apache.abdera2.common.text">UrlEncoding.DecodingInputStream</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/UrlEncoding.DecodingInputStream.html#read(byte[])"><B>read(byte[])</B></A> - 
Method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/UrlEncoding.DecodingInputStream.html" title="class in org.apache.abdera2.common.text">UrlEncoding.DecodingInputStream</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/UrlEncoding.DecodingReader.html#read()"><B>read()</B></A> - 
Method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/UrlEncoding.DecodingReader.html" title="class in org.apache.abdera2.common.text">UrlEncoding.DecodingReader</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/UrlEncoding.DecodingReader.html#read(char[], int, int)"><B>read(char[], int, int)</B></A> - 
Method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/UrlEncoding.DecodingReader.html" title="class in org.apache.abdera2.common.text">UrlEncoding.DecodingReader</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/UrlEncoding.DecodingReader.html#read(char[])"><B>read(char[])</B></A> - 
Method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/UrlEncoding.DecodingReader.html" title="class in org.apache.abdera2.common.text">UrlEncoding.DecodingReader</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Discover.LineReaderLoaderIterator.html#readNext()"><B>readNext()</B></A> - 
Method in class org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Discover.LineReaderLoaderIterator.html" title="class in org.apache.abdera2.common">Discover.LineReaderLoaderIterator</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/pusher/Receiver.html" title="interface in org.apache.abdera2.common.pusher"><B>Receiver</B></A>&lt;<A HREF="./org/apache/abdera2/common/pusher/Receiver.html" title="type parameter in Receiver">T</A>&gt; - Interface in <A HREF="./org/apache/abdera2/common/pusher/package-summary.html">org.apache.abdera2.common.pusher</A><DD>The Receiver interface provides the mechanisms for adding and removing
 listeners to a channel.<DT><A HREF="./org/apache/abdera2/common/protocol/RegexTargetResolver.html" title="class in org.apache.abdera2.common.protocol"><B>RegexTargetResolver</B></A>&lt;<A HREF="./org/apache/abdera2/common/protocol/RegexTargetResolver.html" title="type parameter in RegexTargetResolver">R</A> extends <A HREF="./org/apache/abdera2/common/protocol/RequestContext.html" title="interface in org.apache.abdera2.common.protocol">RequestContext</A>&gt; - Class in <A HREF="./org/apache/abdera2/common/protocol/package-summary.html">org.apache.abdera2.common.protocol</A><DD>
 Provides a utility class helpful for determining which type of resource the client is requesting.<DT><A HREF="./org/apache/abdera2/common/protocol/RegexTargetResolver.html#RegexTargetResolver()"><B>RegexTargetResolver()</B></A> - 
Constructor for class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/RegexTargetResolver.html" title="class in org.apache.abdera2.common.protocol">RegexTargetResolver</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/RegexTargetResolver.html#RegexTargetResolver(java.util.Map)"><B>RegexTargetResolver(Map&lt;String, TargetType&gt;)</B></A> - 
Constructor for class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/RegexTargetResolver.html" title="class in org.apache.abdera2.common.protocol">RegexTargetResolver</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/RegexTargetResolver.RegexTarget.html" title="class in org.apache.abdera2.common.protocol"><B>RegexTargetResolver.RegexTarget</B></A> - Class in <A HREF="./org/apache/abdera2/common/protocol/package-summary.html">org.apache.abdera2.common.protocol</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/protocol/RegexTargetResolver.RegexTarget.html#RegexTargetResolver.RegexTarget(org.apache.abdera2.common.protocol.TargetType, org.apache.abdera2.common.protocol.RequestContext, java.util.regex.Matcher, java.lang.String[])"><B>RegexTargetResolver.RegexTarget(TargetType, RequestContext, Matcher, String[])</B></A> - 
Constructor for class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/RegexTargetResolver.RegexTarget.html" title="class in org.apache.abdera2.common.protocol">RegexTargetResolver.RegexTarget</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/lang/Lang.html#region()"><B>region()</B></A> - 
Method in class org.apache.abdera2.common.lang.<A HREF="./org/apache/abdera2/common/lang/Lang.html" title="class in org.apache.abdera2.common.lang">Lang</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/iri/SchemeRegistry.html#register(java.lang.String)"><B>register(String)</B></A> - 
Method in class org.apache.abdera2.common.iri.<A HREF="./org/apache/abdera2/common/iri/SchemeRegistry.html" title="class in org.apache.abdera2.common.iri">SchemeRegistry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/iri/SchemeRegistry.html#register(java.lang.Class)"><B>register(Class&lt;Scheme&gt;)</B></A> - 
Method in class org.apache.abdera2.common.iri.<A HREF="./org/apache/abdera2/common/iri/SchemeRegistry.html" title="class in org.apache.abdera2.common.iri">SchemeRegistry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/iri/SchemeRegistry.html#register(org.apache.abdera2.common.iri.Scheme)"><B>register(Scheme)</B></A> - 
Method in class org.apache.abdera2.common.iri.<A HREF="./org/apache/abdera2/common/iri/SchemeRegistry.html" title="class in org.apache.abdera2.common.iri">SchemeRegistry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/Operation.html#register(java.lang.String, org.apache.abdera2.common.templates.Operation)"><B>register(String, Operation)</B></A> - 
Static method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/Operation.html" title="class in org.apache.abdera2.common.templates">Operation</A>
<DD>Register a new operation.
<DT><A HREF="./org/apache/abdera2/common/Constants.html#REL"><B>REL</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Position.html#relationshipTag"><B>relationshipTag</B></A> - 
Variable in class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Position.html" title="class in org.apache.abdera2.common.geo">Position</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/iri/IRI.html#relativize(org.apache.abdera2.common.iri.IRI, org.apache.abdera2.common.iri.IRI)"><B>relativize(IRI, IRI)</B></A> - 
Static method in class org.apache.abdera2.common.iri.<A HREF="./org/apache/abdera2/common/iri/IRI.html" title="class in org.apache.abdera2.common.iri">IRI</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/iri/IRI.html#relativize(org.apache.abdera2.common.iri.IRI)"><B>relativize(IRI)</B></A> - 
Method in class org.apache.abdera2.common.iri.<A HREF="./org/apache/abdera2/common/iri/IRI.html" title="class in org.apache.abdera2.common.iri">IRI</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/misc/ItemManager.html#release(T)"><B>release(T)</B></A> - 
Method in interface org.apache.abdera2.common.misc.<A HREF="./org/apache/abdera2/common/misc/ItemManager.html" title="interface in org.apache.abdera2.common.misc">ItemManager</A>
<DD>Release an item
<DT><A HREF="./org/apache/abdera2/common/misc/PoolManager.html#release(T)"><B>release(T)</B></A> - 
Method in class org.apache.abdera2.common.misc.<A HREF="./org/apache/abdera2/common/misc/PoolManager.html" title="class in org.apache.abdera2.common.misc">PoolManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/misc/PoolManager.html#remaining()"><B>remaining()</B></A> - 
Method in class org.apache.abdera2.common.misc.<A HREF="./org/apache/abdera2/common/misc/PoolManager.html" title="class in org.apache.abdera2.common.misc">PoolManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Discover.LoaderIterator.html#remove()"><B>remove()</B></A> - 
Method in class org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Discover.LoaderIterator.html" title="class in org.apache.abdera2.common">Discover.LoaderIterator</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Coordinates.html#remove(org.apache.abdera2.common.geo.Coordinate)"><B>remove(Coordinate)</B></A> - 
Method in class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Coordinates.html" title="class in org.apache.abdera2.common.geo">Coordinates</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Coordinates.html#remove(org.apache.abdera2.common.geo.Coordinate...)"><B>remove(Coordinate...)</B></A> - 
Method in class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Coordinates.html" title="class in org.apache.abdera2.common.geo">Coordinates</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Coordinates.html#remove(double, double)"><B>remove(double, double)</B></A> - 
Method in class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Coordinates.html" title="class in org.apache.abdera2.common.geo">Coordinates</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Coordinates.html#remove(java.lang.String)"><B>remove(String)</B></A> - 
Method in class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Coordinates.html" title="class in org.apache.abdera2.common.geo">Coordinates</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/lang/SubtagSet.SubtagIterator.html#remove()"><B>remove()</B></A> - 
Method in class org.apache.abdera2.common.lang.<A HREF="./org/apache/abdera2/common/lang/SubtagSet.SubtagIterator.html" title="class in org.apache.abdera2.common.lang">SubtagSet.SubtagIterator</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/misc/MultiIterator.html#remove()"><B>remove()</B></A> - 
Method in class org.apache.abdera2.common.misc.<A HREF="./org/apache/abdera2/common/misc/MultiIterator.html" title="class in org.apache.abdera2.common.misc">MultiIterator</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/CodepointIterator.html#remove()"><B>remove()</B></A> - 
Method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/CodepointIterator.html" title="class in org.apache.abdera2.common.text">CodepointIterator</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html#removeHeader(java.lang.String)"><B>removeHeader(String)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html" title="class in org.apache.abdera2.common.protocol">AbstractResponseContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html#removeHeader(java.lang.String)"><B>removeHeader(String)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseResponseContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/ResponseContext.html#removeHeader(java.lang.String)"><B>removeHeader(String)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ResponseContext.html" title="interface in org.apache.abdera2.common.protocol">ResponseContext</A>
<DD>Remove the specified header from the response
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html#request"><B>request</B></A> - 
Variable in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseRequestContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/Request.html" title="interface in org.apache.abdera2.common.protocol"><B>Request</B></A> - Interface in <A HREF="./org/apache/abdera2/common/protocol/package-summary.html">org.apache.abdera2.common.protocol</A><DD>A protocol request.<DT><A HREF="./org/apache/abdera2/common/protocol/RequestContext.html" title="interface in org.apache.abdera2.common.protocol"><B>RequestContext</B></A> - Interface in <A HREF="./org/apache/abdera2/common/protocol/package-summary.html">org.apache.abdera2.common.protocol</A><DD>The RequestContext provides access to every detail of the Request.<DT><A HREF="./org/apache/abdera2/common/protocol/RequestContext.Property.html" title="enum in org.apache.abdera2.common.protocol"><B>RequestContext.Property</B></A> - Enum in <A HREF="./org/apache/abdera2/common/protocol/package-summary.html">org.apache.abdera2.common.protocol</A><DD>Special properties provided by the server<DT><A HREF="./org/apache/abdera2/common/protocol/RequestContext.Scope.html" title="enum in org.apache.abdera2.common.protocol"><B>RequestContext.Scope</B></A> - Enum in <A HREF="./org/apache/abdera2/common/protocol/package-summary.html">org.apache.abdera2.common.protocol</A><DD>RequestContext attributes can either have Session or Request scope.<DT><A HREF="./org/apache/abdera2/common/protocol/RequestProcessor.html" title="interface in org.apache.abdera2.common.protocol"><B>RequestProcessor</B></A> - Interface in <A HREF="./org/apache/abdera2/common/protocol/package-summary.html">org.apache.abdera2.common.protocol</A><DD>Request processors implement the actual business logic for handling requests to the Atompub server and producing the
 related response.<DT><A HREF="./org/apache/abdera2/common/protocol/BaseProvider.html#requestProcessors"><B>requestProcessors</B></A> - 
Variable in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseProvider.html" title="class in org.apache.abdera2.common.protocol">BaseProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/RequestTemplateContext.html" title="class in org.apache.abdera2.common.protocol"><B>RequestTemplateContext</B></A> - Class in <A HREF="./org/apache/abdera2/common/protocol/package-summary.html">org.apache.abdera2.common.protocol</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/protocol/RequestTemplateContext.html#RequestTemplateContext(org.apache.abdera2.common.protocol.RequestContext, org.apache.abdera2.common.templates.Context)"><B>RequestTemplateContext(RequestContext, Context)</B></A> - 
Constructor for class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/RequestTemplateContext.html" title="class in org.apache.abdera2.common.protocol">RequestTemplateContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/RequestTemplateContext.Variable.html" title="enum in org.apache.abdera2.common.protocol"><B>RequestTemplateContext.Variable</B></A> - Enum in <A HREF="./org/apache/abdera2/common/protocol/package-summary.html">org.apache.abdera2.common.protocol</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractBaseRequestContext.html#requestUri"><B>requestUri</B></A> - 
Variable in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractBaseRequestContext.html" title="class in org.apache.abdera2.common.protocol">AbstractBaseRequestContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/iri/IRI.html#resolve(org.apache.abdera2.common.iri.IRI, java.lang.String)"><B>resolve(IRI, String)</B></A> - 
Static method in class org.apache.abdera2.common.iri.<A HREF="./org/apache/abdera2/common/iri/IRI.html" title="class in org.apache.abdera2.common.iri">IRI</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/iri/IRI.html#resolve(org.apache.abdera2.common.iri.IRI, org.apache.abdera2.common.iri.IRI)"><B>resolve(IRI, IRI)</B></A> - 
Static method in class org.apache.abdera2.common.iri.<A HREF="./org/apache/abdera2/common/iri/IRI.html" title="class in org.apache.abdera2.common.iri">IRI</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/iri/IRI.html#resolve(org.apache.abdera2.common.iri.IRI)"><B>resolve(IRI)</B></A> - 
Method in class org.apache.abdera2.common.iri.<A HREF="./org/apache/abdera2/common/iri/IRI.html" title="class in org.apache.abdera2.common.iri">IRI</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/iri/IRI.html#resolve(java.lang.String)"><B>resolve(String)</B></A> - 
Method in class org.apache.abdera2.common.iri.<A HREF="./org/apache/abdera2/common/iri/IRI.html" title="class in org.apache.abdera2.common.iri">IRI</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/misc/Resolver.html#resolve(R)"><B>resolve(R)</B></A> - 
Method in interface org.apache.abdera2.common.misc.<A HREF="./org/apache/abdera2/common/misc/Resolver.html" title="interface in org.apache.abdera2.common.misc">Resolver</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/RegexTargetResolver.html#resolve(R)"><B>resolve(R)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/RegexTargetResolver.html" title="class in org.apache.abdera2.common.protocol">RegexTargetResolver</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/RouteManager.html#resolve(X)"><B>resolve(X)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/RouteManager.html" title="class in org.apache.abdera2.common.protocol">RouteManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/SimpleSubjectResolver.html#resolve(org.apache.abdera2.common.protocol.Request)"><B>resolve(Request)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/SimpleSubjectResolver.html" title="class in org.apache.abdera2.common.protocol">SimpleSubjectResolver</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/SimpleSubjectResolver.html#resolve(java.security.Principal)"><B>resolve(Principal)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/SimpleSubjectResolver.html" title="class in org.apache.abdera2.common.protocol">SimpleSubjectResolver</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/SimpleSubjectResolver.html#resolve(java.lang.String)"><B>resolve(String)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/SimpleSubjectResolver.html" title="class in org.apache.abdera2.common.protocol">SimpleSubjectResolver</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/CachingContext.html#resolve(java.lang.String)"><B>resolve(String)</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/CachingContext.html" title="class in org.apache.abdera2.common.templates">CachingContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/Context.html#resolve(java.lang.String)"><B>resolve(String)</B></A> - 
Method in interface org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/Context.html" title="interface in org.apache.abdera2.common.templates">Context</A>
<DD>Resolve a value for the specified variable.
<DT><A HREF="./org/apache/abdera2/common/templates/DefaultingContext.html#resolve(java.lang.String)"><B>resolve(String)</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/DefaultingContext.html" title="class in org.apache.abdera2.common.templates">DefaultingContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/DelegatingContext.html#resolve(java.lang.String)"><B>resolve(String)</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/DelegatingContext.html" title="class in org.apache.abdera2.common.templates">DelegatingContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/MapContext.html#resolve(java.lang.String)"><B>resolve(String)</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/MapContext.html" title="class in org.apache.abdera2.common.templates">MapContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/RequestTemplateContext.html#resolveActual(java.lang.String)"><B>resolveActual(String)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/RequestTemplateContext.html" title="class in org.apache.abdera2.common.protocol">RequestTemplateContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/CachingContext.html#resolveActual(java.lang.String)"><B>resolveActual(String)</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/CachingContext.html" title="class in org.apache.abdera2.common.templates">CachingContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/DelegatingContext.html#resolveActual(java.lang.String)"><B>resolveActual(String)</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/DelegatingContext.html" title="class in org.apache.abdera2.common.templates">DelegatingContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/MultiContext.html#resolveActual(java.lang.String)"><B>resolveActual(String)</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/MultiContext.html" title="class in org.apache.abdera2.common.templates">MultiContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/ObjectContext.html#resolveActual(java.lang.String)"><B>resolveActual(String)</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/ObjectContext.html" title="class in org.apache.abdera2.common.templates">ObjectContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/ProviderHelper.html#resolveBase(org.apache.abdera2.common.protocol.RequestContext)"><B>resolveBase(RequestContext)</B></A> - 
Static method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ProviderHelper.html" title="class in org.apache.abdera2.common.protocol">ProviderHelper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/misc/Resolver.html" title="interface in org.apache.abdera2.common.misc"><B>Resolver</B></A>&lt;<A HREF="./org/apache/abdera2/common/misc/Resolver.html" title="type parameter in Resolver">T</A>,<A HREF="./org/apache/abdera2/common/misc/Resolver.html" title="type parameter in Resolver">R</A>&gt; - Interface in <A HREF="./org/apache/abdera2/common/misc/package-summary.html">org.apache.abdera2.common.misc</A><DD>The Resolver interface is a utility class used to resolve objects based on a request.<DT><A HREF="./org/apache/abdera2/common/protocol/BaseProvider.html#resolveSubject(org.apache.abdera2.common.protocol.RequestContext)"><B>resolveSubject(RequestContext)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseProvider.html" title="class in org.apache.abdera2.common.protocol">BaseProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/Provider.html#resolveSubject(org.apache.abdera2.common.protocol.RequestContext)"><B>resolveSubject(RequestContext)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/Provider.html" title="interface in org.apache.abdera2.common.protocol">Provider</A>
<DD>Resolve the subject using the Provider's Subject Resolver
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseProvider.html#resolveTarget(org.apache.abdera2.common.protocol.RequestContext)"><B>resolveTarget(RequestContext)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseProvider.html" title="class in org.apache.abdera2.common.protocol">BaseProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/Provider.html#resolveTarget(org.apache.abdera2.common.protocol.RequestContext)"><B>resolveTarget(RequestContext)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/Provider.html" title="interface in org.apache.abdera2.common.protocol">Provider</A>
<DD>Resolve the target using the Provider's Target Resolver
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html#response"><B>response</B></A> - 
Variable in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseResponseContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/Response.html" title="interface in org.apache.abdera2.common.protocol"><B>Response</B></A> - Interface in <A HREF="./org/apache/abdera2/common/protocol/package-summary.html">org.apache.abdera2.common.protocol</A><DD>Base interface for an Atompub protocol response message<DT><A HREF="./org/apache/abdera2/common/protocol/ResponseContext.html" title="interface in org.apache.abdera2.common.protocol"><B>ResponseContext</B></A> - Interface in <A HREF="./org/apache/abdera2/common/protocol/package-summary.html">org.apache.abdera2.common.protocol</A><DD>The ResponseContext encapsulates a server response<DT><A HREF="./org/apache/abdera2/common/protocol/ResponseContextException.html" title="class in org.apache.abdera2.common.protocol"><B>ResponseContextException</B></A> - Exception in <A HREF="./org/apache/abdera2/common/protocol/package-summary.html">org.apache.abdera2.common.protocol</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/protocol/ResponseContextException.html#ResponseContextException(org.apache.abdera2.common.protocol.ResponseContext, java.lang.Throwable)"><B>ResponseContextException(ResponseContext, Throwable)</B></A> - 
Constructor for exception org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ResponseContextException.html" title="class in org.apache.abdera2.common.protocol">ResponseContextException</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/ResponseContextException.html#ResponseContextException(org.apache.abdera2.common.protocol.ResponseContext)"><B>ResponseContextException(ResponseContext)</B></A> - 
Constructor for exception org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ResponseContextException.html" title="class in org.apache.abdera2.common.protocol">ResponseContextException</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/ResponseContextException.html#ResponseContextException(int)"><B>ResponseContextException(int)</B></A> - 
Constructor for exception org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ResponseContextException.html" title="class in org.apache.abdera2.common.protocol">ResponseContextException</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/ResponseContextException.html#ResponseContextException(int, java.lang.Throwable)"><B>ResponseContextException(int, Throwable)</B></A> - 
Constructor for exception org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ResponseContextException.html" title="class in org.apache.abdera2.common.protocol">ResponseContextException</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/ResponseContextException.html#ResponseContextException(java.lang.String, int)"><B>ResponseContextException(String, int)</B></A> - 
Constructor for exception org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ResponseContextException.html" title="class in org.apache.abdera2.common.protocol">ResponseContextException</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/ResponseType.html" title="enum in org.apache.abdera2.common.http"><B>ResponseType</B></A> - Enum in <A HREF="./org/apache/abdera2/common/http/package-summary.html">org.apache.abdera2.common.http</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/text/CharUtils.html#restricted(org.apache.abdera2.common.xml.XMLVersion, char)"><B>restricted(XMLVersion, char)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/CharUtils.html" title="class in org.apache.abdera2.common.text">CharUtils</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/CharUtils.html#restricted(org.apache.abdera2.common.xml.XMLVersion, int)"><B>restricted(XMLVersion, int)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/CharUtils.html" title="class in org.apache.abdera2.common.text">CharUtils</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/Preference.html#RETURN_ACCEPTED"><B>RETURN_ACCEPTED</B></A> - 
Static variable in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/Preference.html" title="class in org.apache.abdera2.common.http">Preference</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/Preference.html#RETURN_CONTENT"><B>RETURN_CONTENT</B></A> - 
Static variable in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/Preference.html" title="class in org.apache.abdera2.common.http">Preference</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/Preference.html#RETURN_NO_CONTENT"><B>RETURN_NO_CONTENT</B></A> - 
Static variable in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/Preference.html" title="class in org.apache.abdera2.common.http">Preference</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/Preference.html#RETURN_STATUS"><B>RETURN_STATUS</B></A> - 
Static variable in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/Preference.html" title="class in org.apache.abdera2.common.http">Preference</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/CacheControl.html#REVALIDATE"><B>REVALIDATE</B></A> - 
Static variable in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/CacheControl.html" title="class in org.apache.abdera2.common.http">CacheControl</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/io/RewindableInputStream.html#rewind()"><B>rewind()</B></A> - 
Method in class org.apache.abdera2.common.io.<A HREF="./org/apache/abdera2/common/io/RewindableInputStream.html" title="class in org.apache.abdera2.common.io">RewindableInputStream</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/io/RewindableInputStream.html#rewind(int, int)"><B>rewind(int, int)</B></A> - 
Method in class org.apache.abdera2.common.io.<A HREF="./org/apache/abdera2/common/io/RewindableInputStream.html" title="class in org.apache.abdera2.common.io">RewindableInputStream</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/io/RewindableInputStream.html#rewind(int)"><B>rewind(int)</B></A> - 
Method in class org.apache.abdera2.common.io.<A HREF="./org/apache/abdera2/common/io/RewindableInputStream.html" title="class in org.apache.abdera2.common.io">RewindableInputStream</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/io/RewindableInputStream.html" title="class in org.apache.abdera2.common.io"><B>RewindableInputStream</B></A> - Class in <A HREF="./org/apache/abdera2/common/io/package-summary.html">org.apache.abdera2.common.io</A><DD>RewindableInputStream is a specialization of the PushbackInputStream that maintains an internal buffer of read bytes
 that a user can rewind (unread) back into the stream without having to do their own buffer management.<DT><A HREF="./org/apache/abdera2/common/io/RewindableInputStream.html#RewindableInputStream(java.io.InputStream)"><B>RewindableInputStream(InputStream)</B></A> - 
Constructor for class org.apache.abdera2.common.io.<A HREF="./org/apache/abdera2/common/io/RewindableInputStream.html" title="class in org.apache.abdera2.common.io">RewindableInputStream</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/io/RewindableInputStream.html#RewindableInputStream(java.io.InputStream, int)"><B>RewindableInputStream(InputStream, int)</B></A> - 
Constructor for class org.apache.abdera2.common.io.<A HREF="./org/apache/abdera2/common/io/RewindableInputStream.html" title="class in org.apache.abdera2.common.io">RewindableInputStream</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/io/RewindableInputStream.html#RewindableInputStream(java.io.InputStream, int, float)"><B>RewindableInputStream(InputStream, int, float)</B></A> - 
Constructor for class org.apache.abdera2.common.io.<A HREF="./org/apache/abdera2/common/io/RewindableInputStream.html" title="class in org.apache.abdera2.common.io">RewindableInputStream</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#RIGHTS"><B>RIGHTS</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/lang/Subtag.html#root()"><B>root()</B></A> - 
Method in class org.apache.abdera2.common.lang.<A HREF="./org/apache/abdera2/common/lang/Subtag.html" title="class in org.apache.abdera2.common.lang">Subtag</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/lang/SubtagSet.html#root"><B>root</B></A> - 
Variable in class org.apache.abdera2.common.lang.<A HREF="./org/apache/abdera2/common/lang/SubtagSet.html" title="class in org.apache.abdera2.common.lang">SubtagSet</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/RouteManager.RouteTargetType.html#route"><B>route</B></A> - 
Variable in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/RouteManager.RouteTargetType.html" title="class in org.apache.abdera2.common.protocol">RouteManager.RouteTargetType</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/Route.html" title="class in org.apache.abdera2.common.templates"><B>Route</B></A>&lt;<A HREF="./org/apache/abdera2/common/templates/Route.html" title="type parameter in Route">T</A>&gt; - Class in <A HREF="./org/apache/abdera2/common/templates/package-summary.html">org.apache.abdera2.common.templates</A><DD>A type of URI Template loosely based on Ruby on Rails style Routes.<DT><A HREF="./org/apache/abdera2/common/templates/Route.html#Route(T, java.lang.String)"><B>Route(T, String)</B></A> - 
Constructor for class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/Route.html" title="class in org.apache.abdera2.common.templates">Route</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/Route.html#Route(T, java.lang.String, java.util.Map, java.util.Map)"><B>Route(T, String, Map&lt;String, Object&gt;, Map&lt;String, String&gt;)</B></A> - 
Constructor for class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/Route.html" title="class in org.apache.abdera2.common.templates">Route</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/RouteManager.html#route2CA"><B>route2CA</B></A> - 
Variable in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/RouteManager.html" title="class in org.apache.abdera2.common.protocol">RouteManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/RouteManager.html" title="class in org.apache.abdera2.common.protocol"><B>RouteManager</B></A>&lt;<A HREF="./org/apache/abdera2/common/protocol/RouteManager.html" title="type parameter in RouteManager">T</A>,<A HREF="./org/apache/abdera2/common/protocol/RouteManager.html" title="type parameter in RouteManager">X</A> extends <A HREF="./org/apache/abdera2/common/protocol/RequestContext.html" title="interface in org.apache.abdera2.common.protocol">RequestContext</A>&gt; - Class in <A HREF="./org/apache/abdera2/common/protocol/package-summary.html">org.apache.abdera2.common.protocol</A><DD>This is a largely experimental implementation of a Target Resolver and Target Builder based on URL patterns similar
 (but not identical) to Ruby on Rails style routes.<DT><A HREF="./org/apache/abdera2/common/protocol/RouteManager.html#RouteManager()"><B>RouteManager()</B></A> - 
Constructor for class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/RouteManager.html" title="class in org.apache.abdera2.common.protocol">RouteManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/RouteManager.RouteTarget.html" title="class in org.apache.abdera2.common.protocol"><B>RouteManager.RouteTarget</B></A> - Class in <A HREF="./org/apache/abdera2/common/protocol/package-summary.html">org.apache.abdera2.common.protocol</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/protocol/RouteManager.RouteTarget.html#RouteManager.RouteTarget(org.apache.abdera2.common.protocol.TargetType, org.apache.abdera2.common.protocol.RequestContext, org.apache.abdera2.common.templates.Route, java.lang.String)"><B>RouteManager.RouteTarget(TargetType, RequestContext, Route&lt;?&gt;, String)</B></A> - 
Constructor for class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/RouteManager.RouteTarget.html" title="class in org.apache.abdera2.common.protocol">RouteManager.RouteTarget</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/RouteManager.RouteTargetType.html" title="class in org.apache.abdera2.common.protocol"><B>RouteManager.RouteTargetType</B></A> - Class in <A HREF="./org/apache/abdera2/common/protocol/package-summary.html">org.apache.abdera2.common.protocol</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/protocol/RouteManager.html#routes"><B>routes</B></A> - 
Variable in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/RouteManager.html" title="class in org.apache.abdera2.common.protocol">RouteManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/async/AbderaAsyncService.html#run()"><B>run()</B></A> - 
Method in class org.apache.abdera2.common.protocol.servlet.async.<A HREF="./org/apache/abdera2/common/protocol/servlet/async/AbderaAsyncService.html" title="class in org.apache.abdera2.common.protocol.servlet.async">AbderaAsyncService</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/async/AbderaAsyncService.html#RUNNER"><B>RUNNER</B></A> - 
Static variable in class org.apache.abdera2.common.protocol.servlet.async.<A HREF="./org/apache/abdera2/common/protocol/servlet/async/AbderaAsyncService.html" title="class in org.apache.abdera2.common.protocol.servlet.async">AbderaAsyncService</A>
<DD>&nbsp;
</DL>
<HR>
<A NAME="_S_"><!-- --></A><H2>
<B>S</B></H2>
<DL>
<DT><A HREF="./org/apache/abdera2/common/http/Method.html#safe()"><B>safe()</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/Method.html" title="class in org.apache.abdera2.common.http">Method</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/Slug.html#SANITIZE_PATTERN"><B>SANITIZE_PATTERN</B></A> - 
Static variable in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/Slug.html" title="class in org.apache.abdera2.common.text">Slug</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/ProviderHelper.html#sanitizeSlug(java.lang.String)"><B>sanitizeSlug(String)</B></A> - 
Static method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ProviderHelper.html" title="class in org.apache.abdera2.common.protocol">ProviderHelper</A>
<DD>Sanitize the value of a Slug header.
<DT><A HREF="./org/apache/abdera2/common/text/CharUtils.html#scanFor(char, java.lang.String, int, boolean)"><B>scanFor(char, String, int, boolean)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/CharUtils.html" title="class in org.apache.abdera2.common.text">CharUtils</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/CharUtils.html#scanFor(char, java.lang.String, int, boolean, char)"><B>scanFor(char, String, int, boolean, char)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/CharUtils.html" title="class in org.apache.abdera2.common.text">CharUtils</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#SCHEME"><B>SCHEME</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/iri/Scheme.html" title="interface in org.apache.abdera2.common.iri"><B>Scheme</B></A> - Interface in <A HREF="./org/apache/abdera2/common/iri/package-summary.html">org.apache.abdera2.common.iri</A><DD>Interface implemented by custom IRI scheme parsers<DT><A HREF="./org/apache/abdera2/common/iri/SchemeRegistry.html" title="class in org.apache.abdera2.common.iri"><B>SchemeRegistry</B></A> - Class in <A HREF="./org/apache/abdera2/common/iri/package-summary.html">org.apache.abdera2.common.iri</A><DD>Static registry of custom IRI schemes.<DT><A HREF="./org/apache/abdera2/common/lang/Lang.html#script()"><B>script()</B></A> - 
Method in class org.apache.abdera2.common.lang.<A HREF="./org/apache/abdera2/common/lang/Lang.html" title="class in org.apache.abdera2.common.lang">Lang</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/CacheControlUtil.Directive.html#select(java.lang.String)"><B>select(String)</B></A> - 
Static method in enum org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/CacheControlUtil.Directive.html" title="enum in org.apache.abdera2.common.http">CacheControlUtil.Directive</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/ResponseType.html#select(int)"><B>select(int)</B></A> - 
Static method in enum org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/ResponseType.html" title="enum in org.apache.abdera2.common.http">ResponseType</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/selector/InvertedSelector.html#select(java.lang.Object)"><B>select(Object)</B></A> - 
Method in class org.apache.abdera2.common.selector.<A HREF="./org/apache/abdera2/common/selector/InvertedSelector.html" title="class in org.apache.abdera2.common.selector">InvertedSelector</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/selector/MultiSelector.html#select(java.lang.Object)"><B>select(Object)</B></A> - 
Method in class org.apache.abdera2.common.selector.<A HREF="./org/apache/abdera2/common/selector/MultiSelector.html" title="class in org.apache.abdera2.common.selector">MultiSelector</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/selector/Selector.html#select(java.lang.Object)"><B>select(Object)</B></A> - 
Method in interface org.apache.abdera2.common.selector.<A HREF="./org/apache/abdera2/common/selector/Selector.html" title="interface in org.apache.abdera2.common.selector">Selector</A>
<DD>Returns true the item is to be selected
<DT><A HREF="./org/apache/abdera2/common/selector/Selector.html" title="interface in org.apache.abdera2.common.selector"><B>Selector</B></A> - Interface in <A HREF="./org/apache/abdera2/common/selector/package-summary.html">org.apache.abdera2.common.selector</A><DD>Utility interface that is used as a Filter in several places 
 throughout the Abdera API.<DT><A HREF="./org/apache/abdera2/common/pusher/SelectorListener.html" title="class in org.apache.abdera2.common.pusher"><B>SelectorListener</B></A>&lt;<A HREF="./org/apache/abdera2/common/pusher/SelectorListener.html" title="type parameter in SelectorListener">T</A>&gt; - Class in <A HREF="./org/apache/abdera2/common/pusher/package-summary.html">org.apache.abdera2.common.pusher</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/pusher/SelectorListener.html#SelectorListener(org.apache.abdera2.common.selector.Selector, org.apache.abdera2.common.pusher.Listener)"><B>SelectorListener(Selector, Listener&lt;T&gt;)</B></A> - 
Constructor for class org.apache.abdera2.common.pusher.<A HREF="./org/apache/abdera2/common/pusher/SelectorListener.html" title="class in org.apache.abdera2.common.pusher">SelectorListener</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/pusher/SelectorPusher.html" title="class in org.apache.abdera2.common.pusher"><B>SelectorPusher</B></A>&lt;<A HREF="./org/apache/abdera2/common/pusher/SelectorPusher.html" title="type parameter in SelectorPusher">T</A>&gt; - Class in <A HREF="./org/apache/abdera2/common/pusher/package-summary.html">org.apache.abdera2.common.pusher</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/pusher/SelectorPusher.html#SelectorPusher(org.apache.abdera2.common.selector.Selector, org.apache.abdera2.common.pusher.Pusher)"><B>SelectorPusher(Selector, Pusher&lt;T&gt;)</B></A> - 
Constructor for class org.apache.abdera2.common.pusher.<A HREF="./org/apache/abdera2/common/pusher/SelectorPusher.html" title="class in org.apache.abdera2.common.pusher">SelectorPusher</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/ProviderHelper.html#servererror(org.apache.abdera2.common.protocol.RequestContext, java.lang.String, java.lang.Throwable)"><B>servererror(RequestContext, String, Throwable)</B></A> - 
Static method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ProviderHelper.html" title="class in org.apache.abdera2.common.protocol">ProviderHelper</A>
<DD>Return a server error
<DT><A HREF="./org/apache/abdera2/common/protocol/ProviderHelper.html#servererror(org.apache.abdera2.common.protocol.RequestContext, java.lang.Throwable)"><B>servererror(RequestContext, Throwable)</B></A> - 
Static method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ProviderHelper.html" title="class in org.apache.abdera2.common.protocol">ProviderHelper</A>
<DD>Return a server error
<DT><A HREF="./org/apache/abdera2/common/Constants.html#SERVICE"><B>SERVICE</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/AbderaServlet.html#service(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse)"><B>service(HttpServletRequest, HttpServletResponse)</B></A> - 
Method in class org.apache.abdera2.common.protocol.servlet.<A HREF="./org/apache/abdera2/common/protocol/servlet/AbderaServlet.html" title="class in org.apache.abdera2.common.protocol.servlet">AbderaServlet</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/async/AsyncAbderaServlet.html#service(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse)"><B>service(HttpServletRequest, HttpServletResponse)</B></A> - 
Method in class org.apache.abdera2.common.protocol.servlet.async.<A HREF="./org/apache/abdera2/common/protocol/servlet/async/AsyncAbderaServlet.html" title="class in org.apache.abdera2.common.protocol.servlet.async">AsyncAbderaServlet</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/TargetType.html#SERVICE"><B>SERVICE</B></A> - 
Static variable in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/TargetType.html" title="class in org.apache.abdera2.common.protocol">TargetType</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/ServiceManager.html" title="interface in org.apache.abdera2.common.protocol"><B>ServiceManager</B></A>&lt;<A HREF="./org/apache/abdera2/common/protocol/ServiceManager.html" title="type parameter in ServiceManager">P</A> extends <A HREF="./org/apache/abdera2/common/protocol/Provider.html" title="interface in org.apache.abdera2.common.protocol">Provider</A>&gt; - Interface in <A HREF="./org/apache/abdera2/common/protocol/package-summary.html">org.apache.abdera2.common.protocol</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/async/AbderaAsyncService.html#SERVICEMANAGER"><B>SERVICEMANAGER</B></A> - 
Static variable in class org.apache.abdera2.common.protocol.servlet.async.<A HREF="./org/apache/abdera2/common/protocol/servlet/async/AbderaAsyncService.html" title="class in org.apache.abdera2.common.protocol.servlet.async">AbderaAsyncService</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/ServiceManager.Factory.html" title="class in org.apache.abdera2.common.protocol"><B>ServiceManager.Factory</B></A> - Class in <A HREF="./org/apache/abdera2/common/protocol/package-summary.html">org.apache.abdera2.common.protocol</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/protocol/ServiceManager.Factory.html#ServiceManager.Factory()"><B>ServiceManager.Factory()</B></A> - 
Constructor for class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ServiceManager.Factory.html" title="class in org.apache.abdera2.common.protocol">ServiceManager.Factory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/ServletRequestContext.html" title="class in org.apache.abdera2.common.protocol.servlet"><B>ServletRequestContext</B></A> - Class in <A HREF="./org/apache/abdera2/common/protocol/servlet/package-summary.html">org.apache.abdera2.common.protocol.servlet</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/ServletRequestContext.html#ServletRequestContext(org.apache.abdera2.common.protocol.Provider, javax.servlet.http.HttpServletRequest, javax.servlet.ServletContext)"><B>ServletRequestContext(Provider, HttpServletRequest, ServletContext)</B></A> - 
Constructor for class org.apache.abdera2.common.protocol.servlet.<A HREF="./org/apache/abdera2/common/protocol/servlet/ServletRequestContext.html" title="class in org.apache.abdera2.common.protocol.servlet">ServletRequestContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/CacheControlUtil.Directive.html#set(org.apache.abdera2.common.http.CacheControl, org.apache.abdera2.common.http.CacheControlUtil.CacheControlParser)"><B>set(CacheControl, CacheControlUtil.CacheControlParser)</B></A> - 
Method in enum org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/CacheControlUtil.Directive.html" title="enum in org.apache.abdera2.common.http">CacheControlUtil.Directive</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html#setAge(long)"><B>setAge(long)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html" title="class in org.apache.abdera2.common.protocol">AbstractResponseContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html#setAge(long)"><B>setAge(long)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseResponseContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/ResponseContext.html#setAge(long)"><B>setAge(long)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ResponseContext.html" title="interface in org.apache.abdera2.common.protocol">ResponseContext</A>
<DD>Set the value of the Age header
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html#setAllow(java.lang.String)"><B>setAllow(String)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html" title="class in org.apache.abdera2.common.protocol">AbstractResponseContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html#setAllow(java.lang.String...)"><B>setAllow(String...)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html" title="class in org.apache.abdera2.common.protocol">AbstractResponseContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html#setAllow(java.lang.String)"><B>setAllow(String)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseResponseContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html#setAllow(java.lang.String...)"><B>setAllow(String...)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseResponseContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/ResponseContext.html#setAllow(java.lang.String)"><B>setAllow(String)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ResponseContext.html" title="interface in org.apache.abdera2.common.protocol">ResponseContext</A>
<DD>Specify the HTTP methods allowed
<DT><A HREF="./org/apache/abdera2/common/protocol/ResponseContext.html#setAllow(java.lang.String...)"><B>setAllow(String...)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ResponseContext.html" title="interface in org.apache.abdera2.common.protocol">ResponseContext</A>
<DD>Specify the HTTP methods allowed
<DT><A HREF="./org/apache/abdera2/common/http/WebLink.html#setAnchor(org.apache.abdera2.common.iri.IRI)"><B>setAnchor(IRI)</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/WebLink.html" title="class in org.apache.abdera2.common.http">WebLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/WebLink.html#setAnchor(java.lang.String)"><B>setAnchor(String)</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/WebLink.html" title="class in org.apache.abdera2.common.http">WebLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractBaseRequestContext.html#setAttribute(java.lang.String, java.lang.Object)"><B>setAttribute(String, Object)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractBaseRequestContext.html" title="class in org.apache.abdera2.common.protocol">AbstractBaseRequestContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html#setAttribute(org.apache.abdera2.common.protocol.RequestContext.Scope, java.lang.String, java.lang.Object)"><B>setAttribute(RequestContext.Scope, String, Object)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseRequestContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html#setAttribute(java.lang.String, java.lang.Object)"><B>setAttribute(String, Object)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseRequestContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/RequestContext.html#setAttribute(java.lang.String, java.lang.Object)"><B>setAttribute(String, Object)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/RequestContext.html" title="interface in org.apache.abdera2.common.protocol">RequestContext</A>
<DD>Set the named attribute in the request scope
<DT><A HREF="./org/apache/abdera2/common/protocol/RequestContext.html#setAttribute(org.apache.abdera2.common.protocol.RequestContext.Scope, java.lang.String, java.lang.Object)"><B>setAttribute(RequestContext.Scope, String, Object)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/RequestContext.html" title="interface in org.apache.abdera2.common.protocol">RequestContext</A>
<DD>Set the named attribute in the specified scope.
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/ServletRequestContext.html#setAttribute(org.apache.abdera2.common.protocol.RequestContext.Scope, java.lang.String, java.lang.Object)"><B>setAttribute(RequestContext.Scope, String, Object)</B></A> - 
Method in class org.apache.abdera2.common.protocol.servlet.<A HREF="./org/apache/abdera2/common/protocol/servlet/ServletRequestContext.html" title="class in org.apache.abdera2.common.protocol.servlet">ServletRequestContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html#setBinary(boolean)"><B>setBinary(boolean)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html" title="class in org.apache.abdera2.common.protocol">AbstractResponseContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html#setBinary(boolean)"><B>setBinary(boolean)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseResponseContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/ResponseContext.html#setBinary(boolean)"><B>setBinary(boolean)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ResponseContext.html" title="interface in org.apache.abdera2.common.protocol">ResponseContext</A>
<DD>True if the response contains a binary entity as opposed to a character based entity.
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html#setCacheControl(org.apache.abdera2.common.http.CacheControl)"><B>setCacheControl(CacheControl)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html" title="class in org.apache.abdera2.common.protocol">AbstractResponseContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html#setCacheControl(java.lang.String)"><B>setCacheControl(String)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html" title="class in org.apache.abdera2.common.protocol">AbstractResponseContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html#setCacheControl(org.apache.abdera2.common.http.CacheControl)"><B>setCacheControl(CacheControl)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseResponseContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html#setCacheControl(java.lang.String)"><B>setCacheControl(String)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseResponseContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/ResponseContext.html#setCacheControl(org.apache.abdera2.common.http.CacheControl)"><B>setCacheControl(CacheControl)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ResponseContext.html" title="interface in org.apache.abdera2.common.protocol">ResponseContext</A>
<DD>Specify the CacheControl header
<DT><A HREF="./org/apache/abdera2/common/protocol/ResponseContext.html#setCacheControl(java.lang.String)"><B>setCacheControl(String)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ResponseContext.html" title="interface in org.apache.abdera2.common.protocol">ResponseContext</A>
<DD>Specify the CacheControl header
<DT><A HREF="./org/apache/abdera2/common/protocol/BasicWorkspaceInfo.html#setCollections(java.util.Set)"><B>setCollections(Set&lt;CollectionInfo&gt;)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BasicWorkspaceInfo.html" title="class in org.apache.abdera2.common.protocol">BasicWorkspaceInfo</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html#setContentLanguage(java.lang.String)"><B>setContentLanguage(String)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html" title="class in org.apache.abdera2.common.protocol">AbstractResponseContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html#setContentLanguage(java.lang.String)"><B>setContentLanguage(String)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseResponseContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/ResponseContext.html#setContentLanguage(java.lang.String)"><B>setContentLanguage(String)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ResponseContext.html" title="interface in org.apache.abdera2.common.protocol">ResponseContext</A>
<DD>Set the value of the Content-Language header
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html#setContentLength(long)"><B>setContentLength(long)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html" title="class in org.apache.abdera2.common.protocol">AbstractResponseContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html#setContentLength(long)"><B>setContentLength(long)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseResponseContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/ResponseContext.html#setContentLength(long)"><B>setContentLength(long)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ResponseContext.html" title="interface in org.apache.abdera2.common.protocol">ResponseContext</A>
<DD>Set the value of the Content-Length header
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html#setContentLocation(java.lang.String)"><B>setContentLocation(String)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html" title="class in org.apache.abdera2.common.protocol">AbstractResponseContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html#setContentLocation(java.lang.String)"><B>setContentLocation(String)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseResponseContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/ResponseContext.html#setContentLocation(java.lang.String)"><B>setContentLocation(String)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ResponseContext.html" title="interface in org.apache.abdera2.common.protocol">ResponseContext</A>
<DD>Set the value of the Content-Location header
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html#setContentType(java.lang.String)"><B>setContentType(String)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html" title="class in org.apache.abdera2.common.protocol">AbstractResponseContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html#setContentType(java.lang.String, java.lang.String)"><B>setContentType(String, String)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html" title="class in org.apache.abdera2.common.protocol">AbstractResponseContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html#setContentType(java.lang.String)"><B>setContentType(String)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseResponseContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html#setContentType(java.lang.String, java.lang.String)"><B>setContentType(String, String)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseResponseContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/ResponseContext.html#setContentType(java.lang.String)"><B>setContentType(String)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ResponseContext.html" title="interface in org.apache.abdera2.common.protocol">ResponseContext</A>
<DD>Set the value of the Content-Type header
<DT><A HREF="./org/apache/abdera2/common/protocol/ResponseContext.html#setContentType(java.lang.String, java.lang.String)"><B>setContentType(String, String)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ResponseContext.html" title="interface in org.apache.abdera2.common.protocol">ResponseContext</A>
<DD>Set the value of the Content-Type header
<DT><A HREF="./org/apache/abdera2/common/geo/Point.html#setCoordinate(org.apache.abdera2.common.geo.IsoPosition)"><B>setCoordinate(IsoPosition)</B></A> - 
Method in class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Point.html" title="class in org.apache.abdera2.common.geo">Point</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Point.html#setCoordinate(org.apache.abdera2.common.geo.Coordinate)"><B>setCoordinate(Coordinate)</B></A> - 
Method in class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Point.html" title="class in org.apache.abdera2.common.geo">Point</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Point.html#setCoordinate(double, double)"><B>setCoordinate(double, double)</B></A> - 
Method in class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Point.html" title="class in org.apache.abdera2.common.geo">Point</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Point.html#setCoordinate(java.lang.String)"><B>setCoordinate(String)</B></A> - 
Method in class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Point.html" title="class in org.apache.abdera2.common.geo">Point</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Box.html#setCoordinates(org.apache.abdera2.common.geo.Coordinates)"><B>setCoordinates(Coordinates)</B></A> - 
Method in class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Box.html" title="class in org.apache.abdera2.common.geo">Box</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Line.html#setCoordinates(org.apache.abdera2.common.geo.Coordinates)"><B>setCoordinates(Coordinates)</B></A> - 
Method in class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Line.html" title="class in org.apache.abdera2.common.geo">Line</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Multiple.html#setCoordinates(org.apache.abdera2.common.geo.Coordinates)"><B>setCoordinates(Coordinates)</B></A> - 
Method in class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Multiple.html" title="class in org.apache.abdera2.common.geo">Multiple</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Polygon.html#setCoordinates(org.apache.abdera2.common.geo.Coordinates)"><B>setCoordinates(Coordinates)</B></A> - 
Method in class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Polygon.html" title="class in org.apache.abdera2.common.geo">Polygon</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/CacheControl.html#setDefaults()"><B>setDefaults()</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/CacheControl.html" title="class in org.apache.abdera2.common.http">CacheControl</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Position.html#setElevation(java.lang.Double)"><B>setElevation(Double)</B></A> - 
Method in class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Position.html" title="class in org.apache.abdera2.common.geo">Position</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html#setEncodedHeader(java.lang.String, java.lang.String, java.lang.String)"><B>setEncodedHeader(String, String, String)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html" title="class in org.apache.abdera2.common.protocol">AbstractResponseContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html#setEncodedHeader(java.lang.String, java.lang.String, java.lang.String...)"><B>setEncodedHeader(String, String, String...)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html" title="class in org.apache.abdera2.common.protocol">AbstractResponseContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html#setEncodedHeader(java.lang.String, java.lang.String, java.lang.String)"><B>setEncodedHeader(String, String, String)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseResponseContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html#setEncodedHeader(java.lang.String, java.lang.String, java.lang.String...)"><B>setEncodedHeader(String, String, String...)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseResponseContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/ResponseContext.html#setEncodedHeader(java.lang.String, java.lang.String, java.lang.String)"><B>setEncodedHeader(String, String, String)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ResponseContext.html" title="interface in org.apache.abdera2.common.protocol">ResponseContext</A>
<DD>Set an RFC 2047 encoded header in the response
<DT><A HREF="./org/apache/abdera2/common/protocol/ResponseContext.html#setEncodedHeader(java.lang.String, java.lang.String, java.lang.String...)"><B>setEncodedHeader(String, String, String...)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ResponseContext.html" title="interface in org.apache.abdera2.common.protocol">ResponseContext</A>
<DD>Set an RFC 2047 encoded header in the response
<DT><A HREF="./org/apache/abdera2/common/protocol/SimpleResponseContext.html#setEncoding(java.lang.String)"><B>setEncoding(String)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/SimpleResponseContext.html" title="class in org.apache.abdera2.common.protocol">SimpleResponseContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html#setEntityTag(java.lang.String)"><B>setEntityTag(String)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html" title="class in org.apache.abdera2.common.protocol">AbstractResponseContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html#setEntityTag(org.apache.abdera2.common.http.EntityTag)"><B>setEntityTag(EntityTag)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html" title="class in org.apache.abdera2.common.protocol">AbstractResponseContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html#setEntityTag(java.lang.String)"><B>setEntityTag(String)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseResponseContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html#setEntityTag(org.apache.abdera2.common.http.EntityTag)"><B>setEntityTag(EntityTag)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseResponseContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/ResponseContext.html#setEntityTag(java.lang.String)"><B>setEntityTag(String)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ResponseContext.html" title="interface in org.apache.abdera2.common.protocol">ResponseContext</A>
<DD>Set the value of the ETag header
<DT><A HREF="./org/apache/abdera2/common/protocol/ResponseContext.html#setEntityTag(org.apache.abdera2.common.http.EntityTag)"><B>setEntityTag(EntityTag)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ResponseContext.html" title="interface in org.apache.abdera2.common.protocol">ResponseContext</A>
<DD>Set the value of the ETag header
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html#setEscapedHeader(java.lang.String, org.apache.abdera2.common.text.CharUtils.Profile, java.lang.String)"><B>setEscapedHeader(String, CharUtils.Profile, String)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html" title="class in org.apache.abdera2.common.protocol">AbstractResponseContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html#setEscapedHeader(java.lang.String, org.apache.abdera2.common.text.CharUtils.Profile, java.lang.String)"><B>setEscapedHeader(String, CharUtils.Profile, String)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseResponseContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/ResponseContext.html#setEscapedHeader(java.lang.String, org.apache.abdera2.common.text.CharUtils.Profile, java.lang.String)"><B>setEscapedHeader(String, CharUtils.Profile, String)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ResponseContext.html" title="interface in org.apache.abdera2.common.protocol">ResponseContext</A>
<DD>Set a pct-encoded header in the response
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html#setExpires(java.util.Date)"><B>setExpires(Date)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html" title="class in org.apache.abdera2.common.protocol">AbstractResponseContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html#setExpires(java.util.Date)"><B>setExpires(Date)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseResponseContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/ResponseContext.html#setExpires(java.util.Date)"><B>setExpires(Date)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ResponseContext.html" title="interface in org.apache.abdera2.common.protocol">ResponseContext</A>
<DD>Set the value of the Expires header
<DT><A HREF="./org/apache/abdera2/common/http/CacheControl.html#setExtension(java.lang.String, java.lang.Object)"><B>setExtension(String, Object)</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/CacheControl.html" title="class in org.apache.abdera2.common.http">CacheControl</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/CacheControl.html#setExtensions(java.util.Map)"><B>setExtensions(Map&lt;String, Object&gt;)</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/CacheControl.html" title="class in org.apache.abdera2.common.http">CacheControl</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Position.html#setFeatureTypeTag(java.lang.String)"><B>setFeatureTypeTag(String)</B></A> - 
Method in class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Position.html" title="class in org.apache.abdera2.common.geo">Position</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseProvider.html#setFilters(java.util.Collection)"><B>setFilters(Collection&lt;Filter&gt;)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseProvider.html" title="class in org.apache.abdera2.common.protocol">BaseProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Position.html#setFloor(java.lang.Double)"><B>setFloor(Double)</B></A> - 
Method in class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Position.html" title="class in org.apache.abdera2.common.geo">Position</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html#setHeader(java.lang.String, java.lang.Object)"><B>setHeader(String, Object)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html" title="class in org.apache.abdera2.common.protocol">AbstractResponseContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html#setHeader(java.lang.String, java.lang.Object...)"><B>setHeader(String, Object...)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html" title="class in org.apache.abdera2.common.protocol">AbstractResponseContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html#setHeader(java.lang.String, java.lang.Object)"><B>setHeader(String, Object)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseResponseContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html#setHeader(java.lang.String, java.lang.Object...)"><B>setHeader(String, Object...)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseResponseContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/ResponseContext.html#setHeader(java.lang.String, java.lang.Object)"><B>setHeader(String, Object)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ResponseContext.html" title="interface in org.apache.abdera2.common.protocol">ResponseContext</A>
<DD>Set the value of a header in the response
<DT><A HREF="./org/apache/abdera2/common/protocol/ResponseContext.html#setHeader(java.lang.String, java.lang.Object...)"><B>setHeader(String, Object...)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ResponseContext.html" title="interface in org.apache.abdera2.common.protocol">ResponseContext</A>
<DD>Set the value of a header in the response
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractCollectionAdapter.html#setHref(java.lang.String)"><B>setHref(String)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractCollectionAdapter.html" title="class in org.apache.abdera2.common.protocol">AbstractCollectionAdapter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/WebLink.html#setHrefLang(org.apache.abdera2.common.lang.Lang)"><B>setHrefLang(Lang)</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/WebLink.html" title="class in org.apache.abdera2.common.http">WebLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/WebLink.html#setHrefLang(java.lang.String)"><B>setHrefLang(String)</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/WebLink.html" title="class in org.apache.abdera2.common.http">WebLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/WebLink.html#setHrefLang(java.util.Locale)"><B>setHrefLang(Locale)</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/WebLink.html" title="class in org.apache.abdera2.common.http">WebLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Localizer.html#setInstance(org.apache.abdera2.common.Localizer)"><B>setInstance(Localizer)</B></A> - 
Static method in class org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Localizer.html" title="class in org.apache.abdera2.common">Localizer</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/AbstractContext.html#setIri(boolean)"><B>setIri(boolean)</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/AbstractContext.html" title="class in org.apache.abdera2.common.templates">AbstractContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/Context.html#setIri(boolean)"><B>setIri(boolean)</B></A> - 
Method in interface org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/Context.html" title="interface in org.apache.abdera2.common.templates">Context</A>
<DD>True if IRI expansion is to be enabled
<DT><A HREF="./org/apache/abdera2/common/templates/DelegatingContext.html#setIri(boolean)"><B>setIri(boolean)</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/DelegatingContext.html" title="class in org.apache.abdera2.common.templates">DelegatingContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/MapContext.html#setIri(boolean)"><B>setIri(boolean)</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/MapContext.html" title="class in org.apache.abdera2.common.templates">MapContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html#setLastModified(java.util.Date)"><B>setLastModified(Date)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html" title="class in org.apache.abdera2.common.protocol">AbstractResponseContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html#setLastModified(java.util.Date)"><B>setLastModified(Date)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseResponseContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/ResponseContext.html#setLastModified(java.util.Date)"><B>setLastModified(Date)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ResponseContext.html" title="interface in org.apache.abdera2.common.protocol">ResponseContext</A>
<DD>Set the value of the Last-Modified header
<DT><A HREF="./org/apache/abdera2/common/geo/Coordinate.html#setLatitude(double)"><B>setLatitude(double)</B></A> - 
Method in class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Coordinate.html" title="class in org.apache.abdera2.common.geo">Coordinate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html#setLocation(java.lang.String)"><B>setLocation(String)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html" title="class in org.apache.abdera2.common.protocol">AbstractResponseContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html#setLocation(java.lang.String)"><B>setLocation(String)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseResponseContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/ResponseContext.html#setLocation(java.lang.String)"><B>setLocation(String)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ResponseContext.html" title="interface in org.apache.abdera2.common.protocol">ResponseContext</A>
<DD>Set the value of the Location header
<DT><A HREF="./org/apache/abdera2/common/geo/Coordinate.html#setLongitude(double)"><B>setLongitude(double)</B></A> - 
Method in class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Coordinate.html" title="class in org.apache.abdera2.common.geo">Coordinate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/CacheControl.html#setMaxAge(long)"><B>setMaxAge(long)</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/CacheControl.html" title="class in org.apache.abdera2.common.http">CacheControl</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/CacheControl.html#setMaxStale(long)"><B>setMaxStale(long)</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/CacheControl.html" title="class in org.apache.abdera2.common.http">CacheControl</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/WebLink.html#setMediaType(javax.activation.MimeType)"><B>setMediaType(MimeType)</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/WebLink.html" title="class in org.apache.abdera2.common.http">WebLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/WebLink.html#setMediaType(java.lang.String)"><B>setMediaType(String)</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/WebLink.html" title="class in org.apache.abdera2.common.http">WebLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/MethodOverrideFilter.html#setMethods(java.lang.String...)"><B>setMethods(String...)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/MethodOverrideFilter.html" title="class in org.apache.abdera2.common.protocol">MethodOverrideFilter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/CacheControl.html#setMinFresh(long)"><B>setMinFresh(long)</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/CacheControl.html" title="class in org.apache.abdera2.common.http">CacheControl</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/CacheControl.html#setMustRevalidate(boolean)"><B>setMustRevalidate(boolean)</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/CacheControl.html" title="class in org.apache.abdera2.common.http">CacheControl</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/CacheControl.html#setNoCache(boolean)"><B>setNoCache(boolean)</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/CacheControl.html" title="class in org.apache.abdera2.common.http">CacheControl</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/CacheControl.html#setNoCacheHeaders(java.lang.String...)"><B>setNoCacheHeaders(String...)</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/CacheControl.html" title="class in org.apache.abdera2.common.http">CacheControl</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/CacheControl.html#setNoStore(boolean)"><B>setNoStore(boolean)</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/CacheControl.html" title="class in org.apache.abdera2.common.http">CacheControl</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/CacheControl.html#setNoTransform(boolean)"><B>setNoTransform(boolean)</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/CacheControl.html" title="class in org.apache.abdera2.common.http">CacheControl</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/CacheControl.html#setOnlyIfCached(boolean)"><B>setOnlyIfCached(boolean)</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/CacheControl.html" title="class in org.apache.abdera2.common.http">CacheControl</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/Authentication.html#setParam(java.lang.String, java.lang.String)"><B>setParam(String, String)</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/Authentication.html" title="class in org.apache.abdera2.common.http">Authentication</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/RegexTargetResolver.html#setPattern(java.lang.String, org.apache.abdera2.common.protocol.TargetType)"><B>setPattern(String, TargetType)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/RegexTargetResolver.html" title="class in org.apache.abdera2.common.protocol">RegexTargetResolver</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/RegexTargetResolver.html#setPattern(java.lang.String, org.apache.abdera2.common.protocol.TargetType, java.lang.String...)"><B>setPattern(String, TargetType, String...)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/RegexTargetResolver.html" title="class in org.apache.abdera2.common.protocol">RegexTargetResolver</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html#setPrefer(org.apache.abdera2.common.http.Preference, org.apache.abdera2.common.http.Preference...)"><B>setPrefer(Preference, Preference...)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html" title="class in org.apache.abdera2.common.protocol">AbstractResponseContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html#setPrefer(org.apache.abdera2.common.http.Preference, org.apache.abdera2.common.http.Preference...)"><B>setPrefer(Preference, Preference...)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseResponseContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/ResponseContext.html#setPrefer(org.apache.abdera2.common.http.Preference, org.apache.abdera2.common.http.Preference...)"><B>setPrefer(Preference, Preference...)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ResponseContext.html" title="interface in org.apache.abdera2.common.protocol">ResponseContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html#setPreferApplied(org.apache.abdera2.common.http.Preference, org.apache.abdera2.common.http.Preference...)"><B>setPreferApplied(Preference, Preference...)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html" title="class in org.apache.abdera2.common.protocol">AbstractResponseContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html#setPreferApplied(org.apache.abdera2.common.http.Preference, org.apache.abdera2.common.http.Preference...)"><B>setPreferApplied(Preference, Preference...)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseResponseContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/ResponseContext.html#setPreferApplied(org.apache.abdera2.common.http.Preference, org.apache.abdera2.common.http.Preference...)"><B>setPreferApplied(Preference, Preference...)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ResponseContext.html" title="interface in org.apache.abdera2.common.protocol">ResponseContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/CacheControl.html#setPrivate(boolean)"><B>setPrivate(boolean)</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/CacheControl.html" title="class in org.apache.abdera2.common.http">CacheControl</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/CacheControl.html#setPrivateHeaders(java.lang.String...)"><B>setPrivateHeaders(String...)</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/CacheControl.html" title="class in org.apache.abdera2.common.http">CacheControl</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/CacheControl.html#setProxyRevalidate(boolean)"><B>setProxyRevalidate(boolean)</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/CacheControl.html" title="class in org.apache.abdera2.common.http">CacheControl</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/CacheControl.html#setPublic(boolean)"><B>setPublic(boolean)</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/CacheControl.html" title="class in org.apache.abdera2.common.http">CacheControl</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/Authentication.html#setQuotedParam(java.lang.String, java.lang.String)"><B>setQuotedParam(String, String)</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/Authentication.html" title="class in org.apache.abdera2.common.http">Authentication</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/Authentication.html#setQuotedParam(java.lang.String)"><B>setQuotedParam(String)</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/Authentication.html" title="class in org.apache.abdera2.common.http">Authentication</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Position.html#setRadius(java.lang.Double)"><B>setRadius(Double)</B></A> - 
Method in class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Position.html" title="class in org.apache.abdera2.common.geo">Position</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Position.html#setRelationshipTag(java.lang.String)"><B>setRelationshipTag(String)</B></A> - 
Method in class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Position.html" title="class in org.apache.abdera2.common.geo">Position</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseProvider.html#setRequestProcessors(java.util.Map)"><B>setRequestProcessors(Map&lt;TargetType, RequestProcessor&gt;)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseProvider.html" title="class in org.apache.abdera2.common.protocol">BaseProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/Provider.html#setRequestProcessors(java.util.Map)"><B>setRequestProcessors(Map&lt;TargetType, RequestProcessor&gt;)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/Provider.html" title="interface in org.apache.abdera2.common.protocol">Provider</A>
<DD>Set a map of <CODE>AtompubRequestProcessor</CODE>s to register on this provider, overriding already registered ones.
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html#setSlug(java.lang.String)"><B>setSlug(String)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html" title="class in org.apache.abdera2.common.protocol">AbstractResponseContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html#setSlug(java.lang.String)"><B>setSlug(String)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseResponseContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/ResponseContext.html#setSlug(java.lang.String)"><B>setSlug(String)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ResponseContext.html" title="interface in org.apache.abdera2.common.protocol">ResponseContext</A>
<DD>Set the value of the Slug header
<DT><A HREF="./org/apache/abdera2/common/http/CacheControl.html#setStaleIfError(long)"><B>setStaleIfError(long)</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/CacheControl.html" title="class in org.apache.abdera2.common.http">CacheControl</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/CacheControl.html#setStaleWhileRevalidate(long)"><B>setStaleWhileRevalidate(long)</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/CacheControl.html" title="class in org.apache.abdera2.common.http">CacheControl</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html#setStatus(int)"><B>setStatus(int)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html" title="class in org.apache.abdera2.common.protocol">AbstractResponseContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html#setStatus(int)"><B>setStatus(int)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseResponseContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/ResponseContext.html#setStatus(int)"><B>setStatus(int)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ResponseContext.html" title="interface in org.apache.abdera2.common.protocol">ResponseContext</A>
<DD>Set the response status code
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html#setStatusText(java.lang.String)"><B>setStatusText(String)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html" title="class in org.apache.abdera2.common.protocol">AbstractResponseContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html#setStatusText(java.lang.String)"><B>setStatusText(String)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseResponseContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/ResponseContext.html#setStatusText(java.lang.String)"><B>setStatusText(String)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ResponseContext.html" title="interface in org.apache.abdera2.common.protocol">ResponseContext</A>
<DD>Set the response status text
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractWorkspaceProvider.html#setTargetBuilder(org.apache.abdera2.common.protocol.TargetBuilder)"><B>setTargetBuilder(TargetBuilder&lt;?&gt;)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractWorkspaceProvider.html" title="class in org.apache.abdera2.common.protocol">AbstractWorkspaceProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractWorkspaceProvider.html#setTargetResolver(org.apache.abdera2.common.misc.Resolver)"><B>setTargetResolver(Resolver&lt;Target, RequestContext&gt;)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractWorkspaceProvider.html" title="class in org.apache.abdera2.common.protocol">AbstractWorkspaceProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/WebLink.html#setTitle(java.lang.String)"><B>setTitle(String)</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/WebLink.html" title="class in org.apache.abdera2.common.http">WebLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BasicWorkspaceInfo.html#setTitle(java.lang.String)"><B>setTitle(String)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BasicWorkspaceInfo.html" title="class in org.apache.abdera2.common.protocol">BasicWorkspaceInfo</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/Preference.html#setValue(java.lang.String)"><B>setValue(String)</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/Preference.html" title="class in org.apache.abdera2.common.http">Preference</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html#setWebLinks(org.apache.abdera2.common.http.WebLink, org.apache.abdera2.common.http.WebLink...)"><B>setWebLinks(WebLink, WebLink...)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html" title="class in org.apache.abdera2.common.protocol">AbstractResponseContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html#setWebLinks(org.apache.abdera2.common.http.WebLink, org.apache.abdera2.common.http.WebLink...)"><B>setWebLinks(WebLink, WebLink...)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseResponseContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/ResponseContext.html#setWebLinks(org.apache.abdera2.common.http.WebLink, org.apache.abdera2.common.http.WebLink...)"><B>setWebLinks(WebLink, WebLink...)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ResponseContext.html" title="interface in org.apache.abdera2.common.protocol">ResponseContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractWorkspaceManager.html#setWorkspaces(java.util.Collection)"><B>setWorkspaces(Collection&lt;WorkspaceInfo&gt;)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractWorkspaceManager.html" title="class in org.apache.abdera2.common.protocol">AbstractWorkspaceManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/io/DynamicPushbackInputStream.html#shrink()"><B>shrink()</B></A> - 
Method in class org.apache.abdera2.common.io.<A HREF="./org/apache/abdera2/common/io/DynamicPushbackInputStream.html" title="class in org.apache.abdera2.common.io">DynamicPushbackInputStream</A>
<DD>Shrink the buffer.
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/async/DefaultTaskExecutor.html#shutdown()"><B>shutdown()</B></A> - 
Method in class org.apache.abdera2.common.protocol.servlet.async.<A HREF="./org/apache/abdera2/common/protocol/servlet/async/DefaultTaskExecutor.html" title="class in org.apache.abdera2.common.protocol.servlet.async">DefaultTaskExecutor</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/async/TaskExecutor.html#shutdown()"><B>shutdown()</B></A> - 
Method in interface org.apache.abdera2.common.protocol.servlet.async.<A HREF="./org/apache/abdera2/common/protocol/servlet/async/TaskExecutor.html" title="interface in org.apache.abdera2.common.protocol.servlet.async">TaskExecutor</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/pusher/ChannelManager.html#shutdown()"><B>shutdown()</B></A> - 
Method in interface org.apache.abdera2.common.pusher.<A HREF="./org/apache/abdera2/common/pusher/ChannelManager.html" title="interface in org.apache.abdera2.common.pusher">ChannelManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/pusher/MapChannelManager.Channel.html#shutdown()"><B>shutdown()</B></A> - 
Method in class org.apache.abdera2.common.pusher.<A HREF="./org/apache/abdera2/common/pusher/MapChannelManager.Channel.html" title="class in org.apache.abdera2.common.pusher">MapChannelManager.Channel</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/pusher/MapChannelManager.html#shutdown()"><B>shutdown()</B></A> - 
Method in class org.apache.abdera2.common.pusher.<A HREF="./org/apache/abdera2/common/pusher/MapChannelManager.html" title="class in org.apache.abdera2.common.pusher">MapChannelManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/pusher/SimplePusher.html#shutdown()"><B>shutdown()</B></A> - 
Method in class org.apache.abdera2.common.pusher.<A HREF="./org/apache/abdera2/common/pusher/SimplePusher.html" title="class in org.apache.abdera2.common.pusher">SimplePusher</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/pusher/MapChannelManager.html#shutdownChannel(java.lang.String)"><B>shutdownChannel(String)</B></A> - 
Method in class org.apache.abdera2.common.pusher.<A HREF="./org/apache/abdera2/common/pusher/MapChannelManager.html" title="class in org.apache.abdera2.common.pusher">MapChannelManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/pusher/SimpleChannelManager.html" title="class in org.apache.abdera2.common.pusher"><B>SimpleChannelManager</B></A> - Class in <A HREF="./org/apache/abdera2/common/pusher/package-summary.html">org.apache.abdera2.common.pusher</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/pusher/SimpleChannelManager.html#SimpleChannelManager()"><B>SimpleChannelManager()</B></A> - 
Constructor for class org.apache.abdera2.common.pusher.<A HREF="./org/apache/abdera2/common/pusher/SimpleChannelManager.html" title="class in org.apache.abdera2.common.pusher">SimpleChannelManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/pusher/SimplePusher.html" title="class in org.apache.abdera2.common.pusher"><B>SimplePusher</B></A>&lt;<A HREF="./org/apache/abdera2/common/pusher/SimplePusher.html" title="type parameter in SimplePusher">T</A>&gt; - Class in <A HREF="./org/apache/abdera2/common/pusher/package-summary.html">org.apache.abdera2.common.pusher</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/pusher/SimplePusher.html#SimplePusher()"><B>SimplePusher()</B></A> - 
Constructor for class org.apache.abdera2.common.pusher.<A HREF="./org/apache/abdera2/common/pusher/SimplePusher.html" title="class in org.apache.abdera2.common.pusher">SimplePusher</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/SimpleResponseContext.html" title="class in org.apache.abdera2.common.protocol"><B>SimpleResponseContext</B></A> - Class in <A HREF="./org/apache/abdera2/common/protocol/package-summary.html">org.apache.abdera2.common.protocol</A><DD>A simple base implementation of AbstractResponseContext that makes it a bit easier to create custom ResponseContext
 implementations e.g.<DT><A HREF="./org/apache/abdera2/common/protocol/SimpleResponseContext.html#SimpleResponseContext()"><B>SimpleResponseContext()</B></A> - 
Constructor for class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/SimpleResponseContext.html" title="class in org.apache.abdera2.common.protocol">SimpleResponseContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/SimpleResponseContext.html#SimpleResponseContext(java.lang.String)"><B>SimpleResponseContext(String)</B></A> - 
Constructor for class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/SimpleResponseContext.html" title="class in org.apache.abdera2.common.protocol">SimpleResponseContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/SimpleSubjectResolver.html" title="class in org.apache.abdera2.common.protocol"><B>SimpleSubjectResolver</B></A> - Class in <A HREF="./org/apache/abdera2/common/protocol/package-summary.html">org.apache.abdera2.common.protocol</A><DD>The default subject resolver implementation<DT><A HREF="./org/apache/abdera2/common/protocol/SimpleSubjectResolver.html#SimpleSubjectResolver()"><B>SimpleSubjectResolver()</B></A> - 
Constructor for class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/SimpleSubjectResolver.html" title="class in org.apache.abdera2.common.protocol">SimpleSubjectResolver</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/SimpleSubjectResolver.AnonymousPrincipal.html" title="class in org.apache.abdera2.common.protocol"><B>SimpleSubjectResolver.AnonymousPrincipal</B></A> - Class in <A HREF="./org/apache/abdera2/common/protocol/package-summary.html">org.apache.abdera2.common.protocol</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/protocol/SimpleSubjectResolver.AnonymousPrincipal.html#SimpleSubjectResolver.AnonymousPrincipal()"><B>SimpleSubjectResolver.AnonymousPrincipal()</B></A> - 
Constructor for class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/SimpleSubjectResolver.AnonymousPrincipal.html" title="class in org.apache.abdera2.common.protocol">SimpleSubjectResolver.AnonymousPrincipal</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/SimpleTarget.html" title="class in org.apache.abdera2.common.protocol"><B>SimpleTarget</B></A> - Class in <A HREF="./org/apache/abdera2/common/protocol/package-summary.html">org.apache.abdera2.common.protocol</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/protocol/SimpleTarget.html#SimpleTarget(org.apache.abdera2.common.protocol.TargetType, org.apache.abdera2.common.protocol.RequestContext)"><B>SimpleTarget(TargetType, RequestContext)</B></A> - 
Constructor for class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/SimpleTarget.html" title="class in org.apache.abdera2.common.protocol">SimpleTarget</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Coordinates.html#size()"><B>size()</B></A> - 
Method in class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Coordinates.html" title="class in org.apache.abdera2.common.geo">Coordinates</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/lang/SubtagSet.html#size()"><B>size()</B></A> - 
Method in class org.apache.abdera2.common.lang.<A HREF="./org/apache/abdera2/common/lang/SubtagSet.html" title="class in org.apache.abdera2.common.lang">SubtagSet</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/io/DynamicPushbackInputStream.html#skip(long)"><B>skip(long)</B></A> - 
Method in class org.apache.abdera2.common.io.<A HREF="./org/apache/abdera2/common/io/DynamicPushbackInputStream.html" title="class in org.apache.abdera2.common.io">DynamicPushbackInputStream</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/io/RewindableInputStream.html#skip(long)"><B>skip(long)</B></A> - 
Method in class org.apache.abdera2.common.io.<A HREF="./org/apache/abdera2/common/io/RewindableInputStream.html" title="class in org.apache.abdera2.common.io">RewindableInputStream</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/UrlEncoding.DecodingInputStream.html#skip(long)"><B>skip(long)</B></A> - 
Method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/UrlEncoding.DecodingInputStream.html" title="class in org.apache.abdera2.common.text">UrlEncoding.DecodingInputStream</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/UrlEncoding.DecodingReader.html#skip(long)"><B>skip(long)</B></A> - 
Method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/UrlEncoding.DecodingReader.html" title="class in org.apache.abdera2.common.text">UrlEncoding.DecodingReader</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/io/MultipartInputStream.html#skipBoundary()"><B>skipBoundary()</B></A> - 
Method in class org.apache.abdera2.common.io.<A HREF="./org/apache/abdera2/common/io/MultipartInputStream.html" title="class in org.apache.abdera2.common.io">MultipartInputStream</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/Slug.html" title="class in org.apache.abdera2.common.text"><B>Slug</B></A> - Class in <A HREF="./org/apache/abdera2/common/text/package-summary.html">org.apache.abdera2.common.text</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/http/CacheControl.html#smax_age"><B>smax_age</B></A> - 
Variable in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/CacheControl.html" title="class in org.apache.abdera2.common.http">CacheControl</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Coordinates.html#sort()"><B>sort()</B></A> - 
Method in class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Coordinates.html" title="class in org.apache.abdera2.common.geo">Coordinates</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Coordinates.html#sort(boolean)"><B>sort(boolean)</B></A> - 
Method in class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Coordinates.html" title="class in org.apache.abdera2.common.geo">Coordinates</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#SOURCE"><B>SOURCE</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#SPACE"><B>SPACE</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/CharUtils.html#splitAndTrim(java.lang.String)"><B>splitAndTrim(String)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/CharUtils.html" title="class in org.apache.abdera2.common.text">CharUtils</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Localizer.html#sprintf(java.lang.String, java.lang.Object...)"><B>sprintf(String, Object...)</B></A> - 
Static method in class org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Localizer.html" title="class in org.apache.abdera2.common">Localizer</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Localizer.html#sprintfValue(java.lang.String, java.lang.Object...)"><B>sprintfValue(String, Object...)</B></A> - 
Method in class org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Localizer.html" title="class in org.apache.abdera2.common">Localizer</A>
<DD>Use the JDK 1.5 sprintf style Formatter
<DT><A HREF="./org/apache/abdera2/common/Constants.html#SRC"><B>SRC</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/CacheControl.html#staleiferror"><B>staleiferror</B></A> - 
Variable in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/CacheControl.html" title="class in org.apache.abdera2.common.http">CacheControl</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/CacheControl.html#stalewhilerevalidate"><B>stalewhilerevalidate</B></A> - 
Variable in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/CacheControl.html" title="class in org.apache.abdera2.common.http">CacheControl</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractCollectionAdapter.html#start(org.apache.abdera2.common.protocol.RequestContext)"><B>start(RequestContext)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractCollectionAdapter.html" title="class in org.apache.abdera2.common.protocol">AbstractCollectionAdapter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/Transactional.html#start(org.apache.abdera2.common.protocol.RequestContext)"><B>start(RequestContext)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/Transactional.html" title="interface in org.apache.abdera2.common.protocol">Transactional</A>
<DD>Called by the provider before dispatching the request to the adapter
<DT><A HREF="./org/apache/abdera2/common/pusher/Receiver.html#startListening(org.apache.abdera2.common.pusher.Listener)"><B>startListening(Listener&lt;T&gt;)</B></A> - 
Method in interface org.apache.abdera2.common.pusher.<A HREF="./org/apache/abdera2/common/pusher/Receiver.html" title="interface in org.apache.abdera2.common.pusher">Receiver</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/pusher/SimplePusher.html#startListening(org.apache.abdera2.common.pusher.Listener)"><B>startListening(Listener&lt;T&gt;)</B></A> - 
Method in class org.apache.abdera2.common.pusher.<A HREF="./org/apache/abdera2/common/pusher/SimplePusher.html" title="class in org.apache.abdera2.common.pusher">SimplePusher</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/async/DefaultTaskExecutor.html#startWorker(java.lang.Runnable)"><B>startWorker(Runnable)</B></A> - 
Method in class org.apache.abdera2.common.protocol.servlet.async.<A HREF="./org/apache/abdera2/common/protocol/servlet/async/DefaultTaskExecutor.html" title="class in org.apache.abdera2.common.protocol.servlet.async">DefaultTaskExecutor</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/async/TaskExecutor.html#startWorker(java.lang.Runnable)"><B>startWorker(Runnable)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.servlet.async.<A HREF="./org/apache/abdera2/common/protocol/servlet/async/TaskExecutor.html" title="interface in org.apache.abdera2.common.protocol.servlet.async">TaskExecutor</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html#status"><B>status</B></A> - 
Variable in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html" title="class in org.apache.abdera2.common.protocol">AbstractResponseContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html#status_text"><B>status_text</B></A> - 
Variable in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractResponseContext.html" title="class in org.apache.abdera2.common.protocol">AbstractResponseContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/pusher/Receiver.html#stopListening(org.apache.abdera2.common.pusher.Listener)"><B>stopListening(Listener&lt;T&gt;)</B></A> - 
Method in interface org.apache.abdera2.common.pusher.<A HREF="./org/apache/abdera2/common/pusher/Receiver.html" title="interface in org.apache.abdera2.common.pusher">Receiver</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/pusher/SimplePusher.html#stopListening(org.apache.abdera2.common.pusher.Listener)"><B>stopListening(Listener&lt;T&gt;)</B></A> - 
Method in class org.apache.abdera2.common.pusher.<A HREF="./org/apache/abdera2/common/pusher/SimplePusher.html" title="class in org.apache.abdera2.common.pusher">SimplePusher</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/DelegatingContext.html#subcontext"><B>subcontext</B></A> - 
Variable in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/DelegatingContext.html" title="class in org.apache.abdera2.common.templates">DelegatingContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractBaseRequestContext.html#subject"><B>subject</B></A> - 
Variable in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractBaseRequestContext.html" title="class in org.apache.abdera2.common.protocol">AbstractBaseRequestContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/async/DefaultProcessor.html#submit(javax.servlet.AsyncContext, org.apache.abdera2.common.protocol.Provider, org.apache.abdera2.common.protocol.RequestContext)"><B>submit(AsyncContext, Provider, RequestContext)</B></A> - 
Method in class org.apache.abdera2.common.protocol.servlet.async.<A HREF="./org/apache/abdera2/common/protocol/servlet/async/DefaultProcessor.html" title="class in org.apache.abdera2.common.protocol.servlet.async">DefaultProcessor</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/async/Processor.html#submit(javax.servlet.AsyncContext, org.apache.abdera2.common.protocol.Provider, org.apache.abdera2.common.protocol.RequestContext)"><B>submit(AsyncContext, Provider, RequestContext)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.servlet.async.<A HREF="./org/apache/abdera2/common/protocol/servlet/async/Processor.html" title="interface in org.apache.abdera2.common.protocol.servlet.async">Processor</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/lang/Subtag.html" title="class in org.apache.abdera2.common.lang"><B>Subtag</B></A> - Class in <A HREF="./org/apache/abdera2/common/lang/package-summary.html">org.apache.abdera2.common.lang</A><DD>A Language Tab Subtag.<DT><A HREF="./org/apache/abdera2/common/lang/Subtag.html#Subtag(org.apache.abdera2.common.lang.Subtag.Type, java.lang.String)"><B>Subtag(Subtag.Type, String)</B></A> - 
Constructor for class org.apache.abdera2.common.lang.<A HREF="./org/apache/abdera2/common/lang/Subtag.html" title="class in org.apache.abdera2.common.lang">Subtag</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/lang/Subtag.html#Subtag(org.apache.abdera2.common.lang.Subtag.Type, java.lang.String, org.apache.abdera2.common.lang.Subtag)"><B>Subtag(Subtag.Type, String, Subtag)</B></A> - 
Constructor for class org.apache.abdera2.common.lang.<A HREF="./org/apache/abdera2/common/lang/Subtag.html" title="class in org.apache.abdera2.common.lang">Subtag</A>
<DD>Create a Subtag
<DT><A HREF="./org/apache/abdera2/common/lang/Subtag.Type.html" title="enum in org.apache.abdera2.common.lang"><B>Subtag.Type</B></A> - Enum in <A HREF="./org/apache/abdera2/common/lang/package-summary.html">org.apache.abdera2.common.lang</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/lang/SubtagSet.html" title="class in org.apache.abdera2.common.lang"><B>SubtagSet</B></A> - Class in <A HREF="./org/apache/abdera2/common/lang/package-summary.html">org.apache.abdera2.common.lang</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/lang/SubtagSet.html#SubtagSet(org.apache.abdera2.common.lang.Subtag)"><B>SubtagSet(Subtag)</B></A> - 
Constructor for class org.apache.abdera2.common.lang.<A HREF="./org/apache/abdera2/common/lang/SubtagSet.html" title="class in org.apache.abdera2.common.lang">SubtagSet</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/lang/SubtagSet.SubtagIterator.html" title="class in org.apache.abdera2.common.lang"><B>SubtagSet.SubtagIterator</B></A> - Class in <A HREF="./org/apache/abdera2/common/lang/package-summary.html">org.apache.abdera2.common.lang</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/Constants.html#SUBTITLE"><B>SUBTITLE</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#SUMMARY"><B>SUMMARY</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
</DL>
<HR>
<A NAME="_T_"><!-- --></A><H2>
<B>T</B></H2>
<DL>
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractBaseRequestContext.html#target"><B>target</B></A> - 
Variable in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractBaseRequestContext.html" title="class in org.apache.abdera2.common.protocol">AbstractBaseRequestContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/Target.html" title="interface in org.apache.abdera2.common.protocol"><B>Target</B></A> - Interface in <A HREF="./org/apache/abdera2/common/protocol/package-summary.html">org.apache.abdera2.common.protocol</A><DD>Identifies the target of the request.<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractWorkspaceProvider.html#targetBuilder"><B>targetBuilder</B></A> - 
Variable in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractWorkspaceProvider.html" title="class in org.apache.abdera2.common.protocol">AbstractWorkspaceProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/TargetBuilder.html" title="interface in org.apache.abdera2.common.protocol"><B>TargetBuilder</B></A>&lt;<A HREF="./org/apache/abdera2/common/protocol/TargetBuilder.html" title="type parameter in TargetBuilder">T</A>&gt; - Interface in <A HREF="./org/apache/abdera2/common/protocol/package-summary.html">org.apache.abdera2.common.protocol</A><DD>The TargetBuilder component is responsible for constructing appropriate IRIs/URIs for various kinds of targets based
 on specified input parameters.<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractWorkspaceProvider.html#targetResolver"><B>targetResolver</B></A> - 
Variable in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractWorkspaceProvider.html" title="class in org.apache.abdera2.common.protocol">AbstractWorkspaceProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/RouteManager.html#targets"><B>targets</B></A> - 
Variable in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/RouteManager.html" title="class in org.apache.abdera2.common.protocol">RouteManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/RouteManager.RouteTargetType.html#targetType"><B>targetType</B></A> - 
Variable in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/RouteManager.RouteTargetType.html" title="class in org.apache.abdera2.common.protocol">RouteManager.RouteTargetType</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/TargetType.html" title="class in org.apache.abdera2.common.protocol"><B>TargetType</B></A> - Class in <A HREF="./org/apache/abdera2/common/protocol/package-summary.html">org.apache.abdera2.common.protocol</A><DD>Identifies the type of resource being requests.<DT><A HREF="./org/apache/abdera2/common/protocol/ServiceManager.html#TASKEXECUTOR"><B>TASKEXECUTOR</B></A> - 
Static variable in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ServiceManager.html" title="interface in org.apache.abdera2.common.protocol">ServiceManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/async/TaskExecutor.html" title="interface in org.apache.abdera2.common.protocol.servlet.async"><B>TaskExecutor</B></A> - Interface in <A HREF="./org/apache/abdera2/common/protocol/servlet/async/package-summary.html">org.apache.abdera2.common.protocol.servlet.async</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/templates/Template.html" title="class in org.apache.abdera2.common.templates"><B>Template</B></A> - Class in <A HREF="./org/apache/abdera2/common/templates/package-summary.html">org.apache.abdera2.common.templates</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/templates/Template.html#Template(java.lang.String)"><B>Template(String)</B></A> - 
Constructor for class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/Template.html" title="class in org.apache.abdera2.common.templates">Template</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/Template.html#Template(java.lang.Object)"><B>Template(Object)</B></A> - 
Constructor for class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/Template.html" title="class in org.apache.abdera2.common.templates">Template</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/QueryContext.html#templateFromContext(org.apache.abdera2.common.templates.Context, boolean)"><B>templateFromContext(Context, boolean)</B></A> - 
Static method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/QueryContext.html" title="class in org.apache.abdera2.common.templates">QueryContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/QueryContext.html#templateFromQuery(java.lang.String, boolean, org.apache.abdera2.common.templates.Context)"><B>templateFromQuery(String, boolean, Context)</B></A> - 
Static method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/QueryContext.html" title="class in org.apache.abdera2.common.templates">QueryContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/TemplateManager.html" title="class in org.apache.abdera2.common.templates"><B>TemplateManager</B></A>&lt;<A HREF="./org/apache/abdera2/common/templates/TemplateManager.html" title="type parameter in TemplateManager">T</A>&gt; - Class in <A HREF="./org/apache/abdera2/common/templates/package-summary.html">org.apache.abdera2.common.templates</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/templates/TemplateManager.html#TemplateManager(java.lang.String)"><B>TemplateManager(String)</B></A> - 
Constructor for class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/TemplateManager.html" title="class in org.apache.abdera2.common.templates">TemplateManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/TemplateManager.html#TemplateManager(org.apache.abdera2.common.iri.IRI)"><B>TemplateManager(IRI)</B></A> - 
Constructor for class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/TemplateManager.html" title="class in org.apache.abdera2.common.templates">TemplateManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/TemplateManager.html#TemplateManager()"><B>TemplateManager()</B></A> - 
Constructor for class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/TemplateManager.html" title="class in org.apache.abdera2.common.templates">TemplateManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/TemplateManager.html#TemplateManager(java.lang.String, boolean)"><B>TemplateManager(String, boolean)</B></A> - 
Constructor for class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/TemplateManager.html" title="class in org.apache.abdera2.common.templates">TemplateManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/TemplateManager.html#TemplateManager(org.apache.abdera2.common.iri.IRI, boolean)"><B>TemplateManager(IRI, boolean)</B></A> - 
Constructor for class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/TemplateManager.html" title="class in org.apache.abdera2.common.templates">TemplateManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/TemplateManager.html#TemplateManager(boolean)"><B>TemplateManager(boolean)</B></A> - 
Constructor for class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/TemplateManager.html" title="class in org.apache.abdera2.common.templates">TemplateManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/TemplateManager.html#TemplateManager(java.lang.String, org.apache.abdera2.common.templates.Context)"><B>TemplateManager(String, Context)</B></A> - 
Constructor for class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/TemplateManager.html" title="class in org.apache.abdera2.common.templates">TemplateManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/TemplateManager.html#TemplateManager(org.apache.abdera2.common.iri.IRI, org.apache.abdera2.common.templates.Context)"><B>TemplateManager(IRI, Context)</B></A> - 
Constructor for class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/TemplateManager.html" title="class in org.apache.abdera2.common.templates">TemplateManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/TemplateManager.html#TemplateManager(org.apache.abdera2.common.templates.Context)"><B>TemplateManager(Context)</B></A> - 
Constructor for class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/TemplateManager.html" title="class in org.apache.abdera2.common.templates">TemplateManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/TemplateManager.html#TemplateManager(java.lang.String, java.lang.Object)"><B>TemplateManager(String, Object)</B></A> - 
Constructor for class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/TemplateManager.html" title="class in org.apache.abdera2.common.templates">TemplateManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/TemplateManager.html#TemplateManager(org.apache.abdera2.common.iri.IRI, java.lang.Object)"><B>TemplateManager(IRI, Object)</B></A> - 
Constructor for class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/TemplateManager.html" title="class in org.apache.abdera2.common.templates">TemplateManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/TemplateManager.html#TemplateManager(java.lang.Object)"><B>TemplateManager(Object)</B></A> - 
Constructor for class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/TemplateManager.html" title="class in org.apache.abdera2.common.templates">TemplateManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/TemplateManager.html#TemplateManager(java.lang.Object, boolean)"><B>TemplateManager(Object, boolean)</B></A> - 
Constructor for class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/TemplateManager.html" title="class in org.apache.abdera2.common.templates">TemplateManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/TemplateManager.html#TemplateManager(java.lang.String, java.lang.Object, boolean)"><B>TemplateManager(String, Object, boolean)</B></A> - 
Constructor for class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/TemplateManager.html" title="class in org.apache.abdera2.common.templates">TemplateManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/TemplateManager.html#TemplateManager(org.apache.abdera2.common.iri.IRI, java.lang.Object, boolean)"><B>TemplateManager(IRI, Object, boolean)</B></A> - 
Constructor for class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/TemplateManager.html" title="class in org.apache.abdera2.common.templates">TemplateManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/TemplateManagerTargetBuilder.html" title="class in org.apache.abdera2.common.protocol"><B>TemplateManagerTargetBuilder</B></A>&lt;<A HREF="./org/apache/abdera2/common/protocol/TemplateManagerTargetBuilder.html" title="type parameter in TemplateManagerTargetBuilder">T</A>&gt; - Class in <A HREF="./org/apache/abdera2/common/protocol/package-summary.html">org.apache.abdera2.common.protocol</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/protocol/TemplateManagerTargetBuilder.html#TemplateManagerTargetBuilder()"><B>TemplateManagerTargetBuilder()</B></A> - 
Constructor for class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/TemplateManagerTargetBuilder.html" title="class in org.apache.abdera2.common.protocol">TemplateManagerTargetBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/TemplateManagerTargetBuilder.html#TemplateManagerTargetBuilder(boolean)"><B>TemplateManagerTargetBuilder(boolean)</B></A> - 
Constructor for class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/TemplateManagerTargetBuilder.html" title="class in org.apache.abdera2.common.protocol">TemplateManagerTargetBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/TemplateManagerTargetBuilder.html#TemplateManagerTargetBuilder(org.apache.abdera2.common.templates.Context)"><B>TemplateManagerTargetBuilder(Context)</B></A> - 
Constructor for class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/TemplateManagerTargetBuilder.html" title="class in org.apache.abdera2.common.protocol">TemplateManagerTargetBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/TemplateManagerTargetBuilder.html#TemplateManagerTargetBuilder(org.apache.abdera2.common.iri.IRI, boolean)"><B>TemplateManagerTargetBuilder(IRI, boolean)</B></A> - 
Constructor for class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/TemplateManagerTargetBuilder.html" title="class in org.apache.abdera2.common.protocol">TemplateManagerTargetBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/TemplateManagerTargetBuilder.html#TemplateManagerTargetBuilder(org.apache.abdera2.common.iri.IRI, org.apache.abdera2.common.templates.Context)"><B>TemplateManagerTargetBuilder(IRI, Context)</B></A> - 
Constructor for class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/TemplateManagerTargetBuilder.html" title="class in org.apache.abdera2.common.protocol">TemplateManagerTargetBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/TemplateManagerTargetBuilder.html#TemplateManagerTargetBuilder(org.apache.abdera2.common.iri.IRI, java.lang.Object, boolean)"><B>TemplateManagerTargetBuilder(IRI, Object, boolean)</B></A> - 
Constructor for class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/TemplateManagerTargetBuilder.html" title="class in org.apache.abdera2.common.protocol">TemplateManagerTargetBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/TemplateManagerTargetBuilder.html#TemplateManagerTargetBuilder(org.apache.abdera2.common.iri.IRI, java.lang.Object)"><B>TemplateManagerTargetBuilder(IRI, Object)</B></A> - 
Constructor for class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/TemplateManagerTargetBuilder.html" title="class in org.apache.abdera2.common.protocol">TemplateManagerTargetBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/TemplateManagerTargetBuilder.html#TemplateManagerTargetBuilder(org.apache.abdera2.common.iri.IRI)"><B>TemplateManagerTargetBuilder(IRI)</B></A> - 
Constructor for class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/TemplateManagerTargetBuilder.html" title="class in org.apache.abdera2.common.protocol">TemplateManagerTargetBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/TemplateManagerTargetBuilder.html#TemplateManagerTargetBuilder(java.lang.Object, boolean)"><B>TemplateManagerTargetBuilder(Object, boolean)</B></A> - 
Constructor for class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/TemplateManagerTargetBuilder.html" title="class in org.apache.abdera2.common.protocol">TemplateManagerTargetBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/TemplateManagerTargetBuilder.html#TemplateManagerTargetBuilder(java.lang.Object)"><B>TemplateManagerTargetBuilder(Object)</B></A> - 
Constructor for class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/TemplateManagerTargetBuilder.html" title="class in org.apache.abdera2.common.protocol">TemplateManagerTargetBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/TemplateManagerTargetBuilder.html#TemplateManagerTargetBuilder(java.lang.String, boolean)"><B>TemplateManagerTargetBuilder(String, boolean)</B></A> - 
Constructor for class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/TemplateManagerTargetBuilder.html" title="class in org.apache.abdera2.common.protocol">TemplateManagerTargetBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/TemplateManagerTargetBuilder.html#TemplateManagerTargetBuilder(java.lang.String, org.apache.abdera2.common.templates.Context)"><B>TemplateManagerTargetBuilder(String, Context)</B></A> - 
Constructor for class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/TemplateManagerTargetBuilder.html" title="class in org.apache.abdera2.common.protocol">TemplateManagerTargetBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/TemplateManagerTargetBuilder.html#TemplateManagerTargetBuilder(java.lang.String, java.lang.Object, boolean)"><B>TemplateManagerTargetBuilder(String, Object, boolean)</B></A> - 
Constructor for class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/TemplateManagerTargetBuilder.html" title="class in org.apache.abdera2.common.protocol">TemplateManagerTargetBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/TemplateManagerTargetBuilder.html#TemplateManagerTargetBuilder(java.lang.String, java.lang.Object)"><B>TemplateManagerTargetBuilder(String, Object)</B></A> - 
Constructor for class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/TemplateManagerTargetBuilder.html" title="class in org.apache.abdera2.common.protocol">TemplateManagerTargetBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/TemplateManagerTargetBuilder.html#TemplateManagerTargetBuilder(java.lang.String)"><B>TemplateManagerTargetBuilder(String)</B></A> - 
Constructor for class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/TemplateManagerTargetBuilder.html" title="class in org.apache.abdera2.common.protocol">TemplateManagerTargetBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/TemplateProvider.html" title="interface in org.apache.abdera2.common.templates"><B>TemplateProvider</B></A> - Interface in <A HREF="./org/apache/abdera2/common/templates/package-summary.html">org.apache.abdera2.common.templates</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/Constants.html#TERM"><B>TERM</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/servlet/async/DefaultTaskExecutor.html#TERMINATION_TIMEOUT"><B>TERMINATION_TIMEOUT</B></A> - 
Static variable in class org.apache.abdera2.common.protocol.servlet.async.<A HREF="./org/apache/abdera2/common/protocol/servlet/async/DefaultTaskExecutor.html" title="class in org.apache.abdera2.common.protocol.servlet.async">DefaultTaskExecutor</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#TEXT"><B>TEXT</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#TITLE"><B>TITLE</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BasicWorkspaceInfo.html#title"><B>title</B></A> - 
Variable in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BasicWorkspaceInfo.html" title="class in org.apache.abdera2.common.protocol">BasicWorkspaceInfo</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/lang/SubtagSet.html#toArray()"><B>toArray()</B></A> - 
Method in class org.apache.abdera2.common.lang.<A HREF="./org/apache/abdera2/common/lang/SubtagSet.html" title="class in org.apache.abdera2.common.lang">SubtagSet</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/iri/IRI.html#toASCIIString()"><B>toASCIIString()</B></A> - 
Method in class org.apache.abdera2.common.iri.<A HREF="./org/apache/abdera2/common/iri/IRI.html" title="class in org.apache.abdera2.common.iri">IRI</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/lang/Range.html#toBasicRange()"><B>toBasicRange()</B></A> - 
Method in class org.apache.abdera2.common.lang.<A HREF="./org/apache/abdera2/common/lang/Range.html" title="class in org.apache.abdera2.common.lang">Range</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/CacheControl.html#toggle(boolean, int)"><B>toggle(boolean, int)</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/CacheControl.html" title="class in org.apache.abdera2.common.http">CacheControl</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Coordinate.html#toIsoString()"><B>toIsoString()</B></A> - 
Method in class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Coordinate.html" title="class in org.apache.abdera2.common.geo">Coordinate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/QualityHelper.QToken.html#token()"><B>token()</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/QualityHelper.QToken.html" title="class in org.apache.abdera2.common.http">QualityHelper.QToken</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/date/DateTime.html#toString()"><B>toString()</B></A> - 
Method in class org.apache.abdera2.common.date.<A HREF="./org/apache/abdera2/common/date/DateTime.html" title="class in org.apache.abdera2.common.date">DateTime</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Coordinate.html#toString()"><B>toString()</B></A> - 
Method in class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Coordinate.html" title="class in org.apache.abdera2.common.geo">Coordinate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Coordinates.html#toString()"><B>toString()</B></A> - 
Method in class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Coordinates.html" title="class in org.apache.abdera2.common.geo">Coordinates</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/IsoPosition.html#toString(boolean)"><B>toString(boolean)</B></A> - 
Method in class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/IsoPosition.html" title="class in org.apache.abdera2.common.geo">IsoPosition</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/IsoPosition.html#toString()"><B>toString()</B></A> - 
Method in class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/IsoPosition.html" title="class in org.apache.abdera2.common.geo">IsoPosition</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/Authentication.html#toString()"><B>toString()</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/Authentication.html" title="class in org.apache.abdera2.common.http">Authentication</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/Authentication.html#toString(org.apache.abdera2.common.http.Authentication, org.apache.abdera2.common.http.Authentication...)"><B>toString(Authentication, Authentication...)</B></A> - 
Static method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/Authentication.html" title="class in org.apache.abdera2.common.http">Authentication</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/Authentication.html#toString(java.lang.Iterable)"><B>toString(Iterable&lt;Authentication&gt;)</B></A> - 
Static method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/Authentication.html" title="class in org.apache.abdera2.common.http">Authentication</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/CacheControl.html#toString()"><B>toString()</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/CacheControl.html" title="class in org.apache.abdera2.common.http">CacheControl</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/EntityTag.html#toString()"><B>toString()</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/EntityTag.html" title="class in org.apache.abdera2.common.http">EntityTag</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/EntityTag.html#toString(org.apache.abdera2.common.http.EntityTag, org.apache.abdera2.common.http.EntityTag...)"><B>toString(EntityTag, EntityTag...)</B></A> - 
Static method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/EntityTag.html" title="class in org.apache.abdera2.common.http">EntityTag</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/EntityTag.html#toString(java.lang.String, java.lang.String...)"><B>toString(String, String...)</B></A> - 
Static method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/EntityTag.html" title="class in org.apache.abdera2.common.http">EntityTag</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/EntityTag.html#toString(java.lang.Iterable)"><B>toString(Iterable&lt;EntityTag&gt;)</B></A> - 
Static method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/EntityTag.html" title="class in org.apache.abdera2.common.http">EntityTag</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/Method.html#toString()"><B>toString()</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/Method.html" title="class in org.apache.abdera2.common.http">Method</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/Preference.html#toString()"><B>toString()</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/Preference.html" title="class in org.apache.abdera2.common.http">Preference</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/Preference.html#toString(org.apache.abdera2.common.http.Preference, org.apache.abdera2.common.http.Preference...)"><B>toString(Preference, Preference...)</B></A> - 
Static method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/Preference.html" title="class in org.apache.abdera2.common.http">Preference</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/Preference.html#toString(java.lang.Iterable)"><B>toString(Iterable&lt;Preference&gt;)</B></A> - 
Static method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/Preference.html" title="class in org.apache.abdera2.common.http">Preference</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/QualityHelper.QToken.html#toString()"><B>toString()</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/QualityHelper.QToken.html" title="class in org.apache.abdera2.common.http">QualityHelper.QToken</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/WebLink.html#toString()"><B>toString()</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/WebLink.html" title="class in org.apache.abdera2.common.http">WebLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/WebLink.html#toString(org.apache.abdera2.common.http.WebLink, org.apache.abdera2.common.http.WebLink...)"><B>toString(WebLink, WebLink...)</B></A> - 
Static method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/WebLink.html" title="class in org.apache.abdera2.common.http">WebLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/WebLink.html#toString(java.lang.Iterable)"><B>toString(Iterable&lt;WebLink&gt;)</B></A> - 
Static method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/WebLink.html" title="class in org.apache.abdera2.common.http">WebLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/iri/AbstractScheme.html#toString()"><B>toString()</B></A> - 
Method in class org.apache.abdera2.common.iri.<A HREF="./org/apache/abdera2/common/iri/AbstractScheme.html" title="class in org.apache.abdera2.common.iri">AbstractScheme</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/iri/IRI.html#toString()"><B>toString()</B></A> - 
Method in class org.apache.abdera2.common.iri.<A HREF="./org/apache/abdera2/common/iri/IRI.html" title="class in org.apache.abdera2.common.iri">IRI</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/lang/Subtag.html#toString()"><B>toString()</B></A> - 
Method in class org.apache.abdera2.common.lang.<A HREF="./org/apache/abdera2/common/lang/Subtag.html" title="class in org.apache.abdera2.common.lang">Subtag</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/lang/SubtagSet.html#toString()"><B>toString()</B></A> - 
Method in class org.apache.abdera2.common.lang.<A HREF="./org/apache/abdera2/common/lang/SubtagSet.html" title="class in org.apache.abdera2.common.lang">SubtagSet</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/RegexTargetResolver.RegexTarget.html#toString()"><B>toString()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/RegexTargetResolver.RegexTarget.html" title="class in org.apache.abdera2.common.protocol">RegexTargetResolver.RegexTarget</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/RegexTargetResolver.html#toString()"><B>toString()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/RegexTargetResolver.html" title="class in org.apache.abdera2.common.protocol">RegexTargetResolver</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/SimpleSubjectResolver.AnonymousPrincipal.html#toString()"><B>toString()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/SimpleSubjectResolver.AnonymousPrincipal.html" title="class in org.apache.abdera2.common.protocol">SimpleSubjectResolver.AnonymousPrincipal</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/SimpleTarget.html#toString()"><B>toString()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/SimpleTarget.html" title="class in org.apache.abdera2.common.protocol">SimpleTarget</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/TargetType.html#toString()"><B>toString()</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/TargetType.html" title="class in org.apache.abdera2.common.protocol">TargetType</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/DefaultingContext.html#toString()"><B>toString()</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/DefaultingContext.html" title="class in org.apache.abdera2.common.templates">DefaultingContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/Expression.html#toString()"><B>toString()</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/Expression.html" title="class in org.apache.abdera2.common.templates">Expression</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/Route.html#toString()"><B>toString()</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/Route.html" title="class in org.apache.abdera2.common.templates">Route</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/Template.html#toString()"><B>toString()</B></A> - 
Method in class org.apache.abdera2.common.templates.<A HREF="./org/apache/abdera2/common/templates/Template.html" title="class in org.apache.abdera2.common.templates">Template</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/Slug.html#toString()"><B>toString()</B></A> - 
Method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/Slug.html" title="class in org.apache.abdera2.common.text">Slug</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/iri/IRI.html#toURI()"><B>toURI()</B></A> - 
Method in class org.apache.abdera2.common.iri.<A HREF="./org/apache/abdera2/common/iri/IRI.html" title="class in org.apache.abdera2.common.iri">IRI</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/iri/IRI.html#toURL()"><B>toURL()</B></A> - 
Method in class org.apache.abdera2.common.iri.<A HREF="./org/apache/abdera2/common/iri/IRI.html" title="class in org.apache.abdera2.common.iri">IRI</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/Method.html#TRACE"><B>TRACE</B></A> - 
Static variable in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/Method.html" title="class in org.apache.abdera2.common.http">Method</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/iri/IRI.html#trailingSlash()"><B>trailingSlash()</B></A> - 
Method in class org.apache.abdera2.common.iri.<A HREF="./org/apache/abdera2/common/iri/IRI.html" title="class in org.apache.abdera2.common.iri">IRI</A>
<DD>Returns a new IRI with a trailing slash appended to the path, if necessary.
<DT><A HREF="./org/apache/abdera2/common/protocol/Transactional.html" title="interface in org.apache.abdera2.common.protocol"><B>Transactional</B></A> - Interface in <A HREF="./org/apache/abdera2/common/protocol/package-summary.html">org.apache.abdera2.common.protocol</A><DD>CollectionAdapter implementations can implement the Transactional interface in order to support start/end/compensate
 behaviors.<DT><A HREF="./org/apache/abdera2/common/protocol/BaseProvider.html#transactionCompensate(org.apache.abdera2.common.protocol.Transactional, org.apache.abdera2.common.protocol.RequestContext, java.lang.Throwable)"><B>transactionCompensate(Transactional, RequestContext, Throwable)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseProvider.html" title="class in org.apache.abdera2.common.protocol">BaseProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseProvider.html#transactionEnd(org.apache.abdera2.common.protocol.Transactional, org.apache.abdera2.common.protocol.RequestContext, org.apache.abdera2.common.protocol.ResponseContext)"><B>transactionEnd(Transactional, RequestContext, ResponseContext)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseProvider.html" title="class in org.apache.abdera2.common.protocol">BaseProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseProvider.html#transactionStart(org.apache.abdera2.common.protocol.Transactional, org.apache.abdera2.common.protocol.RequestContext)"><B>transactionStart(Transactional, RequestContext)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseProvider.html" title="class in org.apache.abdera2.common.protocol">BaseProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#TYPE"><B>TYPE</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/lang/Subtag.html#type()"><B>type()</B></A> - 
Method in class org.apache.abdera2.common.lang.<A HREF="./org/apache/abdera2/common/lang/Subtag.html" title="class in org.apache.abdera2.common.lang">Subtag</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/lang/SubtagSet.SubtagIterator.html#type()"><B>type()</B></A> - 
Method in class org.apache.abdera2.common.lang.<A HREF="./org/apache/abdera2/common/lang/SubtagSet.SubtagIterator.html" title="class in org.apache.abdera2.common.lang">SubtagSet.SubtagIterator</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/SimpleTarget.html#type"><B>type</B></A> - 
Variable in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/SimpleTarget.html" title="class in org.apache.abdera2.common.protocol">SimpleTarget</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/TargetType.html#TYPE_CATEGORIES"><B>TYPE_CATEGORIES</B></A> - 
Static variable in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/TargetType.html" title="class in org.apache.abdera2.common.protocol">TargetType</A>
<DD>An Atompub Categories Document
<DT><A HREF="./org/apache/abdera2/common/protocol/TargetType.html#TYPE_COLLECTION"><B>TYPE_COLLECTION</B></A> - 
Static variable in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/TargetType.html" title="class in org.apache.abdera2.common.protocol">TargetType</A>
<DD>An Atom Feed Document representing an Atompub Collection
<DT><A HREF="./org/apache/abdera2/common/protocol/TargetType.html#TYPE_ENTRY"><B>TYPE_ENTRY</B></A> - 
Static variable in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/TargetType.html" title="class in org.apache.abdera2.common.protocol">TargetType</A>
<DD>An Atompub Collection member entry
<DT><A HREF="./org/apache/abdera2/common/protocol/TargetType.html#TYPE_MEDIA"><B>TYPE_MEDIA</B></A> - 
Static variable in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/TargetType.html" title="class in org.apache.abdera2.common.protocol">TargetType</A>
<DD>An Atompub Collection media resource
<DT><A HREF="./org/apache/abdera2/common/protocol/TargetType.html#TYPE_NOT_FOUND"><B>TYPE_NOT_FOUND</B></A> - 
Static variable in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/TargetType.html" title="class in org.apache.abdera2.common.protocol">TargetType</A>
<DD>A not found target type
<DT><A HREF="./org/apache/abdera2/common/protocol/TargetType.html#TYPE_SERVICE"><B>TYPE_SERVICE</B></A> - 
Static variable in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/TargetType.html" title="class in org.apache.abdera2.common.protocol">TargetType</A>
<DD>An Atompub Service Document
<DT><A HREF="./org/apache/abdera2/common/protocol/TargetType.html#TYPE_UNKNOWN"><B>TYPE_UNKNOWN</B></A> - 
Static variable in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/TargetType.html" title="class in org.apache.abdera2.common.protocol">TargetType</A>
<DD>An unknown target type
</DL>
<HR>
<A NAME="_U_"><!-- --></A><H2>
<B>U</B></H2>
<DL>
<DT><A HREF="./org/apache/abdera2/common/protocol/ProviderHelper.html#unauthorized(org.apache.abdera2.common.protocol.RequestContext, java.lang.String)"><B>unauthorized(RequestContext, String)</B></A> - 
Static method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ProviderHelper.html" title="class in org.apache.abdera2.common.protocol">ProviderHelper</A>
<DD>Return an unauthorized error
<DT><A HREF="./org/apache/abdera2/common/protocol/ProviderHelper.html#unauthorized(org.apache.abdera2.common.protocol.RequestContext)"><B>unauthorized(RequestContext)</B></A> - 
Static method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ProviderHelper.html" title="class in org.apache.abdera2.common.protocol">ProviderHelper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/ProviderHelper.html#unavailable(org.apache.abdera2.common.protocol.RequestContext, java.lang.String)"><B>unavailable(RequestContext, String)</B></A> - 
Static method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ProviderHelper.html" title="class in org.apache.abdera2.common.protocol">ProviderHelper</A>
<DD>Return a service unavailable error
<DT><A HREF="./org/apache/abdera2/common/protocol/ProviderHelper.html#unavailable(org.apache.abdera2.common.protocol.RequestContext)"><B>unavailable(RequestContext)</B></A> - 
Static method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ProviderHelper.html" title="class in org.apache.abdera2.common.protocol">ProviderHelper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/TargetType.html#UNKNOWN"><B>UNKNOWN</B></A> - 
Static variable in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/TargetType.html" title="class in org.apache.abdera2.common.protocol">TargetType</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/CharUtils.html#unquote(java.lang.String)"><B>unquote(String)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/CharUtils.html" title="class in org.apache.abdera2.common.text">CharUtils</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/io/DynamicPushbackInputStream.html#unread(byte[], int, int)"><B>unread(byte[], int, int)</B></A> - 
Method in class org.apache.abdera2.common.io.<A HREF="./org/apache/abdera2/common/io/DynamicPushbackInputStream.html" title="class in org.apache.abdera2.common.io">DynamicPushbackInputStream</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/io/DynamicPushbackInputStream.html#unread(int)"><B>unread(int)</B></A> - 
Method in class org.apache.abdera2.common.io.<A HREF="./org/apache/abdera2/common/io/DynamicPushbackInputStream.html" title="class in org.apache.abdera2.common.io">DynamicPushbackInputStream</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/CharUtils.html#unwrap(java.lang.String, char, char)"><B>unwrap(String, char, char)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/CharUtils.html" title="class in org.apache.abdera2.common.text">CharUtils</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#UPDATED"><B>UPDATED</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#URI"><B>URI</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/templates/URIRoute.html" title="annotation in org.apache.abdera2.common.templates"><B>URIRoute</B></A> - Annotation Type in <A HREF="./org/apache/abdera2/common/templates/package-summary.html">org.apache.abdera2.common.templates</A><DD>The URITemplate annotation can be used to associate a URI Template with a particular Java class.<DT><A HREF="./org/apache/abdera2/common/templates/URITemplate.html" title="annotation in org.apache.abdera2.common.templates"><B>URITemplate</B></A> - Annotation Type in <A HREF="./org/apache/abdera2/common/templates/package-summary.html">org.apache.abdera2.common.templates</A><DD>The URITemplate annotation can be used to associate a URI Template with a particular Java class.<DT><A HREF="./org/apache/abdera2/common/text/UrlEncoding.html" title="class in org.apache.abdera2.common.text"><B>UrlEncoding</B></A> - Class in <A HREF="./org/apache/abdera2/common/text/package-summary.html">org.apache.abdera2.common.text</A><DD>Performs URL Percent Encoding<DT><A HREF="./org/apache/abdera2/common/text/UrlEncoding.DecodingInputStream.html" title="class in org.apache.abdera2.common.text"><B>UrlEncoding.DecodingInputStream</B></A> - Class in <A HREF="./org/apache/abdera2/common/text/package-summary.html">org.apache.abdera2.common.text</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/text/UrlEncoding.DecodingInputStream.html#UrlEncoding.DecodingInputStream(java.io.InputStream)"><B>UrlEncoding.DecodingInputStream(InputStream)</B></A> - 
Constructor for class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/UrlEncoding.DecodingInputStream.html" title="class in org.apache.abdera2.common.text">UrlEncoding.DecodingInputStream</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/UrlEncoding.DecodingInputStream.html#UrlEncoding.DecodingInputStream(byte[])"><B>UrlEncoding.DecodingInputStream(byte[])</B></A> - 
Constructor for class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/UrlEncoding.DecodingInputStream.html" title="class in org.apache.abdera2.common.text">UrlEncoding.DecodingInputStream</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/UrlEncoding.DecodingReader.html" title="class in org.apache.abdera2.common.text"><B>UrlEncoding.DecodingReader</B></A> - Class in <A HREF="./org/apache/abdera2/common/text/package-summary.html">org.apache.abdera2.common.text</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/text/UrlEncoding.DecodingReader.html#UrlEncoding.DecodingReader(byte[])"><B>UrlEncoding.DecodingReader(byte[])</B></A> - 
Constructor for class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/UrlEncoding.DecodingReader.html" title="class in org.apache.abdera2.common.text">UrlEncoding.DecodingReader</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/UrlEncoding.DecodingReader.html#UrlEncoding.DecodingReader(byte[], java.lang.String)"><B>UrlEncoding.DecodingReader(byte[], String)</B></A> - 
Constructor for class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/UrlEncoding.DecodingReader.html" title="class in org.apache.abdera2.common.text">UrlEncoding.DecodingReader</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/UrlEncoding.DecodingReader.html#UrlEncoding.DecodingReader(java.io.InputStream)"><B>UrlEncoding.DecodingReader(InputStream)</B></A> - 
Constructor for class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/UrlEncoding.DecodingReader.html" title="class in org.apache.abdera2.common.text">UrlEncoding.DecodingReader</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/UrlEncoding.DecodingReader.html#UrlEncoding.DecodingReader(java.io.InputStream, java.lang.String)"><B>UrlEncoding.DecodingReader(InputStream, String)</B></A> - 
Constructor for class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/UrlEncoding.DecodingReader.html" title="class in org.apache.abdera2.common.text">UrlEncoding.DecodingReader</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/UrlEncoding.DecodingReader.html#UrlEncoding.DecodingReader(java.io.Reader)"><B>UrlEncoding.DecodingReader(Reader)</B></A> - 
Constructor for class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/UrlEncoding.DecodingReader.html" title="class in org.apache.abdera2.common.text">UrlEncoding.DecodingReader</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/UrlEncoding.EncodingOutputStream.html" title="class in org.apache.abdera2.common.text"><B>UrlEncoding.EncodingOutputStream</B></A> - Class in <A HREF="./org/apache/abdera2/common/text/package-summary.html">org.apache.abdera2.common.text</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/text/UrlEncoding.EncodingOutputStream.html#UrlEncoding.EncodingOutputStream(java.io.OutputStream)"><B>UrlEncoding.EncodingOutputStream(OutputStream)</B></A> - 
Constructor for class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/UrlEncoding.EncodingOutputStream.html" title="class in org.apache.abdera2.common.text">UrlEncoding.EncodingOutputStream</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/UrlEncoding.EncodingWriter.html" title="class in org.apache.abdera2.common.text"><B>UrlEncoding.EncodingWriter</B></A> - Class in <A HREF="./org/apache/abdera2/common/text/package-summary.html">org.apache.abdera2.common.text</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/text/UrlEncoding.EncodingWriter.html#UrlEncoding.EncodingWriter(java.io.OutputStream)"><B>UrlEncoding.EncodingWriter(OutputStream)</B></A> - 
Constructor for class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/UrlEncoding.EncodingWriter.html" title="class in org.apache.abdera2.common.text">UrlEncoding.EncodingWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/UrlEncoding.EncodingWriter.html#UrlEncoding.EncodingWriter(java.io.OutputStream, org.apache.abdera2.common.text.CharUtils.Profile)"><B>UrlEncoding.EncodingWriter(OutputStream, CharUtils.Profile)</B></A> - 
Constructor for class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/UrlEncoding.EncodingWriter.html" title="class in org.apache.abdera2.common.text">UrlEncoding.EncodingWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/UrlEncoding.EncodingWriter.html#UrlEncoding.EncodingWriter(java.io.OutputStream, org.apache.abdera2.common.text.CharUtils.Profile...)"><B>UrlEncoding.EncodingWriter(OutputStream, CharUtils.Profile...)</B></A> - 
Constructor for class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/UrlEncoding.EncodingWriter.html" title="class in org.apache.abdera2.common.text">UrlEncoding.EncodingWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/UrlEncoding.EncodingWriter.html#UrlEncoding.EncodingWriter(java.io.Writer)"><B>UrlEncoding.EncodingWriter(Writer)</B></A> - 
Constructor for class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/UrlEncoding.EncodingWriter.html" title="class in org.apache.abdera2.common.text">UrlEncoding.EncodingWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/UrlEncoding.EncodingWriter.html#UrlEncoding.EncodingWriter(java.io.Writer, org.apache.abdera2.common.text.CharUtils.Profile)"><B>UrlEncoding.EncodingWriter(Writer, CharUtils.Profile)</B></A> - 
Constructor for class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/UrlEncoding.EncodingWriter.html" title="class in org.apache.abdera2.common.text">UrlEncoding.EncodingWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/UrlEncoding.EncodingWriter.html#UrlEncoding.EncodingWriter(java.io.Writer, org.apache.abdera2.common.text.CharUtils.Profile...)"><B>UrlEncoding.EncodingWriter(Writer, CharUtils.Profile...)</B></A> - 
Constructor for class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/UrlEncoding.EncodingWriter.html" title="class in org.apache.abdera2.common.text">UrlEncoding.EncodingWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractBaseRequestContext.html#urlFor(java.lang.Object, java.lang.Object)"><B>urlFor(Object, Object)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractBaseRequestContext.html" title="class in org.apache.abdera2.common.protocol">AbstractBaseRequestContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseProvider.html#urlFor(org.apache.abdera2.common.protocol.Request, java.lang.Object, java.lang.Object)"><B>urlFor(Request, Object, Object)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseProvider.html" title="class in org.apache.abdera2.common.protocol">BaseProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html#urlFor(java.lang.Object, java.lang.Object)"><B>urlFor(Object, Object)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseRequestContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseRequestContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/RequestContext.html#urlFor(java.lang.Object, java.lang.Object)"><B>urlFor(Object, Object)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/RequestContext.html" title="interface in org.apache.abdera2.common.protocol">RequestContext</A>
<DD>Construct a URL using the Provider's Target Builder
<DT><A HREF="./org/apache/abdera2/common/protocol/RouteManager.html#urlFor(org.apache.abdera2.common.protocol.Request, T, java.lang.Object)"><B>urlFor(Request, T, Object)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/RouteManager.html" title="class in org.apache.abdera2.common.protocol">RouteManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/TargetBuilder.html#urlFor(org.apache.abdera2.common.protocol.Request, T, java.lang.Object)"><B>urlFor(Request, T, Object)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/TargetBuilder.html" title="interface in org.apache.abdera2.common.protocol">TargetBuilder</A>
<DD>Construct a URL for the specified key
<DT><A HREF="./org/apache/abdera2/common/protocol/TemplateManagerTargetBuilder.html#urlFor(org.apache.abdera2.common.protocol.Request, T, java.lang.Object)"><B>urlFor(Request, T, Object)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/TemplateManagerTargetBuilder.html" title="class in org.apache.abdera2.common.protocol">TemplateManagerTargetBuilder</A>
<DD>&nbsp;
</DL>
<HR>
<A NAME="_V_"><!-- --></A><H2>
<B>V</B></H2>
<DL>
<DT><A HREF="./org/apache/abdera2/common/io/Compression.CompressionCodec.html#value(java.lang.String)"><B>value(String)</B></A> - 
Static method in enum org.apache.abdera2.common.io.<A HREF="./org/apache/abdera2/common/io/Compression.CompressionCodec.html" title="enum in org.apache.abdera2.common.io">Compression.CompressionCodec</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/date/DateTime.html#valueOf(java.lang.String)"><B>valueOf(String)</B></A> - 
Static method in class org.apache.abdera2.common.date.<A HREF="./org/apache/abdera2/common/date/DateTime.html" title="class in org.apache.abdera2.common.date">DateTime</A>
<DD>Create a new Atom Date instance from the serialized string form
<DT><A HREF="./org/apache/abdera2/common/date/DateTime.html#valueOf(java.util.Date)"><B>valueOf(Date)</B></A> - 
Static method in class org.apache.abdera2.common.date.<A HREF="./org/apache/abdera2/common/date/DateTime.html" title="class in org.apache.abdera2.common.date">DateTime</A>
<DD>Create a new Atom Date instance from a java.util.Date
<DT><A HREF="./org/apache/abdera2/common/date/DateTime.html#valueOf(java.util.Calendar)"><B>valueOf(Calendar)</B></A> - 
Static method in class org.apache.abdera2.common.date.<A HREF="./org/apache/abdera2/common/date/DateTime.html" title="class in org.apache.abdera2.common.date">DateTime</A>
<DD>Create a new Atom Date instance from a java.util.Calendar
<DT><A HREF="./org/apache/abdera2/common/date/DateTime.html#valueOf(long)"><B>valueOf(long)</B></A> - 
Static method in class org.apache.abdera2.common.date.<A HREF="./org/apache/abdera2/common/date/DateTime.html" title="class in org.apache.abdera2.common.date">DateTime</A>
<DD>Create a new Atom Date instance using the number of milliseconds since January 1, 1970, 00:00:00 GMT
<DT><A HREF="./org/apache/abdera2/common/http/CacheControlUtil.Directive.html#valueOf(java.lang.String)"><B>valueOf(String)</B></A> - 
Static method in enum org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/CacheControlUtil.Directive.html" title="enum in org.apache.abdera2.common.http">CacheControlUtil.Directive</A>
<DD>Returns the enum constant of this type with the specified name.
<DT><A HREF="./org/apache/abdera2/common/http/ResponseType.html#valueOf(java.lang.String)"><B>valueOf(String)</B></A> - 
Static method in enum org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/ResponseType.html" title="enum in org.apache.abdera2.common.http">ResponseType</A>
<DD>Returns the enum constant of this type with the specified name.
<DT><A HREF="./org/apache/abdera2/common/io/CharsetSniffingInputStream.Encoding.html#valueOf(java.lang.String)"><B>valueOf(String)</B></A> - 
Static method in enum org.apache.abdera2.common.io.<A HREF="./org/apache/abdera2/common/io/CharsetSniffingInputStream.Encoding.html" title="enum in org.apache.abdera2.common.io">CharsetSniffingInputStream.Encoding</A>
<DD>Returns the enum constant of this type with the specified name.
<DT><A HREF="./org/apache/abdera2/common/io/Compression.CompressionCodec.html#valueOf(java.lang.String)"><B>valueOf(String)</B></A> - 
Static method in enum org.apache.abdera2.common.io.<A HREF="./org/apache/abdera2/common/io/Compression.CompressionCodec.html" title="enum in org.apache.abdera2.common.io">Compression.CompressionCodec</A>
<DD>Returns the enum constant of this type with the specified name.
<DT><A HREF="./org/apache/abdera2/common/lang/Subtag.Type.html#valueOf(java.lang.String)"><B>valueOf(String)</B></A> - 
Static method in enum org.apache.abdera2.common.lang.<A HREF="./org/apache/abdera2/common/lang/Subtag.Type.html" title="enum in org.apache.abdera2.common.lang">Subtag.Type</A>
<DD>Returns the enum constant of this type with the specified name.
<DT><A HREF="./org/apache/abdera2/common/protocol/RequestContext.Property.html#valueOf(java.lang.String)"><B>valueOf(String)</B></A> - 
Static method in enum org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/RequestContext.Property.html" title="enum in org.apache.abdera2.common.protocol">RequestContext.Property</A>
<DD>Returns the enum constant of this type with the specified name.
<DT><A HREF="./org/apache/abdera2/common/protocol/RequestContext.Scope.html#valueOf(java.lang.String)"><B>valueOf(String)</B></A> - 
Static method in enum org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/RequestContext.Scope.html" title="enum in org.apache.abdera2.common.protocol">RequestContext.Scope</A>
<DD>Returns the enum constant of this type with the specified name.
<DT><A HREF="./org/apache/abdera2/common/protocol/RequestTemplateContext.Variable.html#valueOf(java.lang.String)"><B>valueOf(String)</B></A> - 
Static method in enum org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/RequestTemplateContext.Variable.html" title="enum in org.apache.abdera2.common.protocol">RequestTemplateContext.Variable</A>
<DD>Returns the enum constant of this type with the specified name.
<DT><A HREF="./org/apache/abdera2/common/text/CharUtils.Profile.html#valueOf(java.lang.String)"><B>valueOf(String)</B></A> - 
Static method in enum org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/CharUtils.Profile.html" title="enum in org.apache.abdera2.common.text">CharUtils.Profile</A>
<DD>Returns the enum constant of this type with the specified name.
<DT><A HREF="./org/apache/abdera2/common/text/Codec.html#valueOf(java.lang.String)"><B>valueOf(String)</B></A> - 
Static method in enum org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/Codec.html" title="enum in org.apache.abdera2.common.text">Codec</A>
<DD>Returns the enum constant of this type with the specified name.
<DT><A HREF="./org/apache/abdera2/common/text/NormalizationForm.html#valueOf(java.lang.String)"><B>valueOf(String)</B></A> - 
Static method in enum org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/NormalizationForm.html" title="enum in org.apache.abdera2.common.text">NormalizationForm</A>
<DD>Returns the enum constant of this type with the specified name.
<DT><A HREF="./org/apache/abdera2/common/xml/XMLVersion.html#valueOf(java.lang.String)"><B>valueOf(String)</B></A> - 
Static method in enum org.apache.abdera2.common.xml.<A HREF="./org/apache/abdera2/common/xml/XMLVersion.html" title="enum in org.apache.abdera2.common.xml">XMLVersion</A>
<DD>Returns the enum constant of this type with the specified name.
<DT><A HREF="./org/apache/abdera2/common/http/CacheControlUtil.Directive.html#values()"><B>values()</B></A> - 
Static method in enum org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/CacheControlUtil.Directive.html" title="enum in org.apache.abdera2.common.http">CacheControlUtil.Directive</A>
<DD>Returns an array containing the constants of this enum type, in
the order they are declared.
<DT><A HREF="./org/apache/abdera2/common/http/ResponseType.html#values()"><B>values()</B></A> - 
Static method in enum org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/ResponseType.html" title="enum in org.apache.abdera2.common.http">ResponseType</A>
<DD>Returns an array containing the constants of this enum type, in
the order they are declared.
<DT><A HREF="./org/apache/abdera2/common/io/CharsetSniffingInputStream.Encoding.html#values()"><B>values()</B></A> - 
Static method in enum org.apache.abdera2.common.io.<A HREF="./org/apache/abdera2/common/io/CharsetSniffingInputStream.Encoding.html" title="enum in org.apache.abdera2.common.io">CharsetSniffingInputStream.Encoding</A>
<DD>Returns an array containing the constants of this enum type, in
the order they are declared.
<DT><A HREF="./org/apache/abdera2/common/io/Compression.CompressionCodec.html#values()"><B>values()</B></A> - 
Static method in enum org.apache.abdera2.common.io.<A HREF="./org/apache/abdera2/common/io/Compression.CompressionCodec.html" title="enum in org.apache.abdera2.common.io">Compression.CompressionCodec</A>
<DD>Returns an array containing the constants of this enum type, in
the order they are declared.
<DT><A HREF="./org/apache/abdera2/common/lang/Subtag.Type.html#values()"><B>values()</B></A> - 
Static method in enum org.apache.abdera2.common.lang.<A HREF="./org/apache/abdera2/common/lang/Subtag.Type.html" title="enum in org.apache.abdera2.common.lang">Subtag.Type</A>
<DD>Returns an array containing the constants of this enum type, in
the order they are declared.
<DT><A HREF="./org/apache/abdera2/common/protocol/RequestContext.Property.html#values()"><B>values()</B></A> - 
Static method in enum org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/RequestContext.Property.html" title="enum in org.apache.abdera2.common.protocol">RequestContext.Property</A>
<DD>Returns an array containing the constants of this enum type, in
the order they are declared.
<DT><A HREF="./org/apache/abdera2/common/protocol/RequestContext.Scope.html#values()"><B>values()</B></A> - 
Static method in enum org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/RequestContext.Scope.html" title="enum in org.apache.abdera2.common.protocol">RequestContext.Scope</A>
<DD>Returns an array containing the constants of this enum type, in
the order they are declared.
<DT><A HREF="./org/apache/abdera2/common/protocol/RequestTemplateContext.Variable.html#values()"><B>values()</B></A> - 
Static method in enum org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/RequestTemplateContext.Variable.html" title="enum in org.apache.abdera2.common.protocol">RequestTemplateContext.Variable</A>
<DD>Returns an array containing the constants of this enum type, in
the order they are declared.
<DT><A HREF="./org/apache/abdera2/common/protocol/TargetType.html#values()"><B>values()</B></A> - 
Static method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/TargetType.html" title="class in org.apache.abdera2.common.protocol">TargetType</A>
<DD>Return a listing of TargetTypes
<DT><A HREF="./org/apache/abdera2/common/text/CharUtils.Profile.html#values()"><B>values()</B></A> - 
Static method in enum org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/CharUtils.Profile.html" title="enum in org.apache.abdera2.common.text">CharUtils.Profile</A>
<DD>Returns an array containing the constants of this enum type, in
the order they are declared.
<DT><A HREF="./org/apache/abdera2/common/text/Codec.html#values()"><B>values()</B></A> - 
Static method in enum org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/Codec.html" title="enum in org.apache.abdera2.common.text">Codec</A>
<DD>Returns an array containing the constants of this enum type, in
the order they are declared.
<DT><A HREF="./org/apache/abdera2/common/text/NormalizationForm.html#values()"><B>values()</B></A> - 
Static method in enum org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/NormalizationForm.html" title="enum in org.apache.abdera2.common.text">NormalizationForm</A>
<DD>Returns an array containing the constants of this enum type, in
the order they are declared.
<DT><A HREF="./org/apache/abdera2/common/xml/XMLVersion.html#values()"><B>values()</B></A> - 
Static method in enum org.apache.abdera2.common.xml.<A HREF="./org/apache/abdera2/common/xml/XMLVersion.html" title="enum in org.apache.abdera2.common.xml">XMLVersion</A>
<DD>Returns an array containing the constants of this enum type, in
the order they are declared.
<DT><A HREF="./org/apache/abdera2/common/lang/Lang.html#variant()"><B>variant()</B></A> - 
Method in class org.apache.abdera2.common.lang.<A HREF="./org/apache/abdera2/common/lang/Lang.html" title="class in org.apache.abdera2.common.lang">Lang</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/EntityTag.html#variation(org.apache.abdera2.common.http.EntityTag, java.lang.String, java.lang.String...)"><B>variation(EntityTag, String, String...)</B></A> - 
Static method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/EntityTag.html" title="class in org.apache.abdera2.common.http">EntityTag</A>
<DD>Produces a variation of the entity tag by appending one or 
 more labels to the tag.
<DT><A HREF="./org/apache/abdera2/common/http/EntityTag.html#variation(java.lang.String, java.lang.String...)"><B>variation(String, String...)</B></A> - 
Method in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/EntityTag.html" title="class in org.apache.abdera2.common.http">EntityTag</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Line.html#verify()"><B>verify()</B></A> - 
Method in class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Line.html" title="class in org.apache.abdera2.common.geo">Line</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/geo/Polygon.html#verify()"><B>verify()</B></A> - 
Method in class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Polygon.html" title="class in org.apache.abdera2.common.geo">Polygon</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/CharUtils.html#verify(org.apache.abdera2.common.text.CodepointIterator, org.apache.abdera2.common.text.CharUtils.Filter)"><B>verify(CodepointIterator, CharUtils.Filter)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/CharUtils.html" title="class in org.apache.abdera2.common.text">CharUtils</A>
<DD>Verifies a sequence of codepoints using the specified filter
<DT><A HREF="./org/apache/abdera2/common/text/CharUtils.html#verify(org.apache.abdera2.common.text.CodepointIterator, org.apache.abdera2.common.text.CharUtils.Profile)"><B>verify(CodepointIterator, CharUtils.Profile)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/CharUtils.html" title="class in org.apache.abdera2.common.text">CharUtils</A>
<DD>Verifies a sequence of codepoints using the specified filter
<DT><A HREF="./org/apache/abdera2/common/text/CharUtils.html#verify(char[], org.apache.abdera2.common.text.CharUtils.Profile)"><B>verify(char[], CharUtils.Profile)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/CharUtils.html" title="class in org.apache.abdera2.common.text">CharUtils</A>
<DD>Verifies a sequence of codepoints using the specified profile
<DT><A HREF="./org/apache/abdera2/common/text/CharUtils.html#verify(java.lang.String, org.apache.abdera2.common.text.CharUtils.Profile)"><B>verify(String, CharUtils.Profile)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/CharUtils.html" title="class in org.apache.abdera2.common.text">CharUtils</A>
<DD>Verifies a sequence of codepoints using the specified profile
<DT><A HREF="./org/apache/abdera2/common/geo/Multiple.html#verify179Rule()"><B>verify179Rule()</B></A> - 
Method in class org.apache.abdera2.common.geo.<A HREF="./org/apache/abdera2/common/geo/Multiple.html" title="class in org.apache.abdera2.common.geo">Multiple</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/CharUtils.html#verifyNot(org.apache.abdera2.common.text.CodepointIterator, org.apache.abdera2.common.text.CharUtils.Filter)"><B>verifyNot(CodepointIterator, CharUtils.Filter)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/CharUtils.html" title="class in org.apache.abdera2.common.text">CharUtils</A>
<DD>Verifies a sequence of codepoints using the specified filter
<DT><A HREF="./org/apache/abdera2/common/text/CharUtils.html#verifyNot(java.lang.String, org.apache.abdera2.common.text.CharUtils.Profile)"><B>verifyNot(String, CharUtils.Profile)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/CharUtils.html" title="class in org.apache.abdera2.common.text">CharUtils</A>
<DD>Verifies a sequence of codepoints using the specified profile
<DT><A HREF="./org/apache/abdera2/common/text/CharUtils.html#verifyNot(org.apache.abdera2.common.text.CodepointIterator, org.apache.abdera2.common.text.CharUtils.Profile)"><B>verifyNot(CodepointIterator, CharUtils.Profile)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/CharUtils.html" title="class in org.apache.abdera2.common.text">CharUtils</A>
<DD>Verifies a sequence of codepoints using the specified profile
<DT><A HREF="./org/apache/abdera2/common/text/CharUtils.html#verifyNot(char[], org.apache.abdera2.common.text.CharUtils.Profile)"><B>verifyNot(char[], CharUtils.Profile)</B></A> - 
Static method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/CharUtils.html" title="class in org.apache.abdera2.common.text">CharUtils</A>
<DD>Verifies a sequence of codepoints using the specified profile
<DT><A HREF="./org/apache/abdera2/common/anno/Version.html" title="annotation in org.apache.abdera2.common.anno"><B>Version</B></A> - Annotation Type in <A HREF="./org/apache/abdera2/common/anno/package-summary.html">org.apache.abdera2.common.anno</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/Constants.html#VERSION"><B>VERSION</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
</DL>
<HR>
<A NAME="_W_"><!-- --></A><H2>
<B>W</B></H2>
<DL>
<DT><A HREF="./org/apache/abdera2/common/http/WebLink.html" title="class in org.apache.abdera2.common.http"><B>WebLink</B></A> - Class in <A HREF="./org/apache/abdera2/common/http/package-summary.html">org.apache.abdera2.common.http</A><DD>Implements the HTTP Link Header
 (http://tools.ietf.org/html/rfc5988)<DT><A HREF="./org/apache/abdera2/common/http/WebLink.html#WebLink(java.lang.String)"><B>WebLink(String)</B></A> - 
Constructor for class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/WebLink.html" title="class in org.apache.abdera2.common.http">WebLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/WebLink.html#WebLink(java.lang.String, java.lang.String)"><B>WebLink(String, String)</B></A> - 
Constructor for class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/WebLink.html" title="class in org.apache.abdera2.common.http">WebLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/WebLink.html#WebLink(org.apache.abdera2.common.iri.IRI, java.lang.String)"><B>WebLink(IRI, String)</B></A> - 
Constructor for class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/WebLink.html" title="class in org.apache.abdera2.common.http">WebLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/WebLink.html#WebLink(org.apache.abdera2.common.iri.IRI)"><B>WebLink(IRI)</B></A> - 
Constructor for class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/WebLink.html" title="class in org.apache.abdera2.common.http">WebLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/http/EntityTag.html#WILD"><B>WILD</B></A> - 
Static variable in class org.apache.abdera2.common.http.<A HREF="./org/apache/abdera2/common/http/EntityTag.html" title="class in org.apache.abdera2.common.http">EntityTag</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#WORKSPACE"><B>WORKSPACE</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/WorkspaceInfo.html" title="interface in org.apache.abdera2.common.protocol"><B>WorkspaceInfo</B></A> - Interface in <A HREF="./org/apache/abdera2/common/protocol/package-summary.html">org.apache.abdera2.common.protocol</A><DD>Metadata interface used by WorkspaceManager and Provider implementations to construct Atompub Service Documents.<DT><A HREF="./org/apache/abdera2/common/protocol/WorkspaceManager.html" title="interface in org.apache.abdera2.common.protocol"><B>WorkspaceManager</B></A> - Interface in <A HREF="./org/apache/abdera2/common/protocol/package-summary.html">org.apache.abdera2.common.protocol</A><DD>The Workspace Manager is used by a Provider to access metadata used to construct Atompub service documents and to
 determine the appropriate CollectionAdapter to handle a particular request<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractWorkspaceManager.html#workspaces"><B>workspaces</B></A> - 
Variable in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractWorkspaceManager.html" title="class in org.apache.abdera2.common.protocol">AbstractWorkspaceManager</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/AbstractWorkspaceProvider.html#workspaces"><B>workspaces</B></A> - 
Variable in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/AbstractWorkspaceProvider.html" title="class in org.apache.abdera2.common.protocol">AbstractWorkspaceProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/io/Compression.CompressionCodec.html#wrap(java.io.OutputStream)"><B>wrap(OutputStream)</B></A> - 
Method in enum org.apache.abdera2.common.io.<A HREF="./org/apache/abdera2/common/io/Compression.CompressionCodec.html" title="enum in org.apache.abdera2.common.io">Compression.CompressionCodec</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/io/Compression.CompressionCodec.html#wrap(java.io.InputStream)"><B>wrap(InputStream)</B></A> - 
Method in enum org.apache.abdera2.common.io.<A HREF="./org/apache/abdera2/common/io/Compression.CompressionCodec.html" title="enum in org.apache.abdera2.common.io">Compression.CompressionCodec</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/io/Compression.html#wrap(java.io.OutputStream, org.apache.abdera2.common.io.Compression.CompressionCodec...)"><B>wrap(OutputStream, Compression.CompressionCodec...)</B></A> - 
Static method in class org.apache.abdera2.common.io.<A HREF="./org/apache/abdera2/common/io/Compression.html" title="class in org.apache.abdera2.common.io">Compression</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/io/Compression.html#wrap(java.io.OutputStream, org.apache.abdera2.common.io.Compression.CompressionCodec, org.apache.abdera2.common.io.Compression.CompressionCodec...)"><B>wrap(OutputStream, Compression.CompressionCodec, Compression.CompressionCodec...)</B></A> - 
Static method in class org.apache.abdera2.common.io.<A HREF="./org/apache/abdera2/common/io/Compression.html" title="class in org.apache.abdera2.common.io">Compression</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/io/Compression.html#wrap(java.io.InputStream, org.apache.abdera2.common.io.Compression.CompressionCodec...)"><B>wrap(InputStream, Compression.CompressionCodec...)</B></A> - 
Static method in class org.apache.abdera2.common.io.<A HREF="./org/apache/abdera2/common/io/Compression.html" title="class in org.apache.abdera2.common.io">Compression</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/io/Compression.html#wrap(java.io.InputStream, org.apache.abdera2.common.io.Compression.CompressionCodec, org.apache.abdera2.common.io.Compression.CompressionCodec...)"><B>wrap(InputStream, Compression.CompressionCodec, Compression.CompressionCodec...)</B></A> - 
Static method in class org.apache.abdera2.common.io.<A HREF="./org/apache/abdera2/common/io/Compression.html" title="class in org.apache.abdera2.common.io">Compression</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/io/Compression.html#wrap(java.io.InputStream, java.lang.String)"><B>wrap(InputStream, String)</B></A> - 
Static method in class org.apache.abdera2.common.io.<A HREF="./org/apache/abdera2/common/io/Compression.html" title="class in org.apache.abdera2.common.io">Compression</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/UrlEncoding.EncodingOutputStream.html#write(byte[], int, int)"><B>write(byte[], int, int)</B></A> - 
Method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/UrlEncoding.EncodingOutputStream.html" title="class in org.apache.abdera2.common.text">UrlEncoding.EncodingOutputStream</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/UrlEncoding.EncodingOutputStream.html#write(byte[])"><B>write(byte[])</B></A> - 
Method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/UrlEncoding.EncodingOutputStream.html" title="class in org.apache.abdera2.common.text">UrlEncoding.EncodingOutputStream</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/UrlEncoding.EncodingOutputStream.html#write(int)"><B>write(int)</B></A> - 
Method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/UrlEncoding.EncodingOutputStream.html" title="class in org.apache.abdera2.common.text">UrlEncoding.EncodingOutputStream</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/UrlEncoding.EncodingWriter.html#write(char[], int, int)"><B>write(char[], int, int)</B></A> - 
Method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/UrlEncoding.EncodingWriter.html" title="class in org.apache.abdera2.common.text">UrlEncoding.EncodingWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/UrlEncoding.EncodingWriter.html#write(char[])"><B>write(char[])</B></A> - 
Method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/UrlEncoding.EncodingWriter.html" title="class in org.apache.abdera2.common.text">UrlEncoding.EncodingWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/UrlEncoding.EncodingWriter.html#write(int)"><B>write(int)</B></A> - 
Method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/UrlEncoding.EncodingWriter.html" title="class in org.apache.abdera2.common.text">UrlEncoding.EncodingWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/text/UrlEncoding.EncodingWriter.html#write(java.lang.String, int, int)"><B>write(String, int, int)</B></A> - 
Method in class org.apache.abdera2.common.text.<A HREF="./org/apache/abdera2/common/text/UrlEncoding.EncodingWriter.html" title="class in org.apache.abdera2.common.text">UrlEncoding.EncodingWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/EmptyResponseContext.html#writeEntity(java.io.Writer)"><B>writeEntity(Writer)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/EmptyResponseContext.html" title="class in org.apache.abdera2.common.protocol">EmptyResponseContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/MediaResponseContext.html#writeEntity(java.io.Writer)"><B>writeEntity(Writer)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/MediaResponseContext.html" title="class in org.apache.abdera2.common.protocol">MediaResponseContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/SimpleResponseContext.html#writeEntity(java.io.Writer)"><B>writeEntity(Writer)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/SimpleResponseContext.html" title="class in org.apache.abdera2.common.protocol">SimpleResponseContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html#writeTo(java.io.OutputStream)"><B>writeTo(OutputStream)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseResponseContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html#writeTo(java.io.Writer)"><B>writeTo(Writer)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/BaseResponseContextWrapper.html" title="class in org.apache.abdera2.common.protocol">BaseResponseContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/CompressionFilter.CompressingResponseContextWrapper.html#writeTo(java.io.OutputStream)"><B>writeTo(OutputStream)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/CompressionFilter.CompressingResponseContextWrapper.html" title="class in org.apache.abdera2.common.protocol">CompressionFilter.CompressingResponseContextWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/MediaResponseContext.html#writeTo(java.io.OutputStream)"><B>writeTo(OutputStream)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/MediaResponseContext.html" title="class in org.apache.abdera2.common.protocol">MediaResponseContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/ResponseContext.html#writeTo(java.io.OutputStream)"><B>writeTo(OutputStream)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ResponseContext.html" title="interface in org.apache.abdera2.common.protocol">ResponseContext</A>
<DD>Write the response out to the specified OutputStream
<DT><A HREF="./org/apache/abdera2/common/protocol/ResponseContext.html#writeTo(java.io.Writer)"><B>writeTo(Writer)</B></A> - 
Method in interface org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/ResponseContext.html" title="interface in org.apache.abdera2.common.protocol">ResponseContext</A>
<DD>Write the response out to the specified Writer
<DT><A HREF="./org/apache/abdera2/common/protocol/SimpleResponseContext.html#writeTo(java.io.OutputStream)"><B>writeTo(OutputStream)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/SimpleResponseContext.html" title="class in org.apache.abdera2.common.protocol">SimpleResponseContext</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/protocol/SimpleResponseContext.html#writeTo(java.io.Writer)"><B>writeTo(Writer)</B></A> - 
Method in class org.apache.abdera2.common.protocol.<A HREF="./org/apache/abdera2/common/protocol/SimpleResponseContext.html" title="class in org.apache.abdera2.common.protocol">SimpleResponseContext</A>
<DD>&nbsp;
</DL>
<HR>
<A NAME="_X_"><!-- --></A><H2>
<B>X</B></H2>
<DL>
<DT><A HREF="./org/apache/abdera2/common/Constants.html#XHTML"><B>XHTML</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#XHTML_NS"><B>XHTML_NS</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#XML"><B>XML</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#XML_MEDIA_TYPE"><B>XML_MEDIA_TYPE</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/Constants.html#XML_NS"><B>XML_NS</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/xml/XmlRestrictedCharReader.html" title="class in org.apache.abdera2.common.xml"><B>XmlRestrictedCharReader</B></A> - Class in <A HREF="./org/apache/abdera2/common/xml/package-summary.html">org.apache.abdera2.common.xml</A><DD>A reader implementation that filters out characters that are not allowed in XML 1.0 or XML 1.1 documents.<DT><A HREF="./org/apache/abdera2/common/xml/XmlRestrictedCharReader.html#XmlRestrictedCharReader(java.io.InputStream)"><B>XmlRestrictedCharReader(InputStream)</B></A> - 
Constructor for class org.apache.abdera2.common.xml.<A HREF="./org/apache/abdera2/common/xml/XmlRestrictedCharReader.html" title="class in org.apache.abdera2.common.xml">XmlRestrictedCharReader</A>
<DD>The XMLVersion determines which set of restrictions to apply depending on the XML version being parsed
<DT><A HREF="./org/apache/abdera2/common/xml/XmlRestrictedCharReader.html#XmlRestrictedCharReader(java.io.InputStream, java.lang.String)"><B>XmlRestrictedCharReader(InputStream, String)</B></A> - 
Constructor for class org.apache.abdera2.common.xml.<A HREF="./org/apache/abdera2/common/xml/XmlRestrictedCharReader.html" title="class in org.apache.abdera2.common.xml">XmlRestrictedCharReader</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/xml/XmlRestrictedCharReader.html#XmlRestrictedCharReader(java.io.InputStream, org.apache.abdera2.common.xml.XMLVersion)"><B>XmlRestrictedCharReader(InputStream, XMLVersion)</B></A> - 
Constructor for class org.apache.abdera2.common.xml.<A HREF="./org/apache/abdera2/common/xml/XmlRestrictedCharReader.html" title="class in org.apache.abdera2.common.xml">XmlRestrictedCharReader</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/xml/XmlRestrictedCharReader.html#XmlRestrictedCharReader(java.io.InputStream, java.lang.String, org.apache.abdera2.common.xml.XMLVersion)"><B>XmlRestrictedCharReader(InputStream, String, XMLVersion)</B></A> - 
Constructor for class org.apache.abdera2.common.xml.<A HREF="./org/apache/abdera2/common/xml/XmlRestrictedCharReader.html" title="class in org.apache.abdera2.common.xml">XmlRestrictedCharReader</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/xml/XmlRestrictedCharReader.html#XmlRestrictedCharReader(java.io.InputStream, char)"><B>XmlRestrictedCharReader(InputStream, char)</B></A> - 
Constructor for class org.apache.abdera2.common.xml.<A HREF="./org/apache/abdera2/common/xml/XmlRestrictedCharReader.html" title="class in org.apache.abdera2.common.xml">XmlRestrictedCharReader</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/xml/XmlRestrictedCharReader.html#XmlRestrictedCharReader(java.io.InputStream, java.lang.String, char)"><B>XmlRestrictedCharReader(InputStream, String, char)</B></A> - 
Constructor for class org.apache.abdera2.common.xml.<A HREF="./org/apache/abdera2/common/xml/XmlRestrictedCharReader.html" title="class in org.apache.abdera2.common.xml">XmlRestrictedCharReader</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/xml/XmlRestrictedCharReader.html#XmlRestrictedCharReader(java.io.InputStream, org.apache.abdera2.common.xml.XMLVersion, char)"><B>XmlRestrictedCharReader(InputStream, XMLVersion, char)</B></A> - 
Constructor for class org.apache.abdera2.common.xml.<A HREF="./org/apache/abdera2/common/xml/XmlRestrictedCharReader.html" title="class in org.apache.abdera2.common.xml">XmlRestrictedCharReader</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/xml/XmlRestrictedCharReader.html#XmlRestrictedCharReader(java.io.InputStream, java.lang.String, org.apache.abdera2.common.xml.XMLVersion, char)"><B>XmlRestrictedCharReader(InputStream, String, XMLVersion, char)</B></A> - 
Constructor for class org.apache.abdera2.common.xml.<A HREF="./org/apache/abdera2/common/xml/XmlRestrictedCharReader.html" title="class in org.apache.abdera2.common.xml">XmlRestrictedCharReader</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/xml/XmlRestrictedCharReader.html#XmlRestrictedCharReader(java.io.Reader)"><B>XmlRestrictedCharReader(Reader)</B></A> - 
Constructor for class org.apache.abdera2.common.xml.<A HREF="./org/apache/abdera2/common/xml/XmlRestrictedCharReader.html" title="class in org.apache.abdera2.common.xml">XmlRestrictedCharReader</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/xml/XmlRestrictedCharReader.html#XmlRestrictedCharReader(java.io.Reader, org.apache.abdera2.common.xml.XMLVersion)"><B>XmlRestrictedCharReader(Reader, XMLVersion)</B></A> - 
Constructor for class org.apache.abdera2.common.xml.<A HREF="./org/apache/abdera2/common/xml/XmlRestrictedCharReader.html" title="class in org.apache.abdera2.common.xml">XmlRestrictedCharReader</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/xml/XmlRestrictedCharReader.html#XmlRestrictedCharReader(java.io.Reader, char)"><B>XmlRestrictedCharReader(Reader, char)</B></A> - 
Constructor for class org.apache.abdera2.common.xml.<A HREF="./org/apache/abdera2/common/xml/XmlRestrictedCharReader.html" title="class in org.apache.abdera2.common.xml">XmlRestrictedCharReader</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/xml/XmlRestrictedCharReader.html#XmlRestrictedCharReader(java.io.Reader, org.apache.abdera2.common.xml.XMLVersion, char)"><B>XmlRestrictedCharReader(Reader, XMLVersion, char)</B></A> - 
Constructor for class org.apache.abdera2.common.xml.<A HREF="./org/apache/abdera2/common/xml/XmlRestrictedCharReader.html" title="class in org.apache.abdera2.common.xml">XmlRestrictedCharReader</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/xml/XMLStreamSniffingInputStream.html" title="class in org.apache.abdera2.common.xml"><B>XMLStreamSniffingInputStream</B></A> - Class in <A HREF="./org/apache/abdera2/common/xml/package-summary.html">org.apache.abdera2.common.xml</A><DD>Will attempt to autodetect the character encoding from the XML Stream This will preserve the BOM if it exists.<DT><A HREF="./org/apache/abdera2/common/xml/XMLStreamSniffingInputStream.html#XMLStreamSniffingInputStream(java.io.InputStream)"><B>XMLStreamSniffingInputStream(InputStream)</B></A> - 
Constructor for class org.apache.abdera2.common.xml.<A HREF="./org/apache/abdera2/common/xml/XMLStreamSniffingInputStream.html" title="class in org.apache.abdera2.common.xml">XMLStreamSniffingInputStream</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/xml/XMLVersion.html" title="enum in org.apache.abdera2.common.xml"><B>XMLVersion</B></A> - Enum in <A HREF="./org/apache/abdera2/common/xml/package-summary.html">org.apache.abdera2.common.xml</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/xml/XmlVersionInputStream.html" title="class in org.apache.abdera2.common.xml"><B>XmlVersionInputStream</B></A> - Class in <A HREF="./org/apache/abdera2/common/xml/package-summary.html">org.apache.abdera2.common.xml</A><DD>Will attempt to autodetect the character encoding from the stream This will preserve the BOM if it exists<DT><A HREF="./org/apache/abdera2/common/xml/XmlVersionInputStream.html#XmlVersionInputStream(java.io.InputStream, int)"><B>XmlVersionInputStream(InputStream, int)</B></A> - 
Constructor for class org.apache.abdera2.common.xml.<A HREF="./org/apache/abdera2/common/xml/XmlVersionInputStream.html" title="class in org.apache.abdera2.common.xml">XmlVersionInputStream</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/xml/XmlVersionInputStream.html#XmlVersionInputStream(java.io.InputStream)"><B>XmlVersionInputStream(InputStream)</B></A> - 
Constructor for class org.apache.abdera2.common.xml.<A HREF="./org/apache/abdera2/common/xml/XmlVersionInputStream.html" title="class in org.apache.abdera2.common.xml">XmlVersionInputStream</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/xml/XmlVersionReader.html" title="class in org.apache.abdera2.common.xml"><B>XmlVersionReader</B></A> - Class in <A HREF="./org/apache/abdera2/common/xml/package-summary.html">org.apache.abdera2.common.xml</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/common/xml/XmlVersionReader.html#XmlVersionReader(java.io.Reader, int)"><B>XmlVersionReader(Reader, int)</B></A> - 
Constructor for class org.apache.abdera2.common.xml.<A HREF="./org/apache/abdera2/common/xml/XmlVersionReader.html" title="class in org.apache.abdera2.common.xml">XmlVersionReader</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/common/xml/XmlVersionReader.html#XmlVersionReader(java.io.Reader)"><B>XmlVersionReader(Reader)</B></A> - 
Constructor for class org.apache.abdera2.common.xml.<A HREF="./org/apache/abdera2/common/xml/XmlVersionReader.html" title="class in org.apache.abdera2.common.xml">XmlVersionReader</A>
<DD>&nbsp;
</DL>
<HR>
<A NAME="_Y_"><!-- --></A><H2>
<B>Y</B></H2>
<DL>
<DT><A HREF="./org/apache/abdera2/common/Constants.html#YES"><B>YES</B></A> - 
Static variable in interface org.apache.abdera2.common.<A HREF="./org/apache/abdera2/common/Constants.html" title="interface in org.apache.abdera2.common">Constants</A>
<DD>&nbsp;
</DL>
<HR>
<A NAME="___"><!-- --></A><H2>
<B>_</B></H2>
<DL>
<DT><A HREF="./org/apache/abdera2/common/iri/IRI.html#_scheme"><B>_scheme</B></A> - 
Variable in class org.apache.abdera2.common.iri.<A HREF="./org/apache/abdera2/common/iri/IRI.html" title="class in org.apache.abdera2.common.iri">IRI</A>
<DD>&nbsp;
</DL>
<HR>
<A HREF="#_A_">A</A> <A HREF="#_B_">B</A> <A HREF="#_C_">C</A> <A HREF="#_D_">D</A> <A HREF="#_E_">E</A> <A HREF="#_F_">F</A> <A HREF="#_G_">G</A> <A HREF="#_H_">H</A> <A HREF="#_I_">I</A> <A HREF="#_J_">J</A> <A HREF="#_L_">L</A> <A HREF="#_M_">M</A> <A HREF="#_N_">N</A> <A HREF="#_O_">O</A> <A HREF="#_P_">P</A> <A HREF="#_Q_">Q</A> <A HREF="#_R_">R</A> <A HREF="#_S_">S</A> <A HREF="#_T_">T</A> <A HREF="#_U_">U</A> <A HREF="#_V_">V</A> <A HREF="#_W_">W</A> <A HREF="#_X_">X</A> <A HREF="#_Y_">Y</A> <A HREF="#___">_</A> 

<!-- ======= START OF BOTTOM NAVBAR ====== -->
<A NAME="navbar_bottom"><!-- --></A>
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_bottom_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
  <TR ALIGN="center" VALIGN="top">
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="./overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <FONT CLASS="NavBarFont1">Package</FONT>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <FONT CLASS="NavBarFont1">Use</FONT>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="./overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="./deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Index</B></FONT>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="./help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
  </TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>

<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;PREV&nbsp;
&nbsp;NEXT</FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
  <A HREF="./index.html?index-all.html" target="_top"><B>FRAMES</B></A>  &nbsp;
&nbsp;<A HREF="index-all.html" target="_top"><B>NO FRAMES</B></A>  &nbsp;
&nbsp;<SCRIPT type="text/javascript">
  <!--
  if(window==top) {
    document.writeln('<A HREF="./allclasses-noframe.html"><B>All Classes</B></A>');
  }
  //-->
</SCRIPT>
<NOSCRIPT>
  <A HREF="./allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>


</FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_bottom"></A>
<!-- ======== END OF BOTTOM NAVBAR ======= -->

<HR>
Copyright &#169; 2006-2011 <a href="http://www.apache.org/">Apache Software Foundation</a>. All Rights Reserved.
</BODY>
</HTML>
