<!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 Sun Aug 25 20:47:19 PDT 2013 -->
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
<TITLE>
Index (Apache Wink 1.4 API)
</TITLE>

<META NAME="date" CONTENT="2013-08-25">

<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 (Apache Wink 1.4 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="#_K_">K</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="#___">_</A> <HR>
<A NAME="_A_"><!-- --></A><H2>
<B>A</B></H2>
<DL>
<DT><A HREF="./org/apache/wink/providers/abdera/AbderaAtomEntryProvider.html" title="class in org.apache.wink.providers.abdera"><B>AbderaAtomEntryProvider</B></A> - Class in <A HREF="./org/apache/wink/providers/abdera/package-summary.html">org.apache.wink.providers.abdera</A><DD>&nbsp;<DT><A HREF="./org/apache/wink/providers/abdera/AbderaAtomEntryProvider.html#AbderaAtomEntryProvider()"><B>AbderaAtomEntryProvider()</B></A> - 
Constructor for class org.apache.wink.providers.abdera.<A HREF="./org/apache/wink/providers/abdera/AbderaAtomEntryProvider.html" title="class in org.apache.wink.providers.abdera">AbderaAtomEntryProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/providers/abdera/AbderaAtomFeedProvider.html" title="class in org.apache.wink.providers.abdera"><B>AbderaAtomFeedProvider</B></A> - Class in <A HREF="./org/apache/wink/providers/abdera/package-summary.html">org.apache.wink.providers.abdera</A><DD>&nbsp;<DT><A HREF="./org/apache/wink/providers/abdera/AbderaAtomFeedProvider.html#AbderaAtomFeedProvider()"><B>AbderaAtomFeedProvider()</B></A> - 
Constructor for class org.apache.wink.providers.abdera.<A HREF="./org/apache/wink/providers/abdera/AbderaAtomFeedProvider.html" title="class in org.apache.wink.providers.abdera">AbderaAtomFeedProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/handlers/AbstractAuthSecurityHandler.html" title="class in org.apache.wink.client.handlers"><B>AbstractAuthSecurityHandler</B></A> - Class in <A HREF="./org/apache/wink/client/handlers/package-summary.html">org.apache.wink.client.handlers</A><DD>&nbsp;<DT><A HREF="./org/apache/wink/client/handlers/AbstractAuthSecurityHandler.html#AbstractAuthSecurityHandler()"><B>AbstractAuthSecurityHandler()</B></A> - 
Constructor for class org.apache.wink.client.handlers.<A HREF="./org/apache/wink/client/handlers/AbstractAuthSecurityHandler.html" title="class in org.apache.wink.client.handlers">AbstractAuthSecurityHandler</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/handlers/AbstractAuthSecurityHandler.html#AbstractAuthSecurityHandler(java.lang.String, java.lang.String)"><B>AbstractAuthSecurityHandler(String, String)</B></A> - 
Constructor for class org.apache.wink.client.handlers.<A HREF="./org/apache/wink/client/handlers/AbstractAuthSecurityHandler.html" title="class in org.apache.wink.client.handlers">AbstractAuthSecurityHandler</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/AbstractDynamicResource.html" title="class in org.apache.wink.common"><B>AbstractDynamicResource</B></A> - Class in <A HREF="./org/apache/wink/common/package-summary.html">org.apache.wink.common</A><DD>Provides a basic implementation of the
 org.apache.wink.common.DynamicResource.<DT><A HREF="./org/apache/wink/common/AbstractDynamicResource.html#AbstractDynamicResource()"><B>AbstractDynamicResource()</B></A> - 
Constructor for class org.apache.wink.common.<A HREF="./org/apache/wink/common/AbstractDynamicResource.html" title="class in org.apache.wink.common">AbstractDynamicResource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/server/handlers/AbstractHandler.html" title="class in org.apache.wink.server.handlers"><B>AbstractHandler</B></A> - Class in <A HREF="./org/apache/wink/server/handlers/package-summary.html">org.apache.wink.server.handlers</A><DD>Convenience class for implementing a handler that is unaware of the handlers
 chain.<DT><A HREF="./org/apache/wink/server/handlers/AbstractHandler.html#AbstractHandler()"><B>AbstractHandler()</B></A> - 
Constructor for class org.apache.wink.server.handlers.<A HREF="./org/apache/wink/server/handlers/AbstractHandler.html" title="class in org.apache.wink.server.handlers">AbstractHandler</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/server/handlers/AbstractHandlersChain.html" title="class in org.apache.wink.server.handlers"><B>AbstractHandlersChain</B></A>&lt;<A HREF="./org/apache/wink/server/handlers/AbstractHandlersChain.html" title="type parameter in AbstractHandlersChain">T</A> extends <A HREF="./org/apache/wink/server/handlers/Handler.html" title="interface in org.apache.wink.server.handlers">Handler</A>&gt; - Class in <A HREF="./org/apache/wink/server/handlers/package-summary.html">org.apache.wink.server.handlers</A><DD>&nbsp;<DT><A HREF="./org/apache/wink/server/handlers/AbstractHandlersChain.html#AbstractHandlersChain()"><B>AbstractHandlersChain()</B></A> - 
Constructor for class org.apache.wink.server.handlers.<A HREF="./org/apache/wink/server/handlers/AbstractHandlersChain.html" title="class in org.apache.wink.server.handlers">AbstractHandlersChain</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/Resource.html#accept(java.lang.String...)"><B>accept(String...)</B></A> - 
Method in interface org.apache.wink.client.<A HREF="./org/apache/wink/client/Resource.html" title="interface in org.apache.wink.client">Resource</A>
<DD>Add values to the Accept header.
<DT><A HREF="./org/apache/wink/client/Resource.html#accept(javax.ws.rs.core.MediaType...)"><B>accept(MediaType...)</B></A> - 
Method in interface org.apache.wink.client.<A HREF="./org/apache/wink/client/Resource.html" title="interface in org.apache.wink.client">Resource</A>
<DD>Add values to the Accept header.
<DT><A HREF="./org/apache/wink/common/model/app/AppCollection.html#accept"><B>accept</B></A> - 
Variable in class org.apache.wink.common.model.app.<A HREF="./org/apache/wink/common/model/app/AppCollection.html" title="class in org.apache.wink.common.model.app">AppCollection</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/http/HttpHeadersEx.html#ACCEPT_RANGES"><B>ACCEPT_RANGES</B></A> - 
Static variable in class org.apache.wink.common.http.<A HREF="./org/apache/wink/common/http/HttpHeadersEx.html" title="class in org.apache.wink.common.http">HttpHeadersEx</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/http/HttpStatus.html#ACCEPTED"><B>ACCEPTED</B></A> - 
Static variable in class org.apache.wink.common.http.<A HREF="./org/apache/wink/common/http/HttpStatus.html" title="class in org.apache.wink.common.http">HttpStatus</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/ClientConfig.html#acceptHeaderAutoSet(boolean)"><B>acceptHeaderAutoSet(boolean)</B></A> - 
Method in class org.apache.wink.client.<A HREF="./org/apache/wink/client/ClientConfig.html" title="class in org.apache.wink.client">ClientConfig</A>
<DD>Set whether client will automatically set an appropriate Accept header
<DT><A HREF="./org/apache/wink/client/Resource.html#acceptLanguage(java.lang.String...)"><B>acceptLanguage(String...)</B></A> - 
Method in interface org.apache.wink.client.<A HREF="./org/apache/wink/client/Resource.html" title="interface in org.apache.wink.client">Resource</A>
<DD>Add values to the Accept-Language header.
<DT><A HREF="./org/apache/wink/client/Resource.html#acceptLanguage(java.util.Locale...)"><B>acceptLanguage(Locale...)</B></A> - 
Method in interface org.apache.wink.client.<A HREF="./org/apache/wink/client/Resource.html" title="interface in org.apache.wink.client">Resource</A>
<DD>Add values to the Accept-Language header.
<DT><A HREF="./org/apache/wink/osgi/WinkRequestProcessor.html#activate(org.osgi.service.component.ComponentContext)"><B>activate(ComponentContext)</B></A> - 
Method in class org.apache.wink.osgi.<A HREF="./org/apache/wink/osgi/WinkRequestProcessor.html" title="class in org.apache.wink.osgi">WinkRequestProcessor</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Activelock.html" title="class in org.apache.wink.webdav.model"><B>Activelock</B></A> - Class in <A HREF="./org/apache/wink/webdav/model/package-summary.html">org.apache.wink.webdav.model</A><DD>The <code>activelock</code> XML element per the WebDAV specification [RFC
 4918]<DT><A HREF="./org/apache/wink/webdav/model/Activelock.html#Activelock()"><B>Activelock()</B></A> - 
Constructor for class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Activelock.html" title="class in org.apache.wink.webdav.model">Activelock</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Lockdiscovery.html#activelock"><B>activelock</B></A> - 
Variable in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Lockdiscovery.html" title="class in org.apache.wink.webdav.model">Lockdiscovery</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/handlers/InputStreamAdapter.html#adapt(java.io.InputStream, org.apache.wink.client.ClientResponse)"><B>adapt(InputStream, ClientResponse)</B></A> - 
Method in interface org.apache.wink.client.handlers.<A HREF="./org/apache/wink/client/handlers/InputStreamAdapter.html" title="interface in org.apache.wink.client.handlers">InputStreamAdapter</A>
<DD>This method is called in order to wrap the response input stream with
 another input stream to allow the manipulation of the response entity
 stream.
<DT><A HREF="./org/apache/wink/client/handlers/OutputStreamAdapter.html#adapt(java.io.OutputStream, org.apache.wink.client.ClientRequest)"><B>adapt(OutputStream, ClientRequest)</B></A> - 
Method in interface org.apache.wink.client.handlers.<A HREF="./org/apache/wink/client/handlers/OutputStreamAdapter.html" title="interface in org.apache.wink.client.handlers">OutputStreamAdapter</A>
<DD>This method is called in order to wrap the request output stream with
 another output stream to allow the manipulation of the request entity
 stream.
<DT><A HREF="./org/apache/wink/json4j/JSONArray.html#add(int, java.lang.Object)"><B>add(int, Object)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONArray.html" title="class in org.apache.wink.json4j">JSONArray</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/JSONArray.html#add(java.lang.Object, boolean)"><B>add(Object, boolean)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONArray.html" title="class in org.apache.wink.json4j">JSONArray</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/JSONArray.html#add(java.lang.Object)"><B>add(Object)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONArray.html" title="class in org.apache.wink.json4j">JSONArray</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/JSONArray.html#addAll(java.util.Collection)"><B>addAll(Collection)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONArray.html" title="class in org.apache.wink.json4j">JSONArray</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/JSONArray.html#addAll(int, java.util.Collection)"><B>addAll(int, Collection)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONArray.html" title="class in org.apache.wink.json4j">JSONArray</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/server/utils/BaseLinksBuilder.html#addAltParam(boolean)"><B>addAltParam(boolean)</B></A> - 
Method in interface org.apache.wink.server.utils.<A HREF="./org/apache/wink/server/utils/BaseLinksBuilder.html" title="interface in org.apache.wink.server.utils">BaseLinksBuilder</A>
<DD>Set whether the to automatically add to the generated links the "alt"
 query parameter indicating the link type.
<DT><A HREF="./org/apache/wink/common/model/synd/SyndBase.html#addAuthor(org.apache.wink.common.model.synd.SyndPerson)"><B>addAuthor(SyndPerson)</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndBase.html" title="class in org.apache.wink.common.model.synd">SyndBase</A>
<DD>Add an author to the list of authors.
<DT><A HREF="./org/apache/wink/common/categories/Categories.html#addCategory(org.apache.wink.common.model.atom.AtomCategory)"><B>addCategory(AtomCategory)</B></A> - 
Method in class org.apache.wink.common.categories.<A HREF="./org/apache/wink/common/categories/Categories.html" title="class in org.apache.wink.common.categories">Categories</A>
<DD>Add an atom:Category to the listing
<DT><A HREF="./org/apache/wink/common/categories/Categories.html#addCategory(java.lang.String)"><B>addCategory(String)</B></A> - 
Method in class org.apache.wink.common.categories.<A HREF="./org/apache/wink/common/categories/Categories.html" title="class in org.apache.wink.common.categories">Categories</A>
<DD>Create and add an atom:Category to the listing
<DT><A HREF="./org/apache/wink/common/categories/Categories.html#addCategory(java.lang.String, java.lang.String, java.lang.String)"><B>addCategory(String, String, String)</B></A> - 
Method in class org.apache.wink.common.categories.<A HREF="./org/apache/wink/common/categories/Categories.html" title="class in org.apache.wink.common.categories">Categories</A>
<DD>Create an add an atom:Category to the listing
<DT><A HREF="./org/apache/wink/common/model/synd/SyndBase.html#addCategory(org.apache.wink.common.model.synd.SyndCategory)"><B>addCategory(SyndCategory)</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndBase.html" title="class in org.apache.wink.common.model.synd">SyndBase</A>
<DD>Add a category to the list of categories.
<DT><A HREF="./org/apache/wink/common/model/csv/CsvDeserializer.html#addEntity(java.lang.String[])"><B>addEntity(String[])</B></A> - 
Method in interface org.apache.wink.common.model.csv.<A HREF="./org/apache/wink/common/model/csv/CsvDeserializer.html" title="interface in org.apache.wink.common.model.csv">CsvDeserializer</A>
<DD>Add a single row to the CSV
<DT><A HREF="./org/apache/wink/common/model/csv/CsvTable.html#addEntity(java.lang.String[])"><B>addEntity(String[])</B></A> - 
Method in class org.apache.wink.common.model.csv.<A HREF="./org/apache/wink/common/model/csv/CsvTable.html" title="class in org.apache.wink.common.model.csv">CsvTable</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/csv/MultiCsvTable.html#addEntity(java.lang.String[])"><B>addEntity(String[])</B></A> - 
Method in class org.apache.wink.common.model.csv.<A HREF="./org/apache/wink/common/model/csv/MultiCsvTable.html" title="class in org.apache.wink.common.model.csv">MultiCsvTable</A>
<DD>Add a row to the last table when deserializing a multi table csv.
<DT><A HREF="./org/apache/wink/common/model/synd/SyndFeed.html#addEntry(org.apache.wink.common.model.synd.SyndEntry)"><B>addEntry(SyndEntry)</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndFeed.html" title="class in org.apache.wink.common.model.synd">SyndFeed</A>
<DD>Add an entry to the list of entries.
<DT><A HREF="./org/apache/wink/server/handlers/AbstractHandlersChain.html#addHandler(T)"><B>addHandler(T)</B></A> - 
Method in class org.apache.wink.server.handlers.<A HREF="./org/apache/wink/server/handlers/AbstractHandlersChain.html" title="class in org.apache.wink.server.handlers">AbstractHandlersChain</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/multipart/OutPart.html#addHeader(java.lang.String, java.lang.String)"><B>addHeader(String, String)</B></A> - 
Method in class org.apache.wink.common.model.multipart.<A HREF="./org/apache/wink/common/model/multipart/OutPart.html" title="class in org.apache.wink.common.model.multipart">OutPart</A>
<DD>add header to the part
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html#addInputEncoding(java.lang.String)"><B>addInputEncoding(String)</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchDescription</A>
<DD>Adds InputEncoding to the list of supported Input Encoding
<DT><A HREF="./org/apache/wink/client/handlers/HandlerContext.html#addInputStreamAdapter(org.apache.wink.client.handlers.InputStreamAdapter)"><B>addInputStreamAdapter(InputStreamAdapter)</B></A> - 
Method in interface org.apache.wink.client.handlers.<A HREF="./org/apache/wink/client/handlers/HandlerContext.html" title="interface in org.apache.wink.client.handlers">HandlerContext</A>
<DD>Add an <A HREF="./org/apache/wink/client/handlers/InputStreamAdapter.html" title="interface in org.apache.wink.client.handlers"><CODE>InputStreamAdapter</CODE></A> to adapt the response input stream
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html#addLanguage(java.lang.String)"><B>addLanguage(String)</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchDescription</A>
<DD>Add "Language".
<DT><A HREF="./org/apache/wink/common/model/synd/SyndBase.html#addLink(org.apache.wink.common.model.synd.SyndLink)"><B>addLink(SyndLink)</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndBase.html" title="class in org.apache.wink.common.model.synd">SyndBase</A>
<DD>Add a link to the list of links.
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html#addNewImage(org.apache.wink.common.model.opensearch.OpenSearchImage)"><B>addNewImage(OpenSearchImage)</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchDescription</A>
<DD>Adds new Image to the list
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchUrl.html#addOpenSearchParameter(org.apache.wink.common.model.opensearch.OpenSearchParameter)"><B>addOpenSearchParameter(OpenSearchParameter)</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchUrl.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchUrl</A>
<DD>Add OpenSearch parameter to the list of Open Search Parameters
<DT><A HREF="./org/apache/wink/common/model/atom/AtomFeed.html#addOpenSearchQuery(org.apache.wink.common.model.opensearch.OpenSearchQuery)"><B>addOpenSearchQuery(OpenSearchQuery)</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomFeed.html" title="class in org.apache.wink.common.model.atom">AtomFeed</A>
<DD>Adds an opensearch Query element
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html#addOutputEncoding(java.lang.String)"><B>addOutputEncoding(String)</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchDescription</A>
<DD>Adds OutputEncoding to the list of supported Output Encoding
<DT><A HREF="./org/apache/wink/client/handlers/HandlerContext.html#addOutputStreamAdapter(org.apache.wink.client.handlers.OutputStreamAdapter)"><B>addOutputStreamAdapter(OutputStreamAdapter)</B></A> - 
Method in interface org.apache.wink.client.handlers.<A HREF="./org/apache/wink/client/handlers/HandlerContext.html" title="interface in org.apache.wink.client.handlers">HandlerContext</A>
<DD>Add an <A HREF="./org/apache/wink/client/handlers/OutputStreamAdapter.html" title="interface in org.apache.wink.client.handlers"><CODE>OutputStreamAdapter</CODE></A> to adapt the request output stream
<DT><A HREF="./org/apache/wink/common/model/multipart/BufferedOutMultiPart.html#addPart(org.apache.wink.common.model.multipart.OutPart)"><B>addPart(OutPart)</B></A> - 
Method in class org.apache.wink.common.model.multipart.<A HREF="./org/apache/wink/common/model/multipart/BufferedOutMultiPart.html" title="class in org.apache.wink.common.model.multipart">BufferedOutMultiPart</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html#addQuery(org.apache.wink.common.model.opensearch.OpenSearchQuery)"><B>addQuery(OpenSearchQuery)</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchDescription</A>
<DD>Adds OpenSearchQuery to the list of Open Search Queries
<DT><A HREF="./org/apache/wink/common/model/csv/CsvTable.html#addRow(java.lang.String...)"><B>addRow(String...)</B></A> - 
Method in class org.apache.wink.common.model.csv.<A HREF="./org/apache/wink/common/model/csv/CsvTable.html" title="class in org.apache.wink.common.model.csv">CsvTable</A>
<DD>Add a row to the table.
<DT><A HREF="./org/apache/wink/common/model/csv/MultiCsvTable.html#addTable(org.apache.wink.common.model.csv.CsvTable)"><B>addTable(CsvTable)</B></A> - 
Method in class org.apache.wink.common.model.csv.<A HREF="./org/apache/wink/common/model/csv/MultiCsvTable.html" title="class in org.apache.wink.common.model.csv">MultiCsvTable</A>
<DD>Add a table to this multi-table csv.
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html#addUrl(org.apache.wink.common.model.opensearch.OpenSearchUrl)"><B>addUrl(OpenSearchUrl)</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchDescription</A>
<DD>Adds OpenSearchUrl to the list of Open Search Urls.
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html#adultContent"><B>adultContent</B></A> - 
Variable in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchDescription</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/http/HttpHeadersEx.html#ALLOW"><B>ALLOW</B></A> - 
Static variable in class org.apache.wink.common.http.<A HREF="./org/apache/wink/common/http/HttpHeadersEx.html" title="class in org.apache.wink.common.http">HttpHeadersEx</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Allprop.html" title="class in org.apache.wink.webdav.model"><B>Allprop</B></A> - Class in <A HREF="./org/apache/wink/webdav/model/package-summary.html">org.apache.wink.webdav.model</A><DD>The <code>allprop</code> XML element per the WebDAV specification [RFC 4918]<DT><A HREF="./org/apache/wink/webdav/model/Allprop.html#Allprop()"><B>Allprop()</B></A> - 
Constructor for class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Allprop.html" title="class in org.apache.wink.webdav.model">Allprop</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Propfind.html#allprop"><B>allprop</B></A> - 
Variable in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Propfind.html" title="class in org.apache.wink.webdav.model">Propfind</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/server/utils/SystemLinksBuilder.html#allResources(boolean)"><B>allResources(boolean)</B></A> - 
Method in interface org.apache.wink.server.utils.<A HREF="./org/apache/wink/server/utils/SystemLinksBuilder.html" title="interface in org.apache.wink.server.utils">SystemLinksBuilder</A>
<DD>Determines if this system links builder will generate links for all the
 root resources that are reachable when the search mode is
 "Continued Search" or just the current active resource.
<DT><A HREF="./org/apache/wink/common/model/app/AppCollection.html#any"><B>any</B></A> - 
Variable in class org.apache.wink.common.model.app.<A HREF="./org/apache/wink/common/model/app/AppCollection.html" title="class in org.apache.wink.common.model.app">AppCollection</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/app/AppService.html#any"><B>any</B></A> - 
Variable in class org.apache.wink.common.model.app.<A HREF="./org/apache/wink/common/model/app/AppService.html" title="class in org.apache.wink.common.model.app">AppService</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/app/AppWorkspace.html#any"><B>any</B></A> - 
Variable in class org.apache.wink.common.model.app.<A HREF="./org/apache/wink/common/model/app/AppWorkspace.html" title="class in org.apache.wink.common.model.app">AppWorkspace</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomEntry.html#any"><B>any</B></A> - 
Variable in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomEntry.html" title="class in org.apache.wink.common.model.atom">AtomEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomFeed.html#any"><B>any</B></A> - 
Variable in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomFeed.html" title="class in org.apache.wink.common.model.atom">AtomFeed</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomPerson.html#any"><B>any</B></A> - 
Variable in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomPerson.html" title="class in org.apache.wink.common.model.atom">AtomPerson</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/rss/RssChannel.html#any"><B>any</B></A> - 
Variable in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssChannel.html" title="class in org.apache.wink.common.model.rss">RssChannel</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/rss/RssItem.html#any"><B>any</B></A> - 
Variable in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssItem.html" title="class in org.apache.wink.common.model.rss">RssItem</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Application.html#any"><B>any</B></A> - 
Variable in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Application.html" title="class in org.apache.wink.common.model.wadl">Application</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Grammars.html#any"><B>any</B></A> - 
Variable in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Grammars.html" title="class in org.apache.wink.common.model.wadl">Grammars</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Link.html#any"><B>any</B></A> - 
Variable in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Link.html" title="class in org.apache.wink.common.model.wadl">Link</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Method.html#any"><B>any</B></A> - 
Variable in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Method.html" title="class in org.apache.wink.common.model.wadl">Method</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Option.html#any"><B>any</B></A> - 
Variable in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Option.html" title="class in org.apache.wink.common.model.wadl">Option</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Param.html#any"><B>any</B></A> - 
Variable in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Param.html" title="class in org.apache.wink.common.model.wadl">Param</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Representation.html#any"><B>any</B></A> - 
Variable in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Representation.html" title="class in org.apache.wink.common.model.wadl">Representation</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Request.html#any"><B>any</B></A> - 
Variable in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Request.html" title="class in org.apache.wink.common.model.wadl">Request</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Resource.html#any"><B>any</B></A> - 
Variable in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Resource.html" title="class in org.apache.wink.common.model.wadl">Resource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Resources.html#any"><B>any</B></A> - 
Variable in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Resources.html" title="class in org.apache.wink.common.model.wadl">Resources</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/ResourceType.html#any"><B>any</B></A> - 
Variable in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/ResourceType.html" title="class in org.apache.wink.common.model.wadl">ResourceType</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Response.html#any"><B>any</B></A> - 
Variable in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Response.html" title="class in org.apache.wink.common.model.wadl">Response</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Error.html#any"><B>any</B></A> - 
Variable in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Error.html" title="class in org.apache.wink.webdav.model">Error</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Prop.html#any"><B>any</B></A> - 
Variable in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Prop.html" title="class in org.apache.wink.webdav.model">Prop</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Resourcetype.html#any"><B>any</B></A> - 
Variable in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Resourcetype.html" title="class in org.apache.wink.webdav.model">Resourcetype</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/ApacheHttpClientConfig.html" title="class in org.apache.wink.client"><B>ApacheHttpClientConfig</B></A> - Class in <A HREF="./org/apache/wink/client/package-summary.html">org.apache.wink.client</A><DD><B>Deprecated.</B>&nbsp;<I></I>&nbsp;<DT><A HREF="./org/apache/wink/client/ApacheHttpClientConfig.html#ApacheHttpClientConfig()"><B>ApacheHttpClientConfig()</B></A> - 
Constructor for class org.apache.wink.client.<A HREF="./org/apache/wink/client/ApacheHttpClientConfig.html" title="class in org.apache.wink.client">ApacheHttpClientConfig</A>
<DD><B>Deprecated.</B>&nbsp;&nbsp;
<DT><A HREF="./org/apache/wink/client/ApacheHttpClientConfig.html#ApacheHttpClientConfig(org.apache.http.client.HttpClient)"><B>ApacheHttpClientConfig(HttpClient)</B></A> - 
Constructor for class org.apache.wink.client.<A HREF="./org/apache/wink/client/ApacheHttpClientConfig.html" title="class in org.apache.wink.client">ApacheHttpClientConfig</A>
<DD><B>Deprecated.</B>&nbsp;&nbsp;
<DT><A HREF="./org/apache/wink/client/httpclient/ApacheHttpClientConfig.html" title="class in org.apache.wink.client.httpclient"><B>ApacheHttpClientConfig</B></A> - Class in <A HREF="./org/apache/wink/client/httpclient/package-summary.html">org.apache.wink.client.httpclient</A><DD>Configuration object that wraps Apache HttpClient as underling Http client.<DT><A HREF="./org/apache/wink/client/httpclient/ApacheHttpClientConfig.html#ApacheHttpClientConfig()"><B>ApacheHttpClientConfig()</B></A> - 
Constructor for class org.apache.wink.client.httpclient.<A HREF="./org/apache/wink/client/httpclient/ApacheHttpClientConfig.html" title="class in org.apache.wink.client.httpclient">ApacheHttpClientConfig</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/httpclient/ApacheHttpClientConfig.html#ApacheHttpClientConfig(org.apache.http.client.HttpClient)"><B>ApacheHttpClientConfig(HttpClient)</B></A> - 
Constructor for class org.apache.wink.client.httpclient.<A HREF="./org/apache/wink/client/httpclient/ApacheHttpClientConfig.html" title="class in org.apache.wink.client.httpclient">ApacheHttpClientConfig</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONArrayDelegate.html" title="class in org.apache.wink.json4j.compat.impl"><B>ApacheJSONArrayDelegate</B></A> - Class in <A HREF="./org/apache/wink/json4j/compat/impl/package-summary.html">org.apache.wink.json4j.compat.impl</A><DD>&nbsp;<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONArrayDelegate.html#ApacheJSONArrayDelegate()"><B>ApacheJSONArrayDelegate()</B></A> - 
Constructor for class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONArrayDelegate.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONArrayDelegate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONArrayDelegate.html#ApacheJSONArrayDelegate(org.apache.wink.json4j.JSONArray)"><B>ApacheJSONArrayDelegate(JSONArray)</B></A> - 
Constructor for class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONArrayDelegate.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONArrayDelegate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONFactory.html" title="class in org.apache.wink.json4j.compat.impl"><B>ApacheJSONFactory</B></A> - Class in <A HREF="./org/apache/wink/json4j/compat/impl/package-summary.html">org.apache.wink.json4j.compat.impl</A><DD>&nbsp;<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONFactory.html#ApacheJSONFactory()"><B>ApacheJSONFactory()</B></A> - 
Constructor for class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONFactory.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONObjectDelegate.html" title="class in org.apache.wink.json4j.compat.impl"><B>ApacheJSONObjectDelegate</B></A> - Class in <A HREF="./org/apache/wink/json4j/compat/impl/package-summary.html">org.apache.wink.json4j.compat.impl</A><DD>&nbsp;<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONObjectDelegate.html#ApacheJSONObjectDelegate()"><B>ApacheJSONObjectDelegate()</B></A> - 
Constructor for class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONObjectDelegate.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONObjectDelegate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONObjectDelegate.html#ApacheJSONObjectDelegate(org.apache.wink.json4j.JSONObject)"><B>ApacheJSONObjectDelegate(JSONObject)</B></A> - 
Constructor for class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONObjectDelegate.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONObjectDelegate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONStringerDelegate.html" title="class in org.apache.wink.json4j.compat.impl"><B>ApacheJSONStringerDelegate</B></A> - Class in <A HREF="./org/apache/wink/json4j/compat/impl/package-summary.html">org.apache.wink.json4j.compat.impl</A><DD>&nbsp;<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONStringerDelegate.html#ApacheJSONStringerDelegate()"><B>ApacheJSONStringerDelegate()</B></A> - 
Constructor for class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONStringerDelegate.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONStringerDelegate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONWriterDelegate.html" title="class in org.apache.wink.json4j.compat.impl"><B>ApacheJSONWriterDelegate</B></A> - Class in <A HREF="./org/apache/wink/json4j/compat/impl/package-summary.html">org.apache.wink.json4j.compat.impl</A><DD>&nbsp;<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONWriterDelegate.html#ApacheJSONWriterDelegate(java.io.Writer)"><B>ApacheJSONWriterDelegate(Writer)</B></A> - 
Constructor for class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONWriterDelegate.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONWriterDelegate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/RestConstants.html#APP_PREFIX"><B>APP_PREFIX</B></A> - 
Static variable in class org.apache.wink.common.<A HREF="./org/apache/wink/common/RestConstants.html" title="class in org.apache.wink.common">RestConstants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/app/AppAccept.html" title="class in org.apache.wink.common.model.app"><B>AppAccept</B></A> - Class in <A HREF="./org/apache/wink/common/model/app/package-summary.html">org.apache.wink.common.model.app</A><DD>The "app:accept" Element Per RFC5023<DT><A HREF="./org/apache/wink/common/model/app/AppAccept.html#AppAccept()"><B>AppAccept()</B></A> - 
Constructor for class org.apache.wink.common.model.app.<A HREF="./org/apache/wink/common/model/app/AppAccept.html" title="class in org.apache.wink.common.model.app">AppAccept</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/app/AppCategories.html" title="class in org.apache.wink.common.model.app"><B>AppCategories</B></A> - Class in <A HREF="./org/apache/wink/common/model/app/package-summary.html">org.apache.wink.common.model.app</A><DD>The "app:categories" Element Per RFC5023<DT><A HREF="./org/apache/wink/common/model/app/AppCategories.html#AppCategories()"><B>AppCategories()</B></A> - 
Constructor for class org.apache.wink.common.model.app.<A HREF="./org/apache/wink/common/model/app/AppCategories.html" title="class in org.apache.wink.common.model.app">AppCategories</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/app/AppCollection.html" title="class in org.apache.wink.common.model.app"><B>AppCollection</B></A> - Class in <A HREF="./org/apache/wink/common/model/app/package-summary.html">org.apache.wink.common.model.app</A><DD>The "app:collection" Element Per RFC5023<DT><A HREF="./org/apache/wink/common/model/app/AppCollection.html#AppCollection()"><B>AppCollection()</B></A> - 
Constructor for class org.apache.wink.common.model.app.<A HREF="./org/apache/wink/common/model/app/AppCollection.html" title="class in org.apache.wink.common.model.app">AppCollection</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONObjectDelegate.html#append(java.lang.String, java.lang.Object)"><B>append(String, Object)</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONObjectDelegate.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONObjectDelegate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONObject.html#append(java.lang.String, java.lang.Object)"><B>append(String, Object)</B></A> - 
Method in interface org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONObject.html" title="interface in org.apache.wink.json4j.compat">JSONObject</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/JSONObject.html#append(java.lang.String, java.lang.Object)"><B>append(String, Object)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONObject.html" title="class in org.apache.wink.json4j">JSONObject</A>
<DD>Method to append the 'value' object to the element at entry 'key'.
<DT><A HREF="./org/apache/wink/common/model/wadl/Application.html" title="class in org.apache.wink.common.model.wadl"><B>Application</B></A> - Class in <A HREF="./org/apache/wink/common/model/wadl/package-summary.html">org.apache.wink.common.model.wadl</A><DD>Java class for anonymous complex type.<DT><A HREF="./org/apache/wink/common/model/wadl/Application.html#Application()"><B>Application()</B></A> - 
Constructor for class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Application.html" title="class in org.apache.wink.common.model.wadl">Application</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/ClientConfig.html#applications(javax.ws.rs.core.Application...)"><B>applications(Application...)</B></A> - 
Method in class org.apache.wink.client.<A HREF="./org/apache/wink/client/ClientConfig.html" title="class in org.apache.wink.client">ClientConfig</A>
<DD>Add applications
<DT><A HREF="./org/apache/wink/common/model/app/AppService.html" title="class in org.apache.wink.common.model.app"><B>AppService</B></A> - Class in <A HREF="./org/apache/wink/common/model/app/package-summary.html">org.apache.wink.common.model.app</A><DD>The "app:service" Element Per RFC5023<DT><A HREF="./org/apache/wink/common/model/app/AppService.html#AppService()"><B>AppService()</B></A> - 
Constructor for class org.apache.wink.common.model.app.<A HREF="./org/apache/wink/common/model/app/AppService.html" title="class in org.apache.wink.common.model.app">AppService</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/app/AppWorkspace.html" title="class in org.apache.wink.common.model.app"><B>AppWorkspace</B></A> - Class in <A HREF="./org/apache/wink/common/model/app/package-summary.html">org.apache.wink.common.model.app</A><DD>The "app:workspace" Element Per RFC5023<DT><A HREF="./org/apache/wink/common/model/app/AppWorkspace.html#AppWorkspace()"><B>AppWorkspace()</B></A> - 
Constructor for class org.apache.wink.common.model.app.<A HREF="./org/apache/wink/common/model/app/AppWorkspace.html" title="class in org.apache.wink.common.model.app">AppWorkspace</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/app/AppYesNo.html" title="enum in org.apache.wink.common.model.app"><B>AppYesNo</B></A> - Enum in <A HREF="./org/apache/wink/common/model/app/package-summary.html">org.apache.wink.common.model.app</A><DD>An enum for specifying the value of a "fixed" attribute of the app:categories
 element<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONWriterDelegate.html#array()"><B>array()</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONWriterDelegate.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONWriterDelegate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONWriter.html#array()"><B>array()</B></A> - 
Method in interface org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONWriter.html" title="interface in org.apache.wink.json4j.compat">JSONWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/JSONWriter.html#array()"><B>array()</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONWriter.html" title="class in org.apache.wink.json4j">JSONWriter</A>
<DD>Open a new JSON Array in the output stream.
<DT><A HREF="./org/apache/wink/common/annotations/Asset.html" title="annotation in org.apache.wink.common.annotations"><B>Asset</B></A> - Annotation Type in <A HREF="./org/apache/wink/common/annotations/package-summary.html">org.apache.wink.common.annotations</A><DD>&nbsp;<DT><A HREF="./org/apache/wink/client/AsyncHttpClientConfiguration.html" title="class in org.apache.wink.client"><B>AsyncHttpClientConfiguration</B></A> - Class in <A HREF="./org/apache/wink/client/package-summary.html">org.apache.wink.client</A><DD>Configure the <CODE>AsyncHttpClient</CODE><DT><A HREF="./org/apache/wink/client/AsyncHttpClientConfiguration.html#AsyncHttpClientConfiguration()"><B>AsyncHttpClientConfiguration()</B></A> - 
Constructor for class org.apache.wink.client.<A HREF="./org/apache/wink/client/AsyncHttpClientConfiguration.html" title="class in org.apache.wink.client">AsyncHttpClientConfiguration</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/AsyncHttpClientConfiguration.html#AsyncHttpClientConfiguration(com.ning.http.client.AsyncHttpClient)"><B>AsyncHttpClientConfiguration(AsyncHttpClient)</B></A> - 
Constructor for class org.apache.wink.client.<A HREF="./org/apache/wink/client/AsyncHttpClientConfiguration.html" title="class in org.apache.wink.client">AsyncHttpClientConfiguration</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/AsyncHttpClientConnectionHandler.html" title="class in org.apache.wink.client"><B>AsyncHttpClientConnectionHandler</B></A> - Class in <A HREF="./org/apache/wink/client/package-summary.html">org.apache.wink.client</A><DD>Extends <CODE>AbstractConnectionHandler</CODE> and uses <CODE>AsyncHttpClient</CODE> to perform HTTP request execution.<DT><A HREF="./org/apache/wink/client/AsyncHttpClientConnectionHandler.html#AsyncHttpClientConnectionHandler(com.ning.http.client.AsyncHttpClient)"><B>AsyncHttpClientConnectionHandler(AsyncHttpClient)</B></A> - 
Constructor for class org.apache.wink.client.<A HREF="./org/apache/wink/client/AsyncHttpClientConnectionHandler.html" title="class in org.apache.wink.client">AsyncHttpClientConnectionHandler</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomConstants.html#ATOM_HTML"><B>ATOM_HTML</B></A> - 
Static variable in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomConstants.html" title="class in org.apache.wink.common.model.atom">AtomConstants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/RestConstants.html#ATOM_PREFIX"><B>ATOM_PREFIX</B></A> - 
Static variable in class org.apache.wink.common.<A HREF="./org/apache/wink/common/RestConstants.html" title="class in org.apache.wink.common">RestConstants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomConstants.html#ATOM_REL_ALT"><B>ATOM_REL_ALT</B></A> - 
Static variable in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomConstants.html" title="class in org.apache.wink.common.model.atom">AtomConstants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomConstants.html#ATOM_REL_EDIT"><B>ATOM_REL_EDIT</B></A> - 
Static variable in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomConstants.html" title="class in org.apache.wink.common.model.atom">AtomConstants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomConstants.html#ATOM_REL_EDIT_MEDIA"><B>ATOM_REL_EDIT_MEDIA</B></A> - 
Static variable in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomConstants.html" title="class in org.apache.wink.common.model.atom">AtomConstants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomConstants.html#ATOM_REL_ENCLOSURE"><B>ATOM_REL_ENCLOSURE</B></A> - 
Static variable in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomConstants.html" title="class in org.apache.wink.common.model.atom">AtomConstants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomConstants.html#ATOM_REL_FIRST"><B>ATOM_REL_FIRST</B></A> - 
Static variable in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomConstants.html" title="class in org.apache.wink.common.model.atom">AtomConstants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomConstants.html#ATOM_REL_HISTORY"><B>ATOM_REL_HISTORY</B></A> - 
Static variable in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomConstants.html" title="class in org.apache.wink.common.model.atom">AtomConstants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomConstants.html#ATOM_REL_LAST"><B>ATOM_REL_LAST</B></A> - 
Static variable in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomConstants.html" title="class in org.apache.wink.common.model.atom">AtomConstants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomConstants.html#ATOM_REL_NEXT"><B>ATOM_REL_NEXT</B></A> - 
Static variable in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomConstants.html" title="class in org.apache.wink.common.model.atom">AtomConstants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomConstants.html#ATOM_REL_PREVIOUS"><B>ATOM_REL_PREVIOUS</B></A> - 
Static variable in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomConstants.html" title="class in org.apache.wink.common.model.atom">AtomConstants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomConstants.html#ATOM_REL_RELATED"><B>ATOM_REL_RELATED</B></A> - 
Static variable in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomConstants.html" title="class in org.apache.wink.common.model.atom">AtomConstants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomConstants.html#ATOM_REL_SEARCH"><B>ATOM_REL_SEARCH</B></A> - 
Static variable in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomConstants.html" title="class in org.apache.wink.common.model.atom">AtomConstants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomConstants.html#ATOM_REL_SELF"><B>ATOM_REL_SELF</B></A> - 
Static variable in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomConstants.html" title="class in org.apache.wink.common.model.atom">AtomConstants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomConstants.html#ATOM_REL_VIA"><B>ATOM_REL_VIA</B></A> - 
Static variable in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomConstants.html" title="class in org.apache.wink.common.model.atom">AtomConstants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomConstants.html#ATOM_TXT"><B>ATOM_TXT</B></A> - 
Static variable in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomConstants.html" title="class in org.apache.wink.common.model.atom">AtomConstants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomConstants.html#ATOM_XHTML"><B>ATOM_XHTML</B></A> - 
Static variable in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomConstants.html" title="class in org.apache.wink.common.model.atom">AtomConstants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomCategory.html" title="class in org.apache.wink.common.model.atom"><B>AtomCategory</B></A> - Class in <A HREF="./org/apache/wink/common/model/atom/package-summary.html">org.apache.wink.common.model.atom</A><DD>The "atom:category" element Per RFC4287<DT><A HREF="./org/apache/wink/common/model/atom/AtomCategory.html#AtomCategory()"><B>AtomCategory()</B></A> - 
Constructor for class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomCategory.html" title="class in org.apache.wink.common.model.atom">AtomCategory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomCategory.html#AtomCategory(org.apache.wink.common.model.synd.SyndCategory)"><B>AtomCategory(SyndCategory)</B></A> - 
Constructor for class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomCategory.html" title="class in org.apache.wink.common.model.atom">AtomCategory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomCommonAttributes.html" title="class in org.apache.wink.common.model.atom"><B>AtomCommonAttributes</B></A> - Class in <A HREF="./org/apache/wink/common/model/atom/package-summary.html">org.apache.wink.common.model.atom</A><DD>Common attributes Per RFC4287<DT><A HREF="./org/apache/wink/common/model/atom/AtomCommonAttributes.html#AtomCommonAttributes()"><B>AtomCommonAttributes()</B></A> - 
Constructor for class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomCommonAttributes.html" title="class in org.apache.wink.common.model.atom">AtomCommonAttributes</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomCommonAttributes.html#AtomCommonAttributes(org.apache.wink.common.model.synd.SyndCommonAttributes)"><B>AtomCommonAttributes(SyndCommonAttributes)</B></A> - 
Constructor for class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomCommonAttributes.html" title="class in org.apache.wink.common.model.atom">AtomCommonAttributes</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomCommonAttributesSimpleContent.html" title="class in org.apache.wink.common.model.atom"><B>AtomCommonAttributesSimpleContent</B></A> - Class in <A HREF="./org/apache/wink/common/model/atom/package-summary.html">org.apache.wink.common.model.atom</A><DD>Common attributes Per RFC4287<DT><A HREF="./org/apache/wink/common/model/atom/AtomCommonAttributesSimpleContent.html#AtomCommonAttributesSimpleContent()"><B>AtomCommonAttributesSimpleContent()</B></A> - 
Constructor for class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomCommonAttributesSimpleContent.html" title="class in org.apache.wink.common.model.atom">AtomCommonAttributesSimpleContent</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomCommonAttributesSimpleContent.html#AtomCommonAttributesSimpleContent(org.apache.wink.common.model.synd.SyndSimpleContent)"><B>AtomCommonAttributesSimpleContent(SyndSimpleContent)</B></A> - 
Constructor for class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomCommonAttributesSimpleContent.html" title="class in org.apache.wink.common.model.atom">AtomCommonAttributesSimpleContent</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomConstants.html" title="class in org.apache.wink.common.model.atom"><B>AtomConstants</B></A> - Class in <A HREF="./org/apache/wink/common/model/atom/package-summary.html">org.apache.wink.common.model.atom</A><DD>Set of constants useful for ATOM related code.<DT><A HREF="./org/apache/wink/common/model/atom/AtomContent.html" title="class in org.apache.wink.common.model.atom"><B>AtomContent</B></A> - Class in <A HREF="./org/apache/wink/common/model/atom/package-summary.html">org.apache.wink.common.model.atom</A><DD>The &quot;atom:content&quot; element Per RFC4287<DT><A HREF="./org/apache/wink/common/model/atom/AtomContent.html#AtomContent()"><B>AtomContent()</B></A> - 
Constructor for class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomContent.html" title="class in org.apache.wink.common.model.atom">AtomContent</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomContent.html#AtomContent(org.apache.wink.common.model.synd.SyndContent)"><B>AtomContent(SyndContent)</B></A> - 
Constructor for class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomContent.html" title="class in org.apache.wink.common.model.atom">AtomContent</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomEntry.html" title="class in org.apache.wink.common.model.atom"><B>AtomEntry</B></A> - Class in <A HREF="./org/apache/wink/common/model/atom/package-summary.html">org.apache.wink.common.model.atom</A><DD>The "atom:entry" element Per RFC4287<DT><A HREF="./org/apache/wink/common/model/atom/AtomEntry.html#AtomEntry()"><B>AtomEntry()</B></A> - 
Constructor for class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomEntry.html" title="class in org.apache.wink.common.model.atom">AtomEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomEntry.html#AtomEntry(org.apache.wink.common.model.synd.SyndEntry)"><B>AtomEntry(SyndEntry)</B></A> - 
Constructor for class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomEntry.html" title="class in org.apache.wink.common.model.atom">AtomEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomFeed.html" title="class in org.apache.wink.common.model.atom"><B>AtomFeed</B></A> - Class in <A HREF="./org/apache/wink/common/model/atom/package-summary.html">org.apache.wink.common.model.atom</A><DD>The "atom:feed" element Per RFC4287<DT><A HREF="./org/apache/wink/common/model/atom/AtomFeed.html#AtomFeed()"><B>AtomFeed()</B></A> - 
Constructor for class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomFeed.html" title="class in org.apache.wink.common.model.atom">AtomFeed</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomFeed.html#AtomFeed(org.apache.wink.common.model.synd.SyndFeed)"><B>AtomFeed(SyndFeed)</B></A> - 
Constructor for class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomFeed.html" title="class in org.apache.wink.common.model.atom">AtomFeed</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomGenerator.html" title="class in org.apache.wink.common.model.atom"><B>AtomGenerator</B></A> - Class in <A HREF="./org/apache/wink/common/model/atom/package-summary.html">org.apache.wink.common.model.atom</A><DD>The "atom:generator" element Per RFC4287<DT><A HREF="./org/apache/wink/common/model/atom/AtomGenerator.html#AtomGenerator()"><B>AtomGenerator()</B></A> - 
Constructor for class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomGenerator.html" title="class in org.apache.wink.common.model.atom">AtomGenerator</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomGenerator.html#AtomGenerator(org.apache.wink.common.model.synd.SyndGenerator)"><B>AtomGenerator(SyndGenerator)</B></A> - 
Constructor for class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomGenerator.html" title="class in org.apache.wink.common.model.atom">AtomGenerator</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomLink.html" title="class in org.apache.wink.common.model.atom"><B>AtomLink</B></A> - Class in <A HREF="./org/apache/wink/common/model/atom/package-summary.html">org.apache.wink.common.model.atom</A><DD>The "atom:link" elementPer RFC4287<DT><A HREF="./org/apache/wink/common/model/atom/AtomLink.html#AtomLink()"><B>AtomLink()</B></A> - 
Constructor for class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomLink.html" title="class in org.apache.wink.common.model.atom">AtomLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomLink.html#AtomLink(org.apache.wink.common.model.synd.SyndLink)"><B>AtomLink(SyndLink)</B></A> - 
Constructor for class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomLink.html" title="class in org.apache.wink.common.model.atom">AtomLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomPerson.html" title="class in org.apache.wink.common.model.atom"><B>AtomPerson</B></A> - Class in <A HREF="./org/apache/wink/common/model/atom/package-summary.html">org.apache.wink.common.model.atom</A><DD>The Person construct Per RFC4287<DT><A HREF="./org/apache/wink/common/model/atom/AtomPerson.html#AtomPerson()"><B>AtomPerson()</B></A> - 
Constructor for class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomPerson.html" title="class in org.apache.wink.common.model.atom">AtomPerson</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomPerson.html#AtomPerson(org.apache.wink.common.model.synd.SyndPerson)"><B>AtomPerson(SyndPerson)</B></A> - 
Constructor for class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomPerson.html" title="class in org.apache.wink.common.model.atom">AtomPerson</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomText.html" title="class in org.apache.wink.common.model.atom"><B>AtomText</B></A> - Class in <A HREF="./org/apache/wink/common/model/atom/package-summary.html">org.apache.wink.common.model.atom</A><DD>Text Construct Per RFC4287<DT><A HREF="./org/apache/wink/common/model/atom/AtomText.html#AtomText()"><B>AtomText()</B></A> - 
Constructor for class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomText.html" title="class in org.apache.wink.common.model.atom">AtomText</A>
<DD>Create an empty AtomText with no type and no value
<DT><A HREF="./org/apache/wink/common/model/atom/AtomText.html#AtomText(java.lang.String)"><B>AtomText(String)</B></A> - 
Constructor for class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomText.html" title="class in org.apache.wink.common.model.atom">AtomText</A>
<DD>Create an AtomText with a type of AtomTextType.TEXT
<DT><A HREF="./org/apache/wink/common/model/atom/AtomText.html#AtomText(java.lang.String, org.apache.wink.common.model.atom.AtomTextType)"><B>AtomText(String, AtomTextType)</B></A> - 
Constructor for class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomText.html" title="class in org.apache.wink.common.model.atom">AtomText</A>
<DD>Create an AtomText with the specified value and type
<DT><A HREF="./org/apache/wink/common/model/atom/AtomText.html#AtomText(org.apache.wink.common.model.synd.SyndText)"><B>AtomText(SyndText)</B></A> - 
Constructor for class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomText.html" title="class in org.apache.wink.common.model.atom">AtomText</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomTextType.html" title="enum in org.apache.wink.common.model.atom"><B>AtomTextType</B></A> - Enum in <A HREF="./org/apache/wink/common/model/atom/package-summary.html">org.apache.wink.common.model.atom</A><DD>An enum for specifying the type of a Text construct<DT><A HREF="./org/apache/wink/client/Resource.html#attribute(java.lang.String, java.lang.Object)"><B>attribute(String, Object)</B></A> - 
Method in interface org.apache.wink.client.<A HREF="./org/apache/wink/client/Resource.html" title="interface in org.apache.wink.client">Resource</A>
<DD>Set an attribute on the resource.
<DT><A HREF="./org/apache/wink/client/Resource.html#attribute(java.lang.String)"><B>attribute(String)</B></A> - 
Method in interface org.apache.wink.client.<A HREF="./org/apache/wink/client/Resource.html" title="interface in org.apache.wink.client">Resource</A>
<DD>Get an attribute
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html#attribution"><B>attribution</B></A> - 
Variable in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchDescription</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomEntry.html#author"><B>author</B></A> - 
Variable in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomEntry.html" title="class in org.apache.wink.common.model.atom">AtomEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomFeed.html#author"><B>author</B></A> - 
Variable in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomFeed.html" title="class in org.apache.wink.common.model.atom">AtomFeed</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/rss/RssItem.html#author"><B>author</B></A> - 
Variable in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssItem.html" title="class in org.apache.wink.common.model.rss">RssItem</A>
<DD>&nbsp;
</DL>
<HR>
<A NAME="_B_"><!-- --></A><H2>
<B>B</B></H2>
<DL>
<DT><A HREF="./org/apache/wink/common/http/HttpStatus.html#BAD_GATEWAY"><B>BAD_GATEWAY</B></A> - 
Static variable in class org.apache.wink.common.http.<A HREF="./org/apache/wink/common/http/HttpStatus.html" title="class in org.apache.wink.common.http">HttpStatus</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/http/HttpStatus.html#BAD_REQUEST"><B>BAD_REQUEST</B></A> - 
Static variable in class org.apache.wink.common.http.<A HREF="./org/apache/wink/common/http/HttpStatus.html" title="class in org.apache.wink.common.http">HttpStatus</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomCommonAttributes.html#base"><B>base</B></A> - 
Variable in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomCommonAttributes.html" title="class in org.apache.wink.common.model.atom">AtomCommonAttributes</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomCommonAttributesSimpleContent.html#base"><B>base</B></A> - 
Variable in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomCommonAttributesSimpleContent.html" title="class in org.apache.wink.common.model.atom">AtomCommonAttributesSimpleContent</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Resources.html#base"><B>base</B></A> - 
Variable in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Resources.html" title="class in org.apache.wink.common.model.wadl">Resources</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/server/utils/BaseLinksBuilder.html" title="interface in org.apache.wink.server.utils"><B>BaseLinksBuilder</B></A>&lt;<A HREF="./org/apache/wink/server/utils/BaseLinksBuilder.html" title="type parameter in BaseLinksBuilder">T</A>&gt; - Interface in <A HREF="./org/apache/wink/server/utils/package-summary.html">org.apache.wink.server.utils</A><DD>Base interface for the the two types of link builders.<DT><A HREF="./org/apache/wink/client/BaseTest.html" title="class in org.apache.wink.client"><B>BaseTest</B></A> - Class in <A HREF="./org/apache/wink/client/package-summary.html">org.apache.wink.client</A><DD>&nbsp;<DT><A HREF="./org/apache/wink/client/BaseTest.html#BaseTest()"><B>BaseTest()</B></A> - 
Constructor for class org.apache.wink.client.<A HREF="./org/apache/wink/client/BaseTest.html" title="class in org.apache.wink.client">BaseTest</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/server/utils/BaseLinksBuilder.html#baseUri(java.net.URI)"><B>baseUri(URI)</B></A> - 
Method in interface org.apache.wink.server.utils.<A HREF="./org/apache/wink/server/utils/BaseLinksBuilder.html" title="interface in org.apache.wink.server.utils">BaseLinksBuilder</A>
<DD>Set the base uri for this builder.
<DT><A HREF="./org/apache/wink/client/handlers/BasicAuthSecurityHandler.html" title="class in org.apache.wink.client.handlers"><B>BasicAuthSecurityHandler</B></A> - Class in <A HREF="./org/apache/wink/client/handlers/package-summary.html">org.apache.wink.client.handlers</A><DD>SecurityHandler for a client to perform http basic auth:
 <p/>
 <code>
 Usage:<br/>
 ClientConfig config = new ClientConfig();<br/>
 BasicAuthSecurityHandler basicAuthSecHandler = new BasicAuthSecurityHandler();
 basicAuthSecHandler.setUserName("username");
 basicAuthSecHandler.setPassword("password");
 config.handlers(basicAuthSecurityHandler);<br/>
 // create the rest client instance<br/>
 RestClient client = new RestClient(config);<br/>
 // create the resource instance to interact with Resource<br/>
 resource = client.resource("https://localhost:8080/path/to/resource");<br/>
 </code><DT><A HREF="./org/apache/wink/client/handlers/BasicAuthSecurityHandler.html#BasicAuthSecurityHandler()"><B>BasicAuthSecurityHandler()</B></A> - 
Constructor for class org.apache.wink.client.handlers.<A HREF="./org/apache/wink/client/handlers/BasicAuthSecurityHandler.html" title="class in org.apache.wink.client.handlers">BasicAuthSecurityHandler</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/handlers/BasicAuthSecurityHandler.html#BasicAuthSecurityHandler(java.lang.String, java.lang.String)"><B>BasicAuthSecurityHandler(String, String)</B></A> - 
Constructor for class org.apache.wink.client.handlers.<A HREF="./org/apache/wink/client/handlers/BasicAuthSecurityHandler.html" title="class in org.apache.wink.client.handlers">BasicAuthSecurityHandler</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/jcdi/server/spi/BeanManagerResolver.html" title="interface in org.apache.wink.jcdi.server.spi"><B>BeanManagerResolver</B></A> - Interface in <A HREF="./org/apache/wink/jcdi/server/spi/package-summary.html">org.apache.wink.jcdi.server.spi</A><DD>Allows to provide a custom resolver.<DT><A HREF="./org/apache/wink/osgi/WinkRequestProcessor.html#bindComponent(java.lang.Object)"><B>bindComponent(Object)</B></A> - 
Method in class org.apache.wink.osgi.<A HREF="./org/apache/wink/osgi/WinkRequestProcessor.html" title="class in org.apache.wink.osgi">WinkRequestProcessor</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/osgi/WinkRequestProcessor.html#bindComponentClass(java.lang.Class)"><B>bindComponentClass(Class)</B></A> - 
Method in class org.apache.wink.osgi.<A HREF="./org/apache/wink/osgi/WinkRequestProcessor.html" title="class in org.apache.wink.osgi">WinkRequestProcessor</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/multipart/BufferedInMultiPart.html" title="class in org.apache.wink.common.model.multipart"><B>BufferedInMultiPart</B></A> - Class in <A HREF="./org/apache/wink/common/model/multipart/package-summary.html">org.apache.wink.common.model.multipart</A><DD>This class is used to represent inbound MultiPart messages, unlike the <A HREF="./org/apache/wink/common/model/multipart/InMultiPart.html" title="class in org.apache.wink.common.model.multipart"><CODE>InMultiPart</CODE></A> 
 the <A HREF="./org/apache/wink/common/model/multipart/BufferedInMultiPart.html" title="class in org.apache.wink.common.model.multipart"><CODE>BufferedInMultiPart</CODE></A> enable non sequential access to the message's parts   
  <code><DT><A HREF="./org/apache/wink/common/model/multipart/BufferedInMultiPart.html#BufferedInMultiPart(org.apache.wink.common.model.multipart.InMultiPart)"><B>BufferedInMultiPart(InMultiPart)</B></A> - 
Constructor for class org.apache.wink.common.model.multipart.<A HREF="./org/apache/wink/common/model/multipart/BufferedInMultiPart.html" title="class in org.apache.wink.common.model.multipart">BufferedInMultiPart</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/multipart/BufferedInPart.html" title="class in org.apache.wink.common.model.multipart"><B>BufferedInPart</B></A> - Class in <A HREF="./org/apache/wink/common/model/multipart/package-summary.html">org.apache.wink.common.model.multipart</A><DD>An extension to the <A HREF="./org/apache/wink/common/model/multipart/InPart.html" title="class in org.apache.wink.common.model.multipart"><CODE>InPart</CODE></A> class that enables calling of the
 <A HREF="./org/apache/wink/common/model/multipart/InPart.html#getBody(java.lang.Class, java.lang.reflect.Type)"><CODE>InPart.getBody(Class, java.lang.reflect.Type)</CODE></A> multiple times and in a non sequential order.<DT><A HREF="./org/apache/wink/common/model/multipart/BufferedInPart.html#BufferedInPart(org.apache.wink.common.model.multipart.InPart)"><B>BufferedInPart(InPart)</B></A> - 
Constructor for class org.apache.wink.common.model.multipart.<A HREF="./org/apache/wink/common/model/multipart/BufferedInPart.html" title="class in org.apache.wink.common.model.multipart">BufferedInPart</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/multipart/BufferedOutMultiPart.html" title="class in org.apache.wink.common.model.multipart"><B>BufferedOutMultiPart</B></A> - Class in <A HREF="./org/apache/wink/common/model/multipart/package-summary.html">org.apache.wink.common.model.multipart</A><DD>A simple implementation of the <A HREF="./org/apache/wink/common/model/multipart/OutMultiPart.html" title="class in org.apache.wink.common.model.multipart"><CODE>OutMultiPart</CODE></A><DT><A HREF="./org/apache/wink/common/model/multipart/BufferedOutMultiPart.html#BufferedOutMultiPart()"><B>BufferedOutMultiPart()</B></A> - 
Constructor for class org.apache.wink.common.model.multipart.<A HREF="./org/apache/wink/common/model/multipart/BufferedOutMultiPart.html" title="class in org.apache.wink.common.model.multipart">BufferedOutMultiPart</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/server/utils/BaseLinksBuilder.html#build(java.util.List)"><B>build(List&lt;SyndLink&gt;)</B></A> - 
Method in interface org.apache.wink.server.utils.<A HREF="./org/apache/wink/server/utils/BaseLinksBuilder.html" title="interface in org.apache.wink.server.utils">BaseLinksBuilder</A>
<DD>Build the link(s) and add them to the provided list.
</DL>
<HR>
<A NAME="_C_"><!-- --></A><H2>
<B>C</B></H2>
<DL>
<DT><A HREF="./org/apache/wink/common/categories/Categories.html" title="class in org.apache.wink.common.categories"><B>Categories</B></A> - Class in <A HREF="./org/apache/wink/common/categories/package-summary.html">org.apache.wink.common.categories</A><DD>The Atom Publishing Protocol introduces the notion of a "Category Document"
 and the app:categories element.<DT><A HREF="./org/apache/wink/common/categories/Categories.html#Categories(java.util.List)"><B>Categories(List&lt;AtomCategory&gt;)</B></A> - 
Constructor for class org.apache.wink.common.categories.<A HREF="./org/apache/wink/common/categories/Categories.html" title="class in org.apache.wink.common.categories">Categories</A>
<DD>Constructor
<DT><A HREF="./org/apache/wink/common/categories/Categories.html#Categories()"><B>Categories()</B></A> - 
Constructor for class org.apache.wink.common.categories.<A HREF="./org/apache/wink/common/categories/Categories.html" title="class in org.apache.wink.common.categories">Categories</A>
<DD>Constructor
<DT><A HREF="./org/apache/wink/common/model/app/AppCollection.html#categories"><B>categories</B></A> - 
Variable in class org.apache.wink.common.model.app.<A HREF="./org/apache/wink/common/model/app/AppCollection.html" title="class in org.apache.wink.common.model.app">AppCollection</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/app/AppCategories.html#category"><B>category</B></A> - 
Variable in class org.apache.wink.common.model.app.<A HREF="./org/apache/wink/common/model/app/AppCategories.html" title="class in org.apache.wink.common.model.app">AppCategories</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomEntry.html#category"><B>category</B></A> - 
Variable in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomEntry.html" title="class in org.apache.wink.common.model.atom">AtomEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomFeed.html#category"><B>category</B></A> - 
Variable in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomFeed.html" title="class in org.apache.wink.common.model.atom">AtomFeed</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/rss/RssChannel.html#category"><B>category</B></A> - 
Variable in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssChannel.html" title="class in org.apache.wink.common.model.rss">RssChannel</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/rss/RssItem.html#category"><B>category</B></A> - 
Variable in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssItem.html" title="class in org.apache.wink.common.model.rss">RssItem</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/rss/RssFeed.html#channel"><B>channel</B></A> - 
Variable in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssFeed.html" title="class in org.apache.wink.common.model.rss">RssFeed</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/RestConstants.html#CHARACTER_ENCODING_UTF_8"><B>CHARACTER_ENCODING_UTF_8</B></A> - 
Static variable in class org.apache.wink.common.<A HREF="./org/apache/wink/common/RestConstants.html" title="class in org.apache.wink.common">RestConstants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/RestConstants.html#CHARSET_PARAM"><B>CHARSET_PARAM</B></A> - 
Static variable in class org.apache.wink.common.<A HREF="./org/apache/wink/common/RestConstants.html" title="class in org.apache.wink.common">RestConstants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/app/AppCategories.html#checkValidity()"><B>checkValidity()</B></A> - 
Method in class org.apache.wink.common.model.app.<A HREF="./org/apache/wink/common/model/app/AppCategories.html" title="class in org.apache.wink.common.model.app">AppCategories</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomContent.html#checkValidity()"><B>checkValidity()</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomContent.html" title="class in org.apache.wink.common.model.atom">AtomContent</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/httpclient/ApacheHttpClientConfig.html#chunked"><B>chunked</B></A> - 
Variable in class org.apache.wink.client.httpclient.<A HREF="./org/apache/wink/client/httpclient/ApacheHttpClientConfig.html" title="class in org.apache.wink.client.httpclient">ApacheHttpClientConfig</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/OrderedJSONObject.html#clear()"><B>clear()</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/OrderedJSONObject.html" title="class in org.apache.wink.json4j">OrderedJSONObject</A>
<DD>(non-Javadoc)
<DT><A HREF="./org/apache/wink/logging/WinkLogHandler.html#clearRecords()"><B>clearRecords()</B></A> - 
Static method in class org.apache.wink.logging.<A HREF="./org/apache/wink/logging/WinkLogHandler.html" title="class in org.apache.wink.logging">WinkLogHandler</A>
<DD>Clear all logRecords from the captured list.
<DT><A HREF="./org/apache/wink/client/httpclient/ApacheHttpClientConfig.html#client"><B>client</B></A> - 
Variable in class org.apache.wink.client.httpclient.<A HREF="./org/apache/wink/client/httpclient/ApacheHttpClientConfig.html" title="class in org.apache.wink.client.httpclient">ApacheHttpClientConfig</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/ClientAuthenticationException.html" title="class in org.apache.wink.client"><B>ClientAuthenticationException</B></A> - Exception in <A HREF="./org/apache/wink/client/package-summary.html">org.apache.wink.client</A><DD>A clientruntime exception thrown for security authentication related
 exceptions.<DT><A HREF="./org/apache/wink/client/ClientAuthenticationException.html#ClientAuthenticationException()"><B>ClientAuthenticationException()</B></A> - 
Constructor for exception org.apache.wink.client.<A HREF="./org/apache/wink/client/ClientAuthenticationException.html" title="class in org.apache.wink.client">ClientAuthenticationException</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/ClientAuthenticationException.html#ClientAuthenticationException(java.lang.String)"><B>ClientAuthenticationException(String)</B></A> - 
Constructor for exception org.apache.wink.client.<A HREF="./org/apache/wink/client/ClientAuthenticationException.html" title="class in org.apache.wink.client">ClientAuthenticationException</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/ClientAuthenticationException.html#ClientAuthenticationException(java.lang.String, java.lang.Throwable)"><B>ClientAuthenticationException(String, Throwable)</B></A> - 
Constructor for exception org.apache.wink.client.<A HREF="./org/apache/wink/client/ClientAuthenticationException.html" title="class in org.apache.wink.client">ClientAuthenticationException</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/ClientAuthenticationException.html#ClientAuthenticationException(java.lang.Throwable)"><B>ClientAuthenticationException(Throwable)</B></A> - 
Constructor for exception org.apache.wink.client.<A HREF="./org/apache/wink/client/ClientAuthenticationException.html" title="class in org.apache.wink.client">ClientAuthenticationException</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/ClientConfig.html" title="class in org.apache.wink.client"><B>ClientConfig</B></A> - Class in <A HREF="./org/apache/wink/client/package-summary.html">org.apache.wink.client</A><DD>Provides client configuration.<DT><A HREF="./org/apache/wink/client/ClientConfig.html#ClientConfig()"><B>ClientConfig()</B></A> - 
Constructor for class org.apache.wink.client.<A HREF="./org/apache/wink/client/ClientConfig.html" title="class in org.apache.wink.client">ClientConfig</A>
<DD>Construct a new ClientConfig with the following default settings:
 
 proxy: none
 connect timeout: 60 seconds
 read timeout: 60 seconds
 follow redirects: true
 
<DT><A HREF="./org/apache/wink/client/ClientConfigException.html" title="class in org.apache.wink.client"><B>ClientConfigException</B></A> - Exception in <A HREF="./org/apache/wink/client/package-summary.html">org.apache.wink.client</A><DD>Exception that is thrown for illegal configuration operations<DT><A HREF="./org/apache/wink/client/ClientConfigException.html#ClientConfigException()"><B>ClientConfigException()</B></A> - 
Constructor for exception org.apache.wink.client.<A HREF="./org/apache/wink/client/ClientConfigException.html" title="class in org.apache.wink.client">ClientConfigException</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/ClientConfigException.html#ClientConfigException(java.lang.String, java.lang.Throwable)"><B>ClientConfigException(String, Throwable)</B></A> - 
Constructor for exception org.apache.wink.client.<A HREF="./org/apache/wink/client/ClientConfigException.html" title="class in org.apache.wink.client">ClientConfigException</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/ClientConfigException.html#ClientConfigException(java.lang.String)"><B>ClientConfigException(String)</B></A> - 
Constructor for exception org.apache.wink.client.<A HREF="./org/apache/wink/client/ClientConfigException.html" title="class in org.apache.wink.client">ClientConfigException</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/ClientConfigException.html#ClientConfigException(java.lang.Throwable)"><B>ClientConfigException(Throwable)</B></A> - 
Constructor for exception org.apache.wink.client.<A HREF="./org/apache/wink/client/ClientConfigException.html" title="class in org.apache.wink.client">ClientConfigException</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/handlers/ClientHandler.html" title="interface in org.apache.wink.client.handlers"><B>ClientHandler</B></A> - Interface in <A HREF="./org/apache/wink/client/handlers/package-summary.html">org.apache.wink.client.handlers</A><DD>Interface that all client handlers must implement<DT><A HREF="./org/apache/wink/client/ClientRequest.html" title="interface in org.apache.wink.client"><B>ClientRequest</B></A> - Interface in <A HREF="./org/apache/wink/client/package-summary.html">org.apache.wink.client</A><DD>Represents a request issued by invoking any one of the invocation methods on
 a <A HREF="./org/apache/wink/client/Resource.html" title="interface in org.apache.wink.client"><CODE>Resource</CODE></A>.<DT><A HREF="./org/apache/wink/client/ClientResponse.html" title="interface in org.apache.wink.client"><B>ClientResponse</B></A> - Interface in <A HREF="./org/apache/wink/client/package-summary.html">org.apache.wink.client</A><DD>Represents an http response that was received after invoking any one of the
 invocation methods on a <A HREF="./org/apache/wink/client/Resource.html" title="interface in org.apache.wink.client"><CODE>Resource</CODE></A>.<DT><A HREF="./org/apache/wink/client/ClientRuntimeException.html" title="class in org.apache.wink.client"><B>ClientRuntimeException</B></A> - Exception in <A HREF="./org/apache/wink/client/package-summary.html">org.apache.wink.client</A><DD>Exception used to indicate runtime exception during client invocations<DT><A HREF="./org/apache/wink/client/ClientRuntimeException.html#ClientRuntimeException()"><B>ClientRuntimeException()</B></A> - 
Constructor for exception org.apache.wink.client.<A HREF="./org/apache/wink/client/ClientRuntimeException.html" title="class in org.apache.wink.client">ClientRuntimeException</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/ClientRuntimeException.html#ClientRuntimeException(java.lang.String, java.lang.Throwable)"><B>ClientRuntimeException(String, Throwable)</B></A> - 
Constructor for exception org.apache.wink.client.<A HREF="./org/apache/wink/client/ClientRuntimeException.html" title="class in org.apache.wink.client">ClientRuntimeException</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/ClientRuntimeException.html#ClientRuntimeException(java.lang.String)"><B>ClientRuntimeException(String)</B></A> - 
Constructor for exception org.apache.wink.client.<A HREF="./org/apache/wink/client/ClientRuntimeException.html" title="class in org.apache.wink.client">ClientRuntimeException</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/ClientRuntimeException.html#ClientRuntimeException(java.lang.Throwable)"><B>ClientRuntimeException(Throwable)</B></A> - 
Constructor for exception org.apache.wink.client.<A HREF="./org/apache/wink/client/ClientRuntimeException.html" title="class in org.apache.wink.client">ClientRuntimeException</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/ClientWebException.html" title="class in org.apache.wink.client"><B>ClientWebException</B></A> - Exception in <A HREF="./org/apache/wink/client/package-summary.html">org.apache.wink.client</A><DD>An exception that indicates that an http error code was returned from the
 server<DT><A HREF="./org/apache/wink/client/ClientWebException.html#ClientWebException(org.apache.wink.client.ClientRequest, org.apache.wink.client.ClientResponse)"><B>ClientWebException(ClientRequest, ClientResponse)</B></A> - 
Constructor for exception org.apache.wink.client.<A HREF="./org/apache/wink/client/ClientWebException.html" title="class in org.apache.wink.client">ClientWebException</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/ClientConfig.html#clone()"><B>clone()</B></A> - 
Method in class org.apache.wink.client.<A HREF="./org/apache/wink/client/ClientConfig.html" title="class in org.apache.wink.client">ClientConfig</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/http/HttpStatus.html#clone()"><B>clone()</B></A> - 
Method in class org.apache.wink.common.http.<A HREF="./org/apache/wink/common/http/HttpStatus.html" title="class in org.apache.wink.common.http">HttpStatus</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/OrderedJSONObject.html#clone()"><B>clone()</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/OrderedJSONObject.html" title="class in org.apache.wink.json4j">OrderedJSONObject</A>
<DD>Returns a shallow copy of this HashMap instance: the keys and values themselves are not cloned.
<DT><A HREF="./org/apache/wink/server/handlers/AbstractHandlersChain.html#clone()"><B>clone()</B></A> - 
Method in class org.apache.wink.server.handlers.<A HREF="./org/apache/wink/server/handlers/AbstractHandlersChain.html" title="class in org.apache.wink.server.handlers">AbstractHandlersChain</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/AsyncHttpClientConnectionHandler.html#close()"><B>close()</B></A> - 
Method in class org.apache.wink.client.<A HREF="./org/apache/wink/client/AsyncHttpClientConnectionHandler.html" title="class in org.apache.wink.client">AsyncHttpClientConnectionHandler</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONStringerDelegate.html#close()"><B>close()</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONStringerDelegate.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONStringerDelegate</A>
<DD>Over-ride to do nothing for the stringer.
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONWriterDelegate.html#close()"><B>close()</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONWriterDelegate.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONWriterDelegate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONWriter.html#close()"><B>close()</B></A> - 
Method in interface org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONWriter.html" title="interface in org.apache.wink.json4j.compat">JSONWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/JSONStringer.html#close()"><B>close()</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONStringer.html" title="class in org.apache.wink.json4j">JSONStringer</A>
<DD>Over-ride to do nothing for the stringer.
<DT><A HREF="./org/apache/wink/json4j/JSONWriter.html#close()"><B>close()</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONWriter.html" title="class in org.apache.wink.json4j">JSONWriter</A>
<DD>Method to close the JSON Writer.
<DT><A HREF="./org/apache/wink/logging/InMemoryHandler.html#close()"><B>close()</B></A> - 
Method in class org.apache.wink.logging.<A HREF="./org/apache/wink/logging/InMemoryHandler.html" title="class in org.apache.wink.logging">InMemoryHandler</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/logging/WinkLogHandler.html#close()"><B>close()</B></A> - 
Method in class org.apache.wink.logging.<A HREF="./org/apache/wink/logging/WinkLogHandler.html" title="class in org.apache.wink.logging">WinkLogHandler</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/rss/RssChannel.html#cloud"><B>cloud</B></A> - 
Variable in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssChannel.html" title="class in org.apache.wink.common.model.rss">RssChannel</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/app/AppWorkspace.html#collection"><B>collection</B></A> - 
Variable in class org.apache.wink.common.model.app.<A HREF="./org/apache/wink/common/model/app/AppWorkspace.html" title="class in org.apache.wink.common.model.app">AppWorkspace</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Collection.html" title="class in org.apache.wink.webdav.model"><B>Collection</B></A> - Class in <A HREF="./org/apache/wink/webdav/model/package-summary.html">org.apache.wink.webdav.model</A><DD>The <code>collection</code> XML element per the WebDAV specification [RFC
 4918]<DT><A HREF="./org/apache/wink/webdav/model/Collection.html#Collection()"><B>Collection()</B></A> - 
Constructor for class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Collection.html" title="class in org.apache.wink.webdav.model">Collection</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Resourcetype.html#collection"><B>collection</B></A> - 
Variable in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Resourcetype.html" title="class in org.apache.wink.webdav.model">Resourcetype</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/categories/CollectionCategories.html" title="interface in org.apache.wink.common.categories"><B>CollectionCategories</B></A> - Interface in <A HREF="./org/apache/wink/common/categories/package-summary.html">org.apache.wink.common.categories</A><DD>A contract implemented by a Collection resource to provide a set of supported
 categories represented in Atom Service Document.<DT><A HREF="./org/apache/wink/common/model/rss/RssItem.html#comments"><B>comments</B></A> - 
Variable in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssItem.html" title="class in org.apache.wink.common.model.rss">RssItem</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/http/HttpStatus.html#CONFLICT"><B>CONFLICT</B></A> - 
Static variable in class org.apache.wink.common.http.<A HREF="./org/apache/wink/common/http/HttpStatus.html" title="class in org.apache.wink.common.http">HttpStatus</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/http/HttpMethodEx.html#CONNECT"><B>CONNECT</B></A> - 
Static variable in class org.apache.wink.common.http.<A HREF="./org/apache/wink/common/http/HttpMethodEx.html" title="class in org.apache.wink.common.http">HttpMethodEx</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/handlers/ConnectionHandler.html" title="interface in org.apache.wink.client.handlers"><B>ConnectionHandler</B></A> - Interface in <A HREF="./org/apache/wink/client/handlers/package-summary.html">org.apache.wink.client.handlers</A><DD>Interface for specifying that a handler is the connection handler and is the
 last handler on the handler chain<DT><A HREF="./org/apache/wink/client/ClientConfig.html#connectTimeout(int)"><B>connectTimeout(int)</B></A> - 
Method in class org.apache.wink.client.<A HREF="./org/apache/wink/client/ClientConfig.html" title="class in org.apache.wink.client">ClientConfig</A>
<DD>Convenience method to set the wink.client.connectTimeout property
<DT><A HREF="./org/apache/wink/client/ClientResponse.html#consumeContent()"><B>consumeContent()</B></A> - 
Method in interface org.apache.wink.client.<A HREF="./org/apache/wink/client/ClientResponse.html" title="interface in org.apache.wink.client">ClientResponse</A>
<DD>Consumes entity content.
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html#contact"><B>contact</B></A> - 
Variable in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchDescription</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/categories/Categories.html#contains(java.lang.String)"><B>contains(String)</B></A> - 
Method in class org.apache.wink.common.categories.<A HREF="./org/apache/wink/common/categories/Categories.html" title="class in org.apache.wink.common.categories">Categories</A>
<DD>Returns true if this app:categories listing contains a Category with the
 specified term
<DT><A HREF="./org/apache/wink/common/categories/Categories.html#contains(java.lang.String, java.lang.String)"><B>contains(String, String)</B></A> - 
Method in class org.apache.wink.common.categories.<A HREF="./org/apache/wink/common/categories/Categories.html" title="class in org.apache.wink.common.categories">Categories</A>
<DD>Returns true if this app:categories listing contains a Category with the
 specified term and scheme
<DT><A HREF="./org/apache/wink/common/model/atom/AtomEntry.html#content"><B>content</B></A> - 
Variable in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomEntry.html" title="class in org.apache.wink.common.model.atom">AtomEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/rss/RssCategory.html#content"><B>content</B></A> - 
Variable in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssCategory.html" title="class in org.apache.wink.common.model.rss">RssCategory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/rss/RssGuid.html#content"><B>content</B></A> - 
Variable in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssGuid.html" title="class in org.apache.wink.common.model.rss">RssGuid</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/rss/RssSource.html#content"><B>content</B></A> - 
Variable in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssSource.html" title="class in org.apache.wink.common.model.rss">RssSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Doc.html#content"><B>content</B></A> - 
Variable in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Doc.html" title="class in org.apache.wink.common.model.wadl">Doc</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Creationdate.html#content"><B>content</B></A> - 
Variable in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Creationdate.html" title="class in org.apache.wink.webdav.model">Creationdate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Displayname.html#content"><B>content</B></A> - 
Variable in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Displayname.html" title="class in org.apache.wink.webdav.model">Displayname</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Getcontentlanguage.html#content"><B>content</B></A> - 
Variable in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Getcontentlanguage.html" title="class in org.apache.wink.webdav.model">Getcontentlanguage</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Getcontentlength.html#content"><B>content</B></A> - 
Variable in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Getcontentlength.html" title="class in org.apache.wink.webdav.model">Getcontentlength</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Getcontenttype.html#content"><B>content</B></A> - 
Variable in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Getcontenttype.html" title="class in org.apache.wink.webdav.model">Getcontenttype</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Getetag.html#content"><B>content</B></A> - 
Variable in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Getetag.html" title="class in org.apache.wink.webdav.model">Getetag</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Getlastmodified.html#content"><B>content</B></A> - 
Variable in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Getlastmodified.html" title="class in org.apache.wink.webdav.model">Getlastmodified</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Keepalive.html#content"><B>content</B></A> - 
Variable in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Keepalive.html" title="class in org.apache.wink.webdav.model">Keepalive</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Owner.html#content"><B>content</B></A> - 
Variable in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Owner.html" title="class in org.apache.wink.webdav.model">Owner</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/http/HttpHeadersEx.html#CONTENT_DISPOSITION"><B>CONTENT_DISPOSITION</B></A> - 
Static variable in class org.apache.wink.common.http.<A HREF="./org/apache/wink/common/http/HttpHeadersEx.html" title="class in org.apache.wink.common.http">HttpHeadersEx</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/Resource.html#contentType(java.lang.String)"><B>contentType(String)</B></A> - 
Method in interface org.apache.wink.client.<A HREF="./org/apache/wink/client/Resource.html" title="interface in org.apache.wink.client">Resource</A>
<DD>Set the Content-Type header, overriding any previous value.
<DT><A HREF="./org/apache/wink/client/Resource.html#contentType(javax.ws.rs.core.MediaType)"><B>contentType(MediaType)</B></A> - 
Method in interface org.apache.wink.client.<A HREF="./org/apache/wink/client/Resource.html" title="interface in org.apache.wink.client">Resource</A>
<DD>Set the Content-Type header, overriding any previous value.
<DT><A HREF="./org/apache/wink/common/http/HttpStatus.html#CONTINUE"><B>CONTINUE</B></A> - 
Static variable in class org.apache.wink.common.http.<A HREF="./org/apache/wink/common/http/HttpStatus.html" title="class in org.apache.wink.common.http">HttpStatus</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomEntry.html#contributor"><B>contributor</B></A> - 
Variable in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomEntry.html" title="class in org.apache.wink.common.model.atom">AtomEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomFeed.html#contributor"><B>contributor</B></A> - 
Variable in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomFeed.html" title="class in org.apache.wink.common.model.atom">AtomFeed</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/WebDAVModelHelper.html#convertDateToXMLDate(java.util.Date)"><B>convertDateToXMLDate(Date)</B></A> - 
Static method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/WebDAVModelHelper.html" title="class in org.apache.wink.webdav.model">WebDAVModelHelper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/rss/RssChannel.html#convertJavaDateToRssDate(java.util.Date)"><B>convertJavaDateToRssDate(Date)</B></A> - 
Static method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssChannel.html" title="class in org.apache.wink.common.model.rss">RssChannel</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/rss/RssChannel.html#convertRssDateToJavaDate(java.lang.String)"><B>convertRssDateToJavaDate(String)</B></A> - 
Static method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssChannel.html" title="class in org.apache.wink.common.model.rss">RssChannel</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/WebDAVModelHelper.html#convertXMLDateToDate(java.lang.String)"><B>convertXMLDateToDate(String)</B></A> - 
Static method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/WebDAVModelHelper.html" title="class in org.apache.wink.webdav.model">WebDAVModelHelper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/Resource.html#cookie(java.lang.String)"><B>cookie(String)</B></A> - 
Method in interface org.apache.wink.client.<A HREF="./org/apache/wink/client/Resource.html" title="interface in org.apache.wink.client">Resource</A>
<DD>Add a Cookie value.
<DT><A HREF="./org/apache/wink/client/Resource.html#cookie(javax.ws.rs.core.Cookie)"><B>cookie(Cookie)</B></A> - 
Method in interface org.apache.wink.client.<A HREF="./org/apache/wink/client/Resource.html" title="interface in org.apache.wink.client">Resource</A>
<DD>Add a Cookie value.
<DT><A HREF="./org/apache/wink/common/model/rss/RssChannel.html#copyright"><B>copyright</B></A> - 
Variable in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssChannel.html" title="class in org.apache.wink.common.model.rss">RssChannel</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/utils/ProviderUtils.html#copyStream(java.io.InputStream, java.io.OutputStream)"><B>copyStream(InputStream, OutputStream)</B></A> - 
Static method in class org.apache.wink.common.utils.<A HREF="./org/apache/wink/common/utils/ProviderUtils.html" title="class in org.apache.wink.common.utils">ProviderUtils</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Prop.html#copyTo(org.apache.wink.webdav.model.Prop)"><B>copyTo(Prop)</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Prop.html" title="class in org.apache.wink.webdav.model">Prop</A>
<DD>Performs a shallow copy of all elements in this Prop instance into the
 dest Prop instance
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchQuery.html#count"><B>count</B></A> - 
Variable in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchQuery.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchQuery</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/server/WebDAVResponseBuilder.html#create(javax.ws.rs.core.UriInfo)"><B>create(UriInfo)</B></A> - 
Static method in class org.apache.wink.webdav.server.<A HREF="./org/apache/wink/webdav/server/WebDAVResponseBuilder.html" title="class in org.apache.wink.webdav.server">WebDAVResponseBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/app/ObjectFactory.html#createAccept(org.apache.wink.common.model.app.AppAccept)"><B>createAccept(AppAccept)</B></A> - 
Method in class org.apache.wink.common.model.app.<A HREF="./org/apache/wink/common/model/app/ObjectFactory.html" title="class in org.apache.wink.common.model.app">ObjectFactory</A>
<DD>Create an instance of <CODE>JAXBElement</CODE><code>&lt;</code><A HREF="./org/apache/wink/common/model/app/AppAccept.html" title="class in org.apache.wink.common.model.app"><CODE>AppAccept</CODE></A>
 <code>&gt;</code>
<DT><A HREF="./org/apache/wink/webdav/model/ObjectFactory.html#createActivelock()"><B>createActivelock()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/ObjectFactory.html" title="class in org.apache.wink.webdav.model">ObjectFactory</A>
<DD>Create an instance of <A HREF="./org/apache/wink/webdav/model/Activelock.html" title="class in org.apache.wink.webdav.model"><CODE>Activelock</CODE></A>
<DT><A HREF="./org/apache/wink/webdav/model/ObjectFactory.html#createAllprop()"><B>createAllprop()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/ObjectFactory.html" title="class in org.apache.wink.webdav.model">ObjectFactory</A>
<DD>Create an instance of <A HREF="./org/apache/wink/webdav/model/Allprop.html" title="class in org.apache.wink.webdav.model"><CODE>Allprop</CODE></A>
<DT><A HREF="./org/apache/wink/common/model/app/ObjectFactory.html#createAppAccept()"><B>createAppAccept()</B></A> - 
Method in class org.apache.wink.common.model.app.<A HREF="./org/apache/wink/common/model/app/ObjectFactory.html" title="class in org.apache.wink.common.model.app">ObjectFactory</A>
<DD>Create an instance of <A HREF="./org/apache/wink/common/model/app/AppAccept.html" title="class in org.apache.wink.common.model.app"><CODE>AppAccept</CODE></A>
<DT><A HREF="./org/apache/wink/common/model/app/ObjectFactory.html#createAppCategories()"><B>createAppCategories()</B></A> - 
Method in class org.apache.wink.common.model.app.<A HREF="./org/apache/wink/common/model/app/ObjectFactory.html" title="class in org.apache.wink.common.model.app">ObjectFactory</A>
<DD>Create an instance of <A HREF="./org/apache/wink/common/model/app/AppCategories.html" title="class in org.apache.wink.common.model.app"><CODE>AppCategories</CODE></A>
<DT><A HREF="./org/apache/wink/common/model/app/ObjectFactory.html#createAppCollection()"><B>createAppCollection()</B></A> - 
Method in class org.apache.wink.common.model.app.<A HREF="./org/apache/wink/common/model/app/ObjectFactory.html" title="class in org.apache.wink.common.model.app">ObjectFactory</A>
<DD>Create an instance of <A HREF="./org/apache/wink/common/model/app/AppCollection.html" title="class in org.apache.wink.common.model.app"><CODE>AppCollection</CODE></A>
<DT><A HREF="./org/apache/wink/common/model/wadl/ObjectFactory.html#createApplication()"><B>createApplication()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/ObjectFactory.html" title="class in org.apache.wink.common.model.wadl">ObjectFactory</A>
<DD>Create an instance of <A HREF="./org/apache/wink/common/model/wadl/Application.html" title="class in org.apache.wink.common.model.wadl"><CODE>Application</CODE></A>
<DT><A HREF="./org/apache/wink/common/model/app/ObjectFactory.html#createAppService()"><B>createAppService()</B></A> - 
Method in class org.apache.wink.common.model.app.<A HREF="./org/apache/wink/common/model/app/ObjectFactory.html" title="class in org.apache.wink.common.model.app">ObjectFactory</A>
<DD>Create an instance of <A HREF="./org/apache/wink/common/model/app/AppService.html" title="class in org.apache.wink.common.model.app"><CODE>AppService</CODE></A>
<DT><A HREF="./org/apache/wink/common/model/app/ObjectFactory.html#createAppWorkspace()"><B>createAppWorkspace()</B></A> - 
Method in class org.apache.wink.common.model.app.<A HREF="./org/apache/wink/common/model/app/ObjectFactory.html" title="class in org.apache.wink.common.model.app">ObjectFactory</A>
<DD>Create an instance of <A HREF="./org/apache/wink/common/model/app/AppWorkspace.html" title="class in org.apache.wink.common.model.app"><CODE>AppWorkspace</CODE></A>
<DT><A HREF="./org/apache/wink/common/model/atom/ObjectFactory.html#createAtomCategory()"><B>createAtomCategory()</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/ObjectFactory.html" title="class in org.apache.wink.common.model.atom">ObjectFactory</A>
<DD>Create an instance of <A HREF="./org/apache/wink/common/model/atom/AtomCategory.html" title="class in org.apache.wink.common.model.atom"><CODE>AtomCategory</CODE></A>
<DT><A HREF="./org/apache/wink/common/model/atom/ObjectFactory.html#createAtomCommonAttributes()"><B>createAtomCommonAttributes()</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/ObjectFactory.html" title="class in org.apache.wink.common.model.atom">ObjectFactory</A>
<DD>Create an instance of <A HREF="./org/apache/wink/common/model/atom/AtomCommonAttributes.html" title="class in org.apache.wink.common.model.atom"><CODE>AtomCommonAttributes</CODE></A>
<DT><A HREF="./org/apache/wink/common/model/atom/ObjectFactory.html#createAtomCommonAttributesSimpleContent()"><B>createAtomCommonAttributesSimpleContent()</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/ObjectFactory.html" title="class in org.apache.wink.common.model.atom">ObjectFactory</A>
<DD>Create an instance of <A HREF="./org/apache/wink/common/model/atom/AtomCommonAttributesSimpleContent.html" title="class in org.apache.wink.common.model.atom"><CODE>AtomCommonAttributesSimpleContent</CODE></A>
<DT><A HREF="./org/apache/wink/common/model/atom/ObjectFactory.html#createAtomContent()"><B>createAtomContent()</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/ObjectFactory.html" title="class in org.apache.wink.common.model.atom">ObjectFactory</A>
<DD>Create an instance of <A HREF="./org/apache/wink/common/model/atom/AtomContent.html" title="class in org.apache.wink.common.model.atom"><CODE>AtomContent</CODE></A>
<DT><A HREF="./org/apache/wink/common/model/atom/ObjectFactory.html#createAtomEntry()"><B>createAtomEntry()</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/ObjectFactory.html" title="class in org.apache.wink.common.model.atom">ObjectFactory</A>
<DD>Create an instance of <A HREF="./org/apache/wink/common/model/atom/AtomEntry.html" title="class in org.apache.wink.common.model.atom"><CODE>AtomEntry</CODE></A>
<DT><A HREF="./org/apache/wink/common/model/atom/ObjectFactory.html#createAtomFeed()"><B>createAtomFeed()</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/ObjectFactory.html" title="class in org.apache.wink.common.model.atom">ObjectFactory</A>
<DD>Create an instance of <A HREF="./org/apache/wink/common/model/atom/AtomFeed.html" title="class in org.apache.wink.common.model.atom"><CODE>AtomFeed</CODE></A>
<DT><A HREF="./org/apache/wink/common/model/atom/ObjectFactory.html#createAtomGenerator()"><B>createAtomGenerator()</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/ObjectFactory.html" title="class in org.apache.wink.common.model.atom">ObjectFactory</A>
<DD>Create an instance of <A HREF="./org/apache/wink/common/model/atom/AtomGenerator.html" title="class in org.apache.wink.common.model.atom"><CODE>AtomGenerator</CODE></A>
<DT><A HREF="./org/apache/wink/common/model/atom/ObjectFactory.html#createAtomLink()"><B>createAtomLink()</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/ObjectFactory.html" title="class in org.apache.wink.common.model.atom">ObjectFactory</A>
<DD>Create an instance of <A HREF="./org/apache/wink/common/model/atom/AtomLink.html" title="class in org.apache.wink.common.model.atom"><CODE>AtomLink</CODE></A>
<DT><A HREF="./org/apache/wink/common/model/atom/ObjectFactory.html#createAtomPerson()"><B>createAtomPerson()</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/ObjectFactory.html" title="class in org.apache.wink.common.model.atom">ObjectFactory</A>
<DD>Create an instance of <A HREF="./org/apache/wink/common/model/atom/AtomPerson.html" title="class in org.apache.wink.common.model.atom"><CODE>AtomPerson</CODE></A>
<DT><A HREF="./org/apache/wink/common/model/atom/ObjectFactory.html#createAtomText()"><B>createAtomText()</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/ObjectFactory.html" title="class in org.apache.wink.common.model.atom">ObjectFactory</A>
<DD>Create an instance of <A HREF="./org/apache/wink/common/model/atom/AtomText.html" title="class in org.apache.wink.common.model.atom"><CODE>AtomText</CODE></A>
<DT><A HREF="./org/apache/wink/common/model/atom/ObjectFactory.html#createAtomXhtml()"><B>createAtomXhtml()</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/ObjectFactory.html" title="class in org.apache.wink.common.model.atom">ObjectFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/ObjectFactory.html#createAtomXhtml(org.apache.wink.common.internal.model.AtomXhtml)"><B>createAtomXhtml(AtomXhtml)</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/ObjectFactory.html" title="class in org.apache.wink.common.model.atom">ObjectFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/opensearch/ObjectFactory.html#createAttribution(java.lang.String)"><B>createAttribution(String)</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/ObjectFactory.html" title="class in org.apache.wink.common.model.opensearch">ObjectFactory</A>
<DD>Create an instance of <CODE>JAXBElement</CODE><code>&lt;</code><CODE>String</CODE><code>&gt;</code>
<DT><A HREF="./org/apache/wink/common/model/app/ObjectFactory.html#createCategories(org.apache.wink.common.model.app.AppCategories)"><B>createCategories(AppCategories)</B></A> - 
Method in class org.apache.wink.common.model.app.<A HREF="./org/apache/wink/common/model/app/ObjectFactory.html" title="class in org.apache.wink.common.model.app">ObjectFactory</A>
<DD>Create an instance of <CODE>JAXBElement</CODE><code>&lt;</code><A HREF="./org/apache/wink/common/model/app/AppCategories.html" title="class in org.apache.wink.common.model.app"><CODE>AppCategories</CODE></A>
 <code>&gt;</code>
<DT><A HREF="./org/apache/wink/common/model/atom/ObjectFactory.html#createCategory(org.apache.wink.common.model.atom.AtomCategory)"><B>createCategory(AtomCategory)</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/ObjectFactory.html" title="class in org.apache.wink.common.model.atom">ObjectFactory</A>
<DD>Create an instance of <CODE>JAXBElement</CODE><code>&lt;</code><A HREF="./org/apache/wink/common/model/atom/AtomCategory.html" title="class in org.apache.wink.common.model.atom"><CODE>AtomCategory</CODE></A>
 <code>&gt;</code>
<DT><A HREF="./org/apache/wink/common/model/app/ObjectFactory.html#createCollection(org.apache.wink.common.model.app.AppCollection)"><B>createCollection(AppCollection)</B></A> - 
Method in class org.apache.wink.common.model.app.<A HREF="./org/apache/wink/common/model/app/ObjectFactory.html" title="class in org.apache.wink.common.model.app">ObjectFactory</A>
<DD>Create an instance of <CODE>JAXBElement</CODE><code>&lt;</code><A HREF="./org/apache/wink/common/model/app/AppCollection.html" title="class in org.apache.wink.common.model.app"><CODE>AppCollection</CODE></A>
 <code>&gt;</code>
<DT><A HREF="./org/apache/wink/webdav/model/ObjectFactory.html#createCollection()"><B>createCollection()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/ObjectFactory.html" title="class in org.apache.wink.webdav.model">ObjectFactory</A>
<DD>Create an instance of <A HREF="./org/apache/wink/webdav/model/Collection.html" title="class in org.apache.wink.webdav.model"><CODE>Collection</CODE></A>
<DT><A HREF="./org/apache/wink/common/model/opensearch/ObjectFactory.html#createContact(java.lang.String)"><B>createContact(String)</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/ObjectFactory.html" title="class in org.apache.wink.common.model.opensearch">ObjectFactory</A>
<DD>Create an instance of <CODE>JAXBElement</CODE><code>&lt;</code><CODE>String</CODE><code>&gt;</code>
<DT><A HREF="./org/apache/wink/common/model/atom/ObjectFactory.html#createContent(org.apache.wink.common.model.atom.AtomContent)"><B>createContent(AtomContent)</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/ObjectFactory.html" title="class in org.apache.wink.common.model.atom">ObjectFactory</A>
<DD>Create an instance of <CODE>JAXBElement</CODE><code>&lt;</code><A HREF="./org/apache/wink/common/model/atom/AtomContent.html" title="class in org.apache.wink.common.model.atom"><CODE>AtomContent</CODE></A>
 <code>&gt;</code>
<DT><A HREF="./org/apache/wink/webdav/model/ObjectFactory.html#createCreationdate()"><B>createCreationdate()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/ObjectFactory.html" title="class in org.apache.wink.webdav.model">ObjectFactory</A>
<DD>Create an instance of <A HREF="./org/apache/wink/webdav/model/Creationdate.html" title="class in org.apache.wink.webdav.model"><CODE>Creationdate</CODE></A>
<DT><A HREF="./org/apache/wink/common/model/csv/MultiCsvTable.html#createCsvTable(java.lang.String...)"><B>createCsvTable(String...)</B></A> - 
Method in class org.apache.wink.common.model.csv.<A HREF="./org/apache/wink/common/model/csv/MultiCsvTable.html" title="class in org.apache.wink.common.model.csv">MultiCsvTable</A>
<DD>Create a new CsvTable with the specified header, and add it to this
 multi-table csv
<DT><A HREF="./org/apache/wink/common/http/HttpStatus.html#CREATED"><B>CREATED</B></A> - 
Static variable in class org.apache.wink.common.http.<A HREF="./org/apache/wink/common/http/HttpStatus.html" title="class in org.apache.wink.common.http">HttpStatus</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/ObjectFactory.html#createDepth(java.lang.String)"><B>createDepth(String)</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/ObjectFactory.html" title="class in org.apache.wink.webdav.model">ObjectFactory</A>
<DD>Create an instance of <CODE>JAXBElement</CODE><code>&lt;</code><CODE>String</CODE><code>&gt;</code>
<DT><A HREF="./org/apache/wink/common/model/opensearch/ObjectFactory.html#createDescription(java.lang.String)"><B>createDescription(String)</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/ObjectFactory.html" title="class in org.apache.wink.common.model.opensearch">ObjectFactory</A>
<DD>Create an instance of <CODE>JAXBElement</CODE><code>&lt;</code><CODE>String</CODE><code>&gt;</code>
<DT><A HREF="./org/apache/wink/common/model/opensearch/ObjectFactory.html#createDeveloper(java.lang.String)"><B>createDeveloper(String)</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/ObjectFactory.html" title="class in org.apache.wink.common.model.opensearch">ObjectFactory</A>
<DD>Create an instance of <CODE>JAXBElement</CODE><code>&lt;</code><CODE>String</CODE><code>&gt;</code>
<DT><A HREF="./org/apache/wink/webdav/model/ObjectFactory.html#createDisplayname()"><B>createDisplayname()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/ObjectFactory.html" title="class in org.apache.wink.webdav.model">ObjectFactory</A>
<DD>Create an instance of <A HREF="./org/apache/wink/webdav/model/Displayname.html" title="class in org.apache.wink.webdav.model"><CODE>Displayname</CODE></A>
<DT><A HREF="./org/apache/wink/common/model/wadl/ObjectFactory.html#createDoc()"><B>createDoc()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/ObjectFactory.html" title="class in org.apache.wink.common.model.wadl">ObjectFactory</A>
<DD>Create an instance of <A HREF="./org/apache/wink/common/model/wadl/Doc.html" title="class in org.apache.wink.common.model.wadl"><CODE>Doc</CODE></A>
<DT><A HREF="./org/apache/wink/webdav/model/ObjectFactory.html#createDst(java.lang.String)"><B>createDst(String)</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/ObjectFactory.html" title="class in org.apache.wink.webdav.model">ObjectFactory</A>
<DD>Create an instance of <CODE>JAXBElement</CODE><code>&lt;</code><CODE>String</CODE><code>&gt;</code>
<DT><A HREF="./org/apache/wink/webdav/model/WebDAVModelHelper.html#createElement(javax.xml.namespace.QName)"><B>createElement(QName)</B></A> - 
Static method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/WebDAVModelHelper.html" title="class in org.apache.wink.webdav.model">WebDAVModelHelper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/WebDAVModelHelper.html#createElement(javax.xml.namespace.QName, java.lang.String)"><B>createElement(QName, String)</B></A> - 
Static method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/WebDAVModelHelper.html" title="class in org.apache.wink.webdav.model">WebDAVModelHelper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/WebDAVModelHelper.html#createElement(javax.xml.namespace.QName, org.w3c.dom.Element)"><B>createElement(QName, Element)</B></A> - 
Static method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/WebDAVModelHelper.html" title="class in org.apache.wink.webdav.model">WebDAVModelHelper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/WebDAVModelHelper.html#createElement(java.lang.String, java.lang.String)"><B>createElement(String, String)</B></A> - 
Static method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/WebDAVModelHelper.html" title="class in org.apache.wink.webdav.model">WebDAVModelHelper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/WebDAVModelHelper.html#createElement(java.lang.String, java.lang.String, java.lang.String)"><B>createElement(String, String, String)</B></A> - 
Static method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/WebDAVModelHelper.html" title="class in org.apache.wink.webdav.model">WebDAVModelHelper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/WebDAVModelHelper.html#createElement(java.lang.String, java.lang.String, org.w3c.dom.Element)"><B>createElement(String, String, Element)</B></A> - 
Static method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/WebDAVModelHelper.html" title="class in org.apache.wink.webdav.model">WebDAVModelHelper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/ObjectFactory.html#createEntry(org.apache.wink.common.model.atom.AtomEntry)"><B>createEntry(AtomEntry)</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/ObjectFactory.html" title="class in org.apache.wink.common.model.atom">ObjectFactory</A>
<DD>Create an instance of <CODE>JAXBElement</CODE><code>&lt;</code><A HREF="./org/apache/wink/common/model/atom/AtomEntry.html" title="class in org.apache.wink.common.model.atom"><CODE>AtomEntry</CODE></A>
 <code>&gt;</code>
<DT><A HREF="./org/apache/wink/webdav/model/ObjectFactory.html#createError()"><B>createError()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/ObjectFactory.html" title="class in org.apache.wink.webdav.model">ObjectFactory</A>
<DD>Create an instance of <A HREF="./org/apache/wink/webdav/model/Error.html" title="class in org.apache.wink.webdav.model"><CODE>Error</CODE></A>
<DT><A HREF="./org/apache/wink/webdav/model/ObjectFactory.html#createExclusive()"><B>createExclusive()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/ObjectFactory.html" title="class in org.apache.wink.webdav.model">ObjectFactory</A>
<DD>Create an instance of <A HREF="./org/apache/wink/webdav/model/Exclusive.html" title="class in org.apache.wink.webdav.model"><CODE>Exclusive</CODE></A>
<DT><A HREF="./org/apache/wink/common/model/atom/ObjectFactory.html#createFeed(org.apache.wink.common.model.atom.AtomFeed)"><B>createFeed(AtomFeed)</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/ObjectFactory.html" title="class in org.apache.wink.common.model.atom">ObjectFactory</A>
<DD>Create an instance of <CODE>JAXBElement</CODE><code>&lt;</code><A HREF="./org/apache/wink/common/model/atom/AtomFeed.html" title="class in org.apache.wink.common.model.atom"><CODE>AtomFeed</CODE></A><code>&gt;</code>
<DT><A HREF="./org/apache/wink/webdav/model/ObjectFactory.html#createGetcontentlanguage()"><B>createGetcontentlanguage()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/ObjectFactory.html" title="class in org.apache.wink.webdav.model">ObjectFactory</A>
<DD>Create an instance of <A HREF="./org/apache/wink/webdav/model/Getcontentlanguage.html" title="class in org.apache.wink.webdav.model"><CODE>Getcontentlanguage</CODE></A>
<DT><A HREF="./org/apache/wink/webdav/model/ObjectFactory.html#createGetcontentlength()"><B>createGetcontentlength()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/ObjectFactory.html" title="class in org.apache.wink.webdav.model">ObjectFactory</A>
<DD>Create an instance of <A HREF="./org/apache/wink/webdav/model/Getcontentlength.html" title="class in org.apache.wink.webdav.model"><CODE>Getcontentlength</CODE></A>
<DT><A HREF="./org/apache/wink/webdav/model/ObjectFactory.html#createGetcontenttype()"><B>createGetcontenttype()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/ObjectFactory.html" title="class in org.apache.wink.webdav.model">ObjectFactory</A>
<DD>Create an instance of <A HREF="./org/apache/wink/webdav/model/Getcontenttype.html" title="class in org.apache.wink.webdav.model"><CODE>Getcontenttype</CODE></A>
<DT><A HREF="./org/apache/wink/webdav/model/ObjectFactory.html#createGetetag()"><B>createGetetag()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/ObjectFactory.html" title="class in org.apache.wink.webdav.model">ObjectFactory</A>
<DD>Create an instance of <A HREF="./org/apache/wink/webdav/model/Getetag.html" title="class in org.apache.wink.webdav.model"><CODE>Getetag</CODE></A>
<DT><A HREF="./org/apache/wink/webdav/model/ObjectFactory.html#createGetlastmodified()"><B>createGetlastmodified()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/ObjectFactory.html" title="class in org.apache.wink.webdav.model">ObjectFactory</A>
<DD>Create an instance of <A HREF="./org/apache/wink/webdav/model/Getlastmodified.html" title="class in org.apache.wink.webdav.model"><CODE>Getlastmodified</CODE></A>
<DT><A HREF="./org/apache/wink/common/model/wadl/ObjectFactory.html#createGrammars()"><B>createGrammars()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/ObjectFactory.html" title="class in org.apache.wink.common.model.wadl">ObjectFactory</A>
<DD>Create an instance of <A HREF="./org/apache/wink/common/model/wadl/Grammars.html" title="class in org.apache.wink.common.model.wadl"><CODE>Grammars</CODE></A>
<DT><A HREF="./org/apache/wink/webdav/model/ObjectFactory.html#createHref(java.lang.String)"><B>createHref(String)</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/ObjectFactory.html" title="class in org.apache.wink.webdav.model">ObjectFactory</A>
<DD>Create an instance of <CODE>JAXBElement</CODE><code>&lt;</code><CODE>String</CODE><code>&gt;</code>
<DT><A HREF="./org/apache/wink/common/model/opensearch/ObjectFactory.html#createImage(org.apache.wink.common.model.opensearch.OpenSearchImage)"><B>createImage(OpenSearchImage)</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/ObjectFactory.html" title="class in org.apache.wink.common.model.opensearch">ObjectFactory</A>
<DD>Create an instance of <CODE>JAXBElement</CODE><code>&lt;</code><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchImage.html" title="class in org.apache.wink.common.model.opensearch"><CODE>OpenSearchImage</CODE></A>
 <code>&gt;</code>
<DT><A HREF="./org/apache/wink/common/model/wadl/ObjectFactory.html#createInclude()"><B>createInclude()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/ObjectFactory.html" title="class in org.apache.wink.common.model.wadl">ObjectFactory</A>
<DD>Create an instance of <A HREF="./org/apache/wink/common/model/wadl/Include.html" title="class in org.apache.wink.common.model.wadl"><CODE>Include</CODE></A>
<DT><A HREF="./org/apache/wink/common/model/opensearch/ObjectFactory.html#createInputEncoding(java.lang.String)"><B>createInputEncoding(String)</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/ObjectFactory.html" title="class in org.apache.wink.common.model.opensearch">ObjectFactory</A>
<DD>Create an instance of <CODE>JAXBElement</CODE><code>&lt;</code><CODE>String</CODE><code>&gt;</code>
<DT><A HREF="./org/apache/wink/common/model/opensearch/ObjectFactory.html#createItemsPerPage(java.math.BigInteger)"><B>createItemsPerPage(BigInteger)</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/ObjectFactory.html" title="class in org.apache.wink.common.model.opensearch">ObjectFactory</A>
<DD>Create an instance of <CODE>JAXBElement</CODE><code>&lt;</code><CODE>BigInteger</CODE>
 <code>&gt;</code>
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONFactory.html#createJSONArray()"><B>createJSONArray()</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONFactory.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONFactory.html#createJSONArray(java.util.Collection)"><B>createJSONArray(Collection)</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONFactory.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONFactory.html#createJSONArray(java.util.Collection, boolean)"><B>createJSONArray(Collection, boolean)</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONFactory.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONFactory.html#createJSONArray(java.io.Reader)"><B>createJSONArray(Reader)</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONFactory.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONFactory.html#createJSONArray(java.lang.Object)"><B>createJSONArray(Object)</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONFactory.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONFactory.html#createJSONArray(java.lang.Object, boolean)"><B>createJSONArray(Object, boolean)</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONFactory.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONFactory.html#createJSONArray(java.lang.String)"><B>createJSONArray(String)</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONFactory.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONFactory.html#createJSONArray()"><B>createJSONArray()</B></A> - 
Method in class org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONFactory.html" title="class in org.apache.wink.json4j.compat">JSONFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONFactory.html#createJSONArray(java.util.Collection)"><B>createJSONArray(Collection)</B></A> - 
Method in class org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONFactory.html" title="class in org.apache.wink.json4j.compat">JSONFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONFactory.html#createJSONArray(java.util.Collection, boolean)"><B>createJSONArray(Collection, boolean)</B></A> - 
Method in class org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONFactory.html" title="class in org.apache.wink.json4j.compat">JSONFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONFactory.html#createJSONArray(java.io.Reader)"><B>createJSONArray(Reader)</B></A> - 
Method in class org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONFactory.html" title="class in org.apache.wink.json4j.compat">JSONFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONFactory.html#createJSONArray(java.lang.Object)"><B>createJSONArray(Object)</B></A> - 
Method in class org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONFactory.html" title="class in org.apache.wink.json4j.compat">JSONFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONFactory.html#createJSONArray(java.lang.Object, boolean)"><B>createJSONArray(Object, boolean)</B></A> - 
Method in class org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONFactory.html" title="class in org.apache.wink.json4j.compat">JSONFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONFactory.html#createJSONArray(java.lang.String)"><B>createJSONArray(String)</B></A> - 
Method in class org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONFactory.html" title="class in org.apache.wink.json4j.compat">JSONFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONFactory.html#createJSONObject()"><B>createJSONObject()</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONFactory.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONFactory.html#createJSONObject(java.io.Reader)"><B>createJSONObject(Reader)</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONFactory.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONFactory.html#createJSONObject(java.util.Map)"><B>createJSONObject(Map)</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONFactory.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONFactory.html#createJSONObject(java.util.Map, boolean)"><B>createJSONObject(Map, boolean)</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONFactory.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONFactory.html#createJSONObject(java.lang.Object)"><B>createJSONObject(Object)</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONFactory.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONFactory.html#createJSONObject(java.lang.Object, boolean)"><B>createJSONObject(Object, boolean)</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONFactory.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONFactory.html#createJSONObject(java.lang.Object, java.lang.String[])"><B>createJSONObject(Object, String[])</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONFactory.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONFactory.html#createJSONObject(java.lang.String)"><B>createJSONObject(String)</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONFactory.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONFactory.html#createJSONObject()"><B>createJSONObject()</B></A> - 
Method in class org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONFactory.html" title="class in org.apache.wink.json4j.compat">JSONFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONFactory.html#createJSONObject(java.io.Reader)"><B>createJSONObject(Reader)</B></A> - 
Method in class org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONFactory.html" title="class in org.apache.wink.json4j.compat">JSONFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONFactory.html#createJSONObject(java.util.Map)"><B>createJSONObject(Map)</B></A> - 
Method in class org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONFactory.html" title="class in org.apache.wink.json4j.compat">JSONFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONFactory.html#createJSONObject(java.util.Map, boolean)"><B>createJSONObject(Map, boolean)</B></A> - 
Method in class org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONFactory.html" title="class in org.apache.wink.json4j.compat">JSONFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONFactory.html#createJSONObject(java.lang.Object)"><B>createJSONObject(Object)</B></A> - 
Method in class org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONFactory.html" title="class in org.apache.wink.json4j.compat">JSONFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONFactory.html#createJSONObject(java.lang.Object, boolean)"><B>createJSONObject(Object, boolean)</B></A> - 
Method in class org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONFactory.html" title="class in org.apache.wink.json4j.compat">JSONFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONFactory.html#createJSONObject(java.lang.Object, java.lang.String[])"><B>createJSONObject(Object, String[])</B></A> - 
Method in class org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONFactory.html" title="class in org.apache.wink.json4j.compat">JSONFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONFactory.html#createJSONObject(java.lang.String)"><B>createJSONObject(String)</B></A> - 
Method in class org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONFactory.html" title="class in org.apache.wink.json4j.compat">JSONFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONFactory.html#createJSONStringer()"><B>createJSONStringer()</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONFactory.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONFactory.html#createJSONStringer()"><B>createJSONStringer()</B></A> - 
Method in class org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONFactory.html" title="class in org.apache.wink.json4j.compat">JSONFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONFactory.html#createJSONWriter(java.io.Writer)"><B>createJSONWriter(Writer)</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONFactory.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONFactory.html#createJSONWriter(java.io.Writer)"><B>createJSONWriter(Writer)</B></A> - 
Method in class org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONFactory.html" title="class in org.apache.wink.json4j.compat">JSONFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/ObjectFactory.html#createKeepalive()"><B>createKeepalive()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/ObjectFactory.html" title="class in org.apache.wink.webdav.model">ObjectFactory</A>
<DD>Create an instance of <A HREF="./org/apache/wink/webdav/model/Keepalive.html" title="class in org.apache.wink.webdav.model"><CODE>Keepalive</CODE></A>
<DT><A HREF="./org/apache/wink/common/model/opensearch/ObjectFactory.html#createLanguage(java.lang.String)"><B>createLanguage(String)</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/ObjectFactory.html" title="class in org.apache.wink.common.model.opensearch">ObjectFactory</A>
<DD>Create an instance of <CODE>JAXBElement</CODE><code>&lt;</code><CODE>String</CODE><code>&gt;</code>
<DT><A HREF="./org/apache/wink/common/model/wadl/ObjectFactory.html#createLink()"><B>createLink()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/ObjectFactory.html" title="class in org.apache.wink.common.model.wadl">ObjectFactory</A>
<DD>Create an instance of <A HREF="./org/apache/wink/common/model/wadl/Link.html" title="class in org.apache.wink.common.model.wadl"><CODE>Link</CODE></A>
<DT><A HREF="./org/apache/wink/webdav/model/ObjectFactory.html#createLink()"><B>createLink()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/ObjectFactory.html" title="class in org.apache.wink.webdav.model">ObjectFactory</A>
<DD>Create an instance of <A HREF="./org/apache/wink/webdav/model/Link.html" title="class in org.apache.wink.webdav.model"><CODE>Link</CODE></A>
<DT><A HREF="./org/apache/wink/webdav/model/ObjectFactory.html#createLockdiscovery()"><B>createLockdiscovery()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/ObjectFactory.html" title="class in org.apache.wink.webdav.model">ObjectFactory</A>
<DD>Create an instance of <A HREF="./org/apache/wink/webdav/model/Lockdiscovery.html" title="class in org.apache.wink.webdav.model"><CODE>Lockdiscovery</CODE></A>
<DT><A HREF="./org/apache/wink/webdav/model/ObjectFactory.html#createLockentry()"><B>createLockentry()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/ObjectFactory.html" title="class in org.apache.wink.webdav.model">ObjectFactory</A>
<DD>Create an instance of <A HREF="./org/apache/wink/webdav/model/Lockentry.html" title="class in org.apache.wink.webdav.model"><CODE>Lockentry</CODE></A>
<DT><A HREF="./org/apache/wink/webdav/model/ObjectFactory.html#createLockinfo()"><B>createLockinfo()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/ObjectFactory.html" title="class in org.apache.wink.webdav.model">ObjectFactory</A>
<DD>Create an instance of <A HREF="./org/apache/wink/webdav/model/Lockinfo.html" title="class in org.apache.wink.webdav.model"><CODE>Lockinfo</CODE></A>
<DT><A HREF="./org/apache/wink/webdav/model/ObjectFactory.html#createLockscope()"><B>createLockscope()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/ObjectFactory.html" title="class in org.apache.wink.webdav.model">ObjectFactory</A>
<DD>Create an instance of <A HREF="./org/apache/wink/webdav/model/Lockscope.html" title="class in org.apache.wink.webdav.model"><CODE>Lockscope</CODE></A>
<DT><A HREF="./org/apache/wink/webdav/model/ObjectFactory.html#createLocktoken()"><B>createLocktoken()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/ObjectFactory.html" title="class in org.apache.wink.webdav.model">ObjectFactory</A>
<DD>Create an instance of <A HREF="./org/apache/wink/webdav/model/Locktoken.html" title="class in org.apache.wink.webdav.model"><CODE>Locktoken</CODE></A>
<DT><A HREF="./org/apache/wink/webdav/model/ObjectFactory.html#createLocktype()"><B>createLocktype()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/ObjectFactory.html" title="class in org.apache.wink.webdav.model">ObjectFactory</A>
<DD>Create an instance of <A HREF="./org/apache/wink/webdav/model/Locktype.html" title="class in org.apache.wink.webdav.model"><CODE>Locktype</CODE></A>
<DT><A HREF="./org/apache/wink/common/model/opensearch/ObjectFactory.html#createLongName(java.lang.String)"><B>createLongName(String)</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/ObjectFactory.html" title="class in org.apache.wink.common.model.opensearch">ObjectFactory</A>
<DD>Create an instance of <CODE>JAXBElement</CODE><code>&lt;</code><CODE>String</CODE><code>&gt;</code>
<DT><A HREF="./org/apache/wink/webdav/model/WebDAVModelHelper.html#createMarshaller()"><B>createMarshaller()</B></A> - 
Static method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/WebDAVModelHelper.html" title="class in org.apache.wink.webdav.model">WebDAVModelHelper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/ObjectFactory.html#createMethod()"><B>createMethod()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/ObjectFactory.html" title="class in org.apache.wink.common.model.wadl">ObjectFactory</A>
<DD>Create an instance of <A HREF="./org/apache/wink/common/model/wadl/Method.html" title="class in org.apache.wink.common.model.wadl"><CODE>Method</CODE></A>
<DT><A HREF="./org/apache/wink/webdav/model/ObjectFactory.html#createMultistatus()"><B>createMultistatus()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/ObjectFactory.html" title="class in org.apache.wink.webdav.model">ObjectFactory</A>
<DD>Create an instance of <A HREF="./org/apache/wink/webdav/model/Multistatus.html" title="class in org.apache.wink.webdav.model"><CODE>Multistatus</CODE></A>
<DT><A HREF="./org/apache/wink/webdav/model/ObjectFactory.html#createOmit()"><B>createOmit()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/ObjectFactory.html" title="class in org.apache.wink.webdav.model">ObjectFactory</A>
<DD>Create an instance of <A HREF="./org/apache/wink/webdav/model/Omit.html" title="class in org.apache.wink.webdav.model"><CODE>Omit</CODE></A>
<DT><A HREF="./org/apache/wink/common/model/opensearch/ObjectFactory.html#createOpenSearchDescription()"><B>createOpenSearchDescription()</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/ObjectFactory.html" title="class in org.apache.wink.common.model.opensearch">ObjectFactory</A>
<DD>Create an instance of <A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html" title="class in org.apache.wink.common.model.opensearch"><CODE>OpenSearchDescription</CODE></A>
<DT><A HREF="./org/apache/wink/common/model/opensearch/ObjectFactory.html#createOpenSearchDescription(org.apache.wink.common.model.opensearch.OpenSearchDescription)"><B>createOpenSearchDescription(OpenSearchDescription)</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/ObjectFactory.html" title="class in org.apache.wink.common.model.opensearch">ObjectFactory</A>
<DD>Create an instance of <CODE>JAXBElement</CODE><code>&lt;</code>
 <A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html" title="class in org.apache.wink.common.model.opensearch"><CODE>OpenSearchDescription</CODE></A><code>&gt;</code>
<DT><A HREF="./org/apache/wink/common/model/opensearch/ObjectFactory.html#createOpenSearchImage()"><B>createOpenSearchImage()</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/ObjectFactory.html" title="class in org.apache.wink.common.model.opensearch">ObjectFactory</A>
<DD>Create an instance of <A HREF="./org/apache/wink/common/model/opensearch/OpenSearchImage.html" title="class in org.apache.wink.common.model.opensearch"><CODE>OpenSearchImage</CODE></A>
<DT><A HREF="./org/apache/wink/common/model/opensearch/ObjectFactory.html#createOpenSearchQuery()"><B>createOpenSearchQuery()</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/ObjectFactory.html" title="class in org.apache.wink.common.model.opensearch">ObjectFactory</A>
<DD>Create an instance of <A HREF="./org/apache/wink/common/model/opensearch/OpenSearchQuery.html" title="class in org.apache.wink.common.model.opensearch"><CODE>OpenSearchQuery</CODE></A>
<DT><A HREF="./org/apache/wink/common/model/opensearch/ObjectFactory.html#createOpenSearchUrl()"><B>createOpenSearchUrl()</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/ObjectFactory.html" title="class in org.apache.wink.common.model.opensearch">ObjectFactory</A>
<DD>Create an instance of <A HREF="./org/apache/wink/common/model/opensearch/OpenSearchUrl.html" title="class in org.apache.wink.common.model.opensearch"><CODE>OpenSearchUrl</CODE></A>
<DT><A HREF="./org/apache/wink/common/model/wadl/ObjectFactory.html#createOption()"><B>createOption()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/ObjectFactory.html" title="class in org.apache.wink.common.model.wadl">ObjectFactory</A>
<DD>Create an instance of <A HREF="./org/apache/wink/common/model/wadl/Option.html" title="class in org.apache.wink.common.model.wadl"><CODE>Option</CODE></A>
<DT><A HREF="./org/apache/wink/common/model/opensearch/ObjectFactory.html#createOutputEncoding(java.lang.String)"><B>createOutputEncoding(String)</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/ObjectFactory.html" title="class in org.apache.wink.common.model.opensearch">ObjectFactory</A>
<DD>Create an instance of <CODE>JAXBElement</CODE><code>&lt;</code><CODE>String</CODE><code>&gt;</code>
<DT><A HREF="./org/apache/wink/webdav/model/ObjectFactory.html#createOwner()"><B>createOwner()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/ObjectFactory.html" title="class in org.apache.wink.webdav.model">ObjectFactory</A>
<DD>Create an instance of <A HREF="./org/apache/wink/webdav/model/Owner.html" title="class in org.apache.wink.webdav.model"><CODE>Owner</CODE></A>
<DT><A HREF="./org/apache/wink/common/model/wadl/ObjectFactory.html#createParam()"><B>createParam()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/ObjectFactory.html" title="class in org.apache.wink.common.model.wadl">ObjectFactory</A>
<DD>Create an instance of <A HREF="./org/apache/wink/common/model/wadl/Param.html" title="class in org.apache.wink.common.model.wadl"><CODE>Param</CODE></A>
<DT><A HREF="./org/apache/wink/webdav/model/ObjectFactory.html#createProp()"><B>createProp()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/ObjectFactory.html" title="class in org.apache.wink.webdav.model">ObjectFactory</A>
<DD>Create an instance of <A HREF="./org/apache/wink/webdav/model/Prop.html" title="class in org.apache.wink.webdav.model"><CODE>Prop</CODE></A>
<DT><A HREF="./org/apache/wink/webdav/model/ObjectFactory.html#createPropertybehavior()"><B>createPropertybehavior()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/ObjectFactory.html" title="class in org.apache.wink.webdav.model">ObjectFactory</A>
<DD>Create an instance of <A HREF="./org/apache/wink/webdav/model/Propertybehavior.html" title="class in org.apache.wink.webdav.model"><CODE>Propertybehavior</CODE></A>
<DT><A HREF="./org/apache/wink/webdav/model/ObjectFactory.html#createPropertyupdate()"><B>createPropertyupdate()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/ObjectFactory.html" title="class in org.apache.wink.webdav.model">ObjectFactory</A>
<DD>Create an instance of <A HREF="./org/apache/wink/webdav/model/Propertyupdate.html" title="class in org.apache.wink.webdav.model"><CODE>Propertyupdate</CODE></A>
<DT><A HREF="./org/apache/wink/webdav/model/ObjectFactory.html#createPropfind()"><B>createPropfind()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/ObjectFactory.html" title="class in org.apache.wink.webdav.model">ObjectFactory</A>
<DD>Create an instance of <A HREF="./org/apache/wink/webdav/model/Propfind.html" title="class in org.apache.wink.webdav.model"><CODE>Propfind</CODE></A>
<DT><A HREF="./org/apache/wink/webdav/model/ObjectFactory.html#createPropname()"><B>createPropname()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/ObjectFactory.html" title="class in org.apache.wink.webdav.model">ObjectFactory</A>
<DD>Create an instance of <A HREF="./org/apache/wink/webdav/model/Propname.html" title="class in org.apache.wink.webdav.model"><CODE>Propname</CODE></A>
<DT><A HREF="./org/apache/wink/webdav/model/ObjectFactory.html#createPropstat()"><B>createPropstat()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/ObjectFactory.html" title="class in org.apache.wink.webdav.model">ObjectFactory</A>
<DD>Create an instance of <A HREF="./org/apache/wink/webdav/model/Propstat.html" title="class in org.apache.wink.webdav.model"><CODE>Propstat</CODE></A>
<DT><A HREF="./org/apache/wink/common/model/opensearch/ObjectFactory.html#createQuery(org.apache.wink.common.model.opensearch.OpenSearchQuery)"><B>createQuery(OpenSearchQuery)</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/ObjectFactory.html" title="class in org.apache.wink.common.model.opensearch">ObjectFactory</A>
<DD>Create an instance of <CODE>JAXBElement</CODE><code>&lt;</code><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchQuery.html" title="class in org.apache.wink.common.model.opensearch"><CODE>OpenSearchQuery</CODE></A>
 <code>&gt;</code>
<DT><A HREF="./org/apache/wink/common/utils/ProviderUtils.html#createReader(java.io.InputStream, javax.ws.rs.core.MediaType)"><B>createReader(InputStream, MediaType)</B></A> - 
Static method in class org.apache.wink.common.utils.<A HREF="./org/apache/wink/common/utils/ProviderUtils.html" title="class in org.apache.wink.common.utils">ProviderUtils</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/ObjectFactory.html#createRemove()"><B>createRemove()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/ObjectFactory.html" title="class in org.apache.wink.webdav.model">ObjectFactory</A>
<DD>Create an instance of <A HREF="./org/apache/wink/webdav/model/Remove.html" title="class in org.apache.wink.webdav.model"><CODE>Remove</CODE></A>
<DT><A HREF="./org/apache/wink/common/model/wadl/ObjectFactory.html#createRepresentation()"><B>createRepresentation()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/ObjectFactory.html" title="class in org.apache.wink.common.model.wadl">ObjectFactory</A>
<DD>Create an instance of <A HREF="./org/apache/wink/common/model/wadl/Representation.html" title="class in org.apache.wink.common.model.wadl"><CODE>Representation</CODE></A>
<DT><A HREF="./org/apache/wink/common/model/wadl/ObjectFactory.html#createRequest()"><B>createRequest()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/ObjectFactory.html" title="class in org.apache.wink.common.model.wadl">ObjectFactory</A>
<DD>Create an instance of <A HREF="./org/apache/wink/common/model/wadl/Request.html" title="class in org.apache.wink.common.model.wadl"><CODE>Request</CODE></A>
<DT><A HREF="./org/apache/wink/common/model/wadl/ObjectFactory.html#createResource()"><B>createResource()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/ObjectFactory.html" title="class in org.apache.wink.common.model.wadl">ObjectFactory</A>
<DD>Create an instance of <A HREF="./org/apache/wink/common/model/wadl/Resource.html" title="class in org.apache.wink.common.model.wadl"><CODE>Resource</CODE></A>
<DT><A HREF="./org/apache/wink/common/model/wadl/ObjectFactory.html#createResources()"><B>createResources()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/ObjectFactory.html" title="class in org.apache.wink.common.model.wadl">ObjectFactory</A>
<DD>Create an instance of <A HREF="./org/apache/wink/common/model/wadl/Resources.html" title="class in org.apache.wink.common.model.wadl"><CODE>Resources</CODE></A>
<DT><A HREF="./org/apache/wink/common/model/wadl/ObjectFactory.html#createResourceType()"><B>createResourceType()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/ObjectFactory.html" title="class in org.apache.wink.common.model.wadl">ObjectFactory</A>
<DD>Create an instance of <A HREF="./org/apache/wink/common/model/wadl/ResourceType.html" title="class in org.apache.wink.common.model.wadl"><CODE>ResourceType</CODE></A>
<DT><A HREF="./org/apache/wink/webdav/model/ObjectFactory.html#createResourcetype()"><B>createResourcetype()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/ObjectFactory.html" title="class in org.apache.wink.webdav.model">ObjectFactory</A>
<DD>Create an instance of <A HREF="./org/apache/wink/webdav/model/Resourcetype.html" title="class in org.apache.wink.webdav.model"><CODE>Resourcetype</CODE></A>
<DT><A HREF="./org/apache/wink/common/model/wadl/ObjectFactory.html#createResponse()"><B>createResponse()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/ObjectFactory.html" title="class in org.apache.wink.common.model.wadl">ObjectFactory</A>
<DD>Create an instance of <A HREF="./org/apache/wink/common/model/wadl/Response.html" title="class in org.apache.wink.common.model.wadl"><CODE>Response</CODE></A>
<DT><A HREF="./org/apache/wink/webdav/model/ObjectFactory.html#createResponse()"><B>createResponse()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/ObjectFactory.html" title="class in org.apache.wink.webdav.model">ObjectFactory</A>
<DD>Create an instance of <A HREF="./org/apache/wink/webdav/model/Response.html" title="class in org.apache.wink.webdav.model"><CODE>Response</CODE></A>
<DT><A HREF="./org/apache/wink/webdav/model/ObjectFactory.html#createResponsedescription(java.lang.String)"><B>createResponsedescription(String)</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/ObjectFactory.html" title="class in org.apache.wink.webdav.model">ObjectFactory</A>
<DD>Create an instance of <CODE>JAXBElement</CODE><code>&lt;</code><CODE>String</CODE><code>&gt;</code>
<DT><A HREF="./org/apache/wink/common/model/rss/ObjectFactory.html#createRssCategory()"><B>createRssCategory()</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/ObjectFactory.html" title="class in org.apache.wink.common.model.rss">ObjectFactory</A>
<DD>Create an instance of <A HREF="./org/apache/wink/common/model/rss/RssCategory.html" title="class in org.apache.wink.common.model.rss"><CODE>RssCategory</CODE></A>
<DT><A HREF="./org/apache/wink/common/model/rss/ObjectFactory.html#createRssCategory(org.apache.wink.common.model.rss.RssCategory)"><B>createRssCategory(RssCategory)</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/ObjectFactory.html" title="class in org.apache.wink.common.model.rss">ObjectFactory</A>
<DD>Create an instance of <CODE>JAXBElement</CODE> <code>&lt;</code> <A HREF="./org/apache/wink/common/model/rss/RssCategory.html" title="class in org.apache.wink.common.model.rss"><CODE>RssCategory</CODE></A>
 <code>&gt;</code>
<DT><A HREF="./org/apache/wink/common/model/rss/ObjectFactory.html#createRssChannel()"><B>createRssChannel()</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/ObjectFactory.html" title="class in org.apache.wink.common.model.rss">ObjectFactory</A>
<DD>Create an instance of <A HREF="./org/apache/wink/common/model/rss/RssChannel.html" title="class in org.apache.wink.common.model.rss"><CODE>RssChannel</CODE></A>
<DT><A HREF="./org/apache/wink/common/model/rss/ObjectFactory.html#createRssChannel(org.apache.wink.common.model.rss.RssChannel)"><B>createRssChannel(RssChannel)</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/ObjectFactory.html" title="class in org.apache.wink.common.model.rss">ObjectFactory</A>
<DD>Create an instance of <CODE>JAXBElement</CODE> <code>&lt;</code> <A HREF="./org/apache/wink/common/model/rss/RssChannel.html" title="class in org.apache.wink.common.model.rss"><CODE>RssChannel</CODE></A>
 <code>&gt;</code>
<DT><A HREF="./org/apache/wink/common/model/rss/ObjectFactory.html#createRssCloud()"><B>createRssCloud()</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/ObjectFactory.html" title="class in org.apache.wink.common.model.rss">ObjectFactory</A>
<DD>Create an instance of <A HREF="./org/apache/wink/common/model/rss/RssCloud.html" title="class in org.apache.wink.common.model.rss"><CODE>RssCloud</CODE></A>
<DT><A HREF="./org/apache/wink/common/model/rss/ObjectFactory.html#createRssCloud(org.apache.wink.common.model.rss.RssCloud)"><B>createRssCloud(RssCloud)</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/ObjectFactory.html" title="class in org.apache.wink.common.model.rss">ObjectFactory</A>
<DD>Create an instance of <CODE>JAXBElement</CODE> <code>&lt;</code> <A HREF="./org/apache/wink/common/model/rss/RssCloud.html" title="class in org.apache.wink.common.model.rss"><CODE>RssCloud</CODE></A>
 <code>&gt;</code>
<DT><A HREF="./org/apache/wink/common/model/rss/ObjectFactory.html#createRssEnclosure()"><B>createRssEnclosure()</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/ObjectFactory.html" title="class in org.apache.wink.common.model.rss">ObjectFactory</A>
<DD>Create an instance of <A HREF="./org/apache/wink/common/model/rss/RssEnclosure.html" title="class in org.apache.wink.common.model.rss"><CODE>RssEnclosure</CODE></A>
<DT><A HREF="./org/apache/wink/common/model/rss/ObjectFactory.html#createRssEnclosure(org.apache.wink.common.model.rss.RssEnclosure)"><B>createRssEnclosure(RssEnclosure)</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/ObjectFactory.html" title="class in org.apache.wink.common.model.rss">ObjectFactory</A>
<DD>Create an instance of <CODE>JAXBElement</CODE> <code>&lt;</code> <A HREF="./org/apache/wink/common/model/rss/RssEnclosure.html" title="class in org.apache.wink.common.model.rss"><CODE>RssEnclosure</CODE></A>
 <code>&gt;</code>
<DT><A HREF="./org/apache/wink/common/model/rss/ObjectFactory.html#createRssFeed()"><B>createRssFeed()</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/ObjectFactory.html" title="class in org.apache.wink.common.model.rss">ObjectFactory</A>
<DD>Create an instance of <A HREF="./org/apache/wink/common/model/rss/RssFeed.html" title="class in org.apache.wink.common.model.rss"><CODE>RssFeed</CODE></A>
<DT><A HREF="./org/apache/wink/common/model/rss/ObjectFactory.html#createRssGuid()"><B>createRssGuid()</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/ObjectFactory.html" title="class in org.apache.wink.common.model.rss">ObjectFactory</A>
<DD>Create an instance of <A HREF="./org/apache/wink/common/model/rss/RssGuid.html" title="class in org.apache.wink.common.model.rss"><CODE>RssGuid</CODE></A>
<DT><A HREF="./org/apache/wink/common/model/rss/ObjectFactory.html#createRssGuid(org.apache.wink.common.model.rss.RssGuid)"><B>createRssGuid(RssGuid)</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/ObjectFactory.html" title="class in org.apache.wink.common.model.rss">ObjectFactory</A>
<DD>Create an instance of <CODE>JAXBElement</CODE> <code>&lt;</code> <A HREF="./org/apache/wink/common/model/rss/RssGuid.html" title="class in org.apache.wink.common.model.rss"><CODE>RssGuid</CODE></A>
 <code>&gt;</code>
<DT><A HREF="./org/apache/wink/common/model/rss/ObjectFactory.html#createRssImage()"><B>createRssImage()</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/ObjectFactory.html" title="class in org.apache.wink.common.model.rss">ObjectFactory</A>
<DD>Create an instance of <A HREF="./org/apache/wink/common/model/rss/RssImage.html" title="class in org.apache.wink.common.model.rss"><CODE>RssImage</CODE></A>
<DT><A HREF="./org/apache/wink/common/model/rss/ObjectFactory.html#createRssImage(org.apache.wink.common.model.rss.RssImage)"><B>createRssImage(RssImage)</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/ObjectFactory.html" title="class in org.apache.wink.common.model.rss">ObjectFactory</A>
<DD>Create an instance of <CODE>JAXBElement</CODE> <code>&lt;</code> <A HREF="./org/apache/wink/common/model/rss/RssImage.html" title="class in org.apache.wink.common.model.rss"><CODE>RssImage</CODE></A>
 <code>&gt;</code>
<DT><A HREF="./org/apache/wink/common/model/rss/ObjectFactory.html#createRssItem()"><B>createRssItem()</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/ObjectFactory.html" title="class in org.apache.wink.common.model.rss">ObjectFactory</A>
<DD>Create an instance of <A HREF="./org/apache/wink/common/model/rss/RssItem.html" title="class in org.apache.wink.common.model.rss"><CODE>RssItem</CODE></A>
<DT><A HREF="./org/apache/wink/common/model/rss/ObjectFactory.html#createRssItem(org.apache.wink.common.model.rss.RssItem)"><B>createRssItem(RssItem)</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/ObjectFactory.html" title="class in org.apache.wink.common.model.rss">ObjectFactory</A>
<DD>Create an instance of <CODE>JAXBElement</CODE> <code>&lt;</code> <A HREF="./org/apache/wink/common/model/rss/RssItem.html" title="class in org.apache.wink.common.model.rss"><CODE>RssItem</CODE></A>
 <code>&gt;</code>
<DT><A HREF="./org/apache/wink/common/model/rss/ObjectFactory.html#createRssSkipDays()"><B>createRssSkipDays()</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/ObjectFactory.html" title="class in org.apache.wink.common.model.rss">ObjectFactory</A>
<DD>Create an instance of <A HREF="./org/apache/wink/common/model/rss/RssSkipDays.html" title="class in org.apache.wink.common.model.rss"><CODE>RssSkipDays</CODE></A>
<DT><A HREF="./org/apache/wink/common/model/rss/ObjectFactory.html#createRssSkipDays(org.apache.wink.common.model.rss.RssSkipDays)"><B>createRssSkipDays(RssSkipDays)</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/ObjectFactory.html" title="class in org.apache.wink.common.model.rss">ObjectFactory</A>
<DD>Create an instance of <CODE>JAXBElement</CODE> <code>&lt;</code> <A HREF="./org/apache/wink/common/model/rss/RssSkipDays.html" title="class in org.apache.wink.common.model.rss"><CODE>RssSkipDays</CODE></A>
 <code>&gt;</code>
<DT><A HREF="./org/apache/wink/common/model/rss/ObjectFactory.html#createRssSkipHours()"><B>createRssSkipHours()</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/ObjectFactory.html" title="class in org.apache.wink.common.model.rss">ObjectFactory</A>
<DD>Create an instance of <A HREF="./org/apache/wink/common/model/rss/RssSkipHours.html" title="class in org.apache.wink.common.model.rss"><CODE>RssSkipHours</CODE></A>
<DT><A HREF="./org/apache/wink/common/model/rss/ObjectFactory.html#createRssSkipHours(org.apache.wink.common.model.rss.RssSkipHours)"><B>createRssSkipHours(RssSkipHours)</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/ObjectFactory.html" title="class in org.apache.wink.common.model.rss">ObjectFactory</A>
<DD>Create an instance of <CODE>JAXBElement</CODE> <code>&lt;</code> <A HREF="./org/apache/wink/common/model/rss/RssSkipHours.html" title="class in org.apache.wink.common.model.rss"><CODE>RssSkipHours</CODE></A>
 <code>&gt;</code>
<DT><A HREF="./org/apache/wink/common/model/rss/ObjectFactory.html#createRssSource()"><B>createRssSource()</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/ObjectFactory.html" title="class in org.apache.wink.common.model.rss">ObjectFactory</A>
<DD>Create an instance of <A HREF="./org/apache/wink/common/model/rss/RssSource.html" title="class in org.apache.wink.common.model.rss"><CODE>RssSource</CODE></A>
<DT><A HREF="./org/apache/wink/common/model/rss/ObjectFactory.html#createRssSource(org.apache.wink.common.model.rss.RssSource)"><B>createRssSource(RssSource)</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/ObjectFactory.html" title="class in org.apache.wink.common.model.rss">ObjectFactory</A>
<DD>Create an instance of <CODE>JAXBElement</CODE> <code>&lt;</code> <A HREF="./org/apache/wink/common/model/rss/RssSource.html" title="class in org.apache.wink.common.model.rss"><CODE>RssSource</CODE></A>
 <code>&gt;</code>
<DT><A HREF="./org/apache/wink/common/model/rss/ObjectFactory.html#createRssTextInput()"><B>createRssTextInput()</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/ObjectFactory.html" title="class in org.apache.wink.common.model.rss">ObjectFactory</A>
<DD>Create an instance of <A HREF="./org/apache/wink/common/model/rss/RssTextInput.html" title="class in org.apache.wink.common.model.rss"><CODE>RssTextInput</CODE></A>
<DT><A HREF="./org/apache/wink/common/model/rss/ObjectFactory.html#createRssTextInput(org.apache.wink.common.model.rss.RssTextInput)"><B>createRssTextInput(RssTextInput)</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/ObjectFactory.html" title="class in org.apache.wink.common.model.rss">ObjectFactory</A>
<DD>Create an instance of <CODE>JAXBElement</CODE> <code>&lt;</code> <A HREF="./org/apache/wink/common/model/rss/RssTextInput.html" title="class in org.apache.wink.common.model.rss"><CODE>RssTextInput</CODE></A>
 <code>&gt;</code>
<DT><A HREF="./org/apache/wink/common/model/app/ObjectFactory.html#createService(org.apache.wink.common.model.app.AppService)"><B>createService(AppService)</B></A> - 
Method in class org.apache.wink.common.model.app.<A HREF="./org/apache/wink/common/model/app/ObjectFactory.html" title="class in org.apache.wink.common.model.app">ObjectFactory</A>
<DD>Create an instance of <CODE>JAXBElement</CODE><code>&lt;</code><A HREF="./org/apache/wink/common/model/app/AppService.html" title="class in org.apache.wink.common.model.app"><CODE>AppService</CODE></A>
 <code>&gt;</code>
<DT><A HREF="./org/apache/wink/webdav/model/ObjectFactory.html#createSet()"><B>createSet()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/ObjectFactory.html" title="class in org.apache.wink.webdav.model">ObjectFactory</A>
<DD>Create an instance of <A HREF="./org/apache/wink/webdav/model/Set.html" title="class in org.apache.wink.webdav.model"><CODE>Set</CODE></A>
<DT><A HREF="./org/apache/wink/webdav/model/ObjectFactory.html#createShared()"><B>createShared()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/ObjectFactory.html" title="class in org.apache.wink.webdav.model">ObjectFactory</A>
<DD>Create an instance of <A HREF="./org/apache/wink/webdav/model/Shared.html" title="class in org.apache.wink.webdav.model"><CODE>Shared</CODE></A>
<DT><A HREF="./org/apache/wink/common/model/opensearch/ObjectFactory.html#createShortName(java.lang.String)"><B>createShortName(String)</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/ObjectFactory.html" title="class in org.apache.wink.common.model.opensearch">ObjectFactory</A>
<DD>Create an instance of <CODE>JAXBElement</CODE><code>&lt;</code><CODE>String</CODE><code>&gt;</code>
<DT><A HREF="./org/apache/wink/server/utils/LinkBuilders.html#createSingleLinkBuilder()"><B>createSingleLinkBuilder()</B></A> - 
Method in interface org.apache.wink.server.utils.<A HREF="./org/apache/wink/server/utils/LinkBuilders.html" title="interface in org.apache.wink.server.utils">LinkBuilders</A>
<DD>Get a new instance of a <A HREF="./org/apache/wink/server/utils/SingleLinkBuilder.html" title="interface in org.apache.wink.server.utils"><CODE>SingleLinkBuilder</CODE></A>.
<DT><A HREF="./org/apache/wink/webdav/model/ObjectFactory.html#createSrc(java.lang.String)"><B>createSrc(String)</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/ObjectFactory.html" title="class in org.apache.wink.webdav.model">ObjectFactory</A>
<DD>Create an instance of <CODE>JAXBElement</CODE><code>&lt;</code><CODE>String</CODE><code>&gt;</code>
<DT><A HREF="./org/apache/wink/common/model/opensearch/ObjectFactory.html#createStartIndex(java.math.BigInteger)"><B>createStartIndex(BigInteger)</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/ObjectFactory.html" title="class in org.apache.wink.common.model.opensearch">ObjectFactory</A>
<DD>Create an instance of <CODE>JAXBElement</CODE><code>&lt;</code><CODE>BigInteger</CODE>
 <code>&gt;</code>
<DT><A HREF="./org/apache/wink/webdav/model/ObjectFactory.html#createStatus(java.lang.String)"><B>createStatus(String)</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/ObjectFactory.html" title="class in org.apache.wink.webdav.model">ObjectFactory</A>
<DD>Create an instance of <CODE>JAXBElement</CODE><code>&lt;</code><CODE>String</CODE><code>&gt;</code>
<DT><A HREF="./org/apache/wink/webdav/model/ObjectFactory.html#createSupportedlock()"><B>createSupportedlock()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/ObjectFactory.html" title="class in org.apache.wink.webdav.model">ObjectFactory</A>
<DD>Create an instance of <A HREF="./org/apache/wink/webdav/model/Supportedlock.html" title="class in org.apache.wink.webdav.model"><CODE>Supportedlock</CODE></A>
<DT><A HREF="./org/apache/wink/common/model/opensearch/ObjectFactory.html#createSyndicationRight(java.lang.String)"><B>createSyndicationRight(String)</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/ObjectFactory.html" title="class in org.apache.wink.common.model.opensearch">ObjectFactory</A>
<DD>Create an instance of <CODE>JAXBElement</CODE><code>&lt;</code><CODE>String</CODE><code>&gt;</code>
<DT><A HREF="./org/apache/wink/server/utils/LinkBuilders.html#createSystemLinksBuilder()"><B>createSystemLinksBuilder()</B></A> - 
Method in interface org.apache.wink.server.utils.<A HREF="./org/apache/wink/server/utils/LinkBuilders.html" title="interface in org.apache.wink.server.utils">LinkBuilders</A>
<DD>Get a new instance of a <A HREF="./org/apache/wink/server/utils/SystemLinksBuilder.html" title="interface in org.apache.wink.server.utils"><CODE>SystemLinksBuilder</CODE></A>.
<DT><A HREF="./org/apache/wink/common/model/opensearch/ObjectFactory.html#createTags(java.lang.String)"><B>createTags(String)</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/ObjectFactory.html" title="class in org.apache.wink.common.model.opensearch">ObjectFactory</A>
<DD>Create an instance of <CODE>JAXBElement</CODE><code>&lt;</code><CODE>String</CODE><code>&gt;</code>
<DT><A HREF="./org/apache/wink/webdav/model/ObjectFactory.html#createTimeout(java.lang.String)"><B>createTimeout(String)</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/ObjectFactory.html" title="class in org.apache.wink.webdav.model">ObjectFactory</A>
<DD>Create an instance of <CODE>JAXBElement</CODE><code>&lt;</code><CODE>String</CODE><code>&gt;</code>
<DT><A HREF="./org/apache/wink/common/model/atom/ObjectFactory.html#createTitle(org.apache.wink.common.model.atom.AtomText)"><B>createTitle(AtomText)</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/ObjectFactory.html" title="class in org.apache.wink.common.model.atom">ObjectFactory</A>
<DD>Create an instance of <CODE>JAXBElement</CODE><code>&lt;</code><A HREF="./org/apache/wink/common/model/atom/AtomText.html" title="class in org.apache.wink.common.model.atom"><CODE>AtomText</CODE></A><code>&gt;</code>
<DT><A HREF="./org/apache/wink/common/model/opensearch/ObjectFactory.html#createTotalResults(java.math.BigInteger)"><B>createTotalResults(BigInteger)</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/ObjectFactory.html" title="class in org.apache.wink.common.model.opensearch">ObjectFactory</A>
<DD>Create an instance of <CODE>JAXBElement</CODE><code>&lt;</code><CODE>BigInteger</CODE>
 <code>&gt;</code>
<DT><A HREF="./org/apache/wink/webdav/model/WebDAVModelHelper.html#createUnmarshaller()"><B>createUnmarshaller()</B></A> - 
Static method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/WebDAVModelHelper.html" title="class in org.apache.wink.webdav.model">WebDAVModelHelper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/opensearch/ObjectFactory.html#createUrl(org.apache.wink.common.model.opensearch.OpenSearchUrl)"><B>createUrl(OpenSearchUrl)</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/ObjectFactory.html" title="class in org.apache.wink.common.model.opensearch">ObjectFactory</A>
<DD>Create an instance of <CODE>JAXBElement</CODE><code>&lt;</code><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchUrl.html" title="class in org.apache.wink.common.model.opensearch"><CODE>OpenSearchUrl</CODE></A>
 <code>&gt;</code>
<DT><A HREF="./org/apache/wink/common/model/app/ObjectFactory.html#createWorkspace(org.apache.wink.common.model.app.AppWorkspace)"><B>createWorkspace(AppWorkspace)</B></A> - 
Method in class org.apache.wink.common.model.app.<A HREF="./org/apache/wink/common/model/app/ObjectFactory.html" title="class in org.apache.wink.common.model.app">ObjectFactory</A>
<DD>Create an instance of <CODE>JAXBElement</CODE><code>&lt;</code><A HREF="./org/apache/wink/common/model/app/AppWorkspace.html" title="class in org.apache.wink.common.model.app"><CODE>AppWorkspace</CODE></A>
 <code>&gt;</code>
<DT><A HREF="./org/apache/wink/webdav/model/ObjectFactory.html#createWrite()"><B>createWrite()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/ObjectFactory.html" title="class in org.apache.wink.webdav.model">ObjectFactory</A>
<DD>Create an instance of <A HREF="./org/apache/wink/webdav/model/Write.html" title="class in org.apache.wink.webdav.model"><CODE>Write</CODE></A>
<DT><A HREF="./org/apache/wink/common/utils/ProviderUtils.html#createWriter(java.io.OutputStream, javax.ws.rs.core.MediaType)"><B>createWriter(OutputStream, MediaType)</B></A> - 
Static method in class org.apache.wink.common.utils.<A HREF="./org/apache/wink/common/utils/ProviderUtils.html" title="class in org.apache.wink.common.utils">ProviderUtils</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Creationdate.html" title="class in org.apache.wink.webdav.model"><B>Creationdate</B></A> - Class in <A HREF="./org/apache/wink/webdav/model/package-summary.html">org.apache.wink.webdav.model</A><DD>The <code>creationdate</code> Property per the WebDAV specification [RFC
 4918]<DT><A HREF="./org/apache/wink/webdav/model/Creationdate.html#Creationdate()"><B>Creationdate()</B></A> - 
Constructor for class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Creationdate.html" title="class in org.apache.wink.webdav.model">Creationdate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Creationdate.html#Creationdate(java.lang.String)"><B>Creationdate(String)</B></A> - 
Constructor for class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Creationdate.html" title="class in org.apache.wink.webdav.model">Creationdate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Creationdate.html#Creationdate(java.util.Date)"><B>Creationdate(Date)</B></A> - 
Constructor for class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Creationdate.html" title="class in org.apache.wink.webdav.model">Creationdate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Prop.html#creationdate"><B>creationdate</B></A> - 
Variable in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Prop.html" title="class in org.apache.wink.webdav.model">Prop</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/csv/CsvDeserializer.html" title="interface in org.apache.wink.common.model.csv"><B>CsvDeserializer</B></A> - Interface in <A HREF="./org/apache/wink/common/model/csv/package-summary.html">org.apache.wink.common.model.csv</A><DD>This interface is used in the deserialization of a CSV<DT><A HREF="./org/apache/wink/common/model/csv/CsvSerializer.html" title="interface in org.apache.wink.common.model.csv"><B>CsvSerializer</B></A> - Interface in <A HREF="./org/apache/wink/common/model/csv/package-summary.html">org.apache.wink.common.model.csv</A><DD>This interface is used in the serialization of a CSV<DT><A HREF="./org/apache/wink/common/model/csv/CsvTable.html" title="class in org.apache.wink.common.model.csv"><B>CsvTable</B></A> - Class in <A HREF="./org/apache/wink/common/model/csv/package-summary.html">org.apache.wink.common.model.csv</A><DD>Represents a CSV table with multiple rows.<DT><A HREF="./org/apache/wink/common/model/csv/CsvTable.html#CsvTable()"><B>CsvTable()</B></A> - 
Constructor for class org.apache.wink.common.model.csv.<A HREF="./org/apache/wink/common/model/csv/CsvTable.html" title="class in org.apache.wink.common.model.csv">CsvTable</A>
<DD>Creates a new CsvTable without a header
<DT><A HREF="./org/apache/wink/common/model/csv/CsvTable.html#CsvTable(java.lang.String...)"><B>CsvTable(String...)</B></A> - 
Constructor for class org.apache.wink.common.model.csv.<A HREF="./org/apache/wink/common/model/csv/CsvTable.html" title="class in org.apache.wink.common.model.csv">CsvTable</A>
<DD>Creates a new CsvTable with the specified header.
</DL>
<HR>
<A NAME="_D_"><!-- --></A><H2>
<B>D</B></H2>
<DL>
<DT><A HREF="./org/apache/wink/webdav/WebDAVHeaders.html#DAV"><B>DAV</B></A> - 
Static variable in class org.apache.wink.webdav.<A HREF="./org/apache/wink/webdav/WebDAVHeaders.html" title="class in org.apache.wink.webdav">WebDAVHeaders</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/rss/RssSkipDays.html#day"><B>day</B></A> - 
Variable in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssSkipDays.html" title="class in org.apache.wink.common.model.rss">RssSkipDays</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/osgi/WinkRequestProcessor.html#deactivate(org.osgi.service.component.ComponentContext)"><B>deactivate(ComponentContext)</B></A> - 
Method in class org.apache.wink.osgi.<A HREF="./org/apache/wink/osgi/WinkRequestProcessor.html" title="class in org.apache.wink.osgi">WinkRequestProcessor</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/WinkApplication.html#DEFAULT_PRIORITY"><B>DEFAULT_PRIORITY</B></A> - 
Static variable in class org.apache.wink.common.<A HREF="./org/apache/wink/common/WinkApplication.html" title="class in org.apache.wink.common">WinkApplication</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONArrayDelegate.html#delegate"><B>delegate</B></A> - 
Variable in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONArrayDelegate.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONArrayDelegate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONObjectDelegate.html#delegate"><B>delegate</B></A> - 
Variable in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONObjectDelegate.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONObjectDelegate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONWriterDelegate.html#delegate"><B>delegate</B></A> - 
Variable in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONWriterDelegate.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONWriterDelegate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/Resource.html#delete(java.lang.Class)"><B>delete(Class&lt;T&gt;)</B></A> - 
Method in interface org.apache.wink.client.<A HREF="./org/apache/wink/client/Resource.html" title="interface in org.apache.wink.client">Resource</A>
<DD>Invoke the DELETE method
<DT><A HREF="./org/apache/wink/client/Resource.html#delete(org.apache.wink.client.EntityType)"><B>delete(EntityType&lt;T&gt;)</B></A> - 
Method in interface org.apache.wink.client.<A HREF="./org/apache/wink/client/Resource.html" title="interface in org.apache.wink.client">Resource</A>
<DD>Invoke the DELETE method
<DT><A HREF="./org/apache/wink/client/Resource.html#delete()"><B>delete()</B></A> - 
Method in interface org.apache.wink.client.<A HREF="./org/apache/wink/client/Resource.html" title="interface in org.apache.wink.client">Resource</A>
<DD>Invoke the DELETE method
<DT><A HREF="./org/apache/wink/webdav/model/Activelock.html#depth"><B>depth</B></A> - 
Variable in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Activelock.html" title="class in org.apache.wink.webdav.model">Activelock</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/WebDAVHeaders.html#DEPTH"><B>DEPTH</B></A> - 
Static variable in class org.apache.wink.webdav.<A HREF="./org/apache/wink/webdav/WebDAVHeaders.html" title="class in org.apache.wink.webdav">WebDAVHeaders</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html#description"><B>description</B></A> - 
Variable in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchDescription</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/rss/RssChannel.html#description"><B>description</B></A> - 
Variable in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssChannel.html" title="class in org.apache.wink.common.model.rss">RssChannel</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/rss/RssImage.html#description"><B>description</B></A> - 
Variable in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssImage.html" title="class in org.apache.wink.common.model.rss">RssImage</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/rss/RssItem.html#description"><B>description</B></A> - 
Variable in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssItem.html" title="class in org.apache.wink.common.model.rss">RssItem</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/rss/RssTextInput.html#description"><B>description</B></A> - 
Variable in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssTextInput.html" title="class in org.apache.wink.common.model.rss">RssTextInput</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/WebDAVHeaders.html#DESTINATION"><B>DESTINATION</B></A> - 
Static variable in class org.apache.wink.webdav.<A HREF="./org/apache/wink/webdav/WebDAVHeaders.html" title="class in org.apache.wink.webdav">WebDAVHeaders</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/osgi/JaxRsFilter.html#destroy()"><B>destroy()</B></A> - 
Method in class org.apache.wink.osgi.<A HREF="./org/apache/wink/osgi/JaxRsFilter.html" title="class in org.apache.wink.osgi">JaxRsFilter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html#developer"><B>developer</B></A> - 
Variable in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchDescription</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Displayname.html" title="class in org.apache.wink.webdav.model"><B>Displayname</B></A> - Class in <A HREF="./org/apache/wink/webdav/model/package-summary.html">org.apache.wink.webdav.model</A><DD>The <code>displayname</code> Property per the WebDAV specification [RFC 4918]<DT><A HREF="./org/apache/wink/webdav/model/Displayname.html#Displayname()"><B>Displayname()</B></A> - 
Constructor for class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Displayname.html" title="class in org.apache.wink.webdav.model">Displayname</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Displayname.html#Displayname(java.lang.String)"><B>Displayname(String)</B></A> - 
Constructor for class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Displayname.html" title="class in org.apache.wink.webdav.model">Displayname</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Prop.html#displayname"><B>displayname</B></A> - 
Variable in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Prop.html" title="class in org.apache.wink.webdav.model">Prop</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Application.html#doc"><B>doc</B></A> - 
Variable in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Application.html" title="class in org.apache.wink.common.model.wadl">Application</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Doc.html" title="class in org.apache.wink.common.model.wadl"><B>Doc</B></A> - Class in <A HREF="./org/apache/wink/common/model/wadl/package-summary.html">org.apache.wink.common.model.wadl</A><DD>Java class for anonymous complex type.<DT><A HREF="./org/apache/wink/common/model/wadl/Doc.html#Doc()"><B>Doc()</B></A> - 
Constructor for class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Doc.html" title="class in org.apache.wink.common.model.wadl">Doc</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Grammars.html#doc"><B>doc</B></A> - 
Variable in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Grammars.html" title="class in org.apache.wink.common.model.wadl">Grammars</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Include.html#doc"><B>doc</B></A> - 
Variable in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Include.html" title="class in org.apache.wink.common.model.wadl">Include</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Link.html#doc"><B>doc</B></A> - 
Variable in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Link.html" title="class in org.apache.wink.common.model.wadl">Link</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Method.html#doc"><B>doc</B></A> - 
Variable in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Method.html" title="class in org.apache.wink.common.model.wadl">Method</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Option.html#doc"><B>doc</B></A> - 
Variable in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Option.html" title="class in org.apache.wink.common.model.wadl">Option</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Param.html#doc"><B>doc</B></A> - 
Variable in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Param.html" title="class in org.apache.wink.common.model.wadl">Param</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Representation.html#doc"><B>doc</B></A> - 
Variable in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Representation.html" title="class in org.apache.wink.common.model.wadl">Representation</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Request.html#doc"><B>doc</B></A> - 
Variable in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Request.html" title="class in org.apache.wink.common.model.wadl">Request</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Resource.html#doc"><B>doc</B></A> - 
Variable in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Resource.html" title="class in org.apache.wink.common.model.wadl">Resource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Resources.html#doc"><B>doc</B></A> - 
Variable in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Resources.html" title="class in org.apache.wink.common.model.wadl">Resources</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/ResourceType.html#doc"><B>doc</B></A> - 
Variable in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/ResourceType.html" title="class in org.apache.wink.common.model.wadl">ResourceType</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Response.html#doc"><B>doc</B></A> - 
Variable in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Response.html" title="class in org.apache.wink.common.model.wadl">Response</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/handlers/HandlerContext.html#doChain(org.apache.wink.client.ClientRequest)"><B>doChain(ClientRequest)</B></A> - 
Method in interface org.apache.wink.client.handlers.<A HREF="./org/apache/wink/client/handlers/HandlerContext.html" title="interface in org.apache.wink.client.handlers">HandlerContext</A>
<DD>Call the next handler on the chain.
<DT><A HREF="./org/apache/wink/server/handlers/AbstractHandlersChain.html#doChain(org.apache.wink.server.handlers.MessageContext)"><B>doChain(MessageContext)</B></A> - 
Method in class org.apache.wink.server.handlers.<A HREF="./org/apache/wink/server/handlers/AbstractHandlersChain.html" title="class in org.apache.wink.server.handlers">AbstractHandlersChain</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/server/handlers/HandlersChain.html#doChain(org.apache.wink.server.handlers.MessageContext)"><B>doChain(MessageContext)</B></A> - 
Method in interface org.apache.wink.server.handlers.<A HREF="./org/apache/wink/server/handlers/HandlersChain.html" title="interface in org.apache.wink.server.handlers">HandlersChain</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/rss/RssChannel.html#docs"><B>docs</B></A> - 
Variable in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssChannel.html" title="class in org.apache.wink.common.model.rss">RssChannel</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/osgi/JaxRsFilter.html#doFilter(javax.servlet.ServletRequest, javax.servlet.ServletResponse, javax.servlet.FilterChain)"><B>doFilter(ServletRequest, ServletResponse, FilterChain)</B></A> - 
Method in class org.apache.wink.osgi.<A HREF="./org/apache/wink/osgi/JaxRsFilter.html" title="class in org.apache.wink.osgi">JaxRsFilter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/rss/RssCategory.html#domain"><B>domain</B></A> - 
Variable in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssCategory.html" title="class in org.apache.wink.common.model.rss">RssCategory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/rss/RssCloud.html#domain"><B>domain</B></A> - 
Variable in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssCloud.html" title="class in org.apache.wink.common.model.rss">RssCloud</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Link.html#dst"><B>dst</B></A> - 
Variable in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Link.html" title="class in org.apache.wink.webdav.model">Link</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/http/HttpStatus.html#duplicate(java.lang.String)"><B>duplicate(String)</B></A> - 
Method in class org.apache.wink.common.http.<A HREF="./org/apache/wink/common/http/HttpStatus.html" title="class in org.apache.wink.common.http">HttpStatus</A>
<DD>Duplicates this status with another status message.
<DT><A HREF="./org/apache/wink/common/DynamicResource.html" title="interface in org.apache.wink.common"><B>DynamicResource</B></A> - Interface in <A HREF="./org/apache/wink/common/package-summary.html">org.apache.wink.common</A><DD>This interface replaces Path annotation to declare a resource.</DL>
<HR>
<A NAME="_E_"><!-- --></A><H2>
<B>E</B></H2>
<DL>
<DT><A HREF="./org/apache/wink/common/model/wadl/Representation.html#element"><B>element</B></A> - 
Variable in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Representation.html" title="class in org.apache.wink.common.model.wadl">Representation</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomPerson.html#email"><B>email</B></A> - 
Variable in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomPerson.html" title="class in org.apache.wink.common.model.atom">AtomPerson</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/rss/RssItem.html#enclosure"><B>enclosure</B></A> - 
Variable in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssItem.html" title="class in org.apache.wink.common.model.rss">RssItem</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONWriterDelegate.html#endArray()"><B>endArray()</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONWriterDelegate.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONWriterDelegate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONWriter.html#endArray()"><B>endArray()</B></A> - 
Method in interface org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONWriter.html" title="interface in org.apache.wink.json4j.compat">JSONWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/JSONWriter.html#endArray()"><B>endArray()</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONWriter.html" title="class in org.apache.wink.json4j">JSONWriter</A>
<DD>Method to close the current JSON Array in the stream.
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONWriterDelegate.html#endObject()"><B>endObject()</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONWriterDelegate.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONWriterDelegate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONWriter.html#endObject()"><B>endObject()</B></A> - 
Method in interface org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONWriter.html" title="interface in org.apache.wink.json4j.compat">JSONWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/JSONWriter.html#endObject()"><B>endObject()</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONWriter.html" title="class in org.apache.wink.json4j">JSONWriter</A>
<DD>Method to close a current JSON object in the stream.
<DT><A HREF="./org/apache/wink/client/EntityType.html" title="class in org.apache.wink.client"><B>EntityType</B></A>&lt;<A HREF="./org/apache/wink/client/EntityType.html" title="type parameter in EntityType">T</A>&gt; - Class in <A HREF="./org/apache/wink/client/package-summary.html">org.apache.wink.client</A><DD>The EntityType is used to specify the class type and the generic type of
 responses.<DT><A HREF="./org/apache/wink/client/EntityType.html#EntityType()"><B>EntityType()</B></A> - 
Constructor for class org.apache.wink.client.<A HREF="./org/apache/wink/client/EntityType.html" title="class in org.apache.wink.client">EntityType</A>
<DD>Construct a new entity type.
<DT><A HREF="./org/apache/wink/common/model/atom/AtomFeed.html#entry"><B>entry</B></A> - 
Variable in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomFeed.html" title="class in org.apache.wink.common.model.atom">AtomFeed</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/http/HttpStatus.html#equals(java.lang.Object)"><B>equals(Object)</B></A> - 
Method in class org.apache.wink.common.http.<A HREF="./org/apache/wink/common/http/HttpStatus.html" title="class in org.apache.wink.common.http">HttpStatus</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/synd/SyndBase.html#equals(java.lang.Object)"><B>equals(Object)</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndBase.html" title="class in org.apache.wink.common.model.synd">SyndBase</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/synd/SyndCategory.html#equals(java.lang.Object)"><B>equals(Object)</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndCategory.html" title="class in org.apache.wink.common.model.synd">SyndCategory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/synd/SyndCommonAttributes.html#equals(java.lang.Object)"><B>equals(Object)</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndCommonAttributes.html" title="class in org.apache.wink.common.model.synd">SyndCommonAttributes</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/synd/SyndContent.html#equals(java.lang.Object)"><B>equals(Object)</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndContent.html" title="class in org.apache.wink.common.model.synd">SyndContent</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/synd/SyndEntry.html#equals(java.lang.Object)"><B>equals(Object)</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndEntry.html" title="class in org.apache.wink.common.model.synd">SyndEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/synd/SyndFeed.html#equals(java.lang.Object)"><B>equals(Object)</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndFeed.html" title="class in org.apache.wink.common.model.synd">SyndFeed</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/synd/SyndGenerator.html#equals(java.lang.Object)"><B>equals(Object)</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndGenerator.html" title="class in org.apache.wink.common.model.synd">SyndGenerator</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/synd/SyndLink.html#equals(java.lang.Object)"><B>equals(Object)</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndLink.html" title="class in org.apache.wink.common.model.synd">SyndLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/synd/SyndPerson.html#equals(java.lang.Object)"><B>equals(Object)</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndPerson.html" title="class in org.apache.wink.common.model.synd">SyndPerson</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/synd/SyndSimpleContent.html#equals(java.lang.Object)"><B>equals(Object)</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndSimpleContent.html" title="class in org.apache.wink.common.model.synd">SyndSimpleContent</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/synd/SyndText.html#equals(java.lang.Object)"><B>equals(Object)</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndText.html" title="class in org.apache.wink.common.model.synd">SyndText</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/providers/json/JSONUtils.html#equals(org.json.JSONObject, org.json.JSONObject)"><B>equals(JSONObject, JSONObject)</B></A> - 
Static method in class org.apache.wink.providers.json.<A HREF="./org/apache/wink/providers/json/JSONUtils.html" title="class in org.apache.wink.providers.json">JSONUtils</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/providers/json/JSONUtils.html#equals(org.json.JSONArray, org.json.JSONArray)"><B>equals(JSONArray, JSONArray)</B></A> - 
Static method in class org.apache.wink.providers.json.<A HREF="./org/apache/wink/providers/json/JSONUtils.html" title="class in org.apache.wink.providers.json">JSONUtils</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Error.html" title="class in org.apache.wink.webdav.model"><B>Error</B></A> - Class in <A HREF="./org/apache/wink/webdav/model/package-summary.html">org.apache.wink.webdav.model</A><DD>The <code>error</code> XML element per the WebDAV specification [RFC 4918]<DT><A HREF="./org/apache/wink/webdav/model/Error.html#Error()"><B>Error()</B></A> - 
Constructor for class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Error.html" title="class in org.apache.wink.webdav.model">Error</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Propstat.html#error"><B>error</B></A> - 
Variable in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Propstat.html" title="class in org.apache.wink.webdav.model">Propstat</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Response.html#error"><B>error</B></A> - 
Variable in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Response.html" title="class in org.apache.wink.webdav.model">Response</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Exclusive.html" title="class in org.apache.wink.webdav.model"><B>Exclusive</B></A> - Class in <A HREF="./org/apache/wink/webdav/model/package-summary.html">org.apache.wink.webdav.model</A><DD>The <code>exclusive</code> XML element per the WebDAV specification [RFC
 4918]<DT><A HREF="./org/apache/wink/webdav/model/Exclusive.html#Exclusive()"><B>Exclusive()</B></A> - 
Constructor for class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Exclusive.html" title="class in org.apache.wink.webdav.model">Exclusive</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Lockscope.html#exclusive"><B>exclusive</B></A> - 
Variable in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Lockscope.html" title="class in org.apache.wink.webdav.model">Lockscope</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/http/HttpStatus.html#EXPECTATION_FAILED"><B>EXPECTATION_FAILED</B></A> - 
Static variable in class org.apache.wink.common.http.<A HREF="./org/apache/wink/common/http/HttpStatus.html" title="class in org.apache.wink.common.http">HttpStatus</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/WebDAVModelHelper.html#extractPropertyNames(org.apache.wink.webdav.model.Prop, java.util.Set)"><B>extractPropertyNames(Prop, Set&lt;QName&gt;)</B></A> - 
Static method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/WebDAVModelHelper.html" title="class in org.apache.wink.webdav.model">WebDAVModelHelper</A>
<DD>&nbsp;
</DL>
<HR>
<A NAME="_F_"><!-- --></A><H2>
<B>F</B></H2>
<DL>
<DT><A HREF="./org/apache/wink/common/http/HttpStatus.html#FAILED_DEPENDENCY"><B>FAILED_DEPENDENCY</B></A> - 
Static variable in class org.apache.wink.common.http.<A HREF="./org/apache/wink/common/http/HttpStatus.html" title="class in org.apache.wink.common.http">HttpStatus</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/app/AppCategories.html#fixed"><B>fixed</B></A> - 
Variable in class org.apache.wink.common.model.app.<A HREF="./org/apache/wink/common/model/app/AppCategories.html" title="class in org.apache.wink.common.model.app">AppCategories</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Param.html#fixed"><B>fixed</B></A> - 
Variable in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Param.html" title="class in org.apache.wink.common.model.wadl">Param</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONWriterDelegate.html#flush()"><B>flush()</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONWriterDelegate.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONWriterDelegate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONWriter.html#flush()"><B>flush()</B></A> - 
Method in interface org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONWriter.html" title="interface in org.apache.wink.json4j.compat">JSONWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/JSONWriter.html#flush()"><B>flush()</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONWriter.html" title="class in org.apache.wink.json4j">JSONWriter</A>
<DD>Method to flush the underlying writer so that all buffered content, if any, is written out.
<DT><A HREF="./org/apache/wink/logging/InMemoryHandler.html#flush()"><B>flush()</B></A> - 
Method in class org.apache.wink.logging.<A HREF="./org/apache/wink/logging/InMemoryHandler.html" title="class in org.apache.wink.logging">InMemoryHandler</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/logging/WinkLogHandler.html#flush()"><B>flush()</B></A> - 
Method in class org.apache.wink.logging.<A HREF="./org/apache/wink/logging/WinkLogHandler.html" title="class in org.apache.wink.logging">WinkLogHandler</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/ClientConfig.html#followRedirects(boolean)"><B>followRedirects(boolean)</B></A> - 
Method in class org.apache.wink.client.<A HREF="./org/apache/wink/client/ClientConfig.html" title="class in org.apache.wink.client">ClientConfig</A>
<DD>Set whether to client will automatically follow redirects
<DT><A HREF="./org/apache/wink/common/http/HttpStatus.html#FORBIDDEN"><B>FORBIDDEN</B></A> - 
Static variable in class org.apache.wink.common.http.<A HREF="./org/apache/wink/common/http/HttpStatus.html" title="class in org.apache.wink.common.http">HttpStatus</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/http/HttpStatus.html#FOUND"><B>FOUND</B></A> - 
Static variable in class org.apache.wink.common.http.<A HREF="./org/apache/wink/common/http/HttpStatus.html" title="class in org.apache.wink.common.http">HttpStatus</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/app/AppYesNo.html#fromValue(java.lang.String)"><B>fromValue(String)</B></A> - 
Static method in enum org.apache.wink.common.model.app.<A HREF="./org/apache/wink/common/model/app/AppYesNo.html" title="enum in org.apache.wink.common.model.app">AppYesNo</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/HTTPMethods.html#fromValue(java.lang.String)"><B>fromValue(String)</B></A> - 
Static method in enum org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/HTTPMethods.html" title="enum in org.apache.wink.common.model.wadl">HTTPMethods</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/ParamStyle.html#fromValue(java.lang.String)"><B>fromValue(String)</B></A> - 
Static method in enum org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/ParamStyle.html" title="enum in org.apache.wink.common.model.wadl">ParamStyle</A>
<DD>&nbsp;
</DL>
<HR>
<A NAME="_G_"><!-- --></A><H2>
<B>G</B></H2>
<DL>
<DT><A HREF="./org/apache/wink/common/http/HttpStatus.html#GATEWAY_TIMEOUT"><B>GATEWAY_TIMEOUT</B></A> - 
Static variable in class org.apache.wink.common.http.<A HREF="./org/apache/wink/common/http/HttpStatus.html" title="class in org.apache.wink.common.http">HttpStatus</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/WADLGenerator.html#generate(java.lang.String, java.util.Set)"><B>generate(String, Set&lt;Class&lt;?&gt;&gt;)</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/WADLGenerator.html" title="class in org.apache.wink.common.model.wadl">WADLGenerator</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchUrl.html#generateOpenSearchUrlTemplate()"><B>generateOpenSearchUrlTemplate()</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchUrl.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchUrl</A>
<DD>Builds OpenSearchUrl template based on base URI and the list of Open
 Search openSearchParametersParameters
<DT><A HREF="./org/apache/wink/common/model/atom/AtomFeed.html#generator"><B>generator</B></A> - 
Variable in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomFeed.html" title="class in org.apache.wink.common.model.atom">AtomFeed</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/rss/RssChannel.html#generator"><B>generator</B></A> - 
Variable in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssChannel.html" title="class in org.apache.wink.common.model.rss">RssChannel</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/Resource.html#get(java.lang.Class)"><B>get(Class&lt;T&gt;)</B></A> - 
Method in interface org.apache.wink.client.<A HREF="./org/apache/wink/client/Resource.html" title="interface in org.apache.wink.client">Resource</A>
<DD>Invoke the GET method
<DT><A HREF="./org/apache/wink/client/Resource.html#get(org.apache.wink.client.EntityType)"><B>get(EntityType&lt;T&gt;)</B></A> - 
Method in interface org.apache.wink.client.<A HREF="./org/apache/wink/client/Resource.html" title="interface in org.apache.wink.client">Resource</A>
<DD>Invoke the GET method
<DT><A HREF="./org/apache/wink/client/Resource.html#get()"><B>get()</B></A> - 
Method in interface org.apache.wink.client.<A HREF="./org/apache/wink/client/Resource.html" title="interface in org.apache.wink.client">Resource</A>
<DD>Invoke the GET method
<DT><A HREF="./org/apache/wink/jcdi/server/spi/BeanManagerResolver.html#get()"><B>get()</B></A> - 
Method in interface org.apache.wink.jcdi.server.spi.<A HREF="./org/apache/wink/jcdi/server/spi/BeanManagerResolver.html" title="interface in org.apache.wink.jcdi.server.spi">BeanManagerResolver</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONArrayDelegate.html#get(int)"><B>get(int)</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONArrayDelegate.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONArrayDelegate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONObjectDelegate.html#get(java.lang.String)"><B>get(String)</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONObjectDelegate.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONObjectDelegate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONArray.html#get(int)"><B>get(int)</B></A> - 
Method in interface org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONArray.html" title="interface in org.apache.wink.json4j.compat">JSONArray</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONObject.html#get(java.lang.String)"><B>get(String)</B></A> - 
Method in interface org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONObject.html" title="interface in org.apache.wink.json4j.compat">JSONObject</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/JSONObject.html#get(java.lang.String)"><B>get(String)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONObject.html" title="class in org.apache.wink.json4j">JSONObject</A>
<DD>Method to obtain the object value for a key.
<DT><A HREF="./org/apache/wink/common/model/app/AppCollection.html#getAccept()"><B>getAccept()</B></A> - 
Method in class org.apache.wink.common.model.app.<A HREF="./org/apache/wink/common/model/app/AppCollection.html" title="class in org.apache.wink.common.model.app">AppCollection</A>
<DD>Gets the accept list
<DT><A HREF="./org/apache/wink/webdav/model/Lockdiscovery.html#getActivelock()"><B>getActivelock()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Lockdiscovery.html" title="class in org.apache.wink.webdav.model">Lockdiscovery</A>
<DD>Gets the value of the activelock property.
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html#getAdultContent()"><B>getAdultContent()</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchDescription</A>
<DD>Gets the value of the adultContent property.
<DT><A HREF="./org/apache/wink/webdav/model/Propfind.html#getAllprop()"><B>getAllprop()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Propfind.html" title="class in org.apache.wink.webdav.model">Propfind</A>
<DD>Gets the value of the allprop property.
<DT><A HREF="./org/apache/wink/common/model/app/AppCollection.html#getAny()"><B>getAny()</B></A> - 
Method in class org.apache.wink.common.model.app.<A HREF="./org/apache/wink/common/model/app/AppCollection.html" title="class in org.apache.wink.common.model.app">AppCollection</A>
<DD>Gets extension elements
<DT><A HREF="./org/apache/wink/common/model/app/AppService.html#getAny()"><B>getAny()</B></A> - 
Method in class org.apache.wink.common.model.app.<A HREF="./org/apache/wink/common/model/app/AppService.html" title="class in org.apache.wink.common.model.app">AppService</A>
<DD>Gets extension elements
<DT><A HREF="./org/apache/wink/common/model/app/AppWorkspace.html#getAny()"><B>getAny()</B></A> - 
Method in class org.apache.wink.common.model.app.<A HREF="./org/apache/wink/common/model/app/AppWorkspace.html" title="class in org.apache.wink.common.model.app">AppWorkspace</A>
<DD>Gets extension elements.
<DT><A HREF="./org/apache/wink/common/model/atom/AtomEntry.html#getAny()"><B>getAny()</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomEntry.html" title="class in org.apache.wink.common.model.atom">AtomEntry</A>
<DD>Gets extension elements
<DT><A HREF="./org/apache/wink/common/model/atom/AtomFeed.html#getAny()"><B>getAny()</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomFeed.html" title="class in org.apache.wink.common.model.atom">AtomFeed</A>
<DD>Gets extension elements
<DT><A HREF="./org/apache/wink/common/model/atom/AtomPerson.html#getAny()"><B>getAny()</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomPerson.html" title="class in org.apache.wink.common.model.atom">AtomPerson</A>
<DD>Gets extension elements
<DT><A HREF="./org/apache/wink/common/model/rss/RssChannel.html#getAny()"><B>getAny()</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssChannel.html" title="class in org.apache.wink.common.model.rss">RssChannel</A>
<DD>Gets the value of the any property.
<DT><A HREF="./org/apache/wink/common/model/rss/RssItem.html#getAny()"><B>getAny()</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssItem.html" title="class in org.apache.wink.common.model.rss">RssItem</A>
<DD>Gets the value of the any property.
<DT><A HREF="./org/apache/wink/common/model/wadl/Application.html#getAny()"><B>getAny()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Application.html" title="class in org.apache.wink.common.model.wadl">Application</A>
<DD>Gets the value of the any property.
<DT><A HREF="./org/apache/wink/common/model/wadl/Grammars.html#getAny()"><B>getAny()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Grammars.html" title="class in org.apache.wink.common.model.wadl">Grammars</A>
<DD>Gets the value of the any property.
<DT><A HREF="./org/apache/wink/common/model/wadl/Link.html#getAny()"><B>getAny()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Link.html" title="class in org.apache.wink.common.model.wadl">Link</A>
<DD>Gets the value of the any property.
<DT><A HREF="./org/apache/wink/common/model/wadl/Method.html#getAny()"><B>getAny()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Method.html" title="class in org.apache.wink.common.model.wadl">Method</A>
<DD>Gets the value of the any property.
<DT><A HREF="./org/apache/wink/common/model/wadl/Option.html#getAny()"><B>getAny()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Option.html" title="class in org.apache.wink.common.model.wadl">Option</A>
<DD>Gets the value of the any property.
<DT><A HREF="./org/apache/wink/common/model/wadl/Param.html#getAny()"><B>getAny()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Param.html" title="class in org.apache.wink.common.model.wadl">Param</A>
<DD>Gets the value of the any property.
<DT><A HREF="./org/apache/wink/common/model/wadl/Representation.html#getAny()"><B>getAny()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Representation.html" title="class in org.apache.wink.common.model.wadl">Representation</A>
<DD>Gets the value of the any property.
<DT><A HREF="./org/apache/wink/common/model/wadl/Request.html#getAny()"><B>getAny()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Request.html" title="class in org.apache.wink.common.model.wadl">Request</A>
<DD>Gets the value of the any property.
<DT><A HREF="./org/apache/wink/common/model/wadl/Resource.html#getAny()"><B>getAny()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Resource.html" title="class in org.apache.wink.common.model.wadl">Resource</A>
<DD>Gets the value of the any property.
<DT><A HREF="./org/apache/wink/common/model/wadl/Resources.html#getAny()"><B>getAny()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Resources.html" title="class in org.apache.wink.common.model.wadl">Resources</A>
<DD>Gets the value of the any property.
<DT><A HREF="./org/apache/wink/common/model/wadl/ResourceType.html#getAny()"><B>getAny()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/ResourceType.html" title="class in org.apache.wink.common.model.wadl">ResourceType</A>
<DD>Gets the value of the any property.
<DT><A HREF="./org/apache/wink/common/model/wadl/Response.html#getAny()"><B>getAny()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Response.html" title="class in org.apache.wink.common.model.wadl">Response</A>
<DD>Gets the value of the any property.
<DT><A HREF="./org/apache/wink/webdav/model/Error.html#getAny()"><B>getAny()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Error.html" title="class in org.apache.wink.webdav.model">Error</A>
<DD>Gets the value of the any property.
<DT><A HREF="./org/apache/wink/webdav/model/Prop.html#getAny()"><B>getAny()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Prop.html" title="class in org.apache.wink.webdav.model">Prop</A>
<DD>Gets the value of the any property.
<DT><A HREF="./org/apache/wink/webdav/model/Resourcetype.html#getAny()"><B>getAny()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Resourcetype.html" title="class in org.apache.wink.webdav.model">Resourcetype</A>
<DD>Gets the value of the any property.
<DT><A HREF="./org/apache/wink/webdav/model/Prop.html#getAnyByName(javax.xml.namespace.QName)"><B>getAnyByName(QName)</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Prop.html" title="class in org.apache.wink.webdav.model">Prop</A>
<DD>Get a proprietary property as an W3C element
<DT><A HREF="./org/apache/wink/webdav/model/Prop.html#getAnyByName(java.lang.String, java.lang.String)"><B>getAnyByName(String, String)</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Prop.html" title="class in org.apache.wink.webdav.model">Prop</A>
<DD>Get a proprietary property as an W3C element
<DT><A HREF="./org/apache/wink/client/ClientConfig.html#getApplications()"><B>getApplications()</B></A> - 
Method in class org.apache.wink.client.<A HREF="./org/apache/wink/client/ClientConfig.html" title="class in org.apache.wink.client">ClientConfig</A>
<DD>Get an unmodifiable list of the applications
<DT><A HREF="./org/apache/wink/common/RuntimeContext.html#getAttribute(java.lang.Class)"><B>getAttribute(Class&lt;T&gt;)</B></A> - 
Method in interface org.apache.wink.common.<A HREF="./org/apache/wink/common/RuntimeContext.html" title="interface in org.apache.wink.common">RuntimeContext</A>
<DD>Convenience method for getting an attribute whose key that is the fully
 qualified name of a class
<DT><A HREF="./org/apache/wink/common/RuntimeContext.html#getAttributes()"><B>getAttributes()</B></A> - 
Method in interface org.apache.wink.common.<A HREF="./org/apache/wink/common/RuntimeContext.html" title="interface in org.apache.wink.common">RuntimeContext</A>
<DD>Get an attributes map to store objects in the context of a request.
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html#getAttribution()"><B>getAttribution()</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchDescription</A>
<DD>Gets the value of the attribution property.
<DT><A HREF="./org/apache/wink/common/model/rss/RssItem.html#getAuthor()"><B>getAuthor()</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssItem.html" title="class in org.apache.wink.common.model.rss">RssItem</A>
<DD>Gets the value of the author property.
<DT><A HREF="./org/apache/wink/common/model/atom/AtomEntry.html#getAuthors()"><B>getAuthors()</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomEntry.html" title="class in org.apache.wink.common.model.atom">AtomEntry</A>
<DD>Gets the value of author.
<DT><A HREF="./org/apache/wink/common/model/atom/AtomFeed.html#getAuthors()"><B>getAuthors()</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomFeed.html" title="class in org.apache.wink.common.model.atom">AtomFeed</A>
<DD>Gets the value of author.
<DT><A HREF="./org/apache/wink/common/model/synd/SyndBase.html#getAuthors()"><B>getAuthors()</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndBase.html" title="class in org.apache.wink.common.model.synd">SyndBase</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomCommonAttributes.html#getBase()"><B>getBase()</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomCommonAttributes.html" title="class in org.apache.wink.common.model.atom">AtomCommonAttributes</A>
<DD>Gets the value of base.
<DT><A HREF="./org/apache/wink/common/model/atom/AtomCommonAttributesSimpleContent.html#getBase()"><B>getBase()</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomCommonAttributesSimpleContent.html" title="class in org.apache.wink.common.model.atom">AtomCommonAttributesSimpleContent</A>
<DD>Gets the value of base.
<DT><A HREF="./org/apache/wink/common/model/synd/SyndCommonAttributes.html#getBase()"><B>getBase()</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndCommonAttributes.html" title="class in org.apache.wink.common.model.synd">SyndCommonAttributes</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Resources.html#getBase()"><B>getBase()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Resources.html" title="class in org.apache.wink.common.model.wadl">Resources</A>
<DD>Gets the value of the base property.
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchUrl.html#getBaseUri()"><B>getBaseUri()</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchUrl.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchUrl</A>
<DD>Get Search base URI
<DT><A HREF="./org/apache/wink/common/AbstractDynamicResource.html#getBeanName()"><B>getBeanName()</B></A> - 
Method in class org.apache.wink.common.<A HREF="./org/apache/wink/common/AbstractDynamicResource.html" title="class in org.apache.wink.common">AbstractDynamicResource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/DynamicResource.html#getBeanName()"><B>getBeanName()</B></A> - 
Method in interface org.apache.wink.common.<A HREF="./org/apache/wink/common/DynamicResource.html" title="interface in org.apache.wink.common">DynamicResource</A>
<DD>returns the name of the bean The bean name must be unique and usually
 should come from Spring.
<DT><A HREF="./org/apache/wink/common/model/multipart/InPart.html#getBody(java.lang.Class, java.lang.reflect.Type, javax.ws.rs.ext.Providers)"><B>getBody(Class&lt;T&gt;, Type, Providers)</B></A> - 
Method in class org.apache.wink.common.model.multipart.<A HREF="./org/apache/wink/common/model/multipart/InPart.html" title="class in org.apache.wink.common.model.multipart">InPart</A>
<DD>This method is used for deserialization of the part stream to a <T>
 object using the given providers.<br>
<DT><A HREF="./org/apache/wink/common/model/multipart/InPart.html#getBody(java.lang.Class, java.lang.reflect.Type)"><B>getBody(Class&lt;T&gt;, Type)</B></A> - 
Method in class org.apache.wink.common.model.multipart.<A HREF="./org/apache/wink/common/model/multipart/InPart.html" title="class in org.apache.wink.common.model.multipart">InPart</A>
<DD>This method is used for deserialization of the part stream.
<DT><A HREF="./org/apache/wink/common/model/multipart/OutPart.html#getBody()"><B>getBody()</B></A> - 
Method in class org.apache.wink.common.model.multipart.<A HREF="./org/apache/wink/common/model/multipart/OutPart.html" title="class in org.apache.wink.common.model.multipart">OutPart</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONArrayDelegate.html#getBoolean(int)"><B>getBoolean(int)</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONArrayDelegate.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONArrayDelegate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONObjectDelegate.html#getBoolean(java.lang.String)"><B>getBoolean(String)</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONObjectDelegate.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONObjectDelegate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONArray.html#getBoolean(int)"><B>getBoolean(int)</B></A> - 
Method in interface org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONArray.html" title="interface in org.apache.wink.json4j.compat">JSONArray</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONObject.html#getBoolean(java.lang.String)"><B>getBoolean(String)</B></A> - 
Method in interface org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONObject.html" title="interface in org.apache.wink.json4j.compat">JSONObject</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/JSONArray.html#getBoolean(int)"><B>getBoolean(int)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONArray.html" title="class in org.apache.wink.json4j">JSONArray</A>
<DD>Function to obtain a value at the specified index as a boolean.
<DT><A HREF="./org/apache/wink/json4j/JSONObject.html#getBoolean(java.lang.String)"><B>getBoolean(String)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONObject.html" title="class in org.apache.wink.json4j">JSONObject</A>
<DD>Utility method to obtain the specified key as a 'boolean' value
 Only boolean true, false, and the String true and false will return.
<DT><A HREF="./org/apache/wink/common/model/multipart/OutMultiPart.html#getBoundary()"><B>getBoundary()</B></A> - 
Method in class org.apache.wink.common.model.multipart.<A HREF="./org/apache/wink/common/model/multipart/OutMultiPart.html" title="class in org.apache.wink.common.model.multipart">OutMultiPart</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/ClientConfig.html#getBypassHostnameVerification()"><B>getBypassHostnameVerification()</B></A> - 
Method in class org.apache.wink.client.<A HREF="./org/apache/wink/client/ClientConfig.html" title="class in org.apache.wink.client">ClientConfig</A>
<DD>Get whether or not hostname verification will be bypassed for SSL
 certificates.
<DT><A HREF="./org/apache/wink/common/categories/Categories.html#getCategories()"><B>getCategories()</B></A> - 
Method in class org.apache.wink.common.categories.<A HREF="./org/apache/wink/common/categories/Categories.html" title="class in org.apache.wink.common.categories">Categories</A>
<DD>Lists the complete set of categories
<DT><A HREF="./org/apache/wink/common/categories/Categories.html#getCategories(java.lang.String)"><B>getCategories(String)</B></A> - 
Method in class org.apache.wink.common.categories.<A HREF="./org/apache/wink/common/categories/Categories.html" title="class in org.apache.wink.common.categories">Categories</A>
<DD>Lists the complete set of categories that use the specified scheme
<DT><A HREF="./org/apache/wink/common/categories/CollectionCategories.html#getCategories()"><B>getCategories()</B></A> - 
Method in interface org.apache.wink.common.categories.<A HREF="./org/apache/wink/common/categories/CollectionCategories.html" title="interface in org.apache.wink.common.categories">CollectionCategories</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/app/AppCollection.html#getCategories()"><B>getCategories()</B></A> - 
Method in class org.apache.wink.common.model.app.<A HREF="./org/apache/wink/common/model/app/AppCollection.html" title="class in org.apache.wink.common.model.app">AppCollection</A>
<DD>Gets the categories.
<DT><A HREF="./org/apache/wink/common/model/atom/AtomEntry.html#getCategories()"><B>getCategories()</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomEntry.html" title="class in org.apache.wink.common.model.atom">AtomEntry</A>
<DD>Gets the value of category.
<DT><A HREF="./org/apache/wink/common/model/atom/AtomFeed.html#getCategories()"><B>getCategories()</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomFeed.html" title="class in org.apache.wink.common.model.atom">AtomFeed</A>
<DD>Gets the value of category.
<DT><A HREF="./org/apache/wink/common/model/rss/RssChannel.html#getCategories()"><B>getCategories()</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssChannel.html" title="class in org.apache.wink.common.model.rss">RssChannel</A>
<DD>Gets the value of the category property.
<DT><A HREF="./org/apache/wink/common/model/rss/RssItem.html#getCategories()"><B>getCategories()</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssItem.html" title="class in org.apache.wink.common.model.rss">RssItem</A>
<DD>Gets the value of the category property.
<DT><A HREF="./org/apache/wink/common/model/synd/SyndBase.html#getCategories()"><B>getCategories()</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndBase.html" title="class in org.apache.wink.common.model.synd">SyndBase</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/app/AppCategories.html#getCategory()"><B>getCategory()</B></A> - 
Method in class org.apache.wink.common.model.app.<A HREF="./org/apache/wink/common/model/app/AppCategories.html" title="class in org.apache.wink.common.model.app">AppCategories</A>
<DD>Gets the value of the category property.
<DT><A HREF="./org/apache/wink/json4j/compat/JSONException.html#getCause()"><B>getCause()</B></A> - 
Method in exception org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONException.html" title="class in org.apache.wink.json4j.compat">JSONException</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/JSONException.html#getCause()"><B>getCause()</B></A> - 
Method in exception org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONException.html" title="class in org.apache.wink.json4j">JSONException</A>
<DD>Method to get the underlying cause of the JSONException
<DT><A HREF="./org/apache/wink/common/model/rss/RssFeed.html#getChannel()"><B>getChannel()</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssFeed.html" title="class in org.apache.wink.common.model.rss">RssFeed</A>
<DD>Gets the value of the channel property.
<DT><A HREF="./org/apache/wink/common/utils/ProviderUtils.html#getCharset(javax.ws.rs.core.MediaType)"><B>getCharset(MediaType)</B></A> - 
Static method in class org.apache.wink.common.utils.<A HREF="./org/apache/wink/common/utils/ProviderUtils.html" title="class in org.apache.wink.common.utils">ProviderUtils</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/utils/ProviderUtils.html#getCharset(javax.ws.rs.core.MediaType, javax.ws.rs.core.HttpHeaders)"><B>getCharset(MediaType, HttpHeaders)</B></A> - 
Static method in class org.apache.wink.common.utils.<A HREF="./org/apache/wink/common/utils/ProviderUtils.html" title="class in org.apache.wink.common.utils">ProviderUtils</A>
<DD>Returns the charset on the chosen media type or, if no charset parameter
 exists on the chosen media type, the most acceptable charset based on the
 request headers.
<DT><A HREF="./org/apache/wink/common/utils/ProviderUtils.html#getCharsetOrNull(javax.ws.rs.core.MediaType)"><B>getCharsetOrNull(MediaType)</B></A> - 
Static method in class org.apache.wink.common.utils.<A HREF="./org/apache/wink/common/utils/ProviderUtils.html" title="class in org.apache.wink.common.utils">ProviderUtils</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/WinkApplication.html#getClasses()"><B>getClasses()</B></A> - 
Method in class org.apache.wink.common.<A HREF="./org/apache/wink/common/WinkApplication.html" title="class in org.apache.wink.common">WinkApplication</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/server/utils/RegistrationUtils.InnerApplication.html#getClasses()"><B>getClasses()</B></A> - 
Method in class org.apache.wink.server.utils.<A HREF="./org/apache/wink/server/utils/RegistrationUtils.InnerApplication.html" title="class in org.apache.wink.server.utils">RegistrationUtils.InnerApplication</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/spring/Registrar.html#getClasses()"><B>getClasses()</B></A> - 
Method in class org.apache.wink.spring.<A HREF="./org/apache/wink/spring/Registrar.html" title="class in org.apache.wink.spring">Registrar</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/rss/RssChannel.html#getCloud()"><B>getCloud()</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssChannel.html" title="class in org.apache.wink.common.model.rss">RssChannel</A>
<DD>Gets the value of the cloud property.
<DT><A HREF="./org/apache/wink/common/http/HttpStatus.html#getCode()"><B>getCode()</B></A> - 
Method in class org.apache.wink.common.http.<A HREF="./org/apache/wink/common/http/HttpStatus.html" title="class in org.apache.wink.common.http">HttpStatus</A>
<DD>Gets the status code.
<DT><A HREF="./org/apache/wink/common/model/app/AppWorkspace.html#getCollection()"><B>getCollection()</B></A> - 
Method in class org.apache.wink.common.model.app.<A HREF="./org/apache/wink/common/model/app/AppWorkspace.html" title="class in org.apache.wink.common.model.app">AppWorkspace</A>
<DD>Gets the collections.
<DT><A HREF="./org/apache/wink/common/model/app/AppWorkspace.html#getCollection(java.lang.String)"><B>getCollection(String)</B></A> - 
Method in class org.apache.wink.common.model.app.<A HREF="./org/apache/wink/common/model/app/AppWorkspace.html" title="class in org.apache.wink.common.model.app">AppWorkspace</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Resourcetype.html#getCollection()"><B>getCollection()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Resourcetype.html" title="class in org.apache.wink.webdav.model">Resourcetype</A>
<DD>Gets the value of the collection property.
<DT><A HREF="./org/apache/wink/common/AbstractDynamicResource.html#getCollectionTitle()"><B>getCollectionTitle()</B></A> - 
Method in class org.apache.wink.common.<A HREF="./org/apache/wink/common/AbstractDynamicResource.html" title="class in org.apache.wink.common">AbstractDynamicResource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/DynamicResource.html#getCollectionTitle()"><B>getCollectionTitle()</B></A> - 
Method in interface org.apache.wink.common.<A HREF="./org/apache/wink/common/DynamicResource.html" title="interface in org.apache.wink.common">DynamicResource</A>
<DD>Returns the collection title.
<DT><A HREF="./org/apache/wink/common/model/rss/RssItem.html#getComments()"><B>getComments()</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssItem.html" title="class in org.apache.wink.common.model.rss">RssItem</A>
<DD>Gets the value of the comments property.
<DT><A HREF="./org/apache/wink/client/RestClient.html#getConfig()"><B>getConfig()</B></A> - 
Method in class org.apache.wink.client.<A HREF="./org/apache/wink/client/RestClient.html" title="class in org.apache.wink.client">RestClient</A>
<DD>Get the unmodifiable client configuration
<DT><A HREF="./org/apache/wink/client/AsyncHttpClientConfiguration.html#getConnectionHandler()"><B>getConnectionHandler()</B></A> - 
Method in class org.apache.wink.client.<A HREF="./org/apache/wink/client/AsyncHttpClientConfiguration.html" title="class in org.apache.wink.client">AsyncHttpClientConfiguration</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/ClientConfig.html#getConnectionHandler()"><B>getConnectionHandler()</B></A> - 
Method in class org.apache.wink.client.<A HREF="./org/apache/wink/client/ClientConfig.html" title="class in org.apache.wink.client">ClientConfig</A>
<DD>Returns the client handler that acts as the connection handler.
<DT><A HREF="./org/apache/wink/client/httpclient/ApacheHttpClientConfig.html#getConnectionHandler()"><B>getConnectionHandler()</B></A> - 
Method in class org.apache.wink.client.httpclient.<A HREF="./org/apache/wink/client/httpclient/ApacheHttpClientConfig.html" title="class in org.apache.wink.client.httpclient">ApacheHttpClientConfig</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/ClientConfig.html#getConnectTimeout()"><B>getConnectTimeout()</B></A> - 
Method in class org.apache.wink.client.<A HREF="./org/apache/wink/client/ClientConfig.html" title="class in org.apache.wink.client">ClientConfig</A>
<DD>Convenience method to get the int value of the wink.client.connectTimeout property
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html#getContact()"><B>getContact()</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchDescription</A>
<DD>Gets the value of the contact property.
<DT><A HREF="./org/apache/wink/common/model/atom/AtomEntry.html#getContent()"><B>getContent()</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomEntry.html" title="class in org.apache.wink.common.model.atom">AtomEntry</A>
<DD>Gets the content.
<DT><A HREF="./org/apache/wink/common/model/rss/RssCategory.html#getContent()"><B>getContent()</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssCategory.html" title="class in org.apache.wink.common.model.rss">RssCategory</A>
<DD>Gets the value of the content property.
<DT><A HREF="./org/apache/wink/common/model/rss/RssGuid.html#getContent()"><B>getContent()</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssGuid.html" title="class in org.apache.wink.common.model.rss">RssGuid</A>
<DD>Gets the value of the content property.
<DT><A HREF="./org/apache/wink/common/model/rss/RssSource.html#getContent()"><B>getContent()</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssSource.html" title="class in org.apache.wink.common.model.rss">RssSource</A>
<DD>Gets the value of the content property.
<DT><A HREF="./org/apache/wink/common/model/synd/SyndEntry.html#getContent()"><B>getContent()</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndEntry.html" title="class in org.apache.wink.common.model.synd">SyndEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Doc.html#getContent()"><B>getContent()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Doc.html" title="class in org.apache.wink.common.model.wadl">Doc</A>
<DD>Gets the value of the content property.
<DT><A HREF="./org/apache/wink/webdav/model/Keepalive.html#getContent()"><B>getContent()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Keepalive.html" title="class in org.apache.wink.webdav.model">Keepalive</A>
<DD>Gets the value of the content property.
<DT><A HREF="./org/apache/wink/webdav/model/Owner.html#getContent()"><B>getContent()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Owner.html" title="class in org.apache.wink.webdav.model">Owner</A>
<DD>Gets the value of the content property.
<DT><A HREF="./org/apache/wink/webdav/model/Getcontentlanguage.html" title="class in org.apache.wink.webdav.model"><B>Getcontentlanguage</B></A> - Class in <A HREF="./org/apache/wink/webdav/model/package-summary.html">org.apache.wink.webdav.model</A><DD>The <code>getcontentlanguage</code> Property per the WebDAV specification
 [RFC 4918]<DT><A HREF="./org/apache/wink/webdav/model/Getcontentlanguage.html#Getcontentlanguage()"><B>Getcontentlanguage()</B></A> - 
Constructor for class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Getcontentlanguage.html" title="class in org.apache.wink.webdav.model">Getcontentlanguage</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Getcontentlanguage.html#Getcontentlanguage(java.lang.String)"><B>Getcontentlanguage(String)</B></A> - 
Constructor for class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Getcontentlanguage.html" title="class in org.apache.wink.webdav.model">Getcontentlanguage</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Prop.html#getcontentlanguage"><B>getcontentlanguage</B></A> - 
Variable in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Prop.html" title="class in org.apache.wink.webdav.model">Prop</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Getcontentlength.html" title="class in org.apache.wink.webdav.model"><B>Getcontentlength</B></A> - Class in <A HREF="./org/apache/wink/webdav/model/package-summary.html">org.apache.wink.webdav.model</A><DD>The <code>getcontentlength</code> Property per the WebDAV specification [RFC
 4918]<DT><A HREF="./org/apache/wink/webdav/model/Getcontentlength.html#Getcontentlength()"><B>Getcontentlength()</B></A> - 
Constructor for class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Getcontentlength.html" title="class in org.apache.wink.webdav.model">Getcontentlength</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Getcontentlength.html#Getcontentlength(java.lang.String)"><B>Getcontentlength(String)</B></A> - 
Constructor for class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Getcontentlength.html" title="class in org.apache.wink.webdav.model">Getcontentlength</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Prop.html#getcontentlength"><B>getcontentlength</B></A> - 
Variable in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Prop.html" title="class in org.apache.wink.webdav.model">Prop</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/multipart/InPart.html#getContentType()"><B>getContentType()</B></A> - 
Method in class org.apache.wink.common.model.multipart.<A HREF="./org/apache/wink/common/model/multipart/InPart.html" title="class in org.apache.wink.common.model.multipart">InPart</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/multipart/OutPart.html#getContentType()"><B>getContentType()</B></A> - 
Method in class org.apache.wink.common.model.multipart.<A HREF="./org/apache/wink/common/model/multipart/OutPart.html" title="class in org.apache.wink.common.model.multipart">OutPart</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Getcontenttype.html" title="class in org.apache.wink.webdav.model"><B>Getcontenttype</B></A> - Class in <A HREF="./org/apache/wink/webdav/model/package-summary.html">org.apache.wink.webdav.model</A><DD>The <code>getcontenttype</code> Property per the WebDAV specification [RFC
 4918]<DT><A HREF="./org/apache/wink/webdav/model/Getcontenttype.html#Getcontenttype()"><B>Getcontenttype()</B></A> - 
Constructor for class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Getcontenttype.html" title="class in org.apache.wink.webdav.model">Getcontenttype</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Getcontenttype.html#Getcontenttype(java.lang.String)"><B>Getcontenttype(String)</B></A> - 
Constructor for class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Getcontenttype.html" title="class in org.apache.wink.webdav.model">Getcontenttype</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Prop.html#getcontenttype"><B>getcontenttype</B></A> - 
Variable in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Prop.html" title="class in org.apache.wink.webdav.model">Prop</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomEntry.html#getContributors()"><B>getContributors()</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomEntry.html" title="class in org.apache.wink.common.model.atom">AtomEntry</A>
<DD>Gets the value of contributor.
<DT><A HREF="./org/apache/wink/common/model/atom/AtomFeed.html#getContributors()"><B>getContributors()</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomFeed.html" title="class in org.apache.wink.common.model.atom">AtomFeed</A>
<DD>Gets the value of contributor.
<DT><A HREF="./org/apache/wink/common/model/rss/RssChannel.html#getCopyright()"><B>getCopyright()</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssChannel.html" title="class in org.apache.wink.common.model.rss">RssChannel</A>
<DD>Gets the value of the copyright property.
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchQuery.html#getCount()"><B>getCount()</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchQuery.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchQuery</A>
<DD>Gets the value of the count property.
<DT><A HREF="./org/apache/wink/webdav/model/Prop.html#getCreationdate()"><B>getCreationdate()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Prop.html" title="class in org.apache.wink.webdav.model">Prop</A>
<DD>Gets the value of the creationdate property.
<DT><A HREF="./org/apache/wink/common/model/rss/RssSkipDays.html#getDays()"><B>getDays()</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssSkipDays.html" title="class in org.apache.wink.common.model.rss">RssSkipDays</A>
<DD>Gets the value of the day property.
<DT><A HREF="./org/apache/wink/common/model/wadl/Param.html#getDefault()"><B>getDefault()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Param.html" title="class in org.apache.wink.common.model.wadl">Param</A>
<DD>Gets the value of the default property.
<DT><A HREF="./org/apache/wink/common/model/XmlFormattingOptions.html#getDefaultXmlFormattingOptions()"><B>getDefaultXmlFormattingOptions()</B></A> - 
Static method in class org.apache.wink.common.model.<A HREF="./org/apache/wink/common/model/XmlFormattingOptions.html" title="class in org.apache.wink.common.model">XmlFormattingOptions</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Activelock.html#getDepth()"><B>getDepth()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Activelock.html" title="class in org.apache.wink.webdav.model">Activelock</A>
<DD>Gets the value of the depth property.
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html#getDescription()"><B>getDescription()</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchDescription</A>
<DD>Gets the value of the description property.
<DT><A HREF="./org/apache/wink/common/model/rss/RssChannel.html#getDescription()"><B>getDescription()</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssChannel.html" title="class in org.apache.wink.common.model.rss">RssChannel</A>
<DD>Gets the value of the description property.
<DT><A HREF="./org/apache/wink/common/model/rss/RssImage.html#getDescription()"><B>getDescription()</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssImage.html" title="class in org.apache.wink.common.model.rss">RssImage</A>
<DD>Gets the value of the description property.
<DT><A HREF="./org/apache/wink/common/model/rss/RssItem.html#getDescription()"><B>getDescription()</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssItem.html" title="class in org.apache.wink.common.model.rss">RssItem</A>
<DD>Gets the value of the description property.
<DT><A HREF="./org/apache/wink/common/model/rss/RssTextInput.html#getDescription()"><B>getDescription()</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssTextInput.html" title="class in org.apache.wink.common.model.rss">RssTextInput</A>
<DD>Gets the value of the description property.
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html#getDeveloper()"><B>getDeveloper()</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchDescription</A>
<DD>Gets the value of the developer property.
<DT><A HREF="./org/apache/wink/webdav/model/Prop.html#getDisplayname()"><B>getDisplayname()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Prop.html" title="class in org.apache.wink.webdav.model">Prop</A>
<DD>Gets the value of the displayname property.
<DT><A HREF="./org/apache/wink/common/model/wadl/Application.html#getDoc()"><B>getDoc()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Application.html" title="class in org.apache.wink.common.model.wadl">Application</A>
<DD>Gets the value of the doc property.
<DT><A HREF="./org/apache/wink/common/model/wadl/Grammars.html#getDoc()"><B>getDoc()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Grammars.html" title="class in org.apache.wink.common.model.wadl">Grammars</A>
<DD>Gets the value of the doc property.
<DT><A HREF="./org/apache/wink/common/model/wadl/Include.html#getDoc()"><B>getDoc()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Include.html" title="class in org.apache.wink.common.model.wadl">Include</A>
<DD>Gets the value of the doc property.
<DT><A HREF="./org/apache/wink/common/model/wadl/Link.html#getDoc()"><B>getDoc()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Link.html" title="class in org.apache.wink.common.model.wadl">Link</A>
<DD>Gets the value of the doc property.
<DT><A HREF="./org/apache/wink/common/model/wadl/Method.html#getDoc()"><B>getDoc()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Method.html" title="class in org.apache.wink.common.model.wadl">Method</A>
<DD>Gets the value of the doc property.
<DT><A HREF="./org/apache/wink/common/model/wadl/Option.html#getDoc()"><B>getDoc()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Option.html" title="class in org.apache.wink.common.model.wadl">Option</A>
<DD>Gets the value of the doc property.
<DT><A HREF="./org/apache/wink/common/model/wadl/Param.html#getDoc()"><B>getDoc()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Param.html" title="class in org.apache.wink.common.model.wadl">Param</A>
<DD>Gets the value of the doc property.
<DT><A HREF="./org/apache/wink/common/model/wadl/Representation.html#getDoc()"><B>getDoc()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Representation.html" title="class in org.apache.wink.common.model.wadl">Representation</A>
<DD>Gets the value of the doc property.
<DT><A HREF="./org/apache/wink/common/model/wadl/Request.html#getDoc()"><B>getDoc()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Request.html" title="class in org.apache.wink.common.model.wadl">Request</A>
<DD>Gets the value of the doc property.
<DT><A HREF="./org/apache/wink/common/model/wadl/Resource.html#getDoc()"><B>getDoc()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Resource.html" title="class in org.apache.wink.common.model.wadl">Resource</A>
<DD>Gets the value of the doc property.
<DT><A HREF="./org/apache/wink/common/model/wadl/Resources.html#getDoc()"><B>getDoc()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Resources.html" title="class in org.apache.wink.common.model.wadl">Resources</A>
<DD>Gets the value of the doc property.
<DT><A HREF="./org/apache/wink/common/model/wadl/ResourceType.html#getDoc()"><B>getDoc()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/ResourceType.html" title="class in org.apache.wink.common.model.wadl">ResourceType</A>
<DD>Gets the value of the doc property.
<DT><A HREF="./org/apache/wink/common/model/wadl/Response.html#getDoc()"><B>getDoc()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Response.html" title="class in org.apache.wink.common.model.wadl">Response</A>
<DD>Gets the value of the doc property.
<DT><A HREF="./org/apache/wink/common/model/rss/RssChannel.html#getDocs()"><B>getDocs()</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssChannel.html" title="class in org.apache.wink.common.model.rss">RssChannel</A>
<DD>Gets the value of the docs property.
<DT><A HREF="./org/apache/wink/common/model/rss/RssCategory.html#getDomain()"><B>getDomain()</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssCategory.html" title="class in org.apache.wink.common.model.rss">RssCategory</A>
<DD>Gets the value of the domain property.
<DT><A HREF="./org/apache/wink/common/model/rss/RssCloud.html#getDomain()"><B>getDomain()</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssCloud.html" title="class in org.apache.wink.common.model.rss">RssCloud</A>
<DD>Gets the value of the domain property.
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONArrayDelegate.html#getDouble(int)"><B>getDouble(int)</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONArrayDelegate.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONArrayDelegate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONObjectDelegate.html#getDouble(java.lang.String)"><B>getDouble(String)</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONObjectDelegate.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONObjectDelegate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONArray.html#getDouble(int)"><B>getDouble(int)</B></A> - 
Method in interface org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONArray.html" title="interface in org.apache.wink.json4j.compat">JSONArray</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONObject.html#getDouble(java.lang.String)"><B>getDouble(String)</B></A> - 
Method in interface org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONObject.html" title="interface in org.apache.wink.json4j.compat">JSONObject</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/JSONArray.html#getDouble(int)"><B>getDouble(int)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONArray.html" title="class in org.apache.wink.json4j">JSONArray</A>
<DD>Function to obtain a value at the specified index as a double.
<DT><A HREF="./org/apache/wink/json4j/JSONObject.html#getDouble(java.lang.String)"><B>getDouble(String)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONObject.html" title="class in org.apache.wink.json4j">JSONObject</A>
<DD>Utility method to obtain the specified key as a 'double' value
 Only values of Number will be converted to double, all other types will generate an exception
 Provided for compatibility to other JSON models.
<DT><A HREF="./org/apache/wink/webdav/model/Link.html#getDst()"><B>getDst()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Link.html" title="class in org.apache.wink.webdav.model">Link</A>
<DD>Gets the value of the dst property.
<DT><A HREF="./org/apache/wink/common/model/wadl/Representation.html#getElement()"><B>getElement()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Representation.html" title="class in org.apache.wink.common.model.wadl">Representation</A>
<DD>Gets the value of the element property.
<DT><A HREF="./org/apache/wink/common/model/atom/AtomPerson.html#getEmail()"><B>getEmail()</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomPerson.html" title="class in org.apache.wink.common.model.atom">AtomPerson</A>
<DD>Gets the value of email.
<DT><A HREF="./org/apache/wink/common/model/synd/SyndPerson.html#getEmail()"><B>getEmail()</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndPerson.html" title="class in org.apache.wink.common.model.synd">SyndPerson</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/rss/RssItem.html#getEnclosure()"><B>getEnclosure()</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssItem.html" title="class in org.apache.wink.common.model.rss">RssItem</A>
<DD>Gets the value of the enclosure property.
<DT><A HREF="./org/apache/wink/client/handlers/AbstractAuthSecurityHandler.html#getEncodedString(java.lang.String, java.lang.String)"><B>getEncodedString(String, String)</B></A> - 
Static method in class org.apache.wink.client.handlers.<A HREF="./org/apache/wink/client/handlers/AbstractAuthSecurityHandler.html" title="class in org.apache.wink.client.handlers">AbstractAuthSecurityHandler</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/csv/CsvSerializer.html#getEntities()"><B>getEntities()</B></A> - 
Method in interface org.apache.wink.common.model.csv.<A HREF="./org/apache/wink/common/model/csv/CsvSerializer.html" title="interface in org.apache.wink.common.model.csv">CsvSerializer</A>
<DD>Return an iterator over the rows of the CSV as a String[].
<DT><A HREF="./org/apache/wink/common/model/csv/CsvTable.html#getEntities()"><B>getEntities()</B></A> - 
Method in class org.apache.wink.common.model.csv.<A HREF="./org/apache/wink/common/model/csv/CsvTable.html" title="class in org.apache.wink.common.model.csv">CsvTable</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/csv/MultiCsvTable.html#getEntities()"><B>getEntities()</B></A> - 
Method in class org.apache.wink.common.model.csv.<A HREF="./org/apache/wink/common/model/csv/MultiCsvTable.html" title="class in org.apache.wink.common.model.csv">MultiCsvTable</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/ClientRequest.html#getEntity()"><B>getEntity()</B></A> - 
Method in interface org.apache.wink.client.<A HREF="./org/apache/wink/client/ClientRequest.html" title="interface in org.apache.wink.client">ClientRequest</A>
<DD>Get the request entity to send with the request.
<DT><A HREF="./org/apache/wink/client/ClientResponse.html#getEntity(java.lang.Class)"><B>getEntity(Class&lt;T&gt;)</B></A> - 
Method in interface org.apache.wink.client.<A HREF="./org/apache/wink/client/ClientResponse.html" title="interface in org.apache.wink.client">ClientResponse</A>
<DD>Get the response entity.
<DT><A HREF="./org/apache/wink/client/ClientResponse.html#getEntity(org.apache.wink.client.EntityType)"><B>getEntity(EntityType&lt;T&gt;)</B></A> - 
Method in interface org.apache.wink.client.<A HREF="./org/apache/wink/client/ClientResponse.html" title="interface in org.apache.wink.client">ClientResponse</A>
<DD>Get the response entity.
<DT><A HREF="./org/apache/wink/common/model/atom/AtomFeed.html#getEntries()"><B>getEntries()</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomFeed.html" title="class in org.apache.wink.common.model.atom">AtomFeed</A>
<DD>Gets the value of entry.
<DT><A HREF="./org/apache/wink/common/model/synd/SyndFeed.html#getEntries()"><B>getEntries()</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndFeed.html" title="class in org.apache.wink.common.model.synd">SyndFeed</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/server/WebDAVResponseBuilder.CollectionPropertyHandler.html#getEntryPropertyHandler()"><B>getEntryPropertyHandler()</B></A> - 
Method in class org.apache.wink.webdav.server.<A HREF="./org/apache/wink/webdav/server/WebDAVResponseBuilder.CollectionPropertyHandler.html" title="class in org.apache.wink.webdav.server">WebDAVResponseBuilder.CollectionPropertyHandler</A>
<DD>Get the PropertyHandler that is used to set properties for the
 entries in the collection
<DT><A HREF="./org/apache/wink/webdav/model/Propstat.html#getError()"><B>getError()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Propstat.html" title="class in org.apache.wink.webdav.model">Propstat</A>
<DD>Gets the value of the error property.
<DT><A HREF="./org/apache/wink/webdav/model/Response.html#getError()"><B>getError()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Response.html" title="class in org.apache.wink.webdav.model">Response</A>
<DD>Gets the value of the error property.
<DT><A HREF="./org/apache/wink/server/handlers/HandlersFactory.html#getErrorHandlers()"><B>getErrorHandlers()</B></A> - 
Method in class org.apache.wink.server.handlers.<A HREF="./org/apache/wink/server/handlers/HandlersFactory.html" title="class in org.apache.wink.server.handlers">HandlersFactory</A>
<DD>Returns a list of user error handlers.
<DT><A HREF="./org/apache/wink/webdav/model/Getetag.html" title="class in org.apache.wink.webdav.model"><B>Getetag</B></A> - Class in <A HREF="./org/apache/wink/webdav/model/package-summary.html">org.apache.wink.webdav.model</A><DD>The <code>getetag</code> Property per the WebDAV specification [RFC 4918]<DT><A HREF="./org/apache/wink/webdav/model/Getetag.html#Getetag()"><B>Getetag()</B></A> - 
Constructor for class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Getetag.html" title="class in org.apache.wink.webdav.model">Getetag</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Getetag.html#Getetag(java.lang.String)"><B>Getetag(String)</B></A> - 
Constructor for class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Getetag.html" title="class in org.apache.wink.webdav.model">Getetag</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Prop.html#getetag"><B>getetag</B></A> - 
Variable in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Prop.html" title="class in org.apache.wink.webdav.model">Prop</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Lockscope.html#getExclusive()"><B>getExclusive()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Lockscope.html" title="class in org.apache.wink.webdav.model">Lockscope</A>
<DD>Gets the value of the exclusive property.
<DT><A HREF="./org/apache/wink/common/model/app/AppCategories.html#getFixed()"><B>getFixed()</B></A> - 
Method in class org.apache.wink.common.model.app.<A HREF="./org/apache/wink/common/model/app/AppCategories.html" title="class in org.apache.wink.common.model.app">AppCategories</A>
<DD>Gets the value of the fixed property.
<DT><A HREF="./org/apache/wink/common/model/wadl/Param.html#getFixed()"><B>getFixed()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Param.html" title="class in org.apache.wink.common.model.wadl">Param</A>
<DD>Gets the value of the fixed property.
<DT><A HREF="./org/apache/wink/webdav/model/WebDAVModelHelper.html#getFullName(javax.xml.namespace.QName)"><B>getFullName(QName)</B></A> - 
Static method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/WebDAVModelHelper.html" title="class in org.apache.wink.webdav.model">WebDAVModelHelper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomFeed.html#getGenerator()"><B>getGenerator()</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomFeed.html" title="class in org.apache.wink.common.model.atom">AtomFeed</A>
<DD>Gets the value of generator.
<DT><A HREF="./org/apache/wink/common/model/rss/RssChannel.html#getGenerator()"><B>getGenerator()</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssChannel.html" title="class in org.apache.wink.common.model.rss">RssChannel</A>
<DD>Gets the value of the generator property.
<DT><A HREF="./org/apache/wink/common/model/synd/SyndFeed.html#getGenerator()"><B>getGenerator()</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndFeed.html" title="class in org.apache.wink.common.model.synd">SyndFeed</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Prop.html#getGetcontentlanguage()"><B>getGetcontentlanguage()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Prop.html" title="class in org.apache.wink.webdav.model">Prop</A>
<DD>Gets the value of the getcontentlanguage property.
<DT><A HREF="./org/apache/wink/webdav/model/Prop.html#getGetcontentlength()"><B>getGetcontentlength()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Prop.html" title="class in org.apache.wink.webdav.model">Prop</A>
<DD>Gets the value of the getcontentlength property.
<DT><A HREF="./org/apache/wink/webdav/model/Prop.html#getGetcontenttype()"><B>getGetcontenttype()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Prop.html" title="class in org.apache.wink.webdav.model">Prop</A>
<DD>Gets the value of the getcontenttype property.
<DT><A HREF="./org/apache/wink/webdav/model/Prop.html#getGetetag()"><B>getGetetag()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Prop.html" title="class in org.apache.wink.webdav.model">Prop</A>
<DD>Gets the value of the getetag property.
<DT><A HREF="./org/apache/wink/webdav/model/Prop.html#getGetlastmodified()"><B>getGetlastmodified()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Prop.html" title="class in org.apache.wink.webdav.model">Prop</A>
<DD>Gets the value of the getlastmodified property.
<DT><A HREF="./org/apache/wink/common/model/wadl/Application.html#getGrammars()"><B>getGrammars()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Application.html" title="class in org.apache.wink.common.model.wadl">Application</A>
<DD>Gets the value of the grammars property.
<DT><A HREF="./org/apache/wink/common/model/rss/RssItem.html#getGuid()"><B>getGuid()</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssItem.html" title="class in org.apache.wink.common.model.rss">RssItem</A>
<DD>Gets the value of the guid property.
<DT><A HREF="./org/apache/wink/client/ClientConfig.html#getHandlers()"><B>getHandlers()</B></A> - 
Method in class org.apache.wink.client.<A HREF="./org/apache/wink/client/ClientConfig.html" title="class in org.apache.wink.client">ClientConfig</A>
<DD>Get an unmodifiable list of the client handlers
<DT><A HREF="./org/apache/wink/common/categories/Categories.html#getHandlingClass()"><B>getHandlingClass()</B></A> - 
Method in class org.apache.wink.common.categories.<A HREF="./org/apache/wink/common/categories/Categories.html" title="class in org.apache.wink.common.categories">Categories</A>
<DD>Get Categories Document handling Resource class
<DT><A HREF="./org/apache/wink/common/categories/Categories.html#getHandlingInstance()"><B>getHandlingInstance()</B></A> - 
Method in class org.apache.wink.common.categories.<A HREF="./org/apache/wink/common/categories/Categories.html" title="class in org.apache.wink.common.categories">Categories</A>
<DD>Get handling Bean for Categories Document
<DT><A HREF="./org/apache/wink/common/model/multipart/InPart.html#getHeaders()"><B>getHeaders()</B></A> - 
Method in class org.apache.wink.common.model.multipart.<A HREF="./org/apache/wink/common/model/multipart/InPart.html" title="class in org.apache.wink.common.model.multipart">InPart</A>
<DD>Get the part's headers
<DT><A HREF="./org/apache/wink/common/model/multipart/OutPart.html#getHeaders()"><B>getHeaders()</B></A> - 
Method in class org.apache.wink.common.model.multipart.<A HREF="./org/apache/wink/common/model/multipart/OutPart.html" title="class in org.apache.wink.common.model.multipart">OutPart</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/multipart/InPart.html#getHeadersName()"><B>getHeadersName()</B></A> - 
Method in class org.apache.wink.common.model.multipart.<A HREF="./org/apache/wink/common/model/multipart/InPart.html" title="class in org.apache.wink.common.model.multipart">InPart</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchImage.html#getHeight()"><B>getHeight()</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchImage.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchImage</A>
<DD>Gets the value of the height property.
<DT><A HREF="./org/apache/wink/common/model/rss/RssImage.html#getHeight()"><B>getHeight()</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssImage.html" title="class in org.apache.wink.common.model.rss">RssImage</A>
<DD>Gets the value of the height property.
<DT><A HREF="./org/apache/wink/common/model/rss/RssSkipHours.html#getHours()"><B>getHours()</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssSkipHours.html" title="class in org.apache.wink.common.model.rss">RssSkipHours</A>
<DD>Gets the value of the hour property.
<DT><A HREF="./org/apache/wink/common/categories/Categories.html#getHref()"><B>getHref()</B></A> - 
Method in class org.apache.wink.common.categories.<A HREF="./org/apache/wink/common/categories/Categories.html" title="class in org.apache.wink.common.categories">Categories</A>
<DD>When contained within an app:collection element, the app:categories
 element can have an href attribute whose value MUST point to an Atompub
 Categories Document.
<DT><A HREF="./org/apache/wink/common/model/app/AppCategories.html#getHref()"><B>getHref()</B></A> - 
Method in class org.apache.wink.common.model.app.<A HREF="./org/apache/wink/common/model/app/AppCategories.html" title="class in org.apache.wink.common.model.app">AppCategories</A>
<DD>Gets the value of the href property.
<DT><A HREF="./org/apache/wink/common/model/app/AppCollection.html#getHref()"><B>getHref()</B></A> - 
Method in class org.apache.wink.common.model.app.<A HREF="./org/apache/wink/common/model/app/AppCollection.html" title="class in org.apache.wink.common.model.app">AppCollection</A>
<DD>Gets the value of href.
<DT><A HREF="./org/apache/wink/common/model/atom/AtomLink.html#getHref()"><B>getHref()</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomLink.html" title="class in org.apache.wink.common.model.atom">AtomLink</A>
<DD>Gets the value of href.
<DT><A HREF="./org/apache/wink/common/model/synd/SyndLink.html#getHref()"><B>getHref()</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndLink.html" title="class in org.apache.wink.common.model.synd">SyndLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Include.html#getHref()"><B>getHref()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Include.html" title="class in org.apache.wink.common.model.wadl">Include</A>
<DD>Gets the value of the href property.
<DT><A HREF="./org/apache/wink/common/model/wadl/Method.html#getHref()"><B>getHref()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Method.html" title="class in org.apache.wink.common.model.wadl">Method</A>
<DD>Gets the value of the href property.
<DT><A HREF="./org/apache/wink/common/model/wadl/Param.html#getHref()"><B>getHref()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Param.html" title="class in org.apache.wink.common.model.wadl">Param</A>
<DD>Gets the value of the href property.
<DT><A HREF="./org/apache/wink/common/model/wadl/Representation.html#getHref()"><B>getHref()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Representation.html" title="class in org.apache.wink.common.model.wadl">Representation</A>
<DD>Gets the value of the href property.
<DT><A HREF="./org/apache/wink/webdav/model/Locktoken.html#getHref()"><B>getHref()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Locktoken.html" title="class in org.apache.wink.webdav.model">Locktoken</A>
<DD>Gets the value of the href property.
<DT><A HREF="./org/apache/wink/webdav/model/Response.html#getHref()"><B>getHref()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Response.html" title="class in org.apache.wink.webdav.model">Response</A>
<DD>Gets the value of the href property.
<DT><A HREF="./org/apache/wink/common/model/atom/AtomLink.html#getHreflang()"><B>getHreflang()</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomLink.html" title="class in org.apache.wink.common.model.atom">AtomLink</A>
<DD>Gets the value of hreflang.
<DT><A HREF="./org/apache/wink/common/model/synd/SyndLink.html#getHreflang()"><B>getHreflang()</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndLink.html" title="class in org.apache.wink.common.model.synd">SyndLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/RuntimeContext.html#getHttpHeaders()"><B>getHttpHeaders()</B></A> - 
Method in interface org.apache.wink.common.<A HREF="./org/apache/wink/common/RuntimeContext.html" title="interface in org.apache.wink.common">RuntimeContext</A>
<DD>Get the <CODE>HttpHeaders</CODE> context
<DT><A HREF="./org/apache/wink/server/handlers/MessageContext.html#getHttpMethod()"><B>getHttpMethod()</B></A> - 
Method in interface org.apache.wink.server.handlers.<A HREF="./org/apache/wink/server/handlers/MessageContext.html" title="interface in org.apache.wink.server.handlers">MessageContext</A>
<DD>Get the http method of the request.
<DT><A HREF="./org/apache/wink/common/model/atom/AtomFeed.html#getIcon()"><B>getIcon()</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomFeed.html" title="class in org.apache.wink.common.model.atom">AtomFeed</A>
<DD>Gets the value of icon.
<DT><A HREF="./org/apache/wink/common/model/synd/SyndFeed.html#getIcon()"><B>getIcon()</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndFeed.html" title="class in org.apache.wink.common.model.synd">SyndFeed</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomEntry.html#getId()"><B>getId()</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomEntry.html" title="class in org.apache.wink.common.model.atom">AtomEntry</A>
<DD>Gets the value of id.
<DT><A HREF="./org/apache/wink/common/model/atom/AtomFeed.html#getId()"><B>getId()</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomFeed.html" title="class in org.apache.wink.common.model.atom">AtomFeed</A>
<DD>Gets the value of id.
<DT><A HREF="./org/apache/wink/common/model/synd/SyndBase.html#getId()"><B>getId()</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndBase.html" title="class in org.apache.wink.common.model.synd">SyndBase</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Method.html#getId()"><B>getId()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Method.html" title="class in org.apache.wink.common.model.wadl">Method</A>
<DD>Gets the value of the id property.
<DT><A HREF="./org/apache/wink/common/model/wadl/Param.html#getId()"><B>getId()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Param.html" title="class in org.apache.wink.common.model.wadl">Param</A>
<DD>Gets the value of the id property.
<DT><A HREF="./org/apache/wink/common/model/wadl/Representation.html#getId()"><B>getId()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Representation.html" title="class in org.apache.wink.common.model.wadl">Representation</A>
<DD>Gets the value of the id property.
<DT><A HREF="./org/apache/wink/common/model/wadl/Resource.html#getId()"><B>getId()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Resource.html" title="class in org.apache.wink.common.model.wadl">Resource</A>
<DD>Gets the value of the id property.
<DT><A HREF="./org/apache/wink/common/model/wadl/ResourceType.html#getId()"><B>getId()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/ResourceType.html" title="class in org.apache.wink.common.model.wadl">ResourceType</A>
<DD>Gets the value of the id property.
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html#getImage()"><B>getImage()</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchDescription</A>
<DD>Gets the value of the image property.
<DT><A HREF="./org/apache/wink/common/model/rss/RssChannel.html#getImage()"><B>getImage()</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssChannel.html" title="class in org.apache.wink.common.model.rss">RssChannel</A>
<DD>Gets the value of the image property.
<DT><A HREF="./org/apache/wink/common/model/wadl/Grammars.html#getInclude()"><B>getInclude()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Grammars.html" title="class in org.apache.wink.common.model.wadl">Grammars</A>
<DD>Gets the value of the include property.
<DT><A HREF="./org/apache/wink/json4j/JSONArray.html#getIndex(int)"><B>getIndex(int)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONArray.html" title="class in org.apache.wink.json4j">JSONArray</A>
<DD>Function to get a JSONArray entry at a specified index.
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html#getInputEncoding()"><B>getInputEncoding()</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchDescription</A>
<DD>Gets the value of the inputEncoding property.
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchQuery.html#getInputEncoding()"><B>getInputEncoding()</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchQuery.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchQuery</A>
<DD>Gets the value of the inputEncoding property.
<DT><A HREF="./org/apache/wink/common/model/multipart/BufferedInPart.html#getInputStream()"><B>getInputStream()</B></A> - 
Method in class org.apache.wink.common.model.multipart.<A HREF="./org/apache/wink/common/model/multipart/BufferedInPart.html" title="class in org.apache.wink.common.model.multipart">BufferedInPart</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/multipart/InPart.html#getInputStream()"><B>getInputStream()</B></A> - 
Method in class org.apache.wink.common.model.multipart.<A HREF="./org/apache/wink/common/model/multipart/InPart.html" title="class in org.apache.wink.common.model.multipart">InPart</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/RuntimeContext.html#getInputStream()"><B>getInputStream()</B></A> - 
Method in interface org.apache.wink.common.<A HREF="./org/apache/wink/common/RuntimeContext.html" title="interface in org.apache.wink.common">RuntimeContext</A>
<DD>Get the input stream of the request
<DT><A HREF="./org/apache/wink/client/handlers/HandlerContext.html#getInputStreamAdapters()"><B>getInputStreamAdapters()</B></A> - 
Method in interface org.apache.wink.client.handlers.<A HREF="./org/apache/wink/client/handlers/HandlerContext.html" title="interface in org.apache.wink.client.handlers">HandlerContext</A>
<DD>Get an unmodifiable list of input stream adapters
<DT><A HREF="./org/apache/wink/common/WinkApplication.html#getInstances()"><B>getInstances()</B></A> - 
Method in class org.apache.wink.common.<A HREF="./org/apache/wink/common/WinkApplication.html" title="class in org.apache.wink.common">WinkApplication</A>
<DD>Returns instances of resources or providers.
<DT><A HREF="./org/apache/wink/server/utils/RegistrationUtils.InnerApplication.html#getInstances()"><B>getInstances()</B></A> - 
Method in class org.apache.wink.server.utils.<A HREF="./org/apache/wink/server/utils/RegistrationUtils.InnerApplication.html" title="class in org.apache.wink.server.utils">RegistrationUtils.InnerApplication</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/spring/Registrar.html#getInstances()"><B>getInstances()</B></A> - 
Method in class org.apache.wink.spring.<A HREF="./org/apache/wink/spring/Registrar.html" title="class in org.apache.wink.spring">Registrar</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONArrayDelegate.html#getInt(int)"><B>getInt(int)</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONArrayDelegate.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONArrayDelegate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONObjectDelegate.html#getInt(java.lang.String)"><B>getInt(String)</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONObjectDelegate.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONObjectDelegate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONArray.html#getInt(int)"><B>getInt(int)</B></A> - 
Method in interface org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONArray.html" title="interface in org.apache.wink.json4j.compat">JSONArray</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONObject.html#getInt(java.lang.String)"><B>getInt(String)</B></A> - 
Method in interface org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONObject.html" title="interface in org.apache.wink.json4j.compat">JSONObject</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/JSONArray.html#getInt(int)"><B>getInt(int)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONArray.html" title="class in org.apache.wink.json4j">JSONArray</A>
<DD>Function to obtain a value at the specified index as an int.
<DT><A HREF="./org/apache/wink/json4j/JSONObject.html#getInt(java.lang.String)"><B>getInt(String)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONObject.html" title="class in org.apache.wink.json4j">JSONObject</A>
<DD>Utility method to obtain the specified key as a 'int' value
 Only values of Number will be converted to integer, all other types will generate an exception.
<DT><A HREF="./org/apache/wink/common/model/rss/RssChannel.html#getItems()"><B>getItems()</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssChannel.html" title="class in org.apache.wink.common.model.rss">RssChannel</A>
<DD>Gets the value of the item property.
<DT><A HREF="./org/apache/wink/common/model/atom/AtomFeed.html#getItemsPerPage()"><B>getItemsPerPage()</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomFeed.html" title="class in org.apache.wink.common.model.atom">AtomFeed</A>
<DD>Gets the value of opensearch itemsPerPage.
<DT><A HREF="./org/apache/wink/common/model/synd/SyndFeed.html#getItemsPerPage()"><B>getItemsPerPage()</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndFeed.html" title="class in org.apache.wink.common.model.synd">SyndFeed</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/multipart/BufferedOutMultiPart.html#getIterator()"><B>getIterator()</B></A> - 
Method in class org.apache.wink.common.model.multipart.<A HREF="./org/apache/wink/common/model/multipart/BufferedOutMultiPart.html" title="class in org.apache.wink.common.model.multipart">BufferedOutMultiPart</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/multipart/OutMultiPart.html#getIterator()"><B>getIterator()</B></A> - 
Method in class org.apache.wink.common.model.multipart.<A HREF="./org/apache/wink/common/model/multipart/OutMultiPart.html" title="class in org.apache.wink.common.model.multipart">OutMultiPart</A>
<DD>An implementation of this method should return an iterator over the
 <A HREF="./org/apache/wink/common/model/multipart/OutPart.html" title="class in org.apache.wink.common.model.multipart"><CODE>OutPart</CODE></A> of the message, this iterator is used to serialized the
 message
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONArrayDelegate.html#getJSONArray(int)"><B>getJSONArray(int)</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONArrayDelegate.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONArrayDelegate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONObjectDelegate.html#getJSONArray(java.lang.String)"><B>getJSONArray(String)</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONObjectDelegate.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONObjectDelegate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONArray.html#getJSONArray(int)"><B>getJSONArray(int)</B></A> - 
Method in interface org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONArray.html" title="interface in org.apache.wink.json4j.compat">JSONArray</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONObject.html#getJSONArray(java.lang.String)"><B>getJSONArray(String)</B></A> - 
Method in interface org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONObject.html" title="interface in org.apache.wink.json4j.compat">JSONObject</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/JSONArray.html#getJSONArray(int)"><B>getJSONArray(int)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONArray.html" title="class in org.apache.wink.json4j">JSONArray</A>
<DD>Utility method to obtain the specified index as a JSONArray
 Only values that are instances of JSONArray will be returned.
<DT><A HREF="./org/apache/wink/json4j/JSONObject.html#getJSONArray(java.lang.String)"><B>getJSONArray(String)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONObject.html" title="class in org.apache.wink.json4j">JSONObject</A>
<DD>Utility method to obtain the specified key as a JSONArray
 Only values that are instances of JSONArray will be returned.
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONArrayDelegate.html#getJSONObject(int)"><B>getJSONObject(int)</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONArrayDelegate.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONArrayDelegate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONObjectDelegate.html#getJSONObject(java.lang.String)"><B>getJSONObject(String)</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONObjectDelegate.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONObjectDelegate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONArray.html#getJSONObject(int)"><B>getJSONObject(int)</B></A> - 
Method in interface org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONArray.html" title="interface in org.apache.wink.json4j.compat">JSONArray</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONObject.html#getJSONObject(java.lang.String)"><B>getJSONObject(String)</B></A> - 
Method in interface org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONObject.html" title="interface in org.apache.wink.json4j.compat">JSONObject</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/JSONArray.html#getJSONObject(int)"><B>getJSONObject(int)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONArray.html" title="class in org.apache.wink.json4j">JSONArray</A>
<DD>Utility method to obtain the specified key as a JSONObject
 Only values that are instances of JSONObject will be returned.
<DT><A HREF="./org/apache/wink/json4j/JSONObject.html#getJSONObject(java.lang.String)"><B>getJSONObject(String)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONObject.html" title="class in org.apache.wink.json4j">JSONObject</A>
<DD>Utility method to obtain the specified key as a JSONObject
 Only values that are instances of JSONObject will be returned.
<DT><A HREF="./org/apache/wink/webdav/model/Propertybehavior.html#getKeepalive()"><B>getKeepalive()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Propertybehavior.html" title="class in org.apache.wink.webdav.model">Propertybehavior</A>
<DD>Gets the value of the keepalive property.
<DT><A HREF="./org/apache/wink/common/model/atom/AtomCategory.html#getLabel()"><B>getLabel()</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomCategory.html" title="class in org.apache.wink.common.model.atom">AtomCategory</A>
<DD>Gets the value of label.
<DT><A HREF="./org/apache/wink/common/model/synd/SyndCategory.html#getLabel()"><B>getLabel()</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndCategory.html" title="class in org.apache.wink.common.model.synd">SyndCategory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomCommonAttributes.html#getLang()"><B>getLang()</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomCommonAttributes.html" title="class in org.apache.wink.common.model.atom">AtomCommonAttributes</A>
<DD>Gets the value of lang.
<DT><A HREF="./org/apache/wink/common/model/atom/AtomCommonAttributesSimpleContent.html#getLang()"><B>getLang()</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomCommonAttributesSimpleContent.html" title="class in org.apache.wink.common.model.atom">AtomCommonAttributesSimpleContent</A>
<DD>Gets the value of lang.
<DT><A HREF="./org/apache/wink/common/model/synd/SyndCommonAttributes.html#getLang()"><B>getLang()</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndCommonAttributes.html" title="class in org.apache.wink.common.model.synd">SyndCommonAttributes</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Doc.html#getLang()"><B>getLang()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Doc.html" title="class in org.apache.wink.common.model.wadl">Doc</A>
<DD>Gets the value of the lang property.
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html#getLanguage()"><B>getLanguage()</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchDescription</A>
<DD>Gets the value of the language property.
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchQuery.html#getLanguage()"><B>getLanguage()</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchQuery.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchQuery</A>
<DD>Gets the value of the language property.
<DT><A HREF="./org/apache/wink/common/model/rss/RssChannel.html#getLanguage()"><B>getLanguage()</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssChannel.html" title="class in org.apache.wink.common.model.rss">RssChannel</A>
<DD>Gets the value of the language property.
<DT><A HREF="./org/apache/wink/common/model/rss/RssChannel.html#getLastBuildDate()"><B>getLastBuildDate()</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssChannel.html" title="class in org.apache.wink.common.model.rss">RssChannel</A>
<DD>Gets the value of the lastBuildDate property.
<DT><A HREF="./org/apache/wink/webdav/model/Getlastmodified.html" title="class in org.apache.wink.webdav.model"><B>Getlastmodified</B></A> - Class in <A HREF="./org/apache/wink/webdav/model/package-summary.html">org.apache.wink.webdav.model</A><DD>The <code>getlastmodified</code> Property per the WebDAV specification [RFC
 4918]<DT><A HREF="./org/apache/wink/webdav/model/Getlastmodified.html#Getlastmodified()"><B>Getlastmodified()</B></A> - 
Constructor for class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Getlastmodified.html" title="class in org.apache.wink.webdav.model">Getlastmodified</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Getlastmodified.html#Getlastmodified(java.lang.String)"><B>Getlastmodified(String)</B></A> - 
Constructor for class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Getlastmodified.html" title="class in org.apache.wink.webdav.model">Getlastmodified</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Getlastmodified.html#Getlastmodified(java.util.Date)"><B>Getlastmodified(Date)</B></A> - 
Constructor for class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Getlastmodified.html" title="class in org.apache.wink.webdav.model">Getlastmodified</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Prop.html#getlastmodified"><B>getlastmodified</B></A> - 
Variable in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Prop.html" title="class in org.apache.wink.webdav.model">Prop</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomLink.html#getLength()"><B>getLength()</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomLink.html" title="class in org.apache.wink.common.model.atom">AtomLink</A>
<DD>Gets the value of length.
<DT><A HREF="./org/apache/wink/common/model/rss/RssEnclosure.html#getLength()"><B>getLength()</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssEnclosure.html" title="class in org.apache.wink.common.model.rss">RssEnclosure</A>
<DD>Gets the value of the length property.
<DT><A HREF="./org/apache/wink/common/model/synd/SyndLink.html#getLength()"><B>getLength()</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndLink.html" title="class in org.apache.wink.common.model.synd">SyndLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/rss/RssChannel.html#getLink()"><B>getLink()</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssChannel.html" title="class in org.apache.wink.common.model.rss">RssChannel</A>
<DD>Gets the value of the link property.
<DT><A HREF="./org/apache/wink/common/model/rss/RssImage.html#getLink()"><B>getLink()</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssImage.html" title="class in org.apache.wink.common.model.rss">RssImage</A>
<DD>Gets the value of the link property.
<DT><A HREF="./org/apache/wink/common/model/rss/RssItem.html#getLink()"><B>getLink()</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssItem.html" title="class in org.apache.wink.common.model.rss">RssItem</A>
<DD>Gets the value of the link property.
<DT><A HREF="./org/apache/wink/common/model/rss/RssTextInput.html#getLink()"><B>getLink()</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssTextInput.html" title="class in org.apache.wink.common.model.rss">RssTextInput</A>
<DD>Gets the value of the link property.
<DT><A HREF="./org/apache/wink/common/model/synd/SyndBase.html#getLink(java.lang.String)"><B>getLink(String)</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndBase.html" title="class in org.apache.wink.common.model.synd">SyndBase</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Param.html#getLink()"><B>getLink()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Param.html" title="class in org.apache.wink.common.model.wadl">Param</A>
<DD>Gets the value of the link property.
<DT><A HREF="./org/apache/wink/webdav/model/Source.html#getLink()"><B>getLink()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Source.html" title="class in org.apache.wink.webdav.model">Source</A>
<DD>Gets the value of the link property.
<DT><A HREF="./org/apache/wink/server/handlers/MessageContext.html#getLinkBuilders()"><B>getLinkBuilders()</B></A> - 
Method in interface org.apache.wink.server.handlers.<A HREF="./org/apache/wink/server/handlers/MessageContext.html" title="interface in org.apache.wink.server.handlers">MessageContext</A>
<DD>Get the <A HREF="./org/apache/wink/server/utils/LinkBuilders.html" title="interface in org.apache.wink.server.utils"><CODE>LinkBuilders</CODE></A> context
<DT><A HREF="./org/apache/wink/common/model/atom/AtomEntry.html#getLinks()"><B>getLinks()</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomEntry.html" title="class in org.apache.wink.common.model.atom">AtomEntry</A>
<DD>Gets the value of link.
<DT><A HREF="./org/apache/wink/common/model/atom/AtomEntry.html#getLinks(java.lang.String, java.lang.String)"><B>getLinks(String, String)</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomEntry.html" title="class in org.apache.wink.common.model.atom">AtomEntry</A>
<DD>Get the list of links that match the relation and type regex patterns
<DT><A HREF="./org/apache/wink/common/model/atom/AtomFeed.html#getLinks()"><B>getLinks()</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomFeed.html" title="class in org.apache.wink.common.model.atom">AtomFeed</A>
<DD>Gets the value of link.
<DT><A HREF="./org/apache/wink/common/model/synd/SyndBase.html#getLinks()"><B>getLinks()</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndBase.html" title="class in org.apache.wink.common.model.synd">SyndBase</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomEntry.html#getLinksByRelation(java.lang.String)"><B>getLinksByRelation(String)</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomEntry.html" title="class in org.apache.wink.common.model.atom">AtomEntry</A>
<DD>Get the list of links that match the type regex pattern
<DT><A HREF="./org/apache/wink/common/model/atom/AtomEntry.html#getLinksByType(java.lang.String)"><B>getLinksByType(String)</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomEntry.html" title="class in org.apache.wink.common.model.atom">AtomEntry</A>
<DD>Get the list of links that match the relation regex pattern
<DT><A HREF="./org/apache/wink/webdav/model/Prop.html#getLockdiscovery()"><B>getLockdiscovery()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Prop.html" title="class in org.apache.wink.webdav.model">Prop</A>
<DD>Gets the value of the lockdiscovery property.
<DT><A HREF="./org/apache/wink/webdav/model/Supportedlock.html#getLockentry()"><B>getLockentry()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Supportedlock.html" title="class in org.apache.wink.webdav.model">Supportedlock</A>
<DD>Gets the value of the lockentry property.
<DT><A HREF="./org/apache/wink/webdav/model/Activelock.html#getLockscope()"><B>getLockscope()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Activelock.html" title="class in org.apache.wink.webdav.model">Activelock</A>
<DD>Gets the value of the lockscope property.
<DT><A HREF="./org/apache/wink/webdav/model/Lockentry.html#getLockscope()"><B>getLockscope()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Lockentry.html" title="class in org.apache.wink.webdav.model">Lockentry</A>
<DD>Gets the value of the lockscope property.
<DT><A HREF="./org/apache/wink/webdav/model/Lockinfo.html#getLockscope()"><B>getLockscope()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Lockinfo.html" title="class in org.apache.wink.webdav.model">Lockinfo</A>
<DD>Gets the value of the lockscope property.
<DT><A HREF="./org/apache/wink/webdav/model/Activelock.html#getLocktoken()"><B>getLocktoken()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Activelock.html" title="class in org.apache.wink.webdav.model">Activelock</A>
<DD>Gets the value of the locktoken property.
<DT><A HREF="./org/apache/wink/webdav/model/Activelock.html#getLocktype()"><B>getLocktype()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Activelock.html" title="class in org.apache.wink.webdav.model">Activelock</A>
<DD>Gets the value of the locktype property.
<DT><A HREF="./org/apache/wink/webdav/model/Lockentry.html#getLocktype()"><B>getLocktype()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Lockentry.html" title="class in org.apache.wink.webdav.model">Lockentry</A>
<DD>Gets the value of the locktype property.
<DT><A HREF="./org/apache/wink/webdav/model/Lockinfo.html#getLocktype()"><B>getLocktype()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Lockinfo.html" title="class in org.apache.wink.webdav.model">Lockinfo</A>
<DD>Gets the value of the locktype property.
<DT><A HREF="./org/apache/wink/logging/WinkLogHandler.html#getLogLevel()"><B>getLogLevel()</B></A> - 
Static method in class org.apache.wink.logging.<A HREF="./org/apache/wink/logging/WinkLogHandler.html" title="class in org.apache.wink.logging">WinkLogHandler</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomFeed.html#getLogo()"><B>getLogo()</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomFeed.html" title="class in org.apache.wink.common.model.atom">AtomFeed</A>
<DD>Gets the value of logo.
<DT><A HREF="./org/apache/wink/common/model/synd/SyndFeed.html#getLogo()"><B>getLogo()</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndFeed.html" title="class in org.apache.wink.common.model.synd">SyndFeed</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONArrayDelegate.html#getLong(int)"><B>getLong(int)</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONArrayDelegate.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONArrayDelegate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONObjectDelegate.html#getLong(java.lang.String)"><B>getLong(String)</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONObjectDelegate.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONObjectDelegate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONArray.html#getLong(int)"><B>getLong(int)</B></A> - 
Method in interface org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONArray.html" title="interface in org.apache.wink.json4j.compat">JSONArray</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONObject.html#getLong(java.lang.String)"><B>getLong(String)</B></A> - 
Method in interface org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONObject.html" title="interface in org.apache.wink.json4j.compat">JSONObject</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/JSONArray.html#getLong(int)"><B>getLong(int)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONArray.html" title="class in org.apache.wink.json4j">JSONArray</A>
<DD>Function to obtain a value at the specified index as a long.
<DT><A HREF="./org/apache/wink/json4j/JSONObject.html#getLong(java.lang.String)"><B>getLong(String)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONObject.html" title="class in org.apache.wink.json4j">JSONObject</A>
<DD>Utility method to obtain the specified key as a 'long' value
 Only values of Number will be converted to long, all other types will generate an exception.
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html#getLongName()"><B>getLongName()</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchDescription</A>
<DD>Gets the value of the longName property.
<DT><A HREF="./org/apache/wink/common/model/rss/RssChannel.html#getManagingEditor()"><B>getManagingEditor()</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssChannel.html" title="class in org.apache.wink.common.model.rss">RssChannel</A>
<DD>Gets the value of the managingEditor property.
<DT><A HREF="./org/apache/wink/common/model/app/AppCategories.html#getMarshaller()"><B>getMarshaller()</B></A> - 
Static method in class org.apache.wink.common.model.app.<A HREF="./org/apache/wink/common/model/app/AppCategories.html" title="class in org.apache.wink.common.model.app">AppCategories</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/app/AppService.html#getMarshaller()"><B>getMarshaller()</B></A> - 
Static method in class org.apache.wink.common.model.app.<A HREF="./org/apache/wink/common/model/app/AppService.html" title="class in org.apache.wink.common.model.app">AppService</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomEntry.html#getMarshaller()"><B>getMarshaller()</B></A> - 
Static method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomEntry.html" title="class in org.apache.wink.common.model.atom">AtomEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomFeed.html#getMarshaller()"><B>getMarshaller()</B></A> - 
Static method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomFeed.html" title="class in org.apache.wink.common.model.atom">AtomFeed</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html#getMarshaller()"><B>getMarshaller()</B></A> - 
Static method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchDescription</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/httpclient/ApacheHttpClientConfig.html#getMaxPooledConnections()"><B>getMaxPooledConnections()</B></A> - 
Method in class org.apache.wink.client.httpclient.<A HREF="./org/apache/wink/client/httpclient/ApacheHttpClientConfig.html" title="class in org.apache.wink.client.httpclient">ApacheHttpClientConfig</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Option.html#getMediaType()"><B>getMediaType()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Option.html" title="class in org.apache.wink.common.model.wadl">Option</A>
<DD>Gets the value of the mediaType property.
<DT><A HREF="./org/apache/wink/common/model/wadl/Representation.html#getMediaType()"><B>getMediaType()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Representation.html" title="class in org.apache.wink.common.model.wadl">Representation</A>
<DD>Gets the value of the mediaType property.
<DT><A HREF="./org/apache/wink/server/handlers/MediaTypeMapperFactory.html#getMediaTypeMappings()"><B>getMediaTypeMappings()</B></A> - 
Method in class org.apache.wink.server.handlers.<A HREF="./org/apache/wink/server/handlers/MediaTypeMapperFactory.html" title="class in org.apache.wink.server.handlers">MediaTypeMapperFactory</A>
<DD>Returns a list of media type mappings that will be called to map response
 media types to preferred media types.
<DT><A HREF="./org/apache/wink/client/ClientResponse.html#getMessage()"><B>getMessage()</B></A> - 
Method in interface org.apache.wink.client.<A HREF="./org/apache/wink/client/ClientResponse.html" title="interface in org.apache.wink.client">ClientResponse</A>
<DD>Get the response message
<DT><A HREF="./org/apache/wink/common/http/HttpStatus.html#getMessage()"><B>getMessage()</B></A> - 
Method in class org.apache.wink.common.http.<A HREF="./org/apache/wink/common/http/HttpStatus.html" title="class in org.apache.wink.common.http">HttpStatus</A>
<DD>Gets the status message.
<DT><A HREF="./org/apache/wink/client/ClientRequest.html#getMethod()"><B>getMethod()</B></A> - 
Method in interface org.apache.wink.client.<A HREF="./org/apache/wink/client/ClientRequest.html" title="interface in org.apache.wink.client">ClientRequest</A>
<DD>Get the http method
<DT><A HREF="./org/apache/wink/common/model/wadl/Resource.html#getMethodOrResource()"><B>getMethodOrResource()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Resource.html" title="class in org.apache.wink.common.model.wadl">Resource</A>
<DD>Gets the value of the methodOrResource property.
<DT><A HREF="./org/apache/wink/common/model/wadl/ResourceType.html#getMethodOrResource()"><B>getMethodOrResource()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/ResourceType.html" title="class in org.apache.wink.common.model.wadl">ResourceType</A>
<DD>Gets the value of the methodOrResource property.
<DT><A HREF="./org/apache/wink/client/MockHttpServer.html#getMockHttpServerResponses()"><B>getMockHttpServerResponses()</B></A> - 
Method in class org.apache.wink.client.<A HREF="./org/apache/wink/client/MockHttpServer.html" title="class in org.apache.wink.client">MockHttpServer</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/MockHttpServer.MockHttpServerResponse.html#getMockResponseCode()"><B>getMockResponseCode()</B></A> - 
Method in class org.apache.wink.client.<A HREF="./org/apache/wink/client/MockHttpServer.MockHttpServerResponse.html" title="class in org.apache.wink.client">MockHttpServer.MockHttpServerResponse</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/MockHttpServer.MockHttpServerResponse.html#getMockResponseContent()"><B>getMockResponseContent()</B></A> - 
Method in class org.apache.wink.client.<A HREF="./org/apache/wink/client/MockHttpServer.MockHttpServerResponse.html" title="class in org.apache.wink.client">MockHttpServer.MockHttpServerResponse</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/MockHttpServer.MockHttpServerResponse.html#getMockResponseContentEchoRequest()"><B>getMockResponseContentEchoRequest()</B></A> - 
Method in class org.apache.wink.client.<A HREF="./org/apache/wink/client/MockHttpServer.MockHttpServerResponse.html" title="class in org.apache.wink.client">MockHttpServer.MockHttpServerResponse</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/MockHttpServer.MockHttpServerResponse.html#getMockResponseContentType()"><B>getMockResponseContentType()</B></A> - 
Method in class org.apache.wink.client.<A HREF="./org/apache/wink/client/MockHttpServer.MockHttpServerResponse.html" title="class in org.apache.wink.client">MockHttpServer.MockHttpServerResponse</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/MockHttpServer.MockHttpServerResponse.html#getMockResponseHeaders()"><B>getMockResponseHeaders()</B></A> - 
Method in class org.apache.wink.client.<A HREF="./org/apache/wink/client/MockHttpServer.MockHttpServerResponse.html" title="class in org.apache.wink.client">MockHttpServer.MockHttpServerResponse</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomPerson.html#getName()"><B>getName()</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomPerson.html" title="class in org.apache.wink.common.model.atom">AtomPerson</A>
<DD>Gets the value of name.
<DT><A HREF="./org/apache/wink/common/model/rss/RssTextInput.html#getName()"><B>getName()</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssTextInput.html" title="class in org.apache.wink.common.model.rss">RssTextInput</A>
<DD>Gets the value of the name property.
<DT><A HREF="./org/apache/wink/common/model/synd/SyndPerson.html#getName()"><B>getName()</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndPerson.html" title="class in org.apache.wink.common.model.synd">SyndPerson</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Method.html#getName()"><B>getName()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Method.html" title="class in org.apache.wink.common.model.wadl">Method</A>
<DD>Gets the value of the name property.
<DT><A HREF="./org/apache/wink/common/model/wadl/Param.html#getName()"><B>getName()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Param.html" title="class in org.apache.wink.common.model.wadl">Param</A>
<DD>Gets the value of the name property.
<DT><A HREF="./org/apache/wink/json4j/JSONObject.html#getNames(org.apache.wink.json4j.JSONObject)"><B>getNames(JSONObject)</B></A> - 
Static method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONObject.html" title="class in org.apache.wink.json4j">JSONObject</A>
<DD>Utility function that returns a String[] of all the names of the keys (attributes) of this JSONObject
<DT><A HREF="./org/apache/wink/webdav/model/Propertybehavior.html#getOmit()"><B>getOmit()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Propertybehavior.html" title="class in org.apache.wink.webdav.model">Propertybehavior</A>
<DD>Gets the value of the omit property.
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchUrl.html#getOpenSearchParameters()"><B>getOpenSearchParameters()</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchUrl.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchUrl</A>
<DD>Gets the value of the openSearchParameters property.
<DT><A HREF="./org/apache/wink/common/model/atom/AtomFeed.html#getOpenSearchQueries()"><B>getOpenSearchQueries()</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomFeed.html" title="class in org.apache.wink.common.model.atom">AtomFeed</A>
<DD>Gets the list of opensearch Query elements
<DT><A HREF="./org/apache/wink/common/model/wadl/Param.html#getOption()"><B>getOption()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Param.html" title="class in org.apache.wink.common.model.wadl">Param</A>
<DD>Gets the value of the option property.
<DT><A HREF="./org/apache/wink/webdav/server/WebDAVResource.html#getOptions(javax.ws.rs.core.UriInfo)"><B>getOptions(UriInfo)</B></A> - 
Method in class org.apache.wink.webdav.server.<A HREF="./org/apache/wink/webdav/server/WebDAVResource.html" title="class in org.apache.wink.webdav.server">WebDAVResource</A>
<DD>Provides a default response with two additional headers for WebDAV and MS
 compatibility.
<DT><A HREF="./org/apache/wink/webdav/server/WebDAVRootResource.html#getOptions()"><B>getOptions()</B></A> - 
Method in class org.apache.wink.webdav.server.<A HREF="./org/apache/wink/webdav/server/WebDAVRootResource.html" title="class in org.apache.wink.webdav.server">WebDAVRootResource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/server/WebDAVUtils.html#getOptions(javax.ws.rs.core.UriInfo)"><B>getOptions(UriInfo)</B></A> - 
Static method in class org.apache.wink.webdav.server.<A HREF="./org/apache/wink/webdav/server/WebDAVUtils.html" title="class in org.apache.wink.webdav.server">WebDAVUtils</A>
<DD>Provides a default response with two additional headers for WebDAV and MS
 compatibility.
<DT><A HREF="./org/apache/wink/webdav/model/Response.html#getOrCreatePropstat(int, java.lang.String, org.apache.wink.webdav.model.Error)"><B>getOrCreatePropstat(int, String, Error)</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Response.html" title="class in org.apache.wink.webdav.model">Response</A>
<DD>Get a Propstat instance contained within this response that has the
 provided criteria, or create a new Propstat instance with the provided
 information if no propstat already exists.
<DT><A HREF="./org/apache/wink/json4j/OrderedJSONObject.html#getOrder()"><B>getOrder()</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/OrderedJSONObject.html" title="class in org.apache.wink.json4j">OrderedJSONObject</A>
<DD>Method to obtain the order in which the items will be serialized.
<DT><A HREF="./org/apache/wink/common/model/atom/AtomCommonAttributes.html#getOtherAttributes()"><B>getOtherAttributes()</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomCommonAttributes.html" title="class in org.apache.wink.common.model.atom">AtomCommonAttributes</A>
<DD>Gets a map that contains attributes that aren't bound to any typed on
 this class.
<DT><A HREF="./org/apache/wink/common/model/atom/AtomCommonAttributesSimpleContent.html#getOtherAttributes()"><B>getOtherAttributes()</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomCommonAttributesSimpleContent.html" title="class in org.apache.wink.common.model.atom">AtomCommonAttributesSimpleContent</A>
<DD>Gets a map that contains attributes that aren't bound to any typed on
 this class.
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html#getOtherAttributes()"><B>getOtherAttributes()</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchDescription</A>
<DD>Gets a map that contains attributes that aren't bound to any typed
 property on this class.
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchQuery.html#getOtherAttributes()"><B>getOtherAttributes()</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchQuery.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchQuery</A>
<DD>Gets a map that contains attributes that aren't bound to any typed
 property on this class.
<DT><A HREF="./org/apache/wink/common/model/wadl/Doc.html#getOtherAttributes()"><B>getOtherAttributes()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Doc.html" title="class in org.apache.wink.common.model.wadl">Doc</A>
<DD>Gets a map that contains attributes that aren't bound to any typed property on this class.
<DT><A HREF="./org/apache/wink/common/model/wadl/Include.html#getOtherAttributes()"><B>getOtherAttributes()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Include.html" title="class in org.apache.wink.common.model.wadl">Include</A>
<DD>Gets a map that contains attributes that aren't bound to any typed property on this class.
<DT><A HREF="./org/apache/wink/common/model/wadl/Link.html#getOtherAttributes()"><B>getOtherAttributes()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Link.html" title="class in org.apache.wink.common.model.wadl">Link</A>
<DD>Gets a map that contains attributes that aren't bound to any typed property on this class.
<DT><A HREF="./org/apache/wink/common/model/wadl/Method.html#getOtherAttributes()"><B>getOtherAttributes()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Method.html" title="class in org.apache.wink.common.model.wadl">Method</A>
<DD>Gets a map that contains attributes that aren't bound to any typed property on this class.
<DT><A HREF="./org/apache/wink/common/model/wadl/Option.html#getOtherAttributes()"><B>getOtherAttributes()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Option.html" title="class in org.apache.wink.common.model.wadl">Option</A>
<DD>Gets a map that contains attributes that aren't bound to any typed property on this class.
<DT><A HREF="./org/apache/wink/common/model/wadl/Param.html#getOtherAttributes()"><B>getOtherAttributes()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Param.html" title="class in org.apache.wink.common.model.wadl">Param</A>
<DD>Gets a map that contains attributes that aren't bound to any typed property on this class.
<DT><A HREF="./org/apache/wink/common/model/wadl/Representation.html#getOtherAttributes()"><B>getOtherAttributes()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Representation.html" title="class in org.apache.wink.common.model.wadl">Representation</A>
<DD>Gets a map that contains attributes that aren't bound to any typed property on this class.
<DT><A HREF="./org/apache/wink/common/model/wadl/Request.html#getOtherAttributes()"><B>getOtherAttributes()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Request.html" title="class in org.apache.wink.common.model.wadl">Request</A>
<DD>Gets a map that contains attributes that aren't bound to any typed property on this class.
<DT><A HREF="./org/apache/wink/common/model/wadl/Resource.html#getOtherAttributes()"><B>getOtherAttributes()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Resource.html" title="class in org.apache.wink.common.model.wadl">Resource</A>
<DD>Gets a map that contains attributes that aren't bound to any typed property on this class.
<DT><A HREF="./org/apache/wink/common/model/wadl/Resources.html#getOtherAttributes()"><B>getOtherAttributes()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Resources.html" title="class in org.apache.wink.common.model.wadl">Resources</A>
<DD>Gets a map that contains attributes that aren't bound to any typed property on this class.
<DT><A HREF="./org/apache/wink/common/model/wadl/ResourceType.html#getOtherAttributes()"><B>getOtherAttributes()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/ResourceType.html" title="class in org.apache.wink.common.model.wadl">ResourceType</A>
<DD>Gets a map that contains attributes that aren't bound to any typed property on this class.
<DT><A HREF="./org/apache/wink/common/model/wadl/Response.html#getOtherAttributes()"><B>getOtherAttributes()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Response.html" title="class in org.apache.wink.common.model.wadl">Response</A>
<DD>Gets a map that contains attributes that aren't bound to any typed property on this class.
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html#getOutputEncoding()"><B>getOutputEncoding()</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchDescription</A>
<DD>Gets the value of the outputEncoding property.
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchQuery.html#getOutputEncoding()"><B>getOutputEncoding()</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchQuery.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchQuery</A>
<DD>Gets the value of the outputEncoding property.
<DT><A HREF="./org/apache/wink/common/RuntimeContext.html#getOutputStream()"><B>getOutputStream()</B></A> - 
Method in interface org.apache.wink.common.<A HREF="./org/apache/wink/common/RuntimeContext.html" title="interface in org.apache.wink.common">RuntimeContext</A>
<DD>Get the output stream of the response
<DT><A HREF="./org/apache/wink/client/handlers/HandlerContext.html#getOutputStreamAdapters()"><B>getOutputStreamAdapters()</B></A> - 
Method in interface org.apache.wink.client.handlers.<A HREF="./org/apache/wink/client/handlers/HandlerContext.html" title="interface in org.apache.wink.client.handlers">HandlerContext</A>
<DD>Get an unmodifiable list of output stream adapters
<DT><A HREF="./org/apache/wink/webdav/model/Activelock.html#getOwner()"><B>getOwner()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Activelock.html" title="class in org.apache.wink.webdav.model">Activelock</A>
<DD>Gets the value of the owner property.
<DT><A HREF="./org/apache/wink/webdav/model/Lockinfo.html#getOwner()"><B>getOwner()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Lockinfo.html" title="class in org.apache.wink.webdav.model">Lockinfo</A>
<DD>Gets the value of the owner property.
<DT><A HREF="./org/apache/wink/common/model/wadl/Representation.html#getParam()"><B>getParam()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Representation.html" title="class in org.apache.wink.common.model.wadl">Representation</A>
<DD>Gets the value of the param property.
<DT><A HREF="./org/apache/wink/common/model/wadl/Request.html#getParam()"><B>getParam()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Request.html" title="class in org.apache.wink.common.model.wadl">Request</A>
<DD>Gets the value of the param property.
<DT><A HREF="./org/apache/wink/common/model/wadl/Resource.html#getParam()"><B>getParam()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Resource.html" title="class in org.apache.wink.common.model.wadl">Resource</A>
<DD>Gets the value of the param property.
<DT><A HREF="./org/apache/wink/common/model/wadl/ResourceType.html#getParam()"><B>getParam()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/ResourceType.html" title="class in org.apache.wink.common.model.wadl">ResourceType</A>
<DD>Gets the value of the param property.
<DT><A HREF="./org/apache/wink/common/model/wadl/Response.html#getParam()"><B>getParam()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Response.html" title="class in org.apache.wink.common.model.wadl">Response</A>
<DD>Gets the value of the param property.
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchParameter.html#getParameter()"><B>getParameter()</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchParameter.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchParameter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchParameter.html#getParameterKey()"><B>getParameterKey()</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchParameter.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchParameter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/AbstractDynamicResource.html#getParent()"><B>getParent()</B></A> - 
Method in class org.apache.wink.common.<A HREF="./org/apache/wink/common/AbstractDynamicResource.html" title="class in org.apache.wink.common">AbstractDynamicResource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/DynamicResource.html#getParent()"><B>getParent()</B></A> - 
Method in interface org.apache.wink.common.<A HREF="./org/apache/wink/common/DynamicResource.html" title="interface in org.apache.wink.common">DynamicResource</A>
<DD>
 A parent of this resource, so the resulting path is a composition of the
 parent's path and this one.
<DT><A HREF="./org/apache/wink/common/model/multipart/BufferedInMultiPart.html#getParts()"><B>getParts()</B></A> - 
Method in class org.apache.wink.common.model.multipart.<A HREF="./org/apache/wink/common/model/multipart/BufferedInMultiPart.html" title="class in org.apache.wink.common.model.multipart">BufferedInMultiPart</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/AbstractDynamicResource.html#getPath()"><B>getPath()</B></A> - 
Method in class org.apache.wink.common.<A HREF="./org/apache/wink/common/AbstractDynamicResource.html" title="class in org.apache.wink.common">AbstractDynamicResource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/DynamicResource.html#getPath()"><B>getPath()</B></A> - 
Method in interface org.apache.wink.common.<A HREF="./org/apache/wink/common/DynamicResource.html" title="interface in org.apache.wink.common">DynamicResource</A>
<DD>Returns path.
<DT><A HREF="./org/apache/wink/common/model/rss/RssCloud.html#getPath()"><B>getPath()</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssCloud.html" title="class in org.apache.wink.common.model.rss">RssCloud</A>
<DD>Gets the value of the path property.
<DT><A HREF="./org/apache/wink/common/model/wadl/Param.html#getPath()"><B>getPath()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Param.html" title="class in org.apache.wink.common.model.wadl">Param</A>
<DD>Gets the value of the path property.
<DT><A HREF="./org/apache/wink/common/model/wadl/Resource.html#getPath()"><B>getPath()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Resource.html" title="class in org.apache.wink.common.model.wadl">Resource</A>
<DD>Gets the value of the path property.
<DT><A HREF="./org/apache/wink/common/model/rss/RssCloud.html#getPort()"><B>getPort()</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssCloud.html" title="class in org.apache.wink.common.model.rss">RssCloud</A>
<DD>Gets the value of the port property.
<DT><A HREF="./org/apache/wink/common/WinkApplication.html#getPriority()"><B>getPriority()</B></A> - 
Method in class org.apache.wink.common.<A HREF="./org/apache/wink/common/WinkApplication.html" title="class in org.apache.wink.common">WinkApplication</A>
<DD>Returns the Application priority.
<DT><A HREF="./org/apache/wink/server/utils/RegistrationUtils.InnerApplication.html#getPriority()"><B>getPriority()</B></A> - 
Method in class org.apache.wink.server.utils.<A HREF="./org/apache/wink/server/utils/RegistrationUtils.InnerApplication.html" title="class in org.apache.wink.server.utils">RegistrationUtils.InnerApplication</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/spring/Registrar.html#getPriority()"><B>getPriority()</B></A> - 
Method in class org.apache.wink.spring.<A HREF="./org/apache/wink/spring/Registrar.html" title="class in org.apache.wink.spring">Registrar</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Representation.html#getProfile()"><B>getProfile()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Representation.html" title="class in org.apache.wink.common.model.wadl">Representation</A>
<DD>Gets the value of the profile property.
<DT><A HREF="./org/apache/wink/webdav/model/Propfind.html#getProp()"><B>getProp()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Propfind.html" title="class in org.apache.wink.webdav.model">Propfind</A>
<DD>Gets the value of the prop property.
<DT><A HREF="./org/apache/wink/webdav/model/Propstat.html#getProp()"><B>getProp()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Propstat.html" title="class in org.apache.wink.webdav.model">Propstat</A>
<DD>Gets the value of the prop property.
<DT><A HREF="./org/apache/wink/webdav/model/Remove.html#getProp()"><B>getProp()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Remove.html" title="class in org.apache.wink.webdav.model">Remove</A>
<DD>Gets the value of the prop property.
<DT><A HREF="./org/apache/wink/webdav/model/Set.html#getProp()"><B>getProp()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Set.html" title="class in org.apache.wink.webdav.model">Set</A>
<DD>Gets the value of the prop property.
<DT><A HREF="./org/apache/wink/client/ClientConfig.html#getProperties()"><B>getProperties()</B></A> - 
Method in class org.apache.wink.client.<A HREF="./org/apache/wink/client/ClientConfig.html" title="class in org.apache.wink.client">ClientConfig</A>
<DD>Convenience method for getting all properties registered on this instance.
<DT><A HREF="./org/apache/wink/common/model/JAXBUnmarshalOptions.html#getProperties()"><B>getProperties()</B></A> - 
Method in class org.apache.wink.common.model.<A HREF="./org/apache/wink/common/model/JAXBUnmarshalOptions.html" title="class in org.apache.wink.common.model">JAXBUnmarshalOptions</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/XmlFormattingOptions.html#getProperties()"><B>getProperties()</B></A> - 
Method in class org.apache.wink.common.model.<A HREF="./org/apache/wink/common/model/XmlFormattingOptions.html" title="class in org.apache.wink.common.model">XmlFormattingOptions</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/server/handlers/MessageContext.html#getProperties()"><B>getProperties()</B></A> - 
Method in interface org.apache.wink.server.handlers.<A HREF="./org/apache/wink/server/handlers/MessageContext.html" title="interface in org.apache.wink.server.handlers">MessageContext</A>
<DD>Get the initialization properties
<DT><A HREF="./org/apache/wink/webdav/model/Propfind.html#getPropname()"><B>getPropname()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Propfind.html" title="class in org.apache.wink.webdav.model">Propfind</A>
<DD>Gets the value of the propname property.
<DT><A HREF="./org/apache/wink/webdav/model/Response.html#getPropstat()"><B>getPropstat()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Response.html" title="class in org.apache.wink.webdav.model">Response</A>
<DD>Gets the value of the propstat property.
<DT><A HREF="./org/apache/wink/webdav/model/Response.html#getPropstat(int, java.lang.String, org.apache.wink.webdav.model.Error)"><B>getPropstat(int, String, Error)</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Response.html" title="class in org.apache.wink.webdav.model">Response</A>
<DD>Get a Propstat instance contained within this response that has the
 provided criteria.
<DT><A HREF="./org/apache/wink/webdav/model/Propertyupdate.html#getPropsToRemove()"><B>getPropsToRemove()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Propertyupdate.html" title="class in org.apache.wink.webdav.model">Propertyupdate</A>
<DD>Get a list of Prop objects to remove
<DT><A HREF="./org/apache/wink/webdav/model/Propertyupdate.html#getPropsToSet()"><B>getPropsToSet()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Propertyupdate.html" title="class in org.apache.wink.webdav.model">Propertyupdate</A>
<DD>Get a list of Prop objects to be set
<DT><A HREF="./org/apache/wink/common/model/rss/RssCloud.html#getProtocol()"><B>getProtocol()</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssCloud.html" title="class in org.apache.wink.common.model.rss">RssCloud</A>
<DD>Gets the value of the protocol property.
<DT><A HREF="./org/apache/wink/common/model/multipart/InMultiPart.html#getProviders()"><B>getProviders()</B></A> - 
Method in class org.apache.wink.common.model.multipart.<A HREF="./org/apache/wink/common/model/multipart/InMultiPart.html" title="class in org.apache.wink.common.model.multipart">InMultiPart</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/multipart/InPart.html#getProviders()"><B>getProviders()</B></A> - 
Method in class org.apache.wink.common.model.multipart.<A HREF="./org/apache/wink/common/model/multipart/InPart.html" title="class in org.apache.wink.common.model.multipart">InPart</A>
<DD>get the providers that are used by the @see InPart#getBody(Class, Type)
 method for deserialization of the part
<DT><A HREF="./org/apache/wink/common/RuntimeContext.html#getProviders()"><B>getProviders()</B></A> - 
Method in interface org.apache.wink.common.<A HREF="./org/apache/wink/common/RuntimeContext.html" title="interface in org.apache.wink.common">RuntimeContext</A>
<DD>Get the <CODE>Providers</CODE> context
<DT><A HREF="./org/apache/wink/client/ClientConfig.html#getProxyHost()"><B>getProxyHost()</B></A> - 
Method in class org.apache.wink.client.<A HREF="./org/apache/wink/client/ClientConfig.html" title="class in org.apache.wink.client">ClientConfig</A>
<DD>Get the proxy host
<DT><A HREF="./org/apache/wink/client/ClientConfig.html#getProxyPort()"><B>getProxyPort()</B></A> - 
Method in class org.apache.wink.client.<A HREF="./org/apache/wink/client/ClientConfig.html" title="class in org.apache.wink.client">ClientConfig</A>
<DD>Get the proxy port
<DT><A HREF="./org/apache/wink/common/model/rss/RssChannel.html#getPubDate()"><B>getPubDate()</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssChannel.html" title="class in org.apache.wink.common.model.rss">RssChannel</A>
<DD>Gets the value of the pubDate property.
<DT><A HREF="./org/apache/wink/common/model/rss/RssItem.html#getPubDate()"><B>getPubDate()</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssItem.html" title="class in org.apache.wink.common.model.rss">RssItem</A>
<DD>Gets the value of the pubDate property.
<DT><A HREF="./org/apache/wink/common/model/atom/AtomEntry.html#getPublished()"><B>getPublished()</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomEntry.html" title="class in org.apache.wink.common.model.atom">AtomEntry</A>
<DD>Gets the value of published as a Date object
<DT><A HREF="./org/apache/wink/common/model/synd/SyndEntry.html#getPublished()"><B>getPublished()</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndEntry.html" title="class in org.apache.wink.common.model.synd">SyndEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomEntry.html#getPublishedAsTime()"><B>getPublishedAsTime()</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomEntry.html" title="class in org.apache.wink.common.model.atom">AtomEntry</A>
<DD>Gets the value of published as a long value
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html#getQuery()"><B>getQuery()</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchDescription</A>
<DD>Gets the value of the query property.
<DT><A HREF="./org/apache/wink/common/model/wadl/Resource.html#getQueryType()"><B>getQueryType()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Resource.html" title="class in org.apache.wink.common.model.wadl">Resource</A>
<DD>Gets the value of the queryType property.
<DT><A HREF="./org/apache/wink/common/model/rss/RssChannel.html#getRating()"><B>getRating()</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssChannel.html" title="class in org.apache.wink.common.model.rss">RssChannel</A>
<DD>Gets the value of the rating property.
<DT><A HREF="./org/apache/wink/client/EntityType.html#getRawClass()"><B>getRawClass()</B></A> - 
Method in class org.apache.wink.client.<A HREF="./org/apache/wink/client/EntityType.html" title="class in org.apache.wink.client">EntityType</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/ClientConfig.html#getReadTimeout()"><B>getReadTimeout()</B></A> - 
Method in class org.apache.wink.client.<A HREF="./org/apache/wink/client/ClientConfig.html" title="class in org.apache.wink.client">ClientConfig</A>
<DD>Convenience method to get the int value of the wink.client.readTimeout property
<DT><A HREF="./org/apache/wink/logging/InMemoryHandler.html#getRecords()"><B>getRecords()</B></A> - 
Method in class org.apache.wink.logging.<A HREF="./org/apache/wink/logging/InMemoryHandler.html" title="class in org.apache.wink.logging">InMemoryHandler</A>
<DD>Returns a live List of the records.
<DT><A HREF="./org/apache/wink/logging/WinkLogHandler.html#getRecords()"><B>getRecords()</B></A> - 
Static method in class org.apache.wink.logging.<A HREF="./org/apache/wink/logging/WinkLogHandler.html" title="class in org.apache.wink.logging">WinkLogHandler</A>
<DD>get all captured LogRecords.
<DT><A HREF="./org/apache/wink/logging/WinkLogHandler.html#getRecordsFilteredBy(java.lang.String)"><B>getRecordsFilteredBy(String)</B></A> - 
Static method in class org.apache.wink.logging.<A HREF="./org/apache/wink/logging/WinkLogHandler.html" title="class in org.apache.wink.logging">WinkLogHandler</A>
<DD>Get only the records associated with the logger for a particular name.
<DT><A HREF="./org/apache/wink/common/model/rss/RssCloud.html#getRegisterProcedure()"><B>getRegisterProcedure()</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssCloud.html" title="class in org.apache.wink.common.model.rss">RssCloud</A>
<DD>Gets the value of the registerProcedure property.
<DT><A HREF="./org/apache/wink/common/model/atom/AtomLink.html#getRel()"><B>getRel()</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomLink.html" title="class in org.apache.wink.common.model.atom">AtomLink</A>
<DD>Gets the value of rel.
<DT><A HREF="./org/apache/wink/common/model/synd/SyndLink.html#getRel()"><B>getRel()</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndLink.html" title="class in org.apache.wink.common.model.synd">SyndLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Link.html#getRel()"><B>getRel()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Link.html" title="class in org.apache.wink.common.model.wadl">Link</A>
<DD>Gets the value of the rel property.
<DT><A HREF="./org/apache/wink/webdav/model/Propertyupdate.html#getRemoveOrSet()"><B>getRemoveOrSet()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Propertyupdate.html" title="class in org.apache.wink.webdav.model">Propertyupdate</A>
<DD>Gets the value of the removeOrSet property.
<DT><A HREF="./org/apache/wink/common/model/wadl/Param.html#getRepeating()"><B>getRepeating()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Param.html" title="class in org.apache.wink.common.model.wadl">Param</A>
<DD>Gets the value of the repeating property.
<DT><A HREF="./org/apache/wink/common/model/wadl/Request.html#getRepresentation()"><B>getRepresentation()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Request.html" title="class in org.apache.wink.common.model.wadl">Request</A>
<DD>Gets the value of the representation property.
<DT><A HREF="./org/apache/wink/common/model/wadl/Response.html#getRepresentation()"><B>getRepresentation()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Response.html" title="class in org.apache.wink.common.model.wadl">Response</A>
<DD>Gets the value of the representation property.
<DT><A HREF="./org/apache/wink/client/ClientWebException.html#getRequest()"><B>getRequest()</B></A> - 
Method in exception org.apache.wink.client.<A HREF="./org/apache/wink/client/ClientWebException.html" title="class in org.apache.wink.client">ClientWebException</A>
<DD>Get the <A HREF="./org/apache/wink/client/ClientRequest.html" title="interface in org.apache.wink.client"><CODE>ClientRequest</CODE></A> of the invocation
<DT><A HREF="./org/apache/wink/common/model/wadl/Method.html#getRequest()"><B>getRequest()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Method.html" title="class in org.apache.wink.common.model.wadl">Method</A>
<DD>Gets the value of the request property.
<DT><A HREF="./org/apache/wink/common/RuntimeContext.html#getRequest()"><B>getRequest()</B></A> - 
Method in interface org.apache.wink.common.<A HREF="./org/apache/wink/common/RuntimeContext.html" title="interface in org.apache.wink.common">RuntimeContext</A>
<DD>Get the <CODE>Request</CODE> context
<DT><A HREF="./org/apache/wink/client/MockHttpServer.html#getRequestContent()"><B>getRequestContent()</B></A> - 
Method in class org.apache.wink.client.<A HREF="./org/apache/wink/client/MockHttpServer.html" title="class in org.apache.wink.client">MockHttpServer</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/MockHttpServer.html#getRequestContentAsString()"><B>getRequestContentAsString()</B></A> - 
Method in class org.apache.wink.client.<A HREF="./org/apache/wink/client/MockHttpServer.html" title="class in org.apache.wink.client">MockHttpServer</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/server/handlers/HandlersFactory.html#getRequestHandlers()"><B>getRequestHandlers()</B></A> - 
Method in class org.apache.wink.server.handlers.<A HREF="./org/apache/wink/server/handlers/HandlersFactory.html" title="class in org.apache.wink.server.handlers">HandlersFactory</A>
<DD>Returns a list of user request handlers.
<DT><A HREF="./org/apache/wink/client/MockHttpServer.html#getRequestHeaders()"><B>getRequestHeaders()</B></A> - 
Method in class org.apache.wink.client.<A HREF="./org/apache/wink/client/MockHttpServer.html" title="class in org.apache.wink.client">MockHttpServer</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/MockHttpServer.html#getRequestMethod()"><B>getRequestMethod()</B></A> - 
Method in class org.apache.wink.client.<A HREF="./org/apache/wink/client/MockHttpServer.html" title="class in org.apache.wink.client">MockHttpServer</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/MockHttpServer.html#getRequestUrl()"><B>getRequestUrl()</B></A> - 
Method in class org.apache.wink.client.<A HREF="./org/apache/wink/client/MockHttpServer.html" title="class in org.apache.wink.client">MockHttpServer</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Param.html#getRequired()"><B>getRequired()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Param.html" title="class in org.apache.wink.common.model.wadl">Param</A>
<DD>Gets the value of the required property.
<DT><A HREF="./org/apache/wink/common/model/wadl/Resources.html#getResource()"><B>getResource()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Resources.html" title="class in org.apache.wink.common.model.wadl">Resources</A>
<DD>Gets the value of the resource property.
<DT><A HREF="./org/apache/wink/common/model/wadl/Application.html#getResources()"><B>getResources()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Application.html" title="class in org.apache.wink.common.model.wadl">Application</A>
<DD>Gets the value of the resources property.
<DT><A HREF="./org/apache/wink/common/model/wadl/Link.html#getResourceType()"><B>getResourceType()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Link.html" title="class in org.apache.wink.common.model.wadl">Link</A>
<DD>Gets the value of the resourceType property.
<DT><A HREF="./org/apache/wink/webdav/model/Prop.html#getResourcetype()"><B>getResourcetype()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Prop.html" title="class in org.apache.wink.webdav.model">Prop</A>
<DD>Gets the value of the resourcetype property.
<DT><A HREF="./org/apache/wink/common/model/wadl/Application.html#getResourceTypeOrMethodOrRepresentation()"><B>getResourceTypeOrMethodOrRepresentation()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Application.html" title="class in org.apache.wink.common.model.wadl">Application</A>
<DD>Gets the value of the resourceTypeOrMethodOrRepresentation property.
<DT><A HREF="./org/apache/wink/client/ClientWebException.html#getResponse()"><B>getResponse()</B></A> - 
Method in exception org.apache.wink.client.<A HREF="./org/apache/wink/client/ClientWebException.html" title="class in org.apache.wink.client">ClientWebException</A>
<DD>Get the <A HREF="./org/apache/wink/client/ClientResponse.html" title="interface in org.apache.wink.client"><CODE>ClientResponse</CODE></A> of the invocation
<DT><A HREF="./org/apache/wink/common/model/wadl/Method.html#getResponse()"><B>getResponse()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Method.html" title="class in org.apache.wink.common.model.wadl">Method</A>
<DD>Gets the value of the response property.
<DT><A HREF="./org/apache/wink/webdav/model/Multistatus.html#getResponse()"><B>getResponse()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Multistatus.html" title="class in org.apache.wink.webdav.model">Multistatus</A>
<DD>Gets the value of the response property.
<DT><A HREF="./org/apache/wink/webdav/model/Multistatus.html#getResponseByHref(java.lang.String)"><B>getResponseByHref(String)</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Multistatus.html" title="class in org.apache.wink.webdav.model">Multistatus</A>
<DD>Get a the first response available that matches the provided href
<DT><A HREF="./org/apache/wink/webdav/model/Multistatus.html#getResponsedescription()"><B>getResponsedescription()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Multistatus.html" title="class in org.apache.wink.webdav.model">Multistatus</A>
<DD>Gets the value of the responsedescription property.
<DT><A HREF="./org/apache/wink/webdav/model/Propstat.html#getResponsedescription()"><B>getResponsedescription()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Propstat.html" title="class in org.apache.wink.webdav.model">Propstat</A>
<DD>Gets the value of the responsedescription property.
<DT><A HREF="./org/apache/wink/webdav/model/Response.html#getResponsedescription()"><B>getResponsedescription()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Response.html" title="class in org.apache.wink.webdav.model">Response</A>
<DD>Gets the value of the responsedescription property.
<DT><A HREF="./org/apache/wink/server/handlers/MessageContext.html#getResponseEntity()"><B>getResponseEntity()</B></A> - 
Method in interface org.apache.wink.server.handlers.<A HREF="./org/apache/wink/server/handlers/MessageContext.html" title="interface in org.apache.wink.server.handlers">MessageContext</A>
<DD>Get the response entity.
<DT><A HREF="./org/apache/wink/server/handlers/HandlersFactory.html#getResponseHandlers()"><B>getResponseHandlers()</B></A> - 
Method in class org.apache.wink.server.handlers.<A HREF="./org/apache/wink/server/handlers/HandlersFactory.html" title="class in org.apache.wink.server.handlers">HandlersFactory</A>
<DD>Returns a list of user response handlers.
<DT><A HREF="./org/apache/wink/server/handlers/MessageContext.html#getResponseMediaType()"><B>getResponseMediaType()</B></A> - 
Method in interface org.apache.wink.server.handlers.<A HREF="./org/apache/wink/server/handlers/MessageContext.html" title="interface in org.apache.wink.server.handlers">MessageContext</A>
<DD>Get the previously set response media type
<DT><A HREF="./org/apache/wink/webdav/model/Multistatus.html#getResponsesAsMapByHref()"><B>getResponsesAsMapByHref()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Multistatus.html" title="class in org.apache.wink.webdav.model">Multistatus</A>
<DD>Get a map of responses where the key is the response href
<DT><A HREF="./org/apache/wink/server/handlers/MessageContext.html#getResponseStatusCode()"><B>getResponseStatusCode()</B></A> - 
Method in interface org.apache.wink.server.handlers.<A HREF="./org/apache/wink/server/handlers/MessageContext.html" title="interface in org.apache.wink.server.handlers">MessageContext</A>
<DD>Get the response status code that was previously set
<DT><A HREF="./org/apache/wink/common/model/wadl/Link.html#getRev()"><B>getRev()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Link.html" title="class in org.apache.wink.common.model.wadl">Link</A>
<DD>Gets the value of the rev property.
<DT><A HREF="./org/apache/wink/common/model/atom/AtomFeed.html#getRights()"><B>getRights()</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomFeed.html" title="class in org.apache.wink.common.model.atom">AtomFeed</A>
<DD>Gets the value of rights.
<DT><A HREF="./org/apache/wink/common/model/synd/SyndFeed.html#getRights()"><B>getRights()</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndFeed.html" title="class in org.apache.wink.common.model.synd">SyndFeed</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchQuery.html#getRole()"><B>getRole()</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchQuery.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchQuery</A>
<DD>Gets the value of the role property.
<DT><A HREF="./org/apache/wink/common/model/csv/CsvTable.html#getRows()"><B>getRows()</B></A> - 
Method in class org.apache.wink.common.model.csv.<A HREF="./org/apache/wink/common/model/csv/CsvTable.html" title="class in org.apache.wink.common.model.csv">CsvTable</A>
<DD>Get the live list of rows contained in this table.
<DT><A HREF="./org/apache/wink/common/categories/Categories.html#getScheme()"><B>getScheme()</B></A> - 
Method in class org.apache.wink.common.categories.<A HREF="./org/apache/wink/common/categories/Categories.html" title="class in org.apache.wink.common.categories">Categories</A>
<DD>The app:categories element may specify a default scheme attribute for
 listed atom:Category elements that do not have their own scheme
 attribute.
<DT><A HREF="./org/apache/wink/common/model/app/AppCategories.html#getScheme()"><B>getScheme()</B></A> - 
Method in class org.apache.wink.common.model.app.<A HREF="./org/apache/wink/common/model/app/AppCategories.html" title="class in org.apache.wink.common.model.app">AppCategories</A>
<DD>Gets the value of the scheme property.
<DT><A HREF="./org/apache/wink/common/model/atom/AtomCategory.html#getScheme()"><B>getScheme()</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomCategory.html" title="class in org.apache.wink.common.model.atom">AtomCategory</A>
<DD>Gets the value of scheme.
<DT><A HREF="./org/apache/wink/common/model/synd/SyndCategory.html#getScheme()"><B>getScheme()</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndCategory.html" title="class in org.apache.wink.common.model.synd">SyndCategory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchQuery.html#getSearchTerms()"><B>getSearchTerms()</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchQuery.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchQuery</A>
<DD>Gets the value of the searchTerms property.
<DT><A HREF="./org/apache/wink/common/RuntimeContext.html#getSecurityContext()"><B>getSecurityContext()</B></A> - 
Method in interface org.apache.wink.common.<A HREF="./org/apache/wink/common/RuntimeContext.html" title="interface in org.apache.wink.common">RuntimeContext</A>
<DD>Get the <CODE>SecurityContext</CODE> context
<DT><A HREF="./org/apache/wink/client/MockHttpServer.html#getServerPort()"><B>getServerPort()</B></A> - 
Method in class org.apache.wink.client.<A HREF="./org/apache/wink/client/MockHttpServer.html" title="class in org.apache.wink.client">MockHttpServer</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Lockscope.html#getShared()"><B>getShared()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Lockscope.html" title="class in org.apache.wink.webdav.model">Lockscope</A>
<DD>Gets the value of the shared property.
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONArrayDelegate.html#getShort(int)"><B>getShort(int)</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONArrayDelegate.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONArrayDelegate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONObjectDelegate.html#getShort(java.lang.String)"><B>getShort(String)</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONObjectDelegate.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONObjectDelegate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONArray.html#getShort(int)"><B>getShort(int)</B></A> - 
Method in interface org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONArray.html" title="interface in org.apache.wink.json4j.compat">JSONArray</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONObject.html#getShort(java.lang.String)"><B>getShort(String)</B></A> - 
Method in interface org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONObject.html" title="interface in org.apache.wink.json4j.compat">JSONObject</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/JSONArray.html#getShort(int)"><B>getShort(int)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONArray.html" title="class in org.apache.wink.json4j">JSONArray</A>
<DD>Function to obtain a value at the specified index as a short.
<DT><A HREF="./org/apache/wink/json4j/JSONObject.html#getShort(java.lang.String)"><B>getShort(String)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONObject.html" title="class in org.apache.wink.json4j">JSONObject</A>
<DD>Utility method to obtain the specified key as a 'short' value
 Only values of Number will be converted to short, all other types will generate an exception.
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html#getShortName()"><B>getShortName()</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchDescription</A>
<DD>Gets the value of the shortName property.
<DT><A HREF="./org/apache/wink/common/model/multipart/BufferedInMultiPart.html#getSize()"><B>getSize()</B></A> - 
Method in class org.apache.wink.common.model.multipart.<A HREF="./org/apache/wink/common/model/multipart/BufferedInMultiPart.html" title="class in org.apache.wink.common.model.multipart">BufferedInMultiPart</A>
<DD>return the number of parts in the multipart message
<DT><A HREF="./org/apache/wink/providers/abdera/AbderaAtomEntryProvider.html#getSize(org.apache.abdera.model.Entry, java.lang.Class, java.lang.reflect.Type, java.lang.annotation.Annotation[], javax.ws.rs.core.MediaType)"><B>getSize(Entry, Class&lt;?&gt;, Type, Annotation[], MediaType)</B></A> - 
Method in class org.apache.wink.providers.abdera.<A HREF="./org/apache/wink/providers/abdera/AbderaAtomEntryProvider.html" title="class in org.apache.wink.providers.abdera">AbderaAtomEntryProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/providers/abdera/AbderaAtomFeedProvider.html#getSize(org.apache.abdera.model.Feed, java.lang.Class, java.lang.reflect.Type, java.lang.annotation.Annotation[], javax.ws.rs.core.MediaType)"><B>getSize(Feed, Class&lt;?&gt;, Type, Annotation[], MediaType)</B></A> - 
Method in class org.apache.wink.providers.abdera.<A HREF="./org/apache/wink/providers/abdera/AbderaAtomFeedProvider.html" title="class in org.apache.wink.providers.abdera">AbderaAtomFeedProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/providers/jettison/JettisonJAXBElementProvider.html#getSize(javax.xml.bind.JAXBElement, java.lang.Class, java.lang.reflect.Type, java.lang.annotation.Annotation[], javax.ws.rs.core.MediaType)"><B>getSize(JAXBElement&lt;?&gt;, Class&lt;?&gt;, Type, Annotation[], MediaType)</B></A> - 
Method in class org.apache.wink.providers.jettison.<A HREF="./org/apache/wink/providers/jettison/JettisonJAXBElementProvider.html" title="class in org.apache.wink.providers.jettison">JettisonJAXBElementProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/providers/jettison/JettisonJAXBProvider.html#getSize(java.lang.Object, java.lang.Class, java.lang.reflect.Type, java.lang.annotation.Annotation[], javax.ws.rs.core.MediaType)"><B>getSize(Object, Class&lt;?&gt;, Type, Annotation[], MediaType)</B></A> - 
Method in class org.apache.wink.providers.jettison.<A HREF="./org/apache/wink/providers/jettison/JettisonJAXBProvider.html" title="class in org.apache.wink.providers.jettison">JettisonJAXBProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/providers/json/JsonArrayProvider.html#getSize(org.json.JSONArray, java.lang.Class, java.lang.reflect.Type, java.lang.annotation.Annotation[], javax.ws.rs.core.MediaType)"><B>getSize(JSONArray, Class&lt;?&gt;, Type, Annotation[], MediaType)</B></A> - 
Method in class org.apache.wink.providers.json.<A HREF="./org/apache/wink/providers/json/JsonArrayProvider.html" title="class in org.apache.wink.providers.json">JsonArrayProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/providers/json/JsonJAXBProvider.html#getSize(java.lang.Object, java.lang.Class, java.lang.reflect.Type, java.lang.annotation.Annotation[], javax.ws.rs.core.MediaType)"><B>getSize(Object, Class&lt;?&gt;, Type, Annotation[], MediaType)</B></A> - 
Method in class org.apache.wink.providers.json.<A HREF="./org/apache/wink/providers/json/JsonJAXBProvider.html" title="class in org.apache.wink.providers.json">JsonJAXBProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/providers/json/JsonProvider.html#getSize(org.json.JSONObject, java.lang.Class, java.lang.reflect.Type, java.lang.annotation.Annotation[], javax.ws.rs.core.MediaType)"><B>getSize(JSONObject, Class&lt;?&gt;, Type, Annotation[], MediaType)</B></A> - 
Method in class org.apache.wink.providers.json.<A HREF="./org/apache/wink/providers/json/JsonProvider.html" title="class in org.apache.wink.providers.json">JsonProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/providers/json4j/JSON4JArrayProvider.html#getSize(org.apache.wink.json4j.JSONArray, java.lang.Class, java.lang.reflect.Type, java.lang.annotation.Annotation[], javax.ws.rs.core.MediaType)"><B>getSize(JSONArray, Class&lt;?&gt;, Type, Annotation[], MediaType)</B></A> - 
Method in class org.apache.wink.providers.json4j.<A HREF="./org/apache/wink/providers/json4j/JSON4JArrayProvider.html" title="class in org.apache.wink.providers.json4j">JSON4JArrayProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/providers/json4j/JSON4JObjectProvider.html#getSize(org.apache.wink.json4j.JSONObject, java.lang.Class, java.lang.reflect.Type, java.lang.annotation.Annotation[], javax.ws.rs.core.MediaType)"><B>getSize(JSONObject, Class&lt;?&gt;, Type, Annotation[], MediaType)</B></A> - 
Method in class org.apache.wink.providers.json4j.<A HREF="./org/apache/wink/providers/json4j/JSON4JObjectProvider.html" title="class in org.apache.wink.providers.json4j">JSON4JObjectProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/providers/protobuf/WinkProtobufProvider.html#getSize(com.google.protobuf.Message, java.lang.Class, java.lang.reflect.Type, java.lang.annotation.Annotation[], javax.ws.rs.core.MediaType)"><B>getSize(Message, Class&lt;?&gt;, Type, Annotation[], MediaType)</B></A> - 
Method in class org.apache.wink.providers.protobuf.<A HREF="./org/apache/wink/providers/protobuf/WinkProtobufProvider.html" title="class in org.apache.wink.providers.protobuf">WinkProtobufProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/providers/thrift/WinkThriftProvider.html#getSize(org.apache.thrift.TBase, java.lang.Class, java.lang.reflect.Type, java.lang.annotation.Annotation[], javax.ws.rs.core.MediaType)"><B>getSize(TBase, Class&lt;?&gt;, Type, Annotation[], MediaType)</B></A> - 
Method in class org.apache.wink.providers.thrift.<A HREF="./org/apache/wink/providers/thrift/WinkThriftProvider.html" title="class in org.apache.wink.providers.thrift">WinkThriftProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/rss/RssChannel.html#getSkipDays()"><B>getSkipDays()</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssChannel.html" title="class in org.apache.wink.common.model.rss">RssChannel</A>
<DD>Gets the value of the skipDays property.
<DT><A HREF="./org/apache/wink/common/model/rss/RssChannel.html#getSkipHours()"><B>getSkipHours()</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssChannel.html" title="class in org.apache.wink.common.model.rss">RssChannel</A>
<DD>Gets the value of the skipHours property.
<DT><A HREF="./org/apache/wink/common/model/rss/RssItem.html#getSource()"><B>getSource()</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssItem.html" title="class in org.apache.wink.common.model.rss">RssItem</A>
<DD>Gets the value of the source property.
<DT><A HREF="./org/apache/wink/common/model/atom/AtomContent.html#getSrc()"><B>getSrc()</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomContent.html" title="class in org.apache.wink.common.model.atom">AtomContent</A>
<DD>Gets the value of src.
<DT><A HREF="./org/apache/wink/common/model/synd/SyndContent.html#getSrc()"><B>getSrc()</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndContent.html" title="class in org.apache.wink.common.model.synd">SyndContent</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Link.html#getSrc()"><B>getSrc()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Link.html" title="class in org.apache.wink.webdav.model">Link</A>
<DD>Gets the value of the src property.
<DT><A HREF="./org/apache/wink/common/model/atom/AtomFeed.html#getStartIndex()"><B>getStartIndex()</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomFeed.html" title="class in org.apache.wink.common.model.atom">AtomFeed</A>
<DD>Gets the value of opensearch startIndex.
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchQuery.html#getStartIndex()"><B>getStartIndex()</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchQuery.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchQuery</A>
<DD>Gets the value of the startIndex property.
<DT><A HREF="./org/apache/wink/common/model/synd/SyndFeed.html#getStartIndex()"><B>getStartIndex()</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndFeed.html" title="class in org.apache.wink.common.model.synd">SyndFeed</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchQuery.html#getStartPage()"><B>getStartPage()</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchQuery.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchQuery</A>
<DD>Gets the value of the startPage property.
<DT><A HREF="./org/apache/wink/common/model/wadl/Response.html#getStatus()"><B>getStatus()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Response.html" title="class in org.apache.wink.common.model.wadl">Response</A>
<DD>Gets the value of the status property.
<DT><A HREF="./org/apache/wink/webdav/model/Propstat.html#getStatus()"><B>getStatus()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Propstat.html" title="class in org.apache.wink.webdav.model">Propstat</A>
<DD>Gets the value of the status property.
<DT><A HREF="./org/apache/wink/webdav/model/Response.html#getStatus()"><B>getStatus()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Response.html" title="class in org.apache.wink.webdav.model">Response</A>
<DD>Gets the value of the status property.
<DT><A HREF="./org/apache/wink/client/ClientResponse.html#getStatusCode()"><B>getStatusCode()</B></A> - 
Method in interface org.apache.wink.client.<A HREF="./org/apache/wink/client/ClientResponse.html" title="interface in org.apache.wink.client">ClientResponse</A>
<DD>Get the response status code
<DT><A HREF="./org/apache/wink/webdav/model/Propstat.html#getStatusCode()"><B>getStatusCode()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Propstat.html" title="class in org.apache.wink.webdav.model">Propstat</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/http/HttpStatus.html#getStatusLine()"><B>getStatusLine()</B></A> - 
Method in class org.apache.wink.common.http.<A HREF="./org/apache/wink/common/http/HttpStatus.html" title="class in org.apache.wink.common.http">HttpStatus</A>
<DD>Gets the status line like <code>HTTP/1.1 404 Not Found</code>.
<DT><A HREF="./org/apache/wink/client/ClientResponse.html#getStatusType()"><B>getStatusType()</B></A> - 
Method in interface org.apache.wink.client.<A HREF="./org/apache/wink/client/ClientResponse.html" title="interface in org.apache.wink.client">ClientResponse</A>
<DD>Gets the response status as a status type
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONArrayDelegate.html#getString(int)"><B>getString(int)</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONArrayDelegate.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONArrayDelegate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONObjectDelegate.html#getString(java.lang.String)"><B>getString(String)</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONObjectDelegate.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONObjectDelegate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONArray.html#getString(int)"><B>getString(int)</B></A> - 
Method in interface org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONArray.html" title="interface in org.apache.wink.json4j.compat">JSONArray</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONObject.html#getString(java.lang.String)"><B>getString(String)</B></A> - 
Method in interface org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONObject.html" title="interface in org.apache.wink.json4j.compat">JSONObject</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/JSONArray.html#getString(int)"><B>getString(int)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONArray.html" title="class in org.apache.wink.json4j">JSONArray</A>
<DD>Function to obtain a value at the specified index as a string.
<DT><A HREF="./org/apache/wink/json4j/JSONObject.html#getString(java.lang.String)"><B>getString(String)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONObject.html" title="class in org.apache.wink.json4j">JSONObject</A>
<DD>Utility method to obtain the specified key as a 'string' value
 Only values that can be easily converted to string will be returned.
<DT><A HREF="./org/apache/wink/common/model/wadl/Param.html#getStyle()"><B>getStyle()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Param.html" title="class in org.apache.wink.common.model.wadl">Param</A>
<DD>Gets the value of the style property.
<DT><A HREF="./org/apache/wink/webdav/server/WebDAVResponseBuilder.CollectionPropertyHandler.html#getSubCollection(org.apache.wink.common.model.synd.SyndEntry)"><B>getSubCollection(SyndEntry)</B></A> - 
Method in class org.apache.wink.webdav.server.<A HREF="./org/apache/wink/webdav/server/WebDAVResponseBuilder.CollectionPropertyHandler.html" title="class in org.apache.wink.webdav.server">WebDAVResponseBuilder.CollectionPropertyHandler</A>
<DD>Get the feed that this entry represents.
<DT><A HREF="./org/apache/wink/webdav/server/WebDAVResponseBuilder.CollectionPropertyHandler.html#getSubCollections(org.apache.wink.webdav.server.WebDAVResponseBuilder, org.apache.wink.common.model.synd.SyndFeed)"><B>getSubCollections(WebDAVResponseBuilder, SyndFeed)</B></A> - 
Method in class org.apache.wink.webdav.server.<A HREF="./org/apache/wink/webdav/server/WebDAVResponseBuilder.CollectionPropertyHandler.html" title="class in org.apache.wink.webdav.server">WebDAVResponseBuilder.CollectionPropertyHandler</A>
<DD>Gets the list of sub-collection feeds for a given feed.
<DT><A HREF="./org/apache/wink/common/model/atom/AtomFeed.html#getSubtitle()"><B>getSubtitle()</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomFeed.html" title="class in org.apache.wink.common.model.atom">AtomFeed</A>
<DD>Gets the value of subtitle.
<DT><A HREF="./org/apache/wink/common/model/synd/SyndFeed.html#getSubtitle()"><B>getSubtitle()</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndFeed.html" title="class in org.apache.wink.common.model.synd">SyndFeed</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomEntry.html#getSummary()"><B>getSummary()</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomEntry.html" title="class in org.apache.wink.common.model.atom">AtomEntry</A>
<DD>Gets the value of summary.
<DT><A HREF="./org/apache/wink/common/model/synd/SyndEntry.html#getSummary()"><B>getSummary()</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndEntry.html" title="class in org.apache.wink.common.model.synd">SyndEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Prop.html#getSupportedlock()"><B>getSupportedlock()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Prop.html" title="class in org.apache.wink.webdav.model">Prop</A>
<DD>Gets the value of the supportedlock property.
<DT><A HREF="./org/apache/wink/webdav/server/WebDAVRootResource.html#getSyndFeed(java.lang.String)"><B>getSyndFeed(String)</B></A> - 
Method in class org.apache.wink.webdav.server.<A HREF="./org/apache/wink/webdav/server/WebDAVRootResource.html" title="class in org.apache.wink.webdav.server">WebDAVRootResource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html#getSyndicationRight()"><B>getSyndicationRight()</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchDescription</A>
<DD>Gets the value of the syndicationRight property.
<DT><A HREF="./org/apache/wink/common/model/csv/MultiCsvTable.html#getTables()"><B>getTables()</B></A> - 
Method in class org.apache.wink.common.model.csv.<A HREF="./org/apache/wink/common/model/csv/MultiCsvTable.html" title="class in org.apache.wink.common.model.csv">MultiCsvTable</A>
<DD>Get the live list of tables contained in this multi-table csv
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html#getTags()"><B>getTags()</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchDescription</A>
<DD>Gets the value of the tags property.
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchUrl.html#getTemplate()"><B>getTemplate()</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchUrl.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchUrl</A>
<DD>Gets the value of the template property.
<DT><A HREF="./org/apache/wink/common/categories/Categories.html#getTemplateParameters()"><B>getTemplateParameters()</B></A> - 
Method in class org.apache.wink.common.categories.<A HREF="./org/apache/wink/common/categories/Categories.html" title="class in org.apache.wink.common.categories">Categories</A>
<DD>Get Uri Template Variables
<DT><A HREF="./org/apache/wink/common/model/atom/AtomCategory.html#getTerm()"><B>getTerm()</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomCategory.html" title="class in org.apache.wink.common.model.atom">AtomCategory</A>
<DD>Gets the value of term.
<DT><A HREF="./org/apache/wink/common/model/synd/SyndCategory.html#getTerm()"><B>getTerm()</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndCategory.html" title="class in org.apache.wink.common.model.synd">SyndCategory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/rss/RssChannel.html#getTextInput()"><B>getTextInput()</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssChannel.html" title="class in org.apache.wink.common.model.rss">RssChannel</A>
<DD>Gets the value of the textInput property.
<DT><A HREF="./org/apache/wink/webdav/model/Activelock.html#getTimeout()"><B>getTimeout()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Activelock.html" title="class in org.apache.wink.webdav.model">Activelock</A>
<DD>Gets the value of the timeout property.
<DT><A HREF="./org/apache/wink/common/model/app/AppCollection.html#getTitle()"><B>getTitle()</B></A> - 
Method in class org.apache.wink.common.model.app.<A HREF="./org/apache/wink/common/model/app/AppCollection.html" title="class in org.apache.wink.common.model.app">AppCollection</A>
<DD>Gets the value of title.
<DT><A HREF="./org/apache/wink/common/model/app/AppWorkspace.html#getTitle()"><B>getTitle()</B></A> - 
Method in class org.apache.wink.common.model.app.<A HREF="./org/apache/wink/common/model/app/AppWorkspace.html" title="class in org.apache.wink.common.model.app">AppWorkspace</A>
<DD>Gets the value of title.
<DT><A HREF="./org/apache/wink/common/model/atom/AtomEntry.html#getTitle()"><B>getTitle()</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomEntry.html" title="class in org.apache.wink.common.model.atom">AtomEntry</A>
<DD>Gets the value of title.
<DT><A HREF="./org/apache/wink/common/model/atom/AtomFeed.html#getTitle()"><B>getTitle()</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomFeed.html" title="class in org.apache.wink.common.model.atom">AtomFeed</A>
<DD>Gets the value of title.
<DT><A HREF="./org/apache/wink/common/model/atom/AtomLink.html#getTitle()"><B>getTitle()</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomLink.html" title="class in org.apache.wink.common.model.atom">AtomLink</A>
<DD>Gets the value of title.
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchQuery.html#getTitle()"><B>getTitle()</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchQuery.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchQuery</A>
<DD>Gets the value of the title property.
<DT><A HREF="./org/apache/wink/common/model/rss/RssChannel.html#getTitle()"><B>getTitle()</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssChannel.html" title="class in org.apache.wink.common.model.rss">RssChannel</A>
<DD>Gets the value of the title property.
<DT><A HREF="./org/apache/wink/common/model/rss/RssImage.html#getTitle()"><B>getTitle()</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssImage.html" title="class in org.apache.wink.common.model.rss">RssImage</A>
<DD>Gets the value of the title property.
<DT><A HREF="./org/apache/wink/common/model/rss/RssItem.html#getTitle()"><B>getTitle()</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssItem.html" title="class in org.apache.wink.common.model.rss">RssItem</A>
<DD>Gets the value of the title property.
<DT><A HREF="./org/apache/wink/common/model/rss/RssTextInput.html#getTitle()"><B>getTitle()</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssTextInput.html" title="class in org.apache.wink.common.model.rss">RssTextInput</A>
<DD>Gets the value of the title property.
<DT><A HREF="./org/apache/wink/common/model/synd/SyndBase.html#getTitle()"><B>getTitle()</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndBase.html" title="class in org.apache.wink.common.model.synd">SyndBase</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/synd/SyndLink.html#getTitle()"><B>getTitle()</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndLink.html" title="class in org.apache.wink.common.model.synd">SyndLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Doc.html#getTitle()"><B>getTitle()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Doc.html" title="class in org.apache.wink.common.model.wadl">Doc</A>
<DD>Gets the value of the title property.
<DT><A HREF="./org/apache/wink/common/model/atom/AtomFeed.html#getTotalResults()"><B>getTotalResults()</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomFeed.html" title="class in org.apache.wink.common.model.atom">AtomFeed</A>
<DD>Gets the value of opensearch totalResults.
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchQuery.html#getTotalResults()"><B>getTotalResults()</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchQuery.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchQuery</A>
<DD>Gets the value of the totalResults property.
<DT><A HREF="./org/apache/wink/common/model/synd/SyndFeed.html#getTotalResults()"><B>getTotalResults()</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndFeed.html" title="class in org.apache.wink.common.model.synd">SyndFeed</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/rss/RssChannel.html#getTtl()"><B>getTtl()</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssChannel.html" title="class in org.apache.wink.common.model.rss">RssChannel</A>
<DD>Gets the value of the ttl property.
<DT><A HREF="./org/apache/wink/client/EntityType.html#getType()"><B>getType()</B></A> - 
Method in class org.apache.wink.client.<A HREF="./org/apache/wink/client/EntityType.html" title="class in org.apache.wink.client">EntityType</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomContent.html#getType()"><B>getType()</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomContent.html" title="class in org.apache.wink.common.model.atom">AtomContent</A>
<DD>Gets the value of type.
<DT><A HREF="./org/apache/wink/common/model/atom/AtomLink.html#getType()"><B>getType()</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomLink.html" title="class in org.apache.wink.common.model.atom">AtomLink</A>
<DD>Gets the value of type.
<DT><A HREF="./org/apache/wink/common/model/atom/AtomText.html#getType()"><B>getType()</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomText.html" title="class in org.apache.wink.common.model.atom">AtomText</A>
<DD>Gets the value of type.
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchImage.html#getType()"><B>getType()</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchImage.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchImage</A>
<DD>Gets the value of the type property.
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchUrl.html#getType()"><B>getType()</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchUrl.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchUrl</A>
<DD>Gets the value of the type property.
<DT><A HREF="./org/apache/wink/common/model/rss/RssEnclosure.html#getType()"><B>getType()</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssEnclosure.html" title="class in org.apache.wink.common.model.rss">RssEnclosure</A>
<DD>Gets the value of the type property.
<DT><A HREF="./org/apache/wink/common/model/synd/SyndContent.html#getType()"><B>getType()</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndContent.html" title="class in org.apache.wink.common.model.synd">SyndContent</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/synd/SyndLink.html#getType()"><B>getType()</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndLink.html" title="class in org.apache.wink.common.model.synd">SyndLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/synd/SyndText.html#getType()"><B>getType()</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndText.html" title="class in org.apache.wink.common.model.synd">SyndText</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Param.html#getType()"><B>getType()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Param.html" title="class in org.apache.wink.common.model.wadl">Param</A>
<DD>Gets the value of the type property.
<DT><A HREF="./org/apache/wink/common/model/wadl/Resource.html#getType()"><B>getType()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Resource.html" title="class in org.apache.wink.common.model.wadl">Resource</A>
<DD>Gets the value of the type property.
<DT><A HREF="./org/apache/wink/common/model/app/AppCategories.html#getUnmarshaller()"><B>getUnmarshaller()</B></A> - 
Static method in class org.apache.wink.common.model.app.<A HREF="./org/apache/wink/common/model/app/AppCategories.html" title="class in org.apache.wink.common.model.app">AppCategories</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/app/AppService.html#getUnmarshaller()"><B>getUnmarshaller()</B></A> - 
Static method in class org.apache.wink.common.model.app.<A HREF="./org/apache/wink/common/model/app/AppService.html" title="class in org.apache.wink.common.model.app">AppService</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomEntry.html#getUnmarshaller()"><B>getUnmarshaller()</B></A> - 
Static method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomEntry.html" title="class in org.apache.wink.common.model.atom">AtomEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomFeed.html#getUnmarshaller()"><B>getUnmarshaller()</B></A> - 
Static method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomFeed.html" title="class in org.apache.wink.common.model.atom">AtomFeed</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html#getUnmarshaller()"><B>getUnmarshaller()</B></A> - 
Static method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchDescription</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomEntry.html#getUpdated()"><B>getUpdated()</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomEntry.html" title="class in org.apache.wink.common.model.atom">AtomEntry</A>
<DD>Gets the value of updated as a Date object
<DT><A HREF="./org/apache/wink/common/model/atom/AtomFeed.html#getUpdated()"><B>getUpdated()</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomFeed.html" title="class in org.apache.wink.common.model.atom">AtomFeed</A>
<DD>Gets the value of updated as a Date object
<DT><A HREF="./org/apache/wink/common/model/synd/SyndBase.html#getUpdated()"><B>getUpdated()</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndBase.html" title="class in org.apache.wink.common.model.synd">SyndBase</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomEntry.html#getUpdatedAsTime()"><B>getUpdatedAsTime()</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomEntry.html" title="class in org.apache.wink.common.model.atom">AtomEntry</A>
<DD>Gets the value of updated as a long value
<DT><A HREF="./org/apache/wink/common/model/atom/AtomFeed.html#getUpdatedAsTime()"><B>getUpdatedAsTime()</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomFeed.html" title="class in org.apache.wink.common.model.atom">AtomFeed</A>
<DD>Gets the value of updated as a long value
<DT><A HREF="./org/apache/wink/client/ClientRequest.html#getURI()"><B>getURI()</B></A> - 
Method in interface org.apache.wink.client.<A HREF="./org/apache/wink/client/ClientRequest.html" title="interface in org.apache.wink.client">ClientRequest</A>
<DD>Get the uri of the request
<DT><A HREF="./org/apache/wink/common/model/atom/AtomGenerator.html#getUri()"><B>getUri()</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomGenerator.html" title="class in org.apache.wink.common.model.atom">AtomGenerator</A>
<DD>Gets the value of uri.
<DT><A HREF="./org/apache/wink/common/model/atom/AtomPerson.html#getUri()"><B>getUri()</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomPerson.html" title="class in org.apache.wink.common.model.atom">AtomPerson</A>
<DD>Gets the value of uri.
<DT><A HREF="./org/apache/wink/common/model/synd/SyndGenerator.html#getUri()"><B>getUri()</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndGenerator.html" title="class in org.apache.wink.common.model.synd">SyndGenerator</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/synd/SyndPerson.html#getUri()"><B>getUri()</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndPerson.html" title="class in org.apache.wink.common.model.synd">SyndPerson</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/Resource.html#getUriBuilder()"><B>getUriBuilder()</B></A> - 
Method in interface org.apache.wink.client.<A HREF="./org/apache/wink/client/Resource.html" title="interface in org.apache.wink.client">Resource</A>
<DD>Get the <CODE>UriBuilder</CODE> associated with this resource.
<DT><A HREF="./org/apache/wink/common/RuntimeContext.html#getUriInfo()"><B>getUriInfo()</B></A> - 
Method in interface org.apache.wink.common.<A HREF="./org/apache/wink/common/RuntimeContext.html" title="interface in org.apache.wink.common">RuntimeContext</A>
<DD>Get the <CODE>UriInfo</CODE> context
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html#getUrl()"><B>getUrl()</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchDescription</A>
<DD>Gets the value of the url property.
<DT><A HREF="./org/apache/wink/common/model/rss/RssEnclosure.html#getUrl()"><B>getUrl()</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssEnclosure.html" title="class in org.apache.wink.common.model.rss">RssEnclosure</A>
<DD>Gets the value of the url property.
<DT><A HREF="./org/apache/wink/common/model/rss/RssImage.html#getUrl()"><B>getUrl()</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssImage.html" title="class in org.apache.wink.common.model.rss">RssImage</A>
<DD>Gets the value of the url property.
<DT><A HREF="./org/apache/wink/common/model/rss/RssSource.html#getUrl()"><B>getUrl()</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssSource.html" title="class in org.apache.wink.common.model.rss">RssSource</A>
<DD>Gets the value of the url property.
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchParameter.html#getURLParameter()"><B>getURLParameter()</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchParameter.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchParameter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomCommonAttributesSimpleContent.html#getValue()"><B>getValue()</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomCommonAttributesSimpleContent.html" title="class in org.apache.wink.common.model.atom">AtomCommonAttributesSimpleContent</A>
<DD>Gets the value of value.
<DT><A HREF="./org/apache/wink/common/model/atom/AtomContent.html#getValue()"><B>getValue()</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomContent.html" title="class in org.apache.wink.common.model.atom">AtomContent</A>
<DD>
 Gets the content of the "atom:content" element as a String.
<DT><A HREF="./org/apache/wink/common/model/atom/AtomContent.html#getValue(java.lang.Class)"><B>getValue(Class&lt;T&gt;)</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomContent.html" title="class in org.apache.wink.common.model.atom">AtomContent</A>
<DD>
 Gets the content of the "atom:content" element serialized to provided
 class.
<DT><A HREF="./org/apache/wink/common/model/atom/AtomContent.html#getValue(java.lang.Class, java.lang.reflect.Type, javax.ws.rs.ext.Providers, java.lang.annotation.Annotation[], javax.ws.rs.core.MultivaluedMap, javax.ws.rs.core.MediaType)"><B>getValue(Class&lt;T&gt;, Type, Providers, Annotation[], MultivaluedMap&lt;String, String&gt;, MediaType)</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomContent.html" title="class in org.apache.wink.common.model.atom">AtomContent</A>
<DD>
 Gets the content of the "atom:content" element serialized to provided
 class according to provided parameters.
<DT><A HREF="./org/apache/wink/common/model/atom/AtomText.html#getValue()"><B>getValue()</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomText.html" title="class in org.apache.wink.common.model.atom">AtomText</A>
<DD>
 Gets the content of the "atom:text" element as a String.
<DT><A HREF="./org/apache/wink/common/model/atom/AtomText.html#getValue(java.lang.Class)"><B>getValue(Class&lt;T&gt;)</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomText.html" title="class in org.apache.wink.common.model.atom">AtomText</A>
<DD>
 Gets the content of the "atom:text" element serialized to provided class.
<DT><A HREF="./org/apache/wink/common/model/atom/AtomText.html#getValue(java.lang.Class, java.lang.reflect.Type, javax.ws.rs.ext.Providers, java.lang.annotation.Annotation[], javax.ws.rs.core.MultivaluedMap, javax.ws.rs.core.MediaType)"><B>getValue(Class&lt;T&gt;, Type, Providers, Annotation[], MultivaluedMap&lt;String, String&gt;, MediaType)</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomText.html" title="class in org.apache.wink.common.model.atom">AtomText</A>
<DD>
 Gets the content of the "atom:text" element serialized to provided class
 according to provided parameters.
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchImage.html#getValue()"><B>getValue()</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchImage.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchImage</A>
<DD>Gets the value of the value property.
<DT><A HREF="./org/apache/wink/common/model/synd/SyndSimpleContent.html#getValue()"><B>getValue()</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndSimpleContent.html" title="class in org.apache.wink.common.model.synd">SyndSimpleContent</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/synd/SyndSimpleContent.html#getValue(java.lang.Class)"><B>getValue(Class&lt;T&gt;)</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndSimpleContent.html" title="class in org.apache.wink.common.model.synd">SyndSimpleContent</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/synd/SyndSimpleContent.html#getValue(java.lang.Class, java.lang.reflect.Type, javax.ws.rs.ext.Providers, java.lang.annotation.Annotation[], javax.ws.rs.core.MultivaluedMap, javax.ws.rs.core.MediaType)"><B>getValue(Class&lt;T&gt;, Type, Providers, Annotation[], MultivaluedMap&lt;String, String&gt;, MediaType)</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndSimpleContent.html" title="class in org.apache.wink.common.model.synd">SyndSimpleContent</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Option.html#getValue()"><B>getValue()</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Option.html" title="class in org.apache.wink.common.model.wadl">Option</A>
<DD>Gets the value of the value property.
<DT><A HREF="./org/apache/wink/webdav/model/Creationdate.html#getValue()"><B>getValue()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Creationdate.html" title="class in org.apache.wink.webdav.model">Creationdate</A>
<DD>Gets the value.
<DT><A HREF="./org/apache/wink/webdav/model/Displayname.html#getValue()"><B>getValue()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Displayname.html" title="class in org.apache.wink.webdav.model">Displayname</A>
<DD>Gets the value.
<DT><A HREF="./org/apache/wink/webdav/model/Getcontentlanguage.html#getValue()"><B>getValue()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Getcontentlanguage.html" title="class in org.apache.wink.webdav.model">Getcontentlanguage</A>
<DD>Gets the value.
<DT><A HREF="./org/apache/wink/webdav/model/Getcontentlength.html#getValue()"><B>getValue()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Getcontentlength.html" title="class in org.apache.wink.webdav.model">Getcontentlength</A>
<DD>Gets the value.
<DT><A HREF="./org/apache/wink/webdav/model/Getcontenttype.html#getValue()"><B>getValue()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Getcontenttype.html" title="class in org.apache.wink.webdav.model">Getcontenttype</A>
<DD>Gets the value.
<DT><A HREF="./org/apache/wink/webdav/model/Getetag.html#getValue()"><B>getValue()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Getetag.html" title="class in org.apache.wink.webdav.model">Getetag</A>
<DD>Gets the value.
<DT><A HREF="./org/apache/wink/webdav/model/Getlastmodified.html#getValue()"><B>getValue()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Getlastmodified.html" title="class in org.apache.wink.webdav.model">Getlastmodified</A>
<DD>Gets the value.
<DT><A HREF="./org/apache/wink/webdav/model/Creationdate.html#getValueAsDate()"><B>getValueAsDate()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Creationdate.html" title="class in org.apache.wink.webdav.model">Creationdate</A>
<DD>Gets the value.
<DT><A HREF="./org/apache/wink/webdav/model/Getlastmodified.html#getValueAsDate()"><B>getValueAsDate()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Getlastmodified.html" title="class in org.apache.wink.webdav.model">Getlastmodified</A>
<DD>Gets the value.
<DT><A HREF="./org/apache/wink/common/model/atom/AtomGenerator.html#getVersion()"><B>getVersion()</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomGenerator.html" title="class in org.apache.wink.common.model.atom">AtomGenerator</A>
<DD>Gets the value of version.
<DT><A HREF="./org/apache/wink/common/model/rss/RssFeed.html#getVersion()"><B>getVersion()</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssFeed.html" title="class in org.apache.wink.common.model.rss">RssFeed</A>
<DD>Gets the value of the version property.
<DT><A HREF="./org/apache/wink/common/model/synd/SyndGenerator.html#getVersion()"><B>getVersion()</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndGenerator.html" title="class in org.apache.wink.common.model.synd">SyndGenerator</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/rss/RssChannel.html#getWebMaster()"><B>getWebMaster()</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssChannel.html" title="class in org.apache.wink.common.model.rss">RssChannel</A>
<DD>Gets the value of the webMaster property.
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchImage.html#getWidth()"><B>getWidth()</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchImage.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchImage</A>
<DD>Gets the value of the width property.
<DT><A HREF="./org/apache/wink/common/model/rss/RssImage.html#getWidth()"><B>getWidth()</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssImage.html" title="class in org.apache.wink.common.model.rss">RssImage</A>
<DD>Gets the value of the width property.
<DT><A HREF="./org/apache/wink/common/model/app/AppService.html#getWorkspace()"><B>getWorkspace()</B></A> - 
Method in class org.apache.wink.common.model.app.<A HREF="./org/apache/wink/common/model/app/AppService.html" title="class in org.apache.wink.common.model.app">AppService</A>
<DD>Gets the workspaces
<DT><A HREF="./org/apache/wink/common/model/app/AppService.html#getWorkspace(java.lang.String)"><B>getWorkspace(String)</B></A> - 
Method in class org.apache.wink.common.model.app.<A HREF="./org/apache/wink/common/model/app/AppService.html" title="class in org.apache.wink.common.model.app">AppService</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/AbstractDynamicResource.html#getWorkspaceTitle()"><B>getWorkspaceTitle()</B></A> - 
Method in class org.apache.wink.common.<A HREF="./org/apache/wink/common/AbstractDynamicResource.html" title="class in org.apache.wink.common">AbstractDynamicResource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/DynamicResource.html#getWorkspaceTitle()"><B>getWorkspaceTitle()</B></A> - 
Method in interface org.apache.wink.common.<A HREF="./org/apache/wink/common/DynamicResource.html" title="interface in org.apache.wink.common">DynamicResource</A>
<DD>Returns the workspace title.
<DT><A HREF="./org/apache/wink/webdav/model/Locktype.html#getWrite()"><B>getWrite()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Locktype.html" title="class in org.apache.wink.webdav.model">Locktype</A>
<DD>Gets the value of the write property.
<DT><A HREF="./org/apache/wink/common/http/HttpStatus.html#GONE"><B>GONE</B></A> - 
Static variable in class org.apache.wink.common.http.<A HREF="./org/apache/wink/common/http/HttpStatus.html" title="class in org.apache.wink.common.http">HttpStatus</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Application.html#grammars"><B>grammars</B></A> - 
Variable in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Application.html" title="class in org.apache.wink.common.model.wadl">Application</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Grammars.html" title="class in org.apache.wink.common.model.wadl"><B>Grammars</B></A> - Class in <A HREF="./org/apache/wink/common/model/wadl/package-summary.html">org.apache.wink.common.model.wadl</A><DD>Java class for anonymous complex type.<DT><A HREF="./org/apache/wink/common/model/wadl/Grammars.html#Grammars()"><B>Grammars()</B></A> - 
Constructor for class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Grammars.html" title="class in org.apache.wink.common.model.wadl">Grammars</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/rss/RssItem.html#guid"><B>guid</B></A> - 
Variable in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssItem.html" title="class in org.apache.wink.common.model.rss">RssItem</A>
<DD>&nbsp;
</DL>
<HR>
<A NAME="_H_"><!-- --></A><H2>
<B>H</B></H2>
<DL>
<DT><A HREF="./org/apache/wink/client/AsyncHttpClientConnectionHandler.html#handle(org.apache.wink.client.ClientRequest, org.apache.wink.client.handlers.HandlerContext)"><B>handle(ClientRequest, HandlerContext)</B></A> - 
Method in class org.apache.wink.client.<A HREF="./org/apache/wink/client/AsyncHttpClientConnectionHandler.html" title="class in org.apache.wink.client">AsyncHttpClientConnectionHandler</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/handlers/BasicAuthSecurityHandler.html#handle(org.apache.wink.client.ClientRequest, org.apache.wink.client.handlers.HandlerContext)"><B>handle(ClientRequest, HandlerContext)</B></A> - 
Method in class org.apache.wink.client.handlers.<A HREF="./org/apache/wink/client/handlers/BasicAuthSecurityHandler.html" title="class in org.apache.wink.client.handlers">BasicAuthSecurityHandler</A>
<DD>Performs basic HTTP authentication and proxy authentication, if
 necessary.
<DT><A HREF="./org/apache/wink/client/handlers/ClientHandler.html#handle(org.apache.wink.client.ClientRequest, org.apache.wink.client.handlers.HandlerContext)"><B>handle(ClientRequest, HandlerContext)</B></A> - 
Method in interface org.apache.wink.client.handlers.<A HREF="./org/apache/wink/client/handlers/ClientHandler.html" title="interface in org.apache.wink.client.handlers">ClientHandler</A>
<DD>This method is invoked for every request invocation to allow the handler
 to perform custom actions during the invocation.
<DT><A HREF="./org/apache/wink/client/handlers/ProxyAuthSecurityHandler.html#handle(org.apache.wink.client.ClientRequest, org.apache.wink.client.handlers.HandlerContext)"><B>handle(ClientRequest, HandlerContext)</B></A> - 
Method in class org.apache.wink.client.handlers.<A HREF="./org/apache/wink/client/handlers/ProxyAuthSecurityHandler.html" title="class in org.apache.wink.client.handlers">ProxyAuthSecurityHandler</A>
<DD>Performs basic HTTP authentication and proxy authentication, if
 necessary.
<DT><A HREF="./org/apache/wink/server/handlers/AbstractHandlersChain.html#handle(T, org.apache.wink.server.handlers.MessageContext)"><B>handle(T, MessageContext)</B></A> - 
Method in class org.apache.wink.server.handlers.<A HREF="./org/apache/wink/server/handlers/AbstractHandlersChain.html" title="class in org.apache.wink.server.handlers">AbstractHandlersChain</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/server/handlers/RequestHandlersChain.html#handle(org.apache.wink.server.handlers.RequestHandler, org.apache.wink.server.handlers.MessageContext)"><B>handle(RequestHandler, MessageContext)</B></A> - 
Method in class org.apache.wink.server.handlers.<A HREF="./org/apache/wink/server/handlers/RequestHandlersChain.html" title="class in org.apache.wink.server.handlers">RequestHandlersChain</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/server/handlers/ResponseHandlersChain.html#handle(org.apache.wink.server.handlers.ResponseHandler, org.apache.wink.server.handlers.MessageContext)"><B>handle(ResponseHandler, MessageContext)</B></A> - 
Method in class org.apache.wink.server.handlers.<A HREF="./org/apache/wink/server/handlers/ResponseHandlersChain.html" title="class in org.apache.wink.server.handlers">ResponseHandlersChain</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/server/handlers/Handler.html" title="interface in org.apache.wink.server.handlers"><B>Handler</B></A> - Interface in <A HREF="./org/apache/wink/server/handlers/package-summary.html">org.apache.wink.server.handlers</A><DD>&nbsp;<DT><A HREF="./org/apache/wink/client/handlers/HandlerContext.html" title="interface in org.apache.wink.client.handlers"><B>HandlerContext</B></A> - Interface in <A HREF="./org/apache/wink/client/handlers/package-summary.html">org.apache.wink.client.handlers</A><DD>The handler context is used by handlers to call the next handler on the
 chain.<DT><A HREF="./org/apache/wink/client/handlers/AbstractAuthSecurityHandler.html#handlerEncodedCredentials"><B>handlerEncodedCredentials</B></A> - 
Variable in class org.apache.wink.client.handlers.<A HREF="./org/apache/wink/client/handlers/AbstractAuthSecurityHandler.html" title="class in org.apache.wink.client.handlers">AbstractAuthSecurityHandler</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/osgi/WinkRequestProcessor.html#handleRequest(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse)"><B>handleRequest(HttpServletRequest, HttpServletResponse)</B></A> - 
Method in class org.apache.wink.osgi.<A HREF="./org/apache/wink/osgi/WinkRequestProcessor.html" title="class in org.apache.wink.osgi">WinkRequestProcessor</A>
<DD>Dispatches the request and fills the response (even with an error
 message.
<DT><A HREF="./org/apache/wink/osgi/WinkRequestProcessor.html#handleRequest(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse, java.lang.Object)"><B>handleRequest(HttpServletRequest, HttpServletResponse, Object)</B></A> - 
Method in class org.apache.wink.osgi.<A HREF="./org/apache/wink/osgi/WinkRequestProcessor.html" title="class in org.apache.wink.osgi">WinkRequestProcessor</A>
<DD>Dispatches the request and fills the response (even with an error
 message using the spcified root resource instance.
<DT><A HREF="./org/apache/wink/server/handlers/AbstractHandler.html#handleRequest(org.apache.wink.server.handlers.MessageContext, org.apache.wink.server.handlers.HandlersChain)"><B>handleRequest(MessageContext, HandlersChain)</B></A> - 
Method in class org.apache.wink.server.handlers.<A HREF="./org/apache/wink/server/handlers/AbstractHandler.html" title="class in org.apache.wink.server.handlers">AbstractHandler</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/server/handlers/AbstractHandler.html#handleRequest(org.apache.wink.server.handlers.MessageContext)"><B>handleRequest(MessageContext)</B></A> - 
Method in class org.apache.wink.server.handlers.<A HREF="./org/apache/wink/server/handlers/AbstractHandler.html" title="class in org.apache.wink.server.handlers">AbstractHandler</A>
<DD>Override this method to handle the request.
<DT><A HREF="./org/apache/wink/server/handlers/RequestHandler.html#handleRequest(org.apache.wink.server.handlers.MessageContext, org.apache.wink.server.handlers.HandlersChain)"><B>handleRequest(MessageContext, HandlersChain)</B></A> - 
Method in interface org.apache.wink.server.handlers.<A HREF="./org/apache/wink/server/handlers/RequestHandler.html" title="interface in org.apache.wink.server.handlers">RequestHandler</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/server/handlers/AbstractHandler.html#handleResponse(org.apache.wink.server.handlers.MessageContext, org.apache.wink.server.handlers.HandlersChain)"><B>handleResponse(MessageContext, HandlersChain)</B></A> - 
Method in class org.apache.wink.server.handlers.<A HREF="./org/apache/wink/server/handlers/AbstractHandler.html" title="class in org.apache.wink.server.handlers">AbstractHandler</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/server/handlers/AbstractHandler.html#handleResponse(org.apache.wink.server.handlers.MessageContext)"><B>handleResponse(MessageContext)</B></A> - 
Method in class org.apache.wink.server.handlers.<A HREF="./org/apache/wink/server/handlers/AbstractHandler.html" title="class in org.apache.wink.server.handlers">AbstractHandler</A>
<DD>Override this method to handle the response.
<DT><A HREF="./org/apache/wink/server/handlers/ResponseHandler.html#handleResponse(org.apache.wink.server.handlers.MessageContext, org.apache.wink.server.handlers.HandlersChain)"><B>handleResponse(MessageContext, HandlersChain)</B></A> - 
Method in interface org.apache.wink.server.handlers.<A HREF="./org/apache/wink/server/handlers/ResponseHandler.html" title="interface in org.apache.wink.server.handlers">ResponseHandler</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/handlers/AbstractAuthSecurityHandler.html#handlerPassword"><B>handlerPassword</B></A> - 
Variable in class org.apache.wink.client.handlers.<A HREF="./org/apache/wink/client/handlers/AbstractAuthSecurityHandler.html" title="class in org.apache.wink.client.handlers">AbstractAuthSecurityHandler</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/ClientConfig.html#handlers(org.apache.wink.client.handlers.ClientHandler...)"><B>handlers(ClientHandler...)</B></A> - 
Method in class org.apache.wink.client.<A HREF="./org/apache/wink/client/ClientConfig.html" title="class in org.apache.wink.client">ClientConfig</A>
<DD>Add client handlers
<DT><A HREF="./org/apache/wink/server/handlers/HandlersChain.html" title="interface in org.apache.wink.server.handlers"><B>HandlersChain</B></A> - Interface in <A HREF="./org/apache/wink/server/handlers/package-summary.html">org.apache.wink.server.handlers</A><DD>&nbsp;<DT><A HREF="./org/apache/wink/server/handlers/HandlersFactory.html" title="class in org.apache.wink.server.handlers"><B>HandlersFactory</B></A> - Class in <A HREF="./org/apache/wink/server/handlers/package-summary.html">org.apache.wink.server.handlers</A><DD>
 HandlersFactory is responsible to provide the user handlers to the
 application.<DT><A HREF="./org/apache/wink/server/handlers/HandlersFactory.html#HandlersFactory()"><B>HandlersFactory()</B></A> - 
Constructor for class org.apache.wink.server.handlers.<A HREF="./org/apache/wink/server/handlers/HandlersFactory.html" title="class in org.apache.wink.server.handlers">HandlersFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/handlers/AbstractAuthSecurityHandler.html#handlerUsername"><B>handlerUsername</B></A> - 
Variable in class org.apache.wink.client.handlers.<A HREF="./org/apache/wink/client/handlers/AbstractAuthSecurityHandler.html" title="class in org.apache.wink.client.handlers">AbstractAuthSecurityHandler</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONObjectDelegate.html#has(java.lang.String)"><B>has(String)</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONObjectDelegate.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONObjectDelegate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONObject.html#has(java.lang.String)"><B>has(String)</B></A> - 
Method in interface org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONObject.html" title="interface in org.apache.wink.json4j.compat">JSONObject</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/JSONObject.html#has(java.lang.String)"><B>has(String)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONObject.html" title="class in org.apache.wink.json4j">JSONObject</A>
<DD>Method to test if a key exists in the JSONObject.
<DT><A HREF="./org/apache/wink/common/http/HttpStatus.html#hashCode()"><B>hashCode()</B></A> - 
Method in class org.apache.wink.common.http.<A HREF="./org/apache/wink/common/http/HttpStatus.html" title="class in org.apache.wink.common.http">HttpStatus</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/synd/SyndBase.html#hashCode()"><B>hashCode()</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndBase.html" title="class in org.apache.wink.common.model.synd">SyndBase</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/synd/SyndCategory.html#hashCode()"><B>hashCode()</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndCategory.html" title="class in org.apache.wink.common.model.synd">SyndCategory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/synd/SyndCommonAttributes.html#hashCode()"><B>hashCode()</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndCommonAttributes.html" title="class in org.apache.wink.common.model.synd">SyndCommonAttributes</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/synd/SyndContent.html#hashCode()"><B>hashCode()</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndContent.html" title="class in org.apache.wink.common.model.synd">SyndContent</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/synd/SyndEntry.html#hashCode()"><B>hashCode()</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndEntry.html" title="class in org.apache.wink.common.model.synd">SyndEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/synd/SyndFeed.html#hashCode()"><B>hashCode()</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndFeed.html" title="class in org.apache.wink.common.model.synd">SyndFeed</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/synd/SyndGenerator.html#hashCode()"><B>hashCode()</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndGenerator.html" title="class in org.apache.wink.common.model.synd">SyndGenerator</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/synd/SyndLink.html#hashCode()"><B>hashCode()</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndLink.html" title="class in org.apache.wink.common.model.synd">SyndLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/synd/SyndPerson.html#hashCode()"><B>hashCode()</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndPerson.html" title="class in org.apache.wink.common.model.synd">SyndPerson</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/synd/SyndSimpleContent.html#hashCode()"><B>hashCode()</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndSimpleContent.html" title="class in org.apache.wink.common.model.synd">SyndSimpleContent</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/synd/SyndText.html#hashCode()"><B>hashCode()</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndText.html" title="class in org.apache.wink.common.model.synd">SyndText</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/multipart/InMultiPart.html#hasNext()"><B>hasNext()</B></A> - 
Method in class org.apache.wink.common.model.multipart.<A HREF="./org/apache/wink/common/model/multipart/InMultiPart.html" title="class in org.apache.wink.common.model.multipart">InMultiPart</A>
<DD>Returns <tt>true</tt> if the iteration has more elements.
<DT><A HREF="./org/apache/wink/client/Resource.html#head()"><B>head()</B></A> - 
Method in interface org.apache.wink.client.<A HREF="./org/apache/wink/client/Resource.html" title="interface in org.apache.wink.client">Resource</A>
<DD>Invoke the HEAD method
<DT><A HREF="./org/apache/wink/client/Resource.html#header(java.lang.String, java.lang.String...)"><B>header(String, String...)</B></A> - 
Method in interface org.apache.wink.client.<A HREF="./org/apache/wink/client/Resource.html" title="interface in org.apache.wink.client">Resource</A>
<DD>Add a request header to be used in every invocation
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchImage.html#height"><B>height</B></A> - 
Variable in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchImage.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchImage</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/rss/RssImage.html#height"><B>height</B></A> - 
Variable in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssImage.html" title="class in org.apache.wink.common.model.rss">RssImage</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/rss/RssSkipHours.html#hour"><B>hour</B></A> - 
Variable in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssSkipHours.html" title="class in org.apache.wink.common.model.rss">RssSkipHours</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/app/AppCategories.html#href"><B>href</B></A> - 
Variable in class org.apache.wink.common.model.app.<A HREF="./org/apache/wink/common/model/app/AppCategories.html" title="class in org.apache.wink.common.model.app">AppCategories</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/app/AppCollection.html#href"><B>href</B></A> - 
Variable in class org.apache.wink.common.model.app.<A HREF="./org/apache/wink/common/model/app/AppCollection.html" title="class in org.apache.wink.common.model.app">AppCollection</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomLink.html#href"><B>href</B></A> - 
Variable in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomLink.html" title="class in org.apache.wink.common.model.atom">AtomLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Include.html#href"><B>href</B></A> - 
Variable in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Include.html" title="class in org.apache.wink.common.model.wadl">Include</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Method.html#href"><B>href</B></A> - 
Variable in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Method.html" title="class in org.apache.wink.common.model.wadl">Method</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Param.html#href"><B>href</B></A> - 
Variable in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Param.html" title="class in org.apache.wink.common.model.wadl">Param</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Representation.html#href"><B>href</B></A> - 
Variable in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Representation.html" title="class in org.apache.wink.common.model.wadl">Representation</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Locktoken.html#href"><B>href</B></A> - 
Variable in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Locktoken.html" title="class in org.apache.wink.webdav.model">Locktoken</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Response.html#href"><B>href</B></A> - 
Variable in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Response.html" title="class in org.apache.wink.webdav.model">Response</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomLink.html#hreflang"><B>hreflang</B></A> - 
Variable in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomLink.html" title="class in org.apache.wink.common.model.atom">AtomLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/http/HttpStatus.html#HTTP_VERSION_NOT_SUPPORTED"><B>HTTP_VERSION_NOT_SUPPORTED</B></A> - 
Static variable in class org.apache.wink.common.http.<A HREF="./org/apache/wink/common/http/HttpStatus.html" title="class in org.apache.wink.common.http">HttpStatus</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/http/HttpHeadersEx.html" title="class in org.apache.wink.common.http"><B>HttpHeadersEx</B></A> - Class in <A HREF="./org/apache/wink/common/http/package-summary.html">org.apache.wink.common.http</A><DD>List of HTTP headers.<DT><A HREF="./org/apache/wink/common/http/HttpMethodEx.html" title="class in org.apache.wink.common.http"><B>HttpMethodEx</B></A> - Class in <A HREF="./org/apache/wink/common/http/package-summary.html">org.apache.wink.common.http</A><DD>&nbsp;<DT><A HREF="./org/apache/wink/common/http/HttpMethodEx.html#HttpMethodEx()"><B>HttpMethodEx()</B></A> - 
Constructor for class org.apache.wink.common.http.<A HREF="./org/apache/wink/common/http/HttpMethodEx.html" title="class in org.apache.wink.common.http">HttpMethodEx</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/HTTPMethods.html" title="enum in org.apache.wink.common.model.wadl"><B>HTTPMethods</B></A> - Enum in <A HREF="./org/apache/wink/common/model/wadl/package-summary.html">org.apache.wink.common.model.wadl</A><DD>Java class for HTTPMethods.<DT><A HREF="./org/apache/wink/common/http/HttpStatus.html" title="class in org.apache.wink.common.http"><B>HttpStatus</B></A> - Class in <A HREF="./org/apache/wink/common/http/package-summary.html">org.apache.wink.common.http</A><DD>HTTP status codes and a helper methods.<DT><A HREF="./org/apache/wink/common/http/HttpStatus.html#HttpStatus(int, java.lang.String)"><B>HttpStatus(int, String)</B></A> - 
Constructor for class org.apache.wink.common.http.<A HREF="./org/apache/wink/common/http/HttpStatus.html" title="class in org.apache.wink.common.http">HttpStatus</A>
<DD><B>Deprecated.</B>&nbsp;<I></I>&nbsp;
</DL>
<HR>
<A NAME="_I_"><!-- --></A><H2>
<B>I</B></H2>
<DL>
<DT><A HREF="./org/apache/wink/common/model/atom/AtomFeed.html#icon"><B>icon</B></A> - 
Variable in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomFeed.html" title="class in org.apache.wink.common.model.atom">AtomFeed</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomEntry.html#id"><B>id</B></A> - 
Variable in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomEntry.html" title="class in org.apache.wink.common.model.atom">AtomEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomFeed.html#id"><B>id</B></A> - 
Variable in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomFeed.html" title="class in org.apache.wink.common.model.atom">AtomFeed</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Method.html#id"><B>id</B></A> - 
Variable in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Method.html" title="class in org.apache.wink.common.model.wadl">Method</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Param.html#id"><B>id</B></A> - 
Variable in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Param.html" title="class in org.apache.wink.common.model.wadl">Param</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Representation.html#id"><B>id</B></A> - 
Variable in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Representation.html" title="class in org.apache.wink.common.model.wadl">Representation</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Resource.html#id"><B>id</B></A> - 
Variable in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Resource.html" title="class in org.apache.wink.common.model.wadl">Resource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/ResourceType.html#id"><B>id</B></A> - 
Variable in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/ResourceType.html" title="class in org.apache.wink.common.model.wadl">ResourceType</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/WebDAVHeaders.html#IF"><B>IF</B></A> - 
Static variable in class org.apache.wink.webdav.<A HREF="./org/apache/wink/webdav/WebDAVHeaders.html" title="class in org.apache.wink.webdav">WebDAVHeaders</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html#image"><B>image</B></A> - 
Variable in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchDescription</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/rss/RssChannel.html#image"><B>image</B></A> - 
Variable in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssChannel.html" title="class in org.apache.wink.common.model.rss">RssChannel</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Grammars.html#include"><B>include</B></A> - 
Variable in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Grammars.html" title="class in org.apache.wink.common.model.wadl">Grammars</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Include.html" title="class in org.apache.wink.common.model.wadl"><B>Include</B></A> - Class in <A HREF="./org/apache/wink/common/model/wadl/package-summary.html">org.apache.wink.common.model.wadl</A><DD>Java class for anonymous complex type.<DT><A HREF="./org/apache/wink/common/model/wadl/Include.html#Include()"><B>Include()</B></A> - 
Constructor for class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Include.html" title="class in org.apache.wink.common.model.wadl">Include</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/osgi/JaxRsFilter.html#init(javax.servlet.FilterConfig)"><B>init(FilterConfig)</B></A> - 
Method in class org.apache.wink.osgi.<A HREF="./org/apache/wink/osgi/JaxRsFilter.html" title="class in org.apache.wink.osgi">JaxRsFilter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/server/handlers/AbstractHandler.html#init(java.util.Properties)"><B>init(Properties)</B></A> - 
Method in class org.apache.wink.server.handlers.<A HREF="./org/apache/wink/server/handlers/AbstractHandler.html" title="class in org.apache.wink.server.handlers">AbstractHandler</A>
<DD>Override this method if initialization functionality is required
<DT><A HREF="./org/apache/wink/server/handlers/Handler.html#init(java.util.Properties)"><B>init(Properties)</B></A> - 
Method in interface org.apache.wink.server.handlers.<A HREF="./org/apache/wink/server/handlers/Handler.html" title="interface in org.apache.wink.server.handlers">Handler</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/logging/InMemoryHandler.html" title="class in org.apache.wink.logging"><B>InMemoryHandler</B></A> - Class in <A HREF="./org/apache/wink/logging/package-summary.html">org.apache.wink.logging</A><DD>&nbsp;<DT><A HREF="./org/apache/wink/logging/InMemoryHandler.html#InMemoryHandler()"><B>InMemoryHandler()</B></A> - 
Constructor for class org.apache.wink.logging.<A HREF="./org/apache/wink/logging/InMemoryHandler.html" title="class in org.apache.wink.logging">InMemoryHandler</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/multipart/InMultiPart.html" title="class in org.apache.wink.common.model.multipart"><B>InMultiPart</B></A> - Class in <A HREF="./org/apache/wink/common/model/multipart/package-summary.html">org.apache.wink.common.model.multipart</A><DD>This class is used to represent inbound MultiPart messages, it implements
 an Iterator to iterate over the message's parts.<DT><A HREF="./org/apache/wink/common/model/multipart/InMultiPart.html#InMultiPart(org.apache.wink.common.internal.providers.multipart.MultiPartParser)"><B>InMultiPart(MultiPartParser)</B></A> - 
Constructor for class org.apache.wink.common.model.multipart.<A HREF="./org/apache/wink/common/model/multipart/InMultiPart.html" title="class in org.apache.wink.common.model.multipart">InMultiPart</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/multipart/InPart.html" title="class in org.apache.wink.common.model.multipart"><B>InPart</B></A> - Class in <A HREF="./org/apache/wink/common/model/multipart/package-summary.html">org.apache.wink.common.model.multipart</A><DD>This class is used to represent a single part in an inbound MultiPart
 messages,<DT><A HREF="./org/apache/wink/common/model/multipart/InPart.html#InPart()"><B>InPart()</B></A> - 
Constructor for class org.apache.wink.common.model.multipart.<A HREF="./org/apache/wink/common/model/multipart/InPart.html" title="class in org.apache.wink.common.model.multipart">InPart</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/multipart/InPart.html#InPart(javax.ws.rs.core.MultivaluedMap, javax.ws.rs.ext.Providers)"><B>InPart(MultivaluedMap&lt;String, String&gt;, Providers)</B></A> - 
Constructor for class org.apache.wink.common.model.multipart.<A HREF="./org/apache/wink/common/model/multipart/InPart.html" title="class in org.apache.wink.common.model.multipart">InPart</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html#inputEncoding"><B>inputEncoding</B></A> - 
Variable in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchDescription</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchQuery.html#inputEncoding"><B>inputEncoding</B></A> - 
Variable in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchQuery.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchQuery</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/handlers/InputStreamAdapter.html" title="interface in org.apache.wink.client.handlers"><B>InputStreamAdapter</B></A> - Interface in <A HREF="./org/apache/wink/client/handlers/package-summary.html">org.apache.wink.client.handlers</A><DD>Interface for adapting the input stream<DT><A HREF="./org/apache/wink/common/http/HttpStatus.html#INSUFFICIENT_SPACE_ON_RESOURCE"><B>INSUFFICIENT_SPACE_ON_RESOURCE</B></A> - 
Static variable in class org.apache.wink.common.http.<A HREF="./org/apache/wink/common/http/HttpStatus.html" title="class in org.apache.wink.common.http">HttpStatus</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/http/HttpStatus.html#INSUFFICIENT_STORAGE"><B>INSUFFICIENT_STORAGE</B></A> - 
Static variable in class org.apache.wink.common.http.<A HREF="./org/apache/wink/common/http/HttpStatus.html" title="class in org.apache.wink.common.http">HttpStatus</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/http/HttpStatus.html#INTERNAL_SERVER_ERROR"><B>INTERNAL_SERVER_ERROR</B></A> - 
Static variable in class org.apache.wink.common.http.<A HREF="./org/apache/wink/common/http/HttpStatus.html" title="class in org.apache.wink.common.http">HttpStatus</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/Resource.html#invoke(java.lang.String, java.lang.Class, java.lang.Object)"><B>invoke(String, Class&lt;T&gt;, Object)</B></A> - 
Method in interface org.apache.wink.client.<A HREF="./org/apache/wink/client/Resource.html" title="interface in org.apache.wink.client">Resource</A>
<DD>Invoke a request to the uri associated with the resource, and with any
 headers and attributes set on the resource.
<DT><A HREF="./org/apache/wink/client/Resource.html#invoke(java.lang.String, org.apache.wink.client.EntityType, java.lang.Object)"><B>invoke(String, EntityType&lt;T&gt;, Object)</B></A> - 
Method in interface org.apache.wink.client.<A HREF="./org/apache/wink/client/Resource.html" title="interface in org.apache.wink.client">Resource</A>
<DD>Invoke a request to the uri associated with the resource, and with any
 headers and attributes set on the resource.
<DT><A HREF="./org/apache/wink/client/ClientConfig.html#isAcceptHeaderAutoSet()"><B>isAcceptHeaderAutoSet()</B></A> - 
Method in class org.apache.wink.client.<A HREF="./org/apache/wink/client/ClientConfig.html" title="class in org.apache.wink.client">ClientConfig</A>
<DD>Returns whether client will automatically set an appropriate Accept
 header
<DT><A HREF="./org/apache/wink/webdav/model/Propfind.html#isAllprop()"><B>isAllprop()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Propfind.html" title="class in org.apache.wink.webdav.model">Propfind</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/httpclient/ApacheHttpClientConfig.html#isChunked()"><B>isChunked()</B></A> - 
Method in class org.apache.wink.client.httpclient.<A HREF="./org/apache/wink/client/httpclient/ApacheHttpClientConfig.html" title="class in org.apache.wink.client.httpclient">ApacheHttpClientConfig</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/http/HttpStatus.html#isError()"><B>isError()</B></A> - 
Method in class org.apache.wink.common.http.<A HREF="./org/apache/wink/common/http/HttpStatus.html" title="class in org.apache.wink.common.http">HttpStatus</A>
<DD>Is this an error status.
<DT><A HREF="./org/apache/wink/common/categories/Categories.html#isFixed()"><B>isFixed()</B></A> - 
Method in class org.apache.wink.common.categories.<A HREF="./org/apache/wink/common/categories/Categories.html" title="class in org.apache.wink.common.categories">Categories</A>
<DD>If an app:categories element is marked as fixed, then the set of
 atom:Category elements is considered to be a closed set.
<DT><A HREF="./org/apache/wink/common/model/app/AppCategories.html#isFixedSet()"><B>isFixedSet()</B></A> - 
Method in class org.apache.wink.common.model.app.<A HREF="./org/apache/wink/common/model/app/AppCategories.html" title="class in org.apache.wink.common.model.app">AppCategories</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/ClientConfig.html#isFollowRedirects()"><B>isFollowRedirects()</B></A> - 
Method in class org.apache.wink.client.<A HREF="./org/apache/wink/client/ClientConfig.html" title="class in org.apache.wink.client">ClientConfig</A>
<DD>Returns whether to client will automatically follow redirects
<DT><A HREF="./org/apache/wink/common/model/app/AppCategories.html#isInline()"><B>isInline()</B></A> - 
Method in class org.apache.wink.common.model.app.<A HREF="./org/apache/wink/common/model/app/AppCategories.html" title="class in org.apache.wink.common.model.app">AppCategories</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/rss/RssGuid.html#isIsPermaLink()"><B>isIsPermaLink()</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssGuid.html" title="class in org.apache.wink.common.model.rss">RssGuid</A>
<DD>Gets the value of the isPermaLink property.
<DT><A HREF="./org/apache/wink/client/ClientConfig.html#isLoadWinkApplications()"><B>isLoadWinkApplications()</B></A> - 
Method in class org.apache.wink.client.<A HREF="./org/apache/wink/client/ClientConfig.html" title="class in org.apache.wink.client">ClientConfig</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchParameter.html#isMandatory()"><B>isMandatory()</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchParameter.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchParameter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONArrayDelegate.html#isNull(int)"><B>isNull(int)</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONArrayDelegate.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONArrayDelegate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONObjectDelegate.html#isNull(java.lang.String)"><B>isNull(String)</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONObjectDelegate.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONObjectDelegate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONArray.html#isNull(int)"><B>isNull(int)</B></A> - 
Method in interface org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONArray.html" title="interface in org.apache.wink.json4j.compat">JSONArray</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONObject.html#isNull(java.lang.String)"><B>isNull(String)</B></A> - 
Method in interface org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONObject.html" title="interface in org.apache.wink.json4j.compat">JSONObject</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/JSONArray.html#isNull(int)"><B>isNull(int)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONArray.html" title="class in org.apache.wink.json4j">JSONArray</A>
<DD>Utility function for testing if an element at index 'idx' is null or not.
<DT><A HREF="./org/apache/wink/json4j/JSONObject.html#isNull(java.lang.String)"><B>isNull(String)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONObject.html" title="class in org.apache.wink.json4j">JSONObject</A>
<DD>Method to test if a key is mapped to null.
<DT><A HREF="./org/apache/wink/common/categories/Categories.html#isOutOfLine()"><B>isOutOfLine()</B></A> - 
Method in class org.apache.wink.common.categories.<A HREF="./org/apache/wink/common/categories/Categories.html" title="class in org.apache.wink.common.categories">Categories</A>
<DD>Returns true if the href attribute is set
<DT><A HREF="./org/apache/wink/common/model/rss/RssGuid.html#isPermaLink"><B>isPermaLink</B></A> - 
Variable in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssGuid.html" title="class in org.apache.wink.common.model.rss">RssGuid</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Propfind.html#isPropname()"><B>isPropname()</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Propfind.html" title="class in org.apache.wink.webdav.model">Propfind</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/providers/abdera/AbderaAtomEntryProvider.html#isReadable(java.lang.Class, java.lang.reflect.Type, java.lang.annotation.Annotation[], javax.ws.rs.core.MediaType)"><B>isReadable(Class&lt;?&gt;, Type, Annotation[], MediaType)</B></A> - 
Method in class org.apache.wink.providers.abdera.<A HREF="./org/apache/wink/providers/abdera/AbderaAtomEntryProvider.html" title="class in org.apache.wink.providers.abdera">AbderaAtomEntryProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/providers/abdera/AbderaAtomFeedProvider.html#isReadable(java.lang.Class, java.lang.reflect.Type, java.lang.annotation.Annotation[], javax.ws.rs.core.MediaType)"><B>isReadable(Class&lt;?&gt;, Type, Annotation[], MediaType)</B></A> - 
Method in class org.apache.wink.providers.abdera.<A HREF="./org/apache/wink/providers/abdera/AbderaAtomFeedProvider.html" title="class in org.apache.wink.providers.abdera">AbderaAtomFeedProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/providers/jettison/JettisonJAXBElementProvider.html#isReadable(java.lang.Class, java.lang.reflect.Type, java.lang.annotation.Annotation[], javax.ws.rs.core.MediaType)"><B>isReadable(Class&lt;?&gt;, Type, Annotation[], MediaType)</B></A> - 
Method in class org.apache.wink.providers.jettison.<A HREF="./org/apache/wink/providers/jettison/JettisonJAXBElementProvider.html" title="class in org.apache.wink.providers.jettison">JettisonJAXBElementProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/providers/jettison/JettisonJAXBProvider.html#isReadable(java.lang.Class, java.lang.reflect.Type, java.lang.annotation.Annotation[], javax.ws.rs.core.MediaType)"><B>isReadable(Class&lt;?&gt;, Type, Annotation[], MediaType)</B></A> - 
Method in class org.apache.wink.providers.jettison.<A HREF="./org/apache/wink/providers/jettison/JettisonJAXBProvider.html" title="class in org.apache.wink.providers.jettison">JettisonJAXBProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/providers/json/JsonArrayProvider.html#isReadable(java.lang.Class, java.lang.reflect.Type, java.lang.annotation.Annotation[], javax.ws.rs.core.MediaType)"><B>isReadable(Class&lt;?&gt;, Type, Annotation[], MediaType)</B></A> - 
Method in class org.apache.wink.providers.json.<A HREF="./org/apache/wink/providers/json/JsonArrayProvider.html" title="class in org.apache.wink.providers.json">JsonArrayProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/providers/json/JsonJAXBProvider.html#isReadable(java.lang.Class, java.lang.reflect.Type, java.lang.annotation.Annotation[], javax.ws.rs.core.MediaType)"><B>isReadable(Class&lt;?&gt;, Type, Annotation[], MediaType)</B></A> - 
Method in class org.apache.wink.providers.json.<A HREF="./org/apache/wink/providers/json/JsonJAXBProvider.html" title="class in org.apache.wink.providers.json">JsonJAXBProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/providers/json/JsonProvider.html#isReadable(java.lang.Class, java.lang.reflect.Type, java.lang.annotation.Annotation[], javax.ws.rs.core.MediaType)"><B>isReadable(Class&lt;?&gt;, Type, Annotation[], MediaType)</B></A> - 
Method in class org.apache.wink.providers.json.<A HREF="./org/apache/wink/providers/json/JsonProvider.html" title="class in org.apache.wink.providers.json">JsonProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/providers/json4j/JSON4JArrayProvider.html#isReadable(java.lang.Class, java.lang.reflect.Type, java.lang.annotation.Annotation[], javax.ws.rs.core.MediaType)"><B>isReadable(Class&lt;?&gt;, Type, Annotation[], MediaType)</B></A> - 
Method in class org.apache.wink.providers.json4j.<A HREF="./org/apache/wink/providers/json4j/JSON4JArrayProvider.html" title="class in org.apache.wink.providers.json4j">JSON4JArrayProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/providers/json4j/JSON4JObjectProvider.html#isReadable(java.lang.Class, java.lang.reflect.Type, java.lang.annotation.Annotation[], javax.ws.rs.core.MediaType)"><B>isReadable(Class&lt;?&gt;, Type, Annotation[], MediaType)</B></A> - 
Method in class org.apache.wink.providers.json4j.<A HREF="./org/apache/wink/providers/json4j/JSON4JObjectProvider.html" title="class in org.apache.wink.providers.json4j">JSON4JObjectProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/providers/protobuf/WinkProtobufProvider.html#isReadable(java.lang.Class, java.lang.reflect.Type, java.lang.annotation.Annotation[], javax.ws.rs.core.MediaType)"><B>isReadable(Class&lt;?&gt;, Type, Annotation[], MediaType)</B></A> - 
Method in class org.apache.wink.providers.protobuf.<A HREF="./org/apache/wink/providers/protobuf/WinkProtobufProvider.html" title="class in org.apache.wink.providers.protobuf">WinkProtobufProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/providers/thrift/WinkThriftProvider.html#isReadable(java.lang.Class, java.lang.reflect.Type, java.lang.annotation.Annotation[], javax.ws.rs.core.MediaType)"><B>isReadable(Class&lt;?&gt;, Type, Annotation[], MediaType)</B></A> - 
Method in class org.apache.wink.providers.thrift.<A HREF="./org/apache/wink/providers/thrift/WinkThriftProvider.html" title="class in org.apache.wink.providers.thrift">WinkThriftProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/WADLGenerator.html#isResource(java.lang.Class)"><B>isResource(Class&lt;?&gt;)</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/WADLGenerator.html" title="class in org.apache.wink.common.model.wadl">WADLGenerator</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/server/WebDAVResponseBuilder.CollectionPropertyHandler.html#isSubCollection(org.apache.wink.common.model.synd.SyndEntry)"><B>isSubCollection(SyndEntry)</B></A> - 
Method in class org.apache.wink.webdav.server.<A HREF="./org/apache/wink/webdav/server/WebDAVResponseBuilder.CollectionPropertyHandler.html" title="class in org.apache.wink.webdav.server">WebDAVResponseBuilder.CollectionPropertyHandler</A>
<DD>Specifies if an entry actually represents a feed.
<DT><A HREF="./org/apache/wink/client/ClientConfig.html#isSupportDTDExpansion()"><B>isSupportDTDExpansion()</B></A> - 
Method in class org.apache.wink.client.<A HREF="./org/apache/wink/client/ClientConfig.html" title="class in org.apache.wink.client">ClientConfig</A>
<DD>Convenience method to get the boolean value of the wink.supportDTDExpansion property
<DT><A HREF="./org/apache/wink/json4j/JSONObject.html#isValidObject(java.lang.Object)"><B>isValidObject(Object)</B></A> - 
Static method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONObject.html" title="class in org.apache.wink.json4j">JSONObject</A>
<DD>Return whether the object is a valid value for a property.
<DT><A HREF="./org/apache/wink/json4j/JSONObject.html#isValidType(java.lang.Class)"><B>isValidType(Class)</B></A> - 
Static method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONObject.html" title="class in org.apache.wink.json4j">JSONObject</A>
<DD>Return whether the class is a valid type of value for a property.
<DT><A HREF="./org/apache/wink/providers/abdera/AbderaAtomEntryProvider.html#isWriteable(java.lang.Class, java.lang.reflect.Type, java.lang.annotation.Annotation[], javax.ws.rs.core.MediaType)"><B>isWriteable(Class&lt;?&gt;, Type, Annotation[], MediaType)</B></A> - 
Method in class org.apache.wink.providers.abdera.<A HREF="./org/apache/wink/providers/abdera/AbderaAtomEntryProvider.html" title="class in org.apache.wink.providers.abdera">AbderaAtomEntryProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/providers/abdera/AbderaAtomFeedProvider.html#isWriteable(java.lang.Class, java.lang.reflect.Type, java.lang.annotation.Annotation[], javax.ws.rs.core.MediaType)"><B>isWriteable(Class&lt;?&gt;, Type, Annotation[], MediaType)</B></A> - 
Method in class org.apache.wink.providers.abdera.<A HREF="./org/apache/wink/providers/abdera/AbderaAtomFeedProvider.html" title="class in org.apache.wink.providers.abdera">AbderaAtomFeedProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/providers/jettison/JettisonJAXBElementProvider.html#isWriteable(java.lang.Class, java.lang.reflect.Type, java.lang.annotation.Annotation[], javax.ws.rs.core.MediaType)"><B>isWriteable(Class&lt;?&gt;, Type, Annotation[], MediaType)</B></A> - 
Method in class org.apache.wink.providers.jettison.<A HREF="./org/apache/wink/providers/jettison/JettisonJAXBElementProvider.html" title="class in org.apache.wink.providers.jettison">JettisonJAXBElementProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/providers/jettison/JettisonJAXBProvider.html#isWriteable(java.lang.Class, java.lang.reflect.Type, java.lang.annotation.Annotation[], javax.ws.rs.core.MediaType)"><B>isWriteable(Class&lt;?&gt;, Type, Annotation[], MediaType)</B></A> - 
Method in class org.apache.wink.providers.jettison.<A HREF="./org/apache/wink/providers/jettison/JettisonJAXBProvider.html" title="class in org.apache.wink.providers.jettison">JettisonJAXBProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/providers/json/JsonArrayProvider.html#isWriteable(java.lang.Class, java.lang.reflect.Type, java.lang.annotation.Annotation[], javax.ws.rs.core.MediaType)"><B>isWriteable(Class&lt;?&gt;, Type, Annotation[], MediaType)</B></A> - 
Method in class org.apache.wink.providers.json.<A HREF="./org/apache/wink/providers/json/JsonArrayProvider.html" title="class in org.apache.wink.providers.json">JsonArrayProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/providers/json/JsonJAXBProvider.html#isWriteable(java.lang.Class, java.lang.reflect.Type, java.lang.annotation.Annotation[], javax.ws.rs.core.MediaType)"><B>isWriteable(Class&lt;?&gt;, Type, Annotation[], MediaType)</B></A> - 
Method in class org.apache.wink.providers.json.<A HREF="./org/apache/wink/providers/json/JsonJAXBProvider.html" title="class in org.apache.wink.providers.json">JsonJAXBProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/providers/json/JsonProvider.html#isWriteable(java.lang.Class, java.lang.reflect.Type, java.lang.annotation.Annotation[], javax.ws.rs.core.MediaType)"><B>isWriteable(Class&lt;?&gt;, Type, Annotation[], MediaType)</B></A> - 
Method in class org.apache.wink.providers.json.<A HREF="./org/apache/wink/providers/json/JsonProvider.html" title="class in org.apache.wink.providers.json">JsonProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/providers/json4j/JSON4JArrayProvider.html#isWriteable(java.lang.Class, java.lang.reflect.Type, java.lang.annotation.Annotation[], javax.ws.rs.core.MediaType)"><B>isWriteable(Class&lt;?&gt;, Type, Annotation[], MediaType)</B></A> - 
Method in class org.apache.wink.providers.json4j.<A HREF="./org/apache/wink/providers/json4j/JSON4JArrayProvider.html" title="class in org.apache.wink.providers.json4j">JSON4JArrayProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/providers/json4j/JSON4JObjectProvider.html#isWriteable(java.lang.Class, java.lang.reflect.Type, java.lang.annotation.Annotation[], javax.ws.rs.core.MediaType)"><B>isWriteable(Class&lt;?&gt;, Type, Annotation[], MediaType)</B></A> - 
Method in class org.apache.wink.providers.json4j.<A HREF="./org/apache/wink/providers/json4j/JSON4JObjectProvider.html" title="class in org.apache.wink.providers.json4j">JSON4JObjectProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/providers/protobuf/WinkProtobufProvider.html#isWriteable(java.lang.Class, java.lang.reflect.Type, java.lang.annotation.Annotation[], javax.ws.rs.core.MediaType)"><B>isWriteable(Class&lt;?&gt;, Type, Annotation[], MediaType)</B></A> - 
Method in class org.apache.wink.providers.protobuf.<A HREF="./org/apache/wink/providers/protobuf/WinkProtobufProvider.html" title="class in org.apache.wink.providers.protobuf">WinkProtobufProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/providers/thrift/WinkThriftProvider.html#isWriteable(java.lang.Class, java.lang.reflect.Type, java.lang.annotation.Annotation[], javax.ws.rs.core.MediaType)"><B>isWriteable(Class&lt;?&gt;, Type, Annotation[], MediaType)</B></A> - 
Method in class org.apache.wink.providers.thrift.<A HREF="./org/apache/wink/providers/thrift/WinkThriftProvider.html" title="class in org.apache.wink.providers.thrift">WinkThriftProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/rss/RssChannel.html#item"><B>item</B></A> - 
Variable in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssChannel.html" title="class in org.apache.wink.common.model.rss">RssChannel</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomFeed.html#itemsPerPage"><B>itemsPerPage</B></A> - 
Variable in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomFeed.html" title="class in org.apache.wink.common.model.atom">AtomFeed</A>
<DD>&nbsp;
</DL>
<HR>
<A NAME="_J_"><!-- --></A><H2>
<B>J</B></H2>
<DL>
<DT><A HREF="./org/apache/wink/common/model/JAXBUnmarshalOptions.html" title="class in org.apache.wink.common.model"><B>JAXBUnmarshalOptions</B></A> - Class in <A HREF="./org/apache/wink/common/model/package-summary.html">org.apache.wink.common.model</A><DD>&nbsp;<DT><A HREF="./org/apache/wink/common/model/JAXBUnmarshalOptions.html#JAXBUnmarshalOptions(java.util.Map)"><B>JAXBUnmarshalOptions(Map&lt;String, Object&gt;)</B></A> - 
Constructor for class org.apache.wink.common.model.<A HREF="./org/apache/wink/common/model/JAXBUnmarshalOptions.html" title="class in org.apache.wink.common.model">JAXBUnmarshalOptions</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/osgi/JaxRsFilter.html" title="class in org.apache.wink.osgi"><B>JaxRsFilter</B></A> - Class in <A HREF="./org/apache/wink/osgi/package-summary.html">org.apache.wink.osgi</A><DD>This <code>Filter</code> handles request URIs for which
 there is a matching Root Resource Class registered with the  
 Apache Wink RequestProcessor and delegates the others to the chain.<DT><A HREF="./org/apache/wink/osgi/JaxRsFilter.html#JaxRsFilter()"><B>JaxRsFilter()</B></A> - 
Constructor for class org.apache.wink.osgi.<A HREF="./org/apache/wink/osgi/JaxRsFilter.html" title="class in org.apache.wink.osgi">JaxRsFilter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/providers/jettison/JettisonJAXBElementProvider.html" title="class in org.apache.wink.providers.jettison"><B>JettisonJAXBElementProvider</B></A> - Class in <A HREF="./org/apache/wink/providers/jettison/package-summary.html">org.apache.wink.providers.jettison</A><DD>A Jettison JAXBElement provider.<DT><A HREF="./org/apache/wink/providers/jettison/JettisonJAXBElementProvider.html#JettisonJAXBElementProvider()"><B>JettisonJAXBElementProvider()</B></A> - 
Constructor for class org.apache.wink.providers.jettison.<A HREF="./org/apache/wink/providers/jettison/JettisonJAXBElementProvider.html" title="class in org.apache.wink.providers.jettison">JettisonJAXBElementProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/providers/jettison/JettisonJAXBElementProvider.html#JettisonJAXBElementProvider(boolean, org.codehaus.jettison.mapped.Configuration, org.codehaus.jettison.mapped.Configuration)"><B>JettisonJAXBElementProvider(boolean, Configuration, Configuration)</B></A> - 
Constructor for class org.apache.wink.providers.jettison.<A HREF="./org/apache/wink/providers/jettison/JettisonJAXBElementProvider.html" title="class in org.apache.wink.providers.jettison">JettisonJAXBElementProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/providers/jettison/JettisonJAXBProvider.html" title="class in org.apache.wink.providers.jettison"><B>JettisonJAXBProvider</B></A> - Class in <A HREF="./org/apache/wink/providers/jettison/package-summary.html">org.apache.wink.providers.jettison</A><DD>A Jettison JAXB provider.<DT><A HREF="./org/apache/wink/providers/jettison/JettisonJAXBProvider.html#JettisonJAXBProvider()"><B>JettisonJAXBProvider()</B></A> - 
Constructor for class org.apache.wink.providers.jettison.<A HREF="./org/apache/wink/providers/jettison/JettisonJAXBProvider.html" title="class in org.apache.wink.providers.jettison">JettisonJAXBProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/providers/jettison/JettisonJAXBProvider.html#JettisonJAXBProvider(boolean, org.codehaus.jettison.mapped.Configuration, org.codehaus.jettison.mapped.Configuration)"><B>JettisonJAXBProvider(boolean, Configuration, Configuration)</B></A> - 
Constructor for class org.apache.wink.providers.jettison.<A HREF="./org/apache/wink/providers/jettison/JettisonJAXBProvider.html" title="class in org.apache.wink.providers.jettison">JettisonJAXBProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONArrayDelegate.html#join(java.lang.String)"><B>join(String)</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONArrayDelegate.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONArrayDelegate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONArray.html#join(java.lang.String)"><B>join(String)</B></A> - 
Method in interface org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONArray.html" title="interface in org.apache.wink.json4j.compat">JSONArray</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/JSONArray.html#join(java.lang.String)"><B>join(String)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONArray.html" title="class in org.apache.wink.json4j">JSONArray</A>
<DD>Method to mimic the behavior of the JavaScript array join function
<DT><A HREF="./org/apache/wink/json4j/JSON.html" title="class in org.apache.wink.json4j"><B>JSON</B></A> - Class in <A HREF="./org/apache/wink/json4j/package-summary.html">org.apache.wink.json4j</A><DD>Helper class that does generic parsing of a JSON stream and returns the appropriate 
 JSON structure (JSONArray or JSONObject).<DT><A HREF="./org/apache/wink/json4j/JSON.html#JSON()"><B>JSON()</B></A> - 
Constructor for class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSON.html" title="class in org.apache.wink.json4j">JSON</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/providers/json4j/JSON4JArrayProvider.html" title="class in org.apache.wink.providers.json4j"><B>JSON4JArrayProvider</B></A> - Class in <A HREF="./org/apache/wink/providers/json4j/package-summary.html">org.apache.wink.providers.json4j</A><DD>&nbsp;<DT><A HREF="./org/apache/wink/providers/json4j/JSON4JArrayProvider.html#JSON4JArrayProvider()"><B>JSON4JArrayProvider()</B></A> - 
Constructor for class org.apache.wink.providers.json4j.<A HREF="./org/apache/wink/providers/json4j/JSON4JArrayProvider.html" title="class in org.apache.wink.providers.json4j">JSON4JArrayProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/providers/json4j/JSON4JObjectProvider.html" title="class in org.apache.wink.providers.json4j"><B>JSON4JObjectProvider</B></A> - Class in <A HREF="./org/apache/wink/providers/json4j/package-summary.html">org.apache.wink.providers.json4j</A><DD>&nbsp;<DT><A HREF="./org/apache/wink/providers/json4j/JSON4JObjectProvider.html#JSON4JObjectProvider()"><B>JSON4JObjectProvider()</B></A> - 
Constructor for class org.apache.wink.providers.json4j.<A HREF="./org/apache/wink/providers/json4j/JSON4JObjectProvider.html" title="class in org.apache.wink.providers.json4j">JSON4JObjectProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONArray.html" title="interface in org.apache.wink.json4j.compat"><B>JSONArray</B></A> - Interface in <A HREF="./org/apache/wink/json4j/compat/package-summary.html">org.apache.wink.json4j.compat</A><DD>&nbsp;<DT><A HREF="./org/apache/wink/json4j/JSONArray.html" title="class in org.apache.wink.json4j"><B>JSONArray</B></A> - Class in <A HREF="./org/apache/wink/json4j/package-summary.html">org.apache.wink.json4j</A><DD>Extension of ArrayList that only allows values which are JSON-able.<DT><A HREF="./org/apache/wink/json4j/JSONArray.html#JSONArray()"><B>JSONArray()</B></A> - 
Constructor for class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONArray.html" title="class in org.apache.wink.json4j">JSONArray</A>
<DD>Create a new instance of this class.
<DT><A HREF="./org/apache/wink/json4j/JSONArray.html#JSONArray(int)"><B>JSONArray(int)</B></A> - 
Constructor for class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONArray.html" title="class in org.apache.wink.json4j">JSONArray</A>
<DD>Create a new instance of this class with the specified initial capacity.
<DT><A HREF="./org/apache/wink/json4j/JSONArray.html#JSONArray(java.util.Collection)"><B>JSONArray(Collection)</B></A> - 
Constructor for class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONArray.html" title="class in org.apache.wink.json4j">JSONArray</A>
<DD>Create a new instance of this class based off the contents of the passed in collection
<DT><A HREF="./org/apache/wink/json4j/JSONArray.html#JSONArray(java.lang.Object[])"><B>JSONArray(Object[])</B></A> - 
Constructor for class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONArray.html" title="class in org.apache.wink.json4j">JSONArray</A>
<DD>Create a new instance of this class based off the contents of the passed object array.
<DT><A HREF="./org/apache/wink/json4j/JSONArray.html#JSONArray(java.lang.Object[], boolean)"><B>JSONArray(Object[], boolean)</B></A> - 
Constructor for class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONArray.html" title="class in org.apache.wink.json4j">JSONArray</A>
<DD>Create a new instance of this class based off the contents of the passed object array.
<DT><A HREF="./org/apache/wink/json4j/JSONArray.html#JSONArray(java.util.Collection, boolean)"><B>JSONArray(Collection, boolean)</B></A> - 
Constructor for class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONArray.html" title="class in org.apache.wink.json4j">JSONArray</A>
<DD>Create a new instance of this class based off the contents of the passed
 in collection
<DT><A HREF="./org/apache/wink/json4j/JSONArray.html#JSONArray(java.lang.String)"><B>JSONArray(String)</B></A> - 
Constructor for class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONArray.html" title="class in org.apache.wink.json4j">JSONArray</A>
<DD>Create a new instance of this class from the provided JSON object string.
<DT><A HREF="./org/apache/wink/json4j/JSONArray.html#JSONArray(java.lang.String, boolean)"><B>JSONArray(String, boolean)</B></A> - 
Constructor for class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONArray.html" title="class in org.apache.wink.json4j">JSONArray</A>
<DD>Create a new instance of this class from the provided JSON object string.
<DT><A HREF="./org/apache/wink/json4j/JSONArray.html#JSONArray(java.io.Reader)"><B>JSONArray(Reader)</B></A> - 
Constructor for class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONArray.html" title="class in org.apache.wink.json4j">JSONArray</A>
<DD>Create a new instance of this class from the data provided from the reader.
<DT><A HREF="./org/apache/wink/json4j/JSONArray.html#JSONArray(java.io.Reader, boolean)"><B>JSONArray(Reader, boolean)</B></A> - 
Constructor for class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONArray.html" title="class in org.apache.wink.json4j">JSONArray</A>
<DD>Create a new instance of this class from the data provided from the reader.
<DT><A HREF="./org/apache/wink/json4j/JSONArray.html#JSONArray(java.io.InputStream)"><B>JSONArray(InputStream)</B></A> - 
Constructor for class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONArray.html" title="class in org.apache.wink.json4j">JSONArray</A>
<DD>Create a new instance of this class from the data provided from the input stream.
<DT><A HREF="./org/apache/wink/json4j/JSONArray.html#JSONArray(java.io.InputStream, boolean)"><B>JSONArray(InputStream, boolean)</B></A> - 
Constructor for class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONArray.html" title="class in org.apache.wink.json4j">JSONArray</A>
<DD>Create a new instance of this class from the data provided from the input stream.
<DT><A HREF="./org/apache/wink/providers/json/JsonArrayProvider.html" title="class in org.apache.wink.providers.json"><B>JsonArrayProvider</B></A> - Class in <A HREF="./org/apache/wink/providers/json/package-summary.html">org.apache.wink.providers.json</A><DD>&nbsp;<DT><A HREF="./org/apache/wink/providers/json/JsonArrayProvider.html#JsonArrayProvider()"><B>JsonArrayProvider()</B></A> - 
Constructor for class org.apache.wink.providers.json.<A HREF="./org/apache/wink/providers/json/JsonArrayProvider.html" title="class in org.apache.wink.providers.json">JsonArrayProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/JSONArtifact.html" title="interface in org.apache.wink.json4j"><B>JSONArtifact</B></A> - Interface in <A HREF="./org/apache/wink/json4j/package-summary.html">org.apache.wink.json4j</A><DD>Interface class to define a set of generic apis both JSONObject and JSONArray implement.<DT><A HREF="./org/apache/wink/json4j/compat/JSONException.html" title="class in org.apache.wink.json4j.compat"><B>JSONException</B></A> - Exception in <A HREF="./org/apache/wink/json4j/compat/package-summary.html">org.apache.wink.json4j.compat</A><DD>&nbsp;<DT><A HREF="./org/apache/wink/json4j/compat/JSONException.html#JSONException(java.lang.String)"><B>JSONException(String)</B></A> - 
Constructor for exception org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONException.html" title="class in org.apache.wink.json4j.compat">JSONException</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONException.html#JSONException(java.lang.Throwable)"><B>JSONException(Throwable)</B></A> - 
Constructor for exception org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONException.html" title="class in org.apache.wink.json4j.compat">JSONException</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/JSONException.html" title="class in org.apache.wink.json4j"><B>JSONException</B></A> - Exception in <A HREF="./org/apache/wink/json4j/package-summary.html">org.apache.wink.json4j</A><DD>Class that implements an exception type thrown by all JSON classes
 as a common exception when JSON handling errors occur.<DT><A HREF="./org/apache/wink/json4j/JSONException.html#JSONException(java.lang.String)"><B>JSONException(String)</B></A> - 
Constructor for exception org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONException.html" title="class in org.apache.wink.json4j">JSONException</A>
<DD>Constructor for JSON Exception
<DT><A HREF="./org/apache/wink/json4j/JSONException.html#JSONException(java.lang.Throwable)"><B>JSONException(Throwable)</B></A> - 
Constructor for exception org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONException.html" title="class in org.apache.wink.json4j">JSONException</A>
<DD>Constructor for JSON Exception
<DT><A HREF="./org/apache/wink/json4j/compat/JSONFactory.html" title="class in org.apache.wink.json4j.compat"><B>JSONFactory</B></A> - Class in <A HREF="./org/apache/wink/json4j/compat/package-summary.html">org.apache.wink.json4j.compat</A><DD>&nbsp;<DT><A HREF="./org/apache/wink/json4j/compat/JSONFactory.html#JSONFactory()"><B>JSONFactory()</B></A> - 
Constructor for class org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONFactory.html" title="class in org.apache.wink.json4j.compat">JSONFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/providers/json/JsonJAXBProvider.html" title="class in org.apache.wink.providers.json"><B>JsonJAXBProvider</B></A> - Class in <A HREF="./org/apache/wink/providers/json/package-summary.html">org.apache.wink.providers.json</A><DD>&nbsp;<DT><A HREF="./org/apache/wink/providers/json/JsonJAXBProvider.html#JsonJAXBProvider()"><B>JsonJAXBProvider()</B></A> - 
Constructor for class org.apache.wink.providers.json.<A HREF="./org/apache/wink/providers/json/JsonJAXBProvider.html" title="class in org.apache.wink.providers.json">JsonJAXBProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONObject.html" title="interface in org.apache.wink.json4j.compat"><B>JSONObject</B></A> - Interface in <A HREF="./org/apache/wink/json4j/compat/package-summary.html">org.apache.wink.json4j.compat</A><DD>&nbsp;<DT><A HREF="./org/apache/wink/json4j/JSONObject.html" title="class in org.apache.wink.json4j"><B>JSONObject</B></A> - Class in <A HREF="./org/apache/wink/json4j/package-summary.html">org.apache.wink.json4j</A><DD>Models a JSON Object.<DT><A HREF="./org/apache/wink/json4j/JSONObject.html#JSONObject()"><B>JSONObject()</B></A> - 
Constructor for class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONObject.html" title="class in org.apache.wink.json4j">JSONObject</A>
<DD>Create a new instance of this class.
<DT><A HREF="./org/apache/wink/json4j/JSONObject.html#JSONObject(org.apache.wink.json4j.JSONObject, java.lang.String[])"><B>JSONObject(JSONObject, String[])</B></A> - 
Constructor for class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONObject.html" title="class in org.apache.wink.json4j">JSONObject</A>
<DD>Create a new instance of this class taking selected values from the underlying one.
<DT><A HREF="./org/apache/wink/json4j/JSONObject.html#JSONObject(java.lang.String)"><B>JSONObject(String)</B></A> - 
Constructor for class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONObject.html" title="class in org.apache.wink.json4j">JSONObject</A>
<DD>Create a new instance of this class from the provided JSON object string.
<DT><A HREF="./org/apache/wink/json4j/JSONObject.html#JSONObject(java.lang.String, boolean)"><B>JSONObject(String, boolean)</B></A> - 
Constructor for class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONObject.html" title="class in org.apache.wink.json4j">JSONObject</A>
<DD>Create a new instance of this class from the provided JSON object string.
<DT><A HREF="./org/apache/wink/json4j/JSONObject.html#JSONObject(java.io.Reader)"><B>JSONObject(Reader)</B></A> - 
Constructor for class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONObject.html" title="class in org.apache.wink.json4j">JSONObject</A>
<DD>Create a new instance of this class from the data provided from the reader.
<DT><A HREF="./org/apache/wink/json4j/JSONObject.html#JSONObject(java.io.Reader, boolean)"><B>JSONObject(Reader, boolean)</B></A> - 
Constructor for class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONObject.html" title="class in org.apache.wink.json4j">JSONObject</A>
<DD>Create a new instance of this class from the data provided from the reader.
<DT><A HREF="./org/apache/wink/json4j/JSONObject.html#JSONObject(java.io.InputStream)"><B>JSONObject(InputStream)</B></A> - 
Constructor for class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONObject.html" title="class in org.apache.wink.json4j">JSONObject</A>
<DD>Create a new instance of this class from the data provided from the input stream.
<DT><A HREF="./org/apache/wink/json4j/JSONObject.html#JSONObject(java.io.InputStream, boolean)"><B>JSONObject(InputStream, boolean)</B></A> - 
Constructor for class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONObject.html" title="class in org.apache.wink.json4j">JSONObject</A>
<DD>Create a new instance of this class from the data provided from the input stream.
<DT><A HREF="./org/apache/wink/json4j/JSONObject.html#JSONObject(java.util.Map)"><B>JSONObject(Map)</B></A> - 
Constructor for class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONObject.html" title="class in org.apache.wink.json4j">JSONObject</A>
<DD>Create a new instance of this class using the contents of the provided map.
<DT><A HREF="./org/apache/wink/json4j/JSONObject.html#JSONObject(java.lang.Object)"><B>JSONObject(Object)</B></A> - 
Constructor for class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONObject.html" title="class in org.apache.wink.json4j">JSONObject</A>
<DD>Create a new instance of this class using the properties of the provided JavaBean.
<DT><A HREF="./org/apache/wink/json4j/JSONObject.html#JSONObject(java.lang.Object, boolean)"><B>JSONObject(Object, boolean)</B></A> - 
Constructor for class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONObject.html" title="class in org.apache.wink.json4j">JSONObject</A>
<DD>Create a new instance of this class using the properties of the provided JavaBean.
<DT><A HREF="./org/apache/wink/json4j/JSONObject.html#JSONObject(java.util.Map, boolean)"><B>JSONObject(Map, boolean)</B></A> - 
Constructor for class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONObject.html" title="class in org.apache.wink.json4j">JSONObject</A>
<DD>Create a new instance of this class using the contents of the provided map.
<DT><A HREF="./org/apache/wink/providers/json/JsonProvider.html" title="class in org.apache.wink.providers.json"><B>JsonProvider</B></A> - Class in <A HREF="./org/apache/wink/providers/json/package-summary.html">org.apache.wink.providers.json</A><DD>&nbsp;<DT><A HREF="./org/apache/wink/providers/json/JsonProvider.html#JsonProvider()"><B>JsonProvider()</B></A> - 
Constructor for class org.apache.wink.providers.json.<A HREF="./org/apache/wink/providers/json/JsonProvider.html" title="class in org.apache.wink.providers.json">JsonProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONString.html" title="interface in org.apache.wink.json4j.compat"><B>JSONString</B></A> - Interface in <A HREF="./org/apache/wink/json4j/compat/package-summary.html">org.apache.wink.json4j.compat</A><DD>&nbsp;<DT><A HREF="./org/apache/wink/json4j/JSONString.html" title="interface in org.apache.wink.json4j"><B>JSONString</B></A> - Interface in <A HREF="./org/apache/wink/json4j/package-summary.html">org.apache.wink.json4j</A><DD>An interface that can be implemented to make a 
 particular object have an easy to use JSON representation.<DT><A HREF="./org/apache/wink/json4j/compat/JSONStringer.html" title="interface in org.apache.wink.json4j.compat"><B>JSONStringer</B></A> - Interface in <A HREF="./org/apache/wink/json4j/compat/package-summary.html">org.apache.wink.json4j.compat</A><DD>&nbsp;<DT><A HREF="./org/apache/wink/json4j/JSONStringer.html" title="class in org.apache.wink.json4j"><B>JSONStringer</B></A> - Class in <A HREF="./org/apache/wink/json4j/package-summary.html">org.apache.wink.json4j</A><DD>This class implements a JSONSringer, a basic convenience subclass of JSONWriter to allow for
 generating JSON strings quickly.<DT><A HREF="./org/apache/wink/json4j/JSONStringer.html#JSONStringer()"><B>JSONStringer()</B></A> - 
Constructor for class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONStringer.html" title="class in org.apache.wink.json4j">JSONStringer</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/providers/json/JSONUtils.html" title="class in org.apache.wink.providers.json"><B>JSONUtils</B></A> - Class in <A HREF="./org/apache/wink/providers/json/package-summary.html">org.apache.wink.providers.json</A><DD>&nbsp;<DT><A HREF="./org/apache/wink/providers/json/JSONUtils.html#JSONUtils()"><B>JSONUtils()</B></A> - 
Constructor for class org.apache.wink.providers.json.<A HREF="./org/apache/wink/providers/json/JSONUtils.html" title="class in org.apache.wink.providers.json">JSONUtils</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONWriter.html" title="interface in org.apache.wink.json4j.compat"><B>JSONWriter</B></A> - Interface in <A HREF="./org/apache/wink/json4j/compat/package-summary.html">org.apache.wink.json4j.compat</A><DD>&nbsp;<DT><A HREF="./org/apache/wink/json4j/JSONWriter.html" title="class in org.apache.wink.json4j"><B>JSONWriter</B></A> - Class in <A HREF="./org/apache/wink/json4j/package-summary.html">org.apache.wink.json4j</A><DD>This class implements a JSONWrier, a convenience function for writing out JSON
 to a writer or underlying stream.<DT><A HREF="./org/apache/wink/json4j/JSONWriter.html#JSONWriter(java.io.Writer)"><B>JSONWriter(Writer)</B></A> - 
Constructor for class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONWriter.html" title="class in org.apache.wink.json4j">JSONWriter</A>
<DD>Constructor.
</DL>
<HR>
<A NAME="_K_"><!-- --></A><H2>
<B>K</B></H2>
<DL>
<DT><A HREF="./org/apache/wink/webdav/model/Keepalive.html" title="class in org.apache.wink.webdav.model"><B>Keepalive</B></A> - Class in <A HREF="./org/apache/wink/webdav/model/package-summary.html">org.apache.wink.webdav.model</A><DD>The <code>keepalive</code> XML element per the WebDAV specification [RFC
 4918]<DT><A HREF="./org/apache/wink/webdav/model/Keepalive.html#Keepalive()"><B>Keepalive()</B></A> - 
Constructor for class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Keepalive.html" title="class in org.apache.wink.webdav.model">Keepalive</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Propertybehavior.html#keepalive"><B>keepalive</B></A> - 
Variable in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Propertybehavior.html" title="class in org.apache.wink.webdav.model">Propertybehavior</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONWriterDelegate.html#key(java.lang.String)"><B>key(String)</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONWriterDelegate.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONWriterDelegate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONWriter.html#key(java.lang.String)"><B>key(String)</B></A> - 
Method in interface org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONWriter.html" title="interface in org.apache.wink.json4j.compat">JSONWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/JSONWriter.html#key(java.lang.String)"><B>key(String)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONWriter.html" title="class in org.apache.wink.json4j">JSONWriter</A>
<DD>Place a key in the current JSON Object.
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONObjectDelegate.html#keys()"><B>keys()</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONObjectDelegate.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONObjectDelegate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONObject.html#keys()"><B>keys()</B></A> - 
Method in interface org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONObject.html" title="interface in org.apache.wink.json4j.compat">JSONObject</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/JSONObject.html#keys()"><B>keys()</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONObject.html" title="class in org.apache.wink.json4j">JSONObject</A>
<DD>Utility function that returns an iterator of all the keys (attributes) of this JSONObject
</DL>
<HR>
<A NAME="_L_"><!-- --></A><H2>
<B>L</B></H2>
<DL>
<DT><A HREF="./org/apache/wink/common/model/atom/AtomCategory.html#label"><B>label</B></A> - 
Variable in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomCategory.html" title="class in org.apache.wink.common.model.atom">AtomCategory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomCommonAttributes.html#lang"><B>lang</B></A> - 
Variable in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomCommonAttributes.html" title="class in org.apache.wink.common.model.atom">AtomCommonAttributes</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomCommonAttributesSimpleContent.html#lang"><B>lang</B></A> - 
Variable in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomCommonAttributesSimpleContent.html" title="class in org.apache.wink.common.model.atom">AtomCommonAttributesSimpleContent</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Doc.html#lang"><B>lang</B></A> - 
Variable in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Doc.html" title="class in org.apache.wink.common.model.wadl">Doc</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html#language"><B>language</B></A> - 
Variable in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchDescription</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchQuery.html#language"><B>language</B></A> - 
Variable in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchQuery.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchQuery</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/rss/RssChannel.html#language"><B>language</B></A> - 
Variable in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssChannel.html" title="class in org.apache.wink.common.model.rss">RssChannel</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/rss/RssChannel.html#lastBuildDate"><B>lastBuildDate</B></A> - 
Variable in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssChannel.html" title="class in org.apache.wink.common.model.rss">RssChannel</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomLink.html#length"><B>length</B></A> - 
Variable in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomLink.html" title="class in org.apache.wink.common.model.atom">AtomLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/rss/RssEnclosure.html#length"><B>length</B></A> - 
Variable in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssEnclosure.html" title="class in org.apache.wink.common.model.rss">RssEnclosure</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONArrayDelegate.html#length()"><B>length()</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONArrayDelegate.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONArrayDelegate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONObjectDelegate.html#length()"><B>length()</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONObjectDelegate.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONObjectDelegate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONArray.html#length()"><B>length()</B></A> - 
Method in interface org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONArray.html" title="interface in org.apache.wink.json4j.compat">JSONArray</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONObject.html#length()"><B>length()</B></A> - 
Method in interface org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONObject.html" title="interface in org.apache.wink.json4j.compat">JSONObject</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/JSONArray.html#length()"><B>length()</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONArray.html" title="class in org.apache.wink.json4j">JSONArray</A>
<DD>Utility function that maps ArrayList.size() to length, for compatibility to other JSON parsers.
<DT><A HREF="./org/apache/wink/json4j/JSONObject.html#length()"><B>length()</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONObject.html" title="class in org.apache.wink.json4j">JSONObject</A>
<DD>Method to return the number of keys in this JSONObject.
<DT><A HREF="./org/apache/wink/common/http/HttpStatus.html#LENGTH_REQUIRED"><B>LENGTH_REQUIRED</B></A> - 
Static variable in class org.apache.wink.common.http.<A HREF="./org/apache/wink/common/http/HttpStatus.html" title="class in org.apache.wink.common.http">HttpStatus</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomEntry.html#link"><B>link</B></A> - 
Variable in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomEntry.html" title="class in org.apache.wink.common.model.atom">AtomEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomFeed.html#link"><B>link</B></A> - 
Variable in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomFeed.html" title="class in org.apache.wink.common.model.atom">AtomFeed</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/rss/RssChannel.html#link"><B>link</B></A> - 
Variable in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssChannel.html" title="class in org.apache.wink.common.model.rss">RssChannel</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/rss/RssImage.html#link"><B>link</B></A> - 
Variable in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssImage.html" title="class in org.apache.wink.common.model.rss">RssImage</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/rss/RssItem.html#link"><B>link</B></A> - 
Variable in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssItem.html" title="class in org.apache.wink.common.model.rss">RssItem</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/rss/RssTextInput.html#link"><B>link</B></A> - 
Variable in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssTextInput.html" title="class in org.apache.wink.common.model.rss">RssTextInput</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Link.html" title="class in org.apache.wink.common.model.wadl"><B>Link</B></A> - Class in <A HREF="./org/apache/wink/common/model/wadl/package-summary.html">org.apache.wink.common.model.wadl</A><DD>Java class for anonymous complex type.<DT><A HREF="./org/apache/wink/common/model/wadl/Link.html#Link()"><B>Link()</B></A> - 
Constructor for class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Link.html" title="class in org.apache.wink.common.model.wadl">Link</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Param.html#link"><B>link</B></A> - 
Variable in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Param.html" title="class in org.apache.wink.common.model.wadl">Param</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Link.html" title="class in org.apache.wink.webdav.model"><B>Link</B></A> - Class in <A HREF="./org/apache/wink/webdav/model/package-summary.html">org.apache.wink.webdav.model</A><DD>The <code>link</code> XML element per the WebDAV specification [RFC 4918]<DT><A HREF="./org/apache/wink/webdav/model/Link.html#Link()"><B>Link()</B></A> - 
Constructor for class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Link.html" title="class in org.apache.wink.webdav.model">Link</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Source.html#link"><B>link</B></A> - 
Variable in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Source.html" title="class in org.apache.wink.webdav.model">Source</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/server/utils/LinkBuilders.html" title="interface in org.apache.wink.server.utils"><B>LinkBuilders</B></A> - Interface in <A HREF="./org/apache/wink/server/utils/package-summary.html">org.apache.wink.server.utils</A><DD>Provides access to <A HREF="./org/apache/wink/server/utils/SystemLinksBuilder.html" title="interface in org.apache.wink.server.utils"><CODE>SystemLinksBuilder</CODE></A> and to
 <A HREF="./org/apache/wink/server/utils/SingleLinkBuilder.html" title="interface in org.apache.wink.server.utils"><CODE>SingleLinkBuilder</CODE></A><DT><A HREF="./org/apache/wink/webdav/WebDAVHeaders.html#LOCK_TOKEN"><B>LOCK_TOKEN</B></A> - 
Static variable in class org.apache.wink.webdav.<A HREF="./org/apache/wink/webdav/WebDAVHeaders.html" title="class in org.apache.wink.webdav">WebDAVHeaders</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Lockdiscovery.html" title="class in org.apache.wink.webdav.model"><B>Lockdiscovery</B></A> - Class in <A HREF="./org/apache/wink/webdav/model/package-summary.html">org.apache.wink.webdav.model</A><DD>The <code>lockdiscovery</code> Property per the WebDAV specification [RFC
 4918]<DT><A HREF="./org/apache/wink/webdav/model/Lockdiscovery.html#Lockdiscovery()"><B>Lockdiscovery()</B></A> - 
Constructor for class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Lockdiscovery.html" title="class in org.apache.wink.webdav.model">Lockdiscovery</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Prop.html#lockdiscovery"><B>lockdiscovery</B></A> - 
Variable in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Prop.html" title="class in org.apache.wink.webdav.model">Prop</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/http/HttpStatus.html#LOCKED"><B>LOCKED</B></A> - 
Static variable in class org.apache.wink.common.http.<A HREF="./org/apache/wink/common/http/HttpStatus.html" title="class in org.apache.wink.common.http">HttpStatus</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Lockentry.html" title="class in org.apache.wink.webdav.model"><B>Lockentry</B></A> - Class in <A HREF="./org/apache/wink/webdav/model/package-summary.html">org.apache.wink.webdav.model</A><DD>The <code>lockentry</code> XML element per the WebDAV specification [RFC
 4918]<DT><A HREF="./org/apache/wink/webdav/model/Lockentry.html#Lockentry()"><B>Lockentry()</B></A> - 
Constructor for class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Lockentry.html" title="class in org.apache.wink.webdav.model">Lockentry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Supportedlock.html#lockentry"><B>lockentry</B></A> - 
Variable in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Supportedlock.html" title="class in org.apache.wink.webdav.model">Supportedlock</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Lockinfo.html" title="class in org.apache.wink.webdav.model"><B>Lockinfo</B></A> - Class in <A HREF="./org/apache/wink/webdav/model/package-summary.html">org.apache.wink.webdav.model</A><DD>The <code>lockinfo</code> XML element per the WebDAV specification [RFC 4918]<DT><A HREF="./org/apache/wink/webdav/model/Lockinfo.html#Lockinfo()"><B>Lockinfo()</B></A> - 
Constructor for class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Lockinfo.html" title="class in org.apache.wink.webdav.model">Lockinfo</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Activelock.html#lockscope"><B>lockscope</B></A> - 
Variable in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Activelock.html" title="class in org.apache.wink.webdav.model">Activelock</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Lockentry.html#lockscope"><B>lockscope</B></A> - 
Variable in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Lockentry.html" title="class in org.apache.wink.webdav.model">Lockentry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Lockinfo.html#lockscope"><B>lockscope</B></A> - 
Variable in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Lockinfo.html" title="class in org.apache.wink.webdav.model">Lockinfo</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Lockscope.html" title="class in org.apache.wink.webdav.model"><B>Lockscope</B></A> - Class in <A HREF="./org/apache/wink/webdav/model/package-summary.html">org.apache.wink.webdav.model</A><DD>The <code>lockscope</code> XML element per the WebDAV specification [RFC
 4918]<DT><A HREF="./org/apache/wink/webdav/model/Lockscope.html#Lockscope()"><B>Lockscope()</B></A> - 
Constructor for class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Lockscope.html" title="class in org.apache.wink.webdav.model">Lockscope</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Activelock.html#locktoken"><B>locktoken</B></A> - 
Variable in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Activelock.html" title="class in org.apache.wink.webdav.model">Activelock</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Locktoken.html" title="class in org.apache.wink.webdav.model"><B>Locktoken</B></A> - Class in <A HREF="./org/apache/wink/webdav/model/package-summary.html">org.apache.wink.webdav.model</A><DD>The <code>locktoken</code> XML element per the WebDAV specification [RFC
 4918]<DT><A HREF="./org/apache/wink/webdav/model/Locktoken.html#Locktoken()"><B>Locktoken()</B></A> - 
Constructor for class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Locktoken.html" title="class in org.apache.wink.webdav.model">Locktoken</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Activelock.html#locktype"><B>locktype</B></A> - 
Variable in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Activelock.html" title="class in org.apache.wink.webdav.model">Activelock</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Lockentry.html#locktype"><B>locktype</B></A> - 
Variable in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Lockentry.html" title="class in org.apache.wink.webdav.model">Lockentry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Lockinfo.html#locktype"><B>locktype</B></A> - 
Variable in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Lockinfo.html" title="class in org.apache.wink.webdav.model">Lockinfo</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Locktype.html" title="class in org.apache.wink.webdav.model"><B>Locktype</B></A> - Class in <A HREF="./org/apache/wink/webdav/model/package-summary.html">org.apache.wink.webdav.model</A><DD>The <code>locktype</code> XML element per the WebDAV specification [RFC 4918]<DT><A HREF="./org/apache/wink/webdav/model/Locktype.html#Locktype()"><B>Locktype()</B></A> - 
Constructor for class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Locktype.html" title="class in org.apache.wink.webdav.model">Locktype</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomFeed.html#logo"><B>logo</B></A> - 
Variable in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomFeed.html" title="class in org.apache.wink.common.model.atom">AtomFeed</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/utils/ProviderUtils.html#logUserProviderException(java.lang.RuntimeException, java.lang.Object, org.apache.wink.common.utils.ProviderUtils.PROVIDER_EXCEPTION_ORIGINATOR, java.lang.Object[], org.apache.wink.common.RuntimeContext)"><B>logUserProviderException(RuntimeException, Object, ProviderUtils.PROVIDER_EXCEPTION_ORIGINATOR, Object[], RuntimeContext)</B></A> - 
Static method in class org.apache.wink.common.utils.<A HREF="./org/apache/wink/common/utils/ProviderUtils.html" title="class in org.apache.wink.common.utils">ProviderUtils</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html#longName"><B>longName</B></A> - 
Variable in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchDescription</A>
<DD>&nbsp;
</DL>
<HR>
<A NAME="_M_"><!-- --></A><H2>
<B>M</B></H2>
<DL>
<DT><A HREF="./org/apache/wink/client/MockHttpServer.html#main(java.lang.String[])"><B>main(String[])</B></A> - 
Static method in class org.apache.wink.client.<A HREF="./org/apache/wink/client/MockHttpServer.html" title="class in org.apache.wink.client">MockHttpServer</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/rss/RssChannel.html#managingEditor"><B>managingEditor</B></A> - 
Variable in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssChannel.html" title="class in org.apache.wink.common.model.rss">RssChannel</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomEntry.html#marshal(org.apache.wink.common.model.atom.AtomEntry, java.io.OutputStream)"><B>marshal(AtomEntry, OutputStream)</B></A> - 
Static method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomEntry.html" title="class in org.apache.wink.common.model.atom">AtomEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomFeed.html#marshal(org.apache.wink.common.model.atom.AtomFeed, java.io.OutputStream)"><B>marshal(AtomFeed, OutputStream)</B></A> - 
Static method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomFeed.html" title="class in org.apache.wink.common.model.atom">AtomFeed</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Multistatus.html#marshal(org.apache.wink.webdav.model.Multistatus, java.io.OutputStream)"><B>marshal(Multistatus, OutputStream)</B></A> - 
Static method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Multistatus.html" title="class in org.apache.wink.webdav.model">Multistatus</A>
<DD>Marshal a Multistatus object to the provided output stream
<DT><A HREF="./org/apache/wink/webdav/model/Multistatus.html#marshal(org.apache.wink.webdav.model.Multistatus, java.io.Writer)"><B>marshal(Multistatus, Writer)</B></A> - 
Static method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Multistatus.html" title="class in org.apache.wink.webdav.model">Multistatus</A>
<DD>Marshal a Multistatus object to the provided writer
<DT><A HREF="./org/apache/wink/webdav/model/Propertyupdate.html#marshal(org.apache.wink.webdav.model.Propertyupdate, java.io.OutputStream)"><B>marshal(Propertyupdate, OutputStream)</B></A> - 
Static method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Propertyupdate.html" title="class in org.apache.wink.webdav.model">Propertyupdate</A>
<DD>Marshal a Propertyupdate object to the provided output stream
<DT><A HREF="./org/apache/wink/webdav/model/Propertyupdate.html#marshal(org.apache.wink.webdav.model.Propertyupdate, java.io.Writer)"><B>marshal(Propertyupdate, Writer)</B></A> - 
Static method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Propertyupdate.html" title="class in org.apache.wink.webdav.model">Propertyupdate</A>
<DD>Marshal a Propfind object to the provided writer
<DT><A HREF="./org/apache/wink/webdav/model/Propfind.html#marshal(org.apache.wink.webdav.model.Propfind, java.io.OutputStream)"><B>marshal(Propfind, OutputStream)</B></A> - 
Static method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Propfind.html" title="class in org.apache.wink.webdav.model">Propfind</A>
<DD>Marshal a Propfind object to the provided output stream
<DT><A HREF="./org/apache/wink/webdav/model/Propfind.html#marshal(org.apache.wink.webdav.model.Propfind, java.io.Writer)"><B>marshal(Propfind, Writer)</B></A> - 
Static method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Propfind.html" title="class in org.apache.wink.webdav.model">Propfind</A>
<DD>Marshal a Propfind object to the provided writer
<DT><A HREF="./org/apache/wink/webdav/model/WebDAVModelHelper.html#marshal(javax.xml.bind.Marshaller, java.lang.Object, java.io.Writer, java.lang.String)"><B>marshal(Marshaller, Object, Writer, String)</B></A> - 
Static method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/WebDAVModelHelper.html" title="class in org.apache.wink.webdav.model">WebDAVModelHelper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/server/handlers/MediaTypeMappingRecord.html#match(javax.ws.rs.core.HttpHeaders, javax.ws.rs.core.MediaType)"><B>match(HttpHeaders, MediaType)</B></A> - 
Method in interface org.apache.wink.server.handlers.<A HREF="./org/apache/wink/server/handlers/MediaTypeMappingRecord.html" title="interface in org.apache.wink.server.handlers">MediaTypeMappingRecord</A>
<DD>Maps response media types to a different response media type if
 necessary.
<DT><A HREF="./org/apache/wink/client/httpclient/ApacheHttpClientConfig.html#maxPooledConnections"><B>maxPooledConnections</B></A> - 
Variable in class org.apache.wink.client.httpclient.<A HREF="./org/apache/wink/client/httpclient/ApacheHttpClientConfig.html" title="class in org.apache.wink.client.httpclient">ApacheHttpClientConfig</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Option.html#mediaType"><B>mediaType</B></A> - 
Variable in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Option.html" title="class in org.apache.wink.common.model.wadl">Option</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Representation.html#mediaType"><B>mediaType</B></A> - 
Variable in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Representation.html" title="class in org.apache.wink.common.model.wadl">Representation</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/server/handlers/MediaTypeMapperFactory.html" title="class in org.apache.wink.server.handlers"><B>MediaTypeMapperFactory</B></A> - Class in <A HREF="./org/apache/wink/server/handlers/package-summary.html">org.apache.wink.server.handlers</A><DD>
 MediaTypeMapperFactory is responsible to provide media type mappings from an
 application's response media type to a preferred media type.<DT><A HREF="./org/apache/wink/server/handlers/MediaTypeMapperFactory.html#MediaTypeMapperFactory()"><B>MediaTypeMapperFactory()</B></A> - 
Constructor for class org.apache.wink.server.handlers.<A HREF="./org/apache/wink/server/handlers/MediaTypeMapperFactory.html" title="class in org.apache.wink.server.handlers">MediaTypeMapperFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/server/handlers/MediaTypeMappingRecord.html" title="interface in org.apache.wink.server.handlers"><B>MediaTypeMappingRecord</B></A> - Interface in <A HREF="./org/apache/wink/server/handlers/package-summary.html">org.apache.wink.server.handlers</A><DD>MediaTypeMappingRecords can map response media types to a different response
 media type if necessary.<DT><A HREF="./org/apache/wink/server/handlers/MessageContext.html" title="interface in org.apache.wink.server.handlers"><B>MessageContext</B></A> - Interface in <A HREF="./org/apache/wink/server/handlers/package-summary.html">org.apache.wink.server.handlers</A><DD>The MessageContext is used by Handlers to obtain and manipulate request
 specific information.<DT><A HREF="./org/apache/wink/common/model/wadl/Method.html" title="class in org.apache.wink.common.model.wadl"><B>Method</B></A> - Class in <A HREF="./org/apache/wink/common/model/wadl/package-summary.html">org.apache.wink.common.model.wadl</A><DD>Java class for anonymous complex type.<DT><A HREF="./org/apache/wink/common/model/wadl/Method.html#Method()"><B>Method()</B></A> - 
Constructor for class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Method.html" title="class in org.apache.wink.common.model.wadl">Method</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/http/HttpStatus.html#METHOD_FAILURE"><B>METHOD_FAILURE</B></A> - 
Static variable in class org.apache.wink.common.http.<A HREF="./org/apache/wink/common/http/HttpStatus.html" title="class in org.apache.wink.common.http">HttpStatus</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/http/HttpStatus.html#METHOD_NOT_ALLOWED"><B>METHOD_NOT_ALLOWED</B></A> - 
Static variable in class org.apache.wink.common.http.<A HREF="./org/apache/wink/common/http/HttpStatus.html" title="class in org.apache.wink.common.http">HttpStatus</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Resource.html#methodOrResource"><B>methodOrResource</B></A> - 
Variable in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Resource.html" title="class in org.apache.wink.common.model.wadl">Resource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/ResourceType.html#methodOrResource"><B>methodOrResource</B></A> - 
Variable in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/ResourceType.html" title="class in org.apache.wink.common.model.wadl">ResourceType</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/MockHttpServer.html" title="class in org.apache.wink.client"><B>MockHttpServer</B></A> - Class in <A HREF="./org/apache/wink/client/package-summary.html">org.apache.wink.client</A><DD>&nbsp;<DT><A HREF="./org/apache/wink/client/MockHttpServer.html#MockHttpServer(int)"><B>MockHttpServer(int)</B></A> - 
Constructor for class org.apache.wink.client.<A HREF="./org/apache/wink/client/MockHttpServer.html" title="class in org.apache.wink.client">MockHttpServer</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/MockHttpServer.html#MockHttpServer(int, boolean)"><B>MockHttpServer(int, boolean)</B></A> - 
Constructor for class org.apache.wink.client.<A HREF="./org/apache/wink/client/MockHttpServer.html" title="class in org.apache.wink.client">MockHttpServer</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/MockHttpServer.MockHttpServerResponse.html" title="class in org.apache.wink.client"><B>MockHttpServer.MockHttpServerResponse</B></A> - Class in <A HREF="./org/apache/wink/client/package-summary.html">org.apache.wink.client</A><DD>&nbsp;<DT><A HREF="./org/apache/wink/client/MockHttpServer.MockHttpServerResponse.html#MockHttpServer.MockHttpServerResponse()"><B>MockHttpServer.MockHttpServerResponse()</B></A> - 
Constructor for class org.apache.wink.client.<A HREF="./org/apache/wink/client/MockHttpServer.MockHttpServerResponse.html" title="class in org.apache.wink.client">MockHttpServer.MockHttpServerResponse</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/http/HttpStatus.html#MOVED_PERMANENTLY"><B>MOVED_PERMANENTLY</B></A> - 
Static variable in class org.apache.wink.common.http.<A HREF="./org/apache/wink/common/http/HttpStatus.html" title="class in org.apache.wink.common.http">HttpStatus</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/WebDAVHeaders.html#MS_AUTHOR_VIA"><B>MS_AUTHOR_VIA</B></A> - 
Static variable in class org.apache.wink.webdav.<A HREF="./org/apache/wink/webdav/WebDAVHeaders.html" title="class in org.apache.wink.webdav">WebDAVHeaders</A>
<DD>Microsoft <a
 href="http://msdn.microsoft.com/en-us/library/cc250217.aspx">
 authorization header</a>
<DT><A HREF="./org/apache/wink/webdav/server/WebDAVLockableResource.html#msCompatibilityLock(java.lang.String)"><B>msCompatibilityLock(String)</B></A> - 
Method in class org.apache.wink.webdav.server.<A HREF="./org/apache/wink/webdav/server/WebDAVLockableResource.html" title="class in org.apache.wink.webdav.server">WebDAVLockableResource</A>
<DD>This method does not perform a real lock but returns a 'dummy' lock
 response for compatibility with MS Windows.
<DT><A HREF="./org/apache/wink/webdav/server/WebDAVUtils.html#msCompatibilityLock(java.lang.String)"><B>msCompatibilityLock(String)</B></A> - 
Static method in class org.apache.wink.webdav.server.<A HREF="./org/apache/wink/webdav/server/WebDAVUtils.html" title="class in org.apache.wink.webdav.server">WebDAVUtils</A>
<DD>This method does not perform a real lock but returns a 'dummy' lock
 response for compatibility with MS Windows.
<DT><A HREF="./org/apache/wink/webdav/server/WebDAVLockableResource.html#msCompatibilityUnlock()"><B>msCompatibilityUnlock()</B></A> - 
Method in class org.apache.wink.webdav.server.<A HREF="./org/apache/wink/webdav/server/WebDAVLockableResource.html" title="class in org.apache.wink.webdav.server">WebDAVLockableResource</A>
<DD>This method does not perform a real unlock but returns a NO_CONTENT
 response for compatibility with MS Windows.
<DT><A HREF="./org/apache/wink/webdav/server/WebDAVUtils.html#msCompatibilityUnlock()"><B>msCompatibilityUnlock()</B></A> - 
Static method in class org.apache.wink.webdav.server.<A HREF="./org/apache/wink/webdav/server/WebDAVUtils.html" title="class in org.apache.wink.webdav.server">WebDAVUtils</A>
<DD>This method does not perform a real unlock but returns a NO_CONTENT
 response for compatibility with MS Windows.
<DT><A HREF="./org/apache/wink/common/http/HttpStatus.html#MULTI_STATUS"><B>MULTI_STATUS</B></A> - 
Static variable in class org.apache.wink.common.http.<A HREF="./org/apache/wink/common/http/HttpStatus.html" title="class in org.apache.wink.common.http">HttpStatus</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/csv/MultiCsvTable.html" title="class in org.apache.wink.common.model.csv"><B>MultiCsvTable</B></A> - Class in <A HREF="./org/apache/wink/common/model/csv/package-summary.html">org.apache.wink.common.model.csv</A><DD>Represents a multiple table CSV.<DT><A HREF="./org/apache/wink/common/model/csv/MultiCsvTable.html#MultiCsvTable()"><B>MultiCsvTable()</B></A> - 
Constructor for class org.apache.wink.common.model.csv.<A HREF="./org/apache/wink/common/model/csv/MultiCsvTable.html" title="class in org.apache.wink.common.model.csv">MultiCsvTable</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/http/HttpStatus.html#MULTIPLE_CHOICES"><B>MULTIPLE_CHOICES</B></A> - 
Static variable in class org.apache.wink.common.http.<A HREF="./org/apache/wink/common/http/HttpStatus.html" title="class in org.apache.wink.common.http">HttpStatus</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Multistatus.html" title="class in org.apache.wink.webdav.model"><B>Multistatus</B></A> - Class in <A HREF="./org/apache/wink/webdav/model/package-summary.html">org.apache.wink.webdav.model</A><DD>The <code>multistatus</code> XML element per the WebDAV specification [RFC
 4918]<DT><A HREF="./org/apache/wink/webdav/model/Multistatus.html#Multistatus()"><B>Multistatus()</B></A> - 
Constructor for class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Multistatus.html" title="class in org.apache.wink.webdav.model">Multistatus</A>
<DD>&nbsp;
</DL>
<HR>
<A NAME="_N_"><!-- --></A><H2>
<B>N</B></H2>
<DL>
<DT><A HREF="./org/apache/wink/common/model/atom/AtomPerson.html#name"><B>name</B></A> - 
Variable in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomPerson.html" title="class in org.apache.wink.common.model.atom">AtomPerson</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/rss/RssTextInput.html#name"><B>name</B></A> - 
Variable in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssTextInput.html" title="class in org.apache.wink.common.model.rss">RssTextInput</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Method.html#name"><B>name</B></A> - 
Variable in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Method.html" title="class in org.apache.wink.common.model.wadl">Method</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Param.html#name"><B>name</B></A> - 
Variable in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Param.html" title="class in org.apache.wink.common.model.wadl">Param</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONObjectDelegate.html#names()"><B>names()</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONObjectDelegate.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONObjectDelegate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONObject.html#names()"><B>names()</B></A> - 
Method in interface org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONObject.html" title="interface in org.apache.wink.json4j.compat">JSONObject</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/JSONObject.html#names()"><B>names()</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONObject.html" title="class in org.apache.wink.json4j">JSONObject</A>
<DD>Utility function that returns a JSONArray of all the names of the keys (attributes) of this JSONObject
<DT><A HREF="./org/apache/wink/common/RestConstants.html#NAMESPACE_APP"><B>NAMESPACE_APP</B></A> - 
Static variable in class org.apache.wink.common.<A HREF="./org/apache/wink/common/RestConstants.html" title="class in org.apache.wink.common">RestConstants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/RestConstants.html#NAMESPACE_ATOM"><B>NAMESPACE_ATOM</B></A> - 
Static variable in class org.apache.wink.common.<A HREF="./org/apache/wink/common/RestConstants.html" title="class in org.apache.wink.common">RestConstants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/WebDAVConstants.html#NAMESPACE_DAV"><B>NAMESPACE_DAV</B></A> - 
Static variable in class org.apache.wink.webdav.<A HREF="./org/apache/wink/webdav/WebDAVConstants.html" title="class in org.apache.wink.webdav">WebDAVConstants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/RestConstants.html#NAMESPACE_OPENSEARCH"><B>NAMESPACE_OPENSEARCH</B></A> - 
Static variable in class org.apache.wink.common.<A HREF="./org/apache/wink/common/RestConstants.html" title="class in org.apache.wink.common">RestConstants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/RestConstants.html#NAMESPACE_XHTML"><B>NAMESPACE_XHTML</B></A> - 
Static variable in class org.apache.wink.common.<A HREF="./org/apache/wink/common/RestConstants.html" title="class in org.apache.wink.common">RestConstants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/RestConstants.html#NAMESPACE_XML"><B>NAMESPACE_XML</B></A> - 
Static variable in class org.apache.wink.common.<A HREF="./org/apache/wink/common/RestConstants.html" title="class in org.apache.wink.common">RestConstants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONFactory.html#newInstance()"><B>newInstance()</B></A> - 
Static method in class org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONFactory.html" title="class in org.apache.wink.json4j.compat">JSONFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/multipart/InMultiPart.html#next()"><B>next()</B></A> - 
Method in class org.apache.wink.common.model.multipart.<A HREF="./org/apache/wink/common/model/multipart/InMultiPart.html" title="class in org.apache.wink.common.model.multipart">InMultiPart</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/http/HttpStatus.html#NO_CONTENT"><B>NO_CONTENT</B></A> - 
Static variable in class org.apache.wink.common.http.<A HREF="./org/apache/wink/common/http/HttpStatus.html" title="class in org.apache.wink.common.http">HttpStatus</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/http/HttpStatus.html#NON_AUTHORITATIVE_INFORMATION"><B>NON_AUTHORITATIVE_INFORMATION</B></A> - 
Static variable in class org.apache.wink.common.http.<A HREF="./org/apache/wink/common/http/HttpStatus.html" title="class in org.apache.wink.common.http">HttpStatus</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/http/HttpStatus.html#NOT_ACCEPTABLE"><B>NOT_ACCEPTABLE</B></A> - 
Static variable in class org.apache.wink.common.http.<A HREF="./org/apache/wink/common/http/HttpStatus.html" title="class in org.apache.wink.common.http">HttpStatus</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/http/HttpStatus.html#NOT_FOUND"><B>NOT_FOUND</B></A> - 
Static variable in class org.apache.wink.common.http.<A HREF="./org/apache/wink/common/http/HttpStatus.html" title="class in org.apache.wink.common.http">HttpStatus</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/http/HttpStatus.html#NOT_IMPLEMENTED"><B>NOT_IMPLEMENTED</B></A> - 
Static variable in class org.apache.wink.common.http.<A HREF="./org/apache/wink/common/http/HttpStatus.html" title="class in org.apache.wink.common.http">HttpStatus</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/http/HttpStatus.html#NOT_MODIFIED"><B>NOT_MODIFIED</B></A> - 
Static variable in class org.apache.wink.common.http.<A HREF="./org/apache/wink/common/http/HttpStatus.html" title="class in org.apache.wink.common.http">HttpStatus</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/JSON.html#NULL"><B>NULL</B></A> - 
Static variable in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSON.html" title="class in org.apache.wink.json4j">JSON</A>
<DD>A constant for representing null.
<DT><A HREF="./org/apache/wink/json4j/JSONObject.html#NULL"><B>NULL</B></A> - 
Static variable in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONObject.html" title="class in org.apache.wink.json4j">JSONObject</A>
<DD>A constant definition reference to Java null.
</DL>
<HR>
<A NAME="_O_"><!-- --></A><H2>
<B>O</B></H2>
<DL>
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONWriterDelegate.html#object()"><B>object()</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONWriterDelegate.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONWriterDelegate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONWriter.html#object()"><B>object()</B></A> - 
Method in interface org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONWriter.html" title="interface in org.apache.wink.json4j.compat">JSONWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/JSONWriter.html#object()"><B>object()</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONWriter.html" title="class in org.apache.wink.json4j">JSONWriter</A>
<DD>Open a new JSON Object in the output stream.
<DT><A HREF="./org/apache/wink/common/model/app/ObjectFactory.html" title="class in org.apache.wink.common.model.app"><B>ObjectFactory</B></A> - Class in <A HREF="./org/apache/wink/common/model/app/package-summary.html">org.apache.wink.common.model.app</A><DD>This object contains factory methods for each Java content interface and Java
 element interface generated in the org.apache.wink.common.model.app package.<DT><A HREF="./org/apache/wink/common/model/app/ObjectFactory.html#ObjectFactory()"><B>ObjectFactory()</B></A> - 
Constructor for class org.apache.wink.common.model.app.<A HREF="./org/apache/wink/common/model/app/ObjectFactory.html" title="class in org.apache.wink.common.model.app">ObjectFactory</A>
<DD>Create a new ObjectFactory that can be used to create new instances of
 schema derived classes for package: org.apache.wink.common.model.app
<DT><A HREF="./org/apache/wink/common/model/atom/ObjectFactory.html" title="class in org.apache.wink.common.model.atom"><B>ObjectFactory</B></A> - Class in <A HREF="./org/apache/wink/common/model/atom/package-summary.html">org.apache.wink.common.model.atom</A><DD>This object contains factory methods for each Java content interface and Java
 element interface generated in the org.apache.wink.common.model.atom package.<DT><A HREF="./org/apache/wink/common/model/atom/ObjectFactory.html#ObjectFactory()"><B>ObjectFactory()</B></A> - 
Constructor for class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/ObjectFactory.html" title="class in org.apache.wink.common.model.atom">ObjectFactory</A>
<DD>Create a new ObjectFactory that can be used to create new instances of
 schema derived classes for package: org.apache.wink.common.model.atom
<DT><A HREF="./org/apache/wink/common/model/opensearch/ObjectFactory.html" title="class in org.apache.wink.common.model.opensearch"><B>ObjectFactory</B></A> - Class in <A HREF="./org/apache/wink/common/model/opensearch/package-summary.html">org.apache.wink.common.model.opensearch</A><DD>This object contains factory methods for each Java content interface and Java
 element interface generated in the org.apache.wink.common.model.opensearch
 package.<DT><A HREF="./org/apache/wink/common/model/opensearch/ObjectFactory.html#ObjectFactory()"><B>ObjectFactory()</B></A> - 
Constructor for class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/ObjectFactory.html" title="class in org.apache.wink.common.model.opensearch">ObjectFactory</A>
<DD>Create a new ObjectFactory that can be used to create new instances of
 schema derived classes for package:
 org.apache.wink.common.model.opensearch
<DT><A HREF="./org/apache/wink/common/model/rss/ObjectFactory.html" title="class in org.apache.wink.common.model.rss"><B>ObjectFactory</B></A> - Class in <A HREF="./org/apache/wink/common/model/rss/package-summary.html">org.apache.wink.common.model.rss</A><DD>This object contains factory methods for each Java content interface and Java
 element interface generated in the org.apache.wink.common.model.rss package.<DT><A HREF="./org/apache/wink/common/model/rss/ObjectFactory.html#ObjectFactory()"><B>ObjectFactory()</B></A> - 
Constructor for class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/ObjectFactory.html" title="class in org.apache.wink.common.model.rss">ObjectFactory</A>
<DD>Create a new ObjectFactory that can be used to create new instances of
 schema derived classes for package: org.apache.wink.common.model.rss
<DT><A HREF="./org/apache/wink/common/model/wadl/ObjectFactory.html" title="class in org.apache.wink.common.model.wadl"><B>ObjectFactory</B></A> - Class in <A HREF="./org/apache/wink/common/model/wadl/package-summary.html">org.apache.wink.common.model.wadl</A><DD>This object contains factory methods for each 
 Java content interface and Java element interface 
 generated in the org.apache.wink.common.model.wadl package.<DT><A HREF="./org/apache/wink/common/model/wadl/ObjectFactory.html#ObjectFactory()"><B>ObjectFactory()</B></A> - 
Constructor for class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/ObjectFactory.html" title="class in org.apache.wink.common.model.wadl">ObjectFactory</A>
<DD>Create a new ObjectFactory that can be used to create new instances of schema derived classes for package: org.apache.wink.common.model.wadl
<DT><A HREF="./org/apache/wink/webdav/model/ObjectFactory.html" title="class in org.apache.wink.webdav.model"><B>ObjectFactory</B></A> - Class in <A HREF="./org/apache/wink/webdav/model/package-summary.html">org.apache.wink.webdav.model</A><DD>This object contains factory methods for each Java content interface and Java
 element interface generated in the org.apache.wink.webdav.model package.<DT><A HREF="./org/apache/wink/webdav/model/ObjectFactory.html#ObjectFactory()"><B>ObjectFactory()</B></A> - 
Constructor for class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/ObjectFactory.html" title="class in org.apache.wink.webdav.model">ObjectFactory</A>
<DD>Create a new ObjectFactory that can be used to create new instances of
 schema derived classes for package: org.apache.wink.webdav.model
<DT><A HREF="./org/apache/wink/providers/json/JSONUtils.html#objectForString(java.lang.String)"><B>objectForString(String)</B></A> - 
Static method in class org.apache.wink.providers.json.<A HREF="./org/apache/wink/providers/json/JSONUtils.html" title="class in org.apache.wink.providers.json">JSONUtils</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/http/HttpStatus.html#OK"><B>OK</B></A> - 
Static variable in class org.apache.wink.common.http.<A HREF="./org/apache/wink/common/http/HttpStatus.html" title="class in org.apache.wink.common.http">HttpStatus</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Omit.html" title="class in org.apache.wink.webdav.model"><B>Omit</B></A> - Class in <A HREF="./org/apache/wink/webdav/model/package-summary.html">org.apache.wink.webdav.model</A><DD>The <code>omit</code> XML element per the WebDAV specification [RFC 4918]<DT><A HREF="./org/apache/wink/webdav/model/Omit.html#Omit()"><B>Omit()</B></A> - 
Constructor for class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Omit.html" title="class in org.apache.wink.webdav.model">Omit</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Propertybehavior.html#omit"><B>omit</B></A> - 
Variable in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Propertybehavior.html" title="class in org.apache.wink.webdav.model">Propertybehavior</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/RestConstants.html#OPENSEARCH_PREFIX"><B>OPENSEARCH_PREFIX</B></A> - 
Static variable in class org.apache.wink.common.<A HREF="./org/apache/wink/common/RestConstants.html" title="class in org.apache.wink.common">RestConstants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html" title="class in org.apache.wink.common.model.opensearch"><B>OpenSearchDescription</B></A> - Class in <A HREF="./org/apache/wink/common/model/opensearch/package-summary.html">org.apache.wink.common.model.opensearch</A><DD>The "OpenSearchDescription" element per OpenSearch specification<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html#OpenSearchDescription()"><B>OpenSearchDescription()</B></A> - 
Constructor for class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchDescription</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomFeed.html#opensearchFactory"><B>opensearchFactory</B></A> - 
Variable in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomFeed.html" title="class in org.apache.wink.common.model.atom">AtomFeed</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchImage.html" title="class in org.apache.wink.common.model.opensearch"><B>OpenSearchImage</B></A> - Class in <A HREF="./org/apache/wink/common/model/opensearch/package-summary.html">org.apache.wink.common.model.opensearch</A><DD>The "Image" element per OpenSearch specification<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchImage.html#OpenSearchImage()"><B>OpenSearchImage()</B></A> - 
Constructor for class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchImage.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchImage</A>
<DD>Default Constructor
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchParameter.html" title="class in org.apache.wink.common.model.opensearch"><B>OpenSearchParameter</B></A> - Class in <A HREF="./org/apache/wink/common/model/opensearch/package-summary.html">org.apache.wink.common.model.opensearch</A><DD>Represents one search parameter in form of parameter_key={parameter}.<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchParameter.html#OpenSearchParameter()"><B>OpenSearchParameter()</B></A> - 
Constructor for class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchParameter.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchParameter</A>
<DD>Default constructor
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchParameter.html#OpenSearchParameter(java.lang.String, java.lang.String, boolean)"><B>OpenSearchParameter(String, String, boolean)</B></A> - 
Constructor for class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchParameter.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchParameter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchParameter.OpenSearchParams.html" title="enum in org.apache.wink.common.model.opensearch"><B>OpenSearchParameter.OpenSearchParams</B></A> - Enum in <A HREF="./org/apache/wink/common/model/opensearch/package-summary.html">org.apache.wink.common.model.opensearch</A><DD>OpenSearch 1.1 parameters<DT><A HREF="./org/apache/wink/common/model/atom/AtomFeed.html#opensearchQuery"><B>opensearchQuery</B></A> - 
Variable in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomFeed.html" title="class in org.apache.wink.common.model.atom">AtomFeed</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchQuery.html" title="class in org.apache.wink.common.model.opensearch"><B>OpenSearchQuery</B></A> - Class in <A HREF="./org/apache/wink/common/model/opensearch/package-summary.html">org.apache.wink.common.model.opensearch</A><DD>The "Query" element per OpenSearch specification<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchQuery.html#OpenSearchQuery()"><B>OpenSearchQuery()</B></A> - 
Constructor for class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchQuery.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchQuery</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchQuery.QueryRole.html" title="enum in org.apache.wink.common.model.opensearch"><B>OpenSearchQuery.QueryRole</B></A> - Enum in <A HREF="./org/apache/wink/common/model/opensearch/package-summary.html">org.apache.wink.common.model.opensearch</A><DD>&nbsp;<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchUrl.html" title="class in org.apache.wink.common.model.opensearch"><B>OpenSearchUrl</B></A> - Class in <A HREF="./org/apache/wink/common/model/opensearch/package-summary.html">org.apache.wink.common.model.opensearch</A><DD>The "Url" element per OpenSearch specification<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchUrl.html#OpenSearchUrl()"><B>OpenSearchUrl()</B></A> - 
Constructor for class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchUrl.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchUrl</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/JSONArray.html#opt(int)"><B>opt(int)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONArray.html" title="class in org.apache.wink.json4j">JSONArray</A>
<DD>Method to get the object at that position, or null if outside the array range.
<DT><A HREF="./org/apache/wink/json4j/JSONArray.html#opt(int, java.lang.Object)"><B>opt(int, Object)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONArray.html" title="class in org.apache.wink.json4j">JSONArray</A>
<DD>Method to get the object at that position, or null if outside the array range.
<DT><A HREF="./org/apache/wink/json4j/JSONObject.html#opt(java.lang.String)"><B>opt(String)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONObject.html" title="class in org.apache.wink.json4j">JSONObject</A>
<DD>Method to obtain the object value for a key.
<DT><A HREF="./org/apache/wink/json4j/JSONArray.html#optBoolean(int)"><B>optBoolean(int)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONArray.html" title="class in org.apache.wink.json4j">JSONArray</A>
<DD>Method to obtain the value at index as an boolean, or 'false' if outside the array.
<DT><A HREF="./org/apache/wink/json4j/JSONArray.html#optBoolean(int, boolean)"><B>optBoolean(int, boolean)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONArray.html" title="class in org.apache.wink.json4j">JSONArray</A>
<DD>Method to obtain the value at index as an boolean, or 'defaultValue' if outside the array.
<DT><A HREF="./org/apache/wink/json4j/JSONObject.html#optBoolean(java.lang.String)"><B>optBoolean(String)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONObject.html" title="class in org.apache.wink.json4j">JSONObject</A>
<DD>Utility method to obtain the specified key as a 'boolean' value
 Only returns true if the value is boolean true or the string 'true'.
<DT><A HREF="./org/apache/wink/json4j/JSONObject.html#optBoolean(java.lang.String, boolean)"><B>optBoolean(String, boolean)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONObject.html" title="class in org.apache.wink.json4j">JSONObject</A>
<DD>Utility method to obtain the specified key as a 'boolean' value
 Only returns true if the value is boolean true or the string 'true'.
<DT><A HREF="./org/apache/wink/json4j/JSONArray.html#optDouble(int)"><B>optDouble(int)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONArray.html" title="class in org.apache.wink.json4j">JSONArray</A>
<DD>Method to obtain the value at index as a double, or Double.NaN if outside the array.
<DT><A HREF="./org/apache/wink/json4j/JSONArray.html#optDouble(int, double)"><B>optDouble(int, double)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONArray.html" title="class in org.apache.wink.json4j">JSONArray</A>
<DD>Method to obtain the value at index as a double, or Double.NaN if outside the array.
<DT><A HREF="./org/apache/wink/json4j/JSONObject.html#optDouble(java.lang.String)"><B>optDouble(String)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONObject.html" title="class in org.apache.wink.json4j">JSONObject</A>
<DD>Utility method to obtain the specified key as a 'double' value
 Only values of Number will be converted to double.
<DT><A HREF="./org/apache/wink/json4j/JSONObject.html#optDouble(java.lang.String, double)"><B>optDouble(String, double)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONObject.html" title="class in org.apache.wink.json4j">JSONObject</A>
<DD>Utility method to obtain the specified key as a 'double' value
 Only values of Number will be converted to double.
<DT><A HREF="./org/apache/wink/json4j/JSONArray.html#optInt(int)"><B>optInt(int)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONArray.html" title="class in org.apache.wink.json4j">JSONArray</A>
<DD>Method to obtain the value at index as an int, or '0' if outside the array.
<DT><A HREF="./org/apache/wink/json4j/JSONArray.html#optInt(int, int)"><B>optInt(int, int)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONArray.html" title="class in org.apache.wink.json4j">JSONArray</A>
<DD>Method to obtain the value at index as an int, or defaultValue if outside the array.
<DT><A HREF="./org/apache/wink/json4j/JSONObject.html#optInt(java.lang.String)"><B>optInt(String)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONObject.html" title="class in org.apache.wink.json4j">JSONObject</A>
<DD>Utility method to obtain the specified key as a 'int' value
 Provided for compatibility to other JSON models.
<DT><A HREF="./org/apache/wink/json4j/JSONObject.html#optInt(java.lang.String, int)"><B>optInt(String, int)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONObject.html" title="class in org.apache.wink.json4j">JSONObject</A>
<DD>Utility method to obtain the specified key as a 'int' value
 Provided for compatibility to other JSON models.
<DT><A HREF="./org/apache/wink/common/model/wadl/Option.html" title="class in org.apache.wink.common.model.wadl"><B>Option</B></A> - Class in <A HREF="./org/apache/wink/common/model/wadl/package-summary.html">org.apache.wink.common.model.wadl</A><DD>Java class for anonymous complex type.<DT><A HREF="./org/apache/wink/common/model/wadl/Option.html#Option()"><B>Option()</B></A> - 
Constructor for class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Option.html" title="class in org.apache.wink.common.model.wadl">Option</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Param.html#option"><B>option</B></A> - 
Variable in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Param.html" title="class in org.apache.wink.common.model.wadl">Param</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/Resource.html#options()"><B>options()</B></A> - 
Method in interface org.apache.wink.client.<A HREF="./org/apache/wink/client/Resource.html" title="interface in org.apache.wink.client">Resource</A>
<DD>Invoke the OPTIONS method
<DT><A HREF="./org/apache/wink/common/http/HttpMethodEx.html#OPTIONS"><B>OPTIONS</B></A> - 
Static variable in class org.apache.wink.common.http.<A HREF="./org/apache/wink/common/http/HttpMethodEx.html" title="class in org.apache.wink.common.http">HttpMethodEx</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/http/OPTIONS.html" title="annotation in org.apache.wink.common.http"><B>OPTIONS</B></A> - Annotation Type in <A HREF="./org/apache/wink/common/http/package-summary.html">org.apache.wink.common.http</A><DD>&nbsp;<DT><A HREF="./org/apache/wink/json4j/JSONObject.html#optJSONArray(java.lang.String)"><B>optJSONArray(String)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONObject.html" title="class in org.apache.wink.json4j">JSONObject</A>
<DD>Utility method to obtain the specified key as a JSONArray
 Only values that are instances of JSONArray will be returned.
<DT><A HREF="./org/apache/wink/json4j/JSONObject.html#optJSONArray(java.lang.String, org.apache.wink.json4j.JSONArray)"><B>optJSONArray(String, JSONArray)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONObject.html" title="class in org.apache.wink.json4j">JSONObject</A>
<DD>Utility method to obtain the specified key as a JSONArray
 Only values that are instances of JSONArray will be returned.
<DT><A HREF="./org/apache/wink/json4j/JSONObject.html#optJSONObject(java.lang.String)"><B>optJSONObject(String)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONObject.html" title="class in org.apache.wink.json4j">JSONObject</A>
<DD>Utility method to obtain the specified key as a JSONObject
 Only values that are instances of JSONObject will be returned.
<DT><A HREF="./org/apache/wink/json4j/JSONObject.html#optJSONObject(java.lang.String, org.apache.wink.json4j.JSONObject)"><B>optJSONObject(String, JSONObject)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONObject.html" title="class in org.apache.wink.json4j">JSONObject</A>
<DD>Utility method to obtain the specified key as a JSONObject
 Only values that are instances of JSONObject will be returned.
<DT><A HREF="./org/apache/wink/json4j/JSONArray.html#optLong(int)"><B>optLong(int)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONArray.html" title="class in org.apache.wink.json4j">JSONArray</A>
<DD>Method to obtain the value at index as a long, or '0' if outside the array.
<DT><A HREF="./org/apache/wink/json4j/JSONArray.html#optLong(int, long)"><B>optLong(int, long)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONArray.html" title="class in org.apache.wink.json4j">JSONArray</A>
<DD>Method to obtain the value at index as a long, or defaultValue if outside the array.
<DT><A HREF="./org/apache/wink/json4j/JSONObject.html#optLong(java.lang.String)"><B>optLong(String)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONObject.html" title="class in org.apache.wink.json4j">JSONObject</A>
<DD>Utility method to obtain the specified key as a 'long' value
 Only values of Number will be converted to long.
<DT><A HREF="./org/apache/wink/json4j/JSONObject.html#optLong(java.lang.String, long)"><B>optLong(String, long)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONObject.html" title="class in org.apache.wink.json4j">JSONObject</A>
<DD>Utility method to obtain the specified key as a 'long' value
 Only values of Number will be converted to long.
<DT><A HREF="./org/apache/wink/json4j/JSONArray.html#optShort(int)"><B>optShort(int)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONArray.html" title="class in org.apache.wink.json4j">JSONArray</A>
<DD>Method to obtain the value at index as a short, or '0' if outside the array.
<DT><A HREF="./org/apache/wink/json4j/JSONArray.html#optShort(int, short)"><B>optShort(int, short)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONArray.html" title="class in org.apache.wink.json4j">JSONArray</A>
<DD>Method to obtain the value at index as a short, or '0' if outside the array.
<DT><A HREF="./org/apache/wink/json4j/JSONObject.html#optShort(java.lang.String)"><B>optShort(String)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONObject.html" title="class in org.apache.wink.json4j">JSONObject</A>
<DD>Utility method to obtain the specified key as a 'short' value
 Only values of Number will be converted to short.
<DT><A HREF="./org/apache/wink/json4j/JSONObject.html#optShort(java.lang.String, short)"><B>optShort(String, short)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONObject.html" title="class in org.apache.wink.json4j">JSONObject</A>
<DD>Utility method to obtain the specified key as a 'short' value
 Only values of Number will be converted to short.
<DT><A HREF="./org/apache/wink/json4j/JSONArray.html#optString(int)"><B>optString(int)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONArray.html" title="class in org.apache.wink.json4j">JSONArray</A>
<DD>Method to obtain the value at index as a String, or null if outside the array.
<DT><A HREF="./org/apache/wink/json4j/JSONArray.html#optString(int, java.lang.String)"><B>optString(int, String)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONArray.html" title="class in org.apache.wink.json4j">JSONArray</A>
<DD>Method to obtain the value at index as a String, or defaultValue if outside the array.
<DT><A HREF="./org/apache/wink/json4j/JSONObject.html#optString(java.lang.String)"><B>optString(String)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONObject.html" title="class in org.apache.wink.json4j">JSONObject</A>
<DD>Utility method to obtain the specified key as a 'string' value
 Only values that can be easily converted to string will be returned.
<DT><A HREF="./org/apache/wink/json4j/JSONObject.html#optString(java.lang.String, java.lang.String)"><B>optString(String, String)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONObject.html" title="class in org.apache.wink.json4j">JSONObject</A>
<DD>Utility method to obtain the specified key as a 'string' value
 Only values that can be easily converted to string will be returned.
<DT><A HREF="./org/apache/wink/json4j/OrderedJSONObject.html" title="class in org.apache.wink.json4j"><B>OrderedJSONObject</B></A> - Class in <A HREF="./org/apache/wink/json4j/package-summary.html">org.apache.wink.json4j</A><DD>Extension of the basic JSONObject.<DT><A HREF="./org/apache/wink/json4j/OrderedJSONObject.html#OrderedJSONObject()"><B>OrderedJSONObject()</B></A> - 
Constructor for class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/OrderedJSONObject.html" title="class in org.apache.wink.json4j">OrderedJSONObject</A>
<DD>Create a new instance of this class.
<DT><A HREF="./org/apache/wink/json4j/OrderedJSONObject.html#OrderedJSONObject(java.lang.String)"><B>OrderedJSONObject(String)</B></A> - 
Constructor for class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/OrderedJSONObject.html" title="class in org.apache.wink.json4j">OrderedJSONObject</A>
<DD>Create a new instance of this class from the provided JSON object string.
<DT><A HREF="./org/apache/wink/json4j/OrderedJSONObject.html#OrderedJSONObject(java.lang.String, boolean)"><B>OrderedJSONObject(String, boolean)</B></A> - 
Constructor for class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/OrderedJSONObject.html" title="class in org.apache.wink.json4j">OrderedJSONObject</A>
<DD>Create a new instance of this class from the provided JSON object string.
<DT><A HREF="./org/apache/wink/json4j/OrderedJSONObject.html#OrderedJSONObject(java.io.Reader)"><B>OrderedJSONObject(Reader)</B></A> - 
Constructor for class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/OrderedJSONObject.html" title="class in org.apache.wink.json4j">OrderedJSONObject</A>
<DD>Create a new instance of this class from the data provided from the reader.
<DT><A HREF="./org/apache/wink/json4j/OrderedJSONObject.html#OrderedJSONObject(java.io.Reader, boolean)"><B>OrderedJSONObject(Reader, boolean)</B></A> - 
Constructor for class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/OrderedJSONObject.html" title="class in org.apache.wink.json4j">OrderedJSONObject</A>
<DD>Create a new instance of this class from the data provided from the reader.
<DT><A HREF="./org/apache/wink/json4j/OrderedJSONObject.html#OrderedJSONObject(java.io.InputStream)"><B>OrderedJSONObject(InputStream)</B></A> - 
Constructor for class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/OrderedJSONObject.html" title="class in org.apache.wink.json4j">OrderedJSONObject</A>
<DD>Create a new instance of this class from the data provided from the input stream.
<DT><A HREF="./org/apache/wink/json4j/OrderedJSONObject.html#OrderedJSONObject(java.io.InputStream, boolean)"><B>OrderedJSONObject(InputStream, boolean)</B></A> - 
Constructor for class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/OrderedJSONObject.html" title="class in org.apache.wink.json4j">OrderedJSONObject</A>
<DD>Create a new instance of this class from the data provided from the input stream.
<DT><A HREF="./org/apache/wink/json4j/OrderedJSONObject.html#OrderedJSONObject(java.util.Map)"><B>OrderedJSONObject(Map)</B></A> - 
Constructor for class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/OrderedJSONObject.html" title="class in org.apache.wink.json4j">OrderedJSONObject</A>
<DD>Create a new instance of this class using the contents of the provided map.
<DT><A HREF="./org/apache/wink/client/package-summary.html"><B>org.apache.wink.client</B></A> - package org.apache.wink.client<DD>&nbsp;<DT><A HREF="./org/apache/wink/client/handlers/package-summary.html"><B>org.apache.wink.client.handlers</B></A> - package org.apache.wink.client.handlers<DD>&nbsp;<DT><A HREF="./org/apache/wink/client/httpclient/package-summary.html"><B>org.apache.wink.client.httpclient</B></A> - package org.apache.wink.client.httpclient<DD>&nbsp;<DT><A HREF="./org/apache/wink/common/package-summary.html"><B>org.apache.wink.common</B></A> - package org.apache.wink.common<DD>&nbsp;<DT><A HREF="./org/apache/wink/common/annotations/package-summary.html"><B>org.apache.wink.common.annotations</B></A> - package org.apache.wink.common.annotations<DD>&nbsp;<DT><A HREF="./org/apache/wink/common/categories/package-summary.html"><B>org.apache.wink.common.categories</B></A> - package org.apache.wink.common.categories<DD>&nbsp;<DT><A HREF="./org/apache/wink/common/http/package-summary.html"><B>org.apache.wink.common.http</B></A> - package org.apache.wink.common.http<DD>&nbsp;<DT><A HREF="./org/apache/wink/common/model/package-summary.html"><B>org.apache.wink.common.model</B></A> - package org.apache.wink.common.model<DD>&nbsp;<DT><A HREF="./org/apache/wink/common/model/app/package-summary.html"><B>org.apache.wink.common.model.app</B></A> - package org.apache.wink.common.model.app<DD>Licensed to the Apache Software Foundation (ASF) under one
 or more contributor license agreements.<DT><A HREF="./org/apache/wink/common/model/atom/package-summary.html"><B>org.apache.wink.common.model.atom</B></A> - package org.apache.wink.common.model.atom<DD>Licensed to the Apache Software Foundation (ASF) under one
 or more contributor license agreements.<DT><A HREF="./org/apache/wink/common/model/csv/package-summary.html"><B>org.apache.wink.common.model.csv</B></A> - package org.apache.wink.common.model.csv<DD>&nbsp;<DT><A HREF="./org/apache/wink/common/model/multipart/package-summary.html"><B>org.apache.wink.common.model.multipart</B></A> - package org.apache.wink.common.model.multipart<DD>&nbsp;<DT><A HREF="./org/apache/wink/common/model/opensearch/package-summary.html"><B>org.apache.wink.common.model.opensearch</B></A> - package org.apache.wink.common.model.opensearch<DD>Licensed to the Apache Software Foundation (ASF) under one
 or more contributor license agreements.<DT><A HREF="./org/apache/wink/common/model/rss/package-summary.html"><B>org.apache.wink.common.model.rss</B></A> - package org.apache.wink.common.model.rss<DD>&nbsp;<DT><A HREF="./org/apache/wink/common/model/synd/package-summary.html"><B>org.apache.wink.common.model.synd</B></A> - package org.apache.wink.common.model.synd<DD>&nbsp;<DT><A HREF="./org/apache/wink/common/model/wadl/package-summary.html"><B>org.apache.wink.common.model.wadl</B></A> - package org.apache.wink.common.model.wadl<DD>&nbsp;<DT><A HREF="./org/apache/wink/common/utils/package-summary.html"><B>org.apache.wink.common.utils</B></A> - package org.apache.wink.common.utils<DD>&nbsp;<DT><A HREF="./org/apache/wink/jcdi/server/spi/package-summary.html"><B>org.apache.wink.jcdi.server.spi</B></A> - package org.apache.wink.jcdi.server.spi<DD>&nbsp;<DT><A HREF="./org/apache/wink/json4j/package-summary.html"><B>org.apache.wink.json4j</B></A> - package org.apache.wink.json4j<DD>&nbsp;<DT><A HREF="./org/apache/wink/json4j/compat/package-summary.html"><B>org.apache.wink.json4j.compat</B></A> - package org.apache.wink.json4j.compat<DD>&nbsp;<DT><A HREF="./org/apache/wink/json4j/compat/impl/package-summary.html"><B>org.apache.wink.json4j.compat.impl</B></A> - package org.apache.wink.json4j.compat.impl<DD>&nbsp;<DT><A HREF="./org/apache/wink/json4j/utils/package-summary.html"><B>org.apache.wink.json4j.utils</B></A> - package org.apache.wink.json4j.utils<DD>&nbsp;<DT><A HREF="./org/apache/wink/logging/package-summary.html"><B>org.apache.wink.logging</B></A> - package org.apache.wink.logging<DD>&nbsp;<DT><A HREF="./org/apache/wink/osgi/package-summary.html"><B>org.apache.wink.osgi</B></A> - package org.apache.wink.osgi<DD>&nbsp;<DT><A HREF="./org/apache/wink/providers/abdera/package-summary.html"><B>org.apache.wink.providers.abdera</B></A> - package org.apache.wink.providers.abdera<DD>&nbsp;<DT><A HREF="./org/apache/wink/providers/jackson/package-summary.html"><B>org.apache.wink.providers.jackson</B></A> - package org.apache.wink.providers.jackson<DD>&nbsp;<DT><A HREF="./org/apache/wink/providers/jettison/package-summary.html"><B>org.apache.wink.providers.jettison</B></A> - package org.apache.wink.providers.jettison<DD>&nbsp;<DT><A HREF="./org/apache/wink/providers/json/package-summary.html"><B>org.apache.wink.providers.json</B></A> - package org.apache.wink.providers.json<DD>&nbsp;<DT><A HREF="./org/apache/wink/providers/json4j/package-summary.html"><B>org.apache.wink.providers.json4j</B></A> - package org.apache.wink.providers.json4j<DD>&nbsp;<DT><A HREF="./org/apache/wink/providers/protobuf/package-summary.html"><B>org.apache.wink.providers.protobuf</B></A> - package org.apache.wink.providers.protobuf<DD>&nbsp;<DT><A HREF="./org/apache/wink/providers/thrift/package-summary.html"><B>org.apache.wink.providers.thrift</B></A> - package org.apache.wink.providers.thrift<DD>&nbsp;<DT><A HREF="./org/apache/wink/server/handlers/package-summary.html"><B>org.apache.wink.server.handlers</B></A> - package org.apache.wink.server.handlers<DD>&nbsp;<DT><A HREF="./org/apache/wink/server/utils/package-summary.html"><B>org.apache.wink.server.utils</B></A> - package org.apache.wink.server.utils<DD>&nbsp;<DT><A HREF="./org/apache/wink/spring/package-summary.html"><B>org.apache.wink.spring</B></A> - package org.apache.wink.spring<DD>&nbsp;<DT><A HREF="./org/apache/wink/webdav/package-summary.html"><B>org.apache.wink.webdav</B></A> - package org.apache.wink.webdav<DD>&nbsp;<DT><A HREF="./org/apache/wink/webdav/model/package-summary.html"><B>org.apache.wink.webdav.model</B></A> - package org.apache.wink.webdav.model<DD>Licensed to the Apache Software Foundation (ASF) under one
 or more contributor license agreements.<DT><A HREF="./org/apache/wink/webdav/server/package-summary.html"><B>org.apache.wink.webdav.server</B></A> - package org.apache.wink.webdav.server<DD>&nbsp;<DT><A HREF="./org/apache/wink/common/model/multipart/OutMultiPart.html" title="class in org.apache.wink.common.model.multipart"><B>OutMultiPart</B></A> - Class in <A HREF="./org/apache/wink/common/model/multipart/package-summary.html">org.apache.wink.common.model.multipart</A><DD>An abstract class to generate a MultiPart response, the concept behind this
 class been abstract is that there might be simple implementation over a
 collection or more complex once like over a database cursor<DT><A HREF="./org/apache/wink/common/model/multipart/OutMultiPart.html#OutMultiPart()"><B>OutMultiPart()</B></A> - 
Constructor for class org.apache.wink.common.model.multipart.<A HREF="./org/apache/wink/common/model/multipart/OutMultiPart.html" title="class in org.apache.wink.common.model.multipart">OutMultiPart</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/multipart/OutPart.html" title="class in org.apache.wink.common.model.multipart"><B>OutPart</B></A> - Class in <A HREF="./org/apache/wink/common/model/multipart/package-summary.html">org.apache.wink.common.model.multipart</A><DD>This class is used to represent a part in an <A HREF="./org/apache/wink/common/model/multipart/OutMultiPart.html" title="class in org.apache.wink.common.model.multipart"><CODE>OutMultiPart</CODE></A> message,
 basically it holds the part headers and body<DT><A HREF="./org/apache/wink/common/model/multipart/OutPart.html#OutPart()"><B>OutPart()</B></A> - 
Constructor for class org.apache.wink.common.model.multipart.<A HREF="./org/apache/wink/common/model/multipart/OutPart.html" title="class in org.apache.wink.common.model.multipart">OutPart</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html#outputEncoding"><B>outputEncoding</B></A> - 
Variable in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchDescription</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchQuery.html#outputEncoding"><B>outputEncoding</B></A> - 
Variable in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchQuery.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchQuery</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/handlers/OutputStreamAdapter.html" title="interface in org.apache.wink.client.handlers"><B>OutputStreamAdapter</B></A> - Interface in <A HREF="./org/apache/wink/client/handlers/package-summary.html">org.apache.wink.client.handlers</A><DD>Interface for adapting the output stream<DT><A HREF="./org/apache/wink/webdav/WebDAVHeaders.html#OVERWRITE"><B>OVERWRITE</B></A> - 
Static variable in class org.apache.wink.webdav.<A HREF="./org/apache/wink/webdav/WebDAVHeaders.html" title="class in org.apache.wink.webdav">WebDAVHeaders</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Activelock.html#owner"><B>owner</B></A> - 
Variable in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Activelock.html" title="class in org.apache.wink.webdav.model">Activelock</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Lockinfo.html#owner"><B>owner</B></A> - 
Variable in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Lockinfo.html" title="class in org.apache.wink.webdav.model">Lockinfo</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Owner.html" title="class in org.apache.wink.webdav.model"><B>Owner</B></A> - Class in <A HREF="./org/apache/wink/webdav/model/package-summary.html">org.apache.wink.webdav.model</A><DD>The <code>owner</code> XML element per the WebDAV specification [RFC 4918]<DT><A HREF="./org/apache/wink/webdav/model/Owner.html#Owner()"><B>Owner()</B></A> - 
Constructor for class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Owner.html" title="class in org.apache.wink.webdav.model">Owner</A>
<DD>&nbsp;
</DL>
<HR>
<A NAME="_P_"><!-- --></A><H2>
<B>P</B></H2>
<DL>
<DT><A HREF="./org/apache/wink/common/model/wadl/Param.html" title="class in org.apache.wink.common.model.wadl"><B>Param</B></A> - Class in <A HREF="./org/apache/wink/common/model/wadl/package-summary.html">org.apache.wink.common.model.wadl</A><DD>Java class for anonymous complex type.<DT><A HREF="./org/apache/wink/common/model/wadl/Param.html#Param()"><B>Param()</B></A> - 
Constructor for class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Param.html" title="class in org.apache.wink.common.model.wadl">Param</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Representation.html#param"><B>param</B></A> - 
Variable in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Representation.html" title="class in org.apache.wink.common.model.wadl">Representation</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Request.html#param"><B>param</B></A> - 
Variable in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Request.html" title="class in org.apache.wink.common.model.wadl">Request</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Resource.html#param"><B>param</B></A> - 
Variable in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Resource.html" title="class in org.apache.wink.common.model.wadl">Resource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/ResourceType.html#param"><B>param</B></A> - 
Variable in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/ResourceType.html" title="class in org.apache.wink.common.model.wadl">ResourceType</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Response.html#param"><B>param</B></A> - 
Variable in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Response.html" title="class in org.apache.wink.common.model.wadl">Response</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/ParamStyle.html" title="enum in org.apache.wink.common.model.wadl"><B>ParamStyle</B></A> - Enum in <A HREF="./org/apache/wink/common/model/wadl/package-summary.html">org.apache.wink.common.model.wadl</A><DD>Java class for ParamStyle.<DT><A HREF="./org/apache/wink/common/annotations/Parent.html" title="annotation in org.apache.wink.common.annotations"><B>Parent</B></A> - Annotation Type in <A HREF="./org/apache/wink/common/annotations/package-summary.html">org.apache.wink.common.annotations</A><DD>&nbsp;<DT><A HREF="./org/apache/wink/json4j/JSON.html#parse(java.io.Reader, boolean)"><B>parse(Reader, boolean)</B></A> - 
Static method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSON.html" title="class in org.apache.wink.json4j">JSON</A>
<DD>Parse a Reader of JSON text into a JSONArtifact.
<DT><A HREF="./org/apache/wink/json4j/JSON.html#parse(java.io.Reader, boolean, boolean)"><B>parse(Reader, boolean, boolean)</B></A> - 
Static method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSON.html" title="class in org.apache.wink.json4j">JSON</A>
<DD>Parse a Reader of JSON text into a JSONArtifact.
<DT><A HREF="./org/apache/wink/json4j/JSON.html#parse(java.io.Reader)"><B>parse(Reader)</B></A> - 
Static method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSON.html" title="class in org.apache.wink.json4j">JSON</A>
<DD>Parse a Reader of JSON text into a JSONArtifact.
<DT><A HREF="./org/apache/wink/json4j/JSON.html#parse(java.io.InputStream, boolean)"><B>parse(InputStream, boolean)</B></A> - 
Static method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSON.html" title="class in org.apache.wink.json4j">JSON</A>
<DD>Parse a InputStream of JSON text into a JSONArtifact.
<DT><A HREF="./org/apache/wink/json4j/JSON.html#parse(java.io.InputStream, boolean, boolean)"><B>parse(InputStream, boolean, boolean)</B></A> - 
Static method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSON.html" title="class in org.apache.wink.json4j">JSON</A>
<DD>Parse a InputStream of JSON text into a JSONArtifact.
<DT><A HREF="./org/apache/wink/json4j/JSON.html#parse(java.io.InputStream)"><B>parse(InputStream)</B></A> - 
Static method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSON.html" title="class in org.apache.wink.json4j">JSON</A>
<DD>Parse an InputStream of JSON text into a JSONArtifact.
<DT><A HREF="./org/apache/wink/json4j/JSON.html#parse(java.lang.String, boolean)"><B>parse(String, boolean)</B></A> - 
Static method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSON.html" title="class in org.apache.wink.json4j">JSON</A>
<DD>Parse a string of JSON text into a JSONArtifact.
<DT><A HREF="./org/apache/wink/json4j/JSON.html#parse(java.lang.String, boolean, boolean)"><B>parse(String, boolean, boolean)</B></A> - 
Static method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSON.html" title="class in org.apache.wink.json4j">JSON</A>
<DD>Parse a string of JSON text into a JSONArtifact.
<DT><A HREF="./org/apache/wink/json4j/JSON.html#parse(java.lang.String)"><B>parse(String)</B></A> - 
Static method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSON.html" title="class in org.apache.wink.json4j">JSON</A>
<DD>Parse a string of JSON text into a JSONArtifact.
<DT><A HREF="./org/apache/wink/common/http/HttpStatus.html#PARTIAL_CONTENT"><B>PARTIAL_CONTENT</B></A> - 
Static variable in class org.apache.wink.common.http.<A HREF="./org/apache/wink/common/http/HttpStatus.html" title="class in org.apache.wink.common.http">HttpStatus</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/rss/RssCloud.html#path"><B>path</B></A> - 
Variable in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssCloud.html" title="class in org.apache.wink.common.model.rss">RssCloud</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Param.html#path"><B>path</B></A> - 
Variable in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Param.html" title="class in org.apache.wink.common.model.wadl">Param</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Resource.html#path"><B>path</B></A> - 
Variable in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Resource.html" title="class in org.apache.wink.common.model.wadl">Resource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/server/utils/BaseLinksBuilder.html#pathParam(java.lang.String, java.lang.String)"><B>pathParam(String, String)</B></A> - 
Method in interface org.apache.wink.server.utils.<A HREF="./org/apache/wink/server/utils/BaseLinksBuilder.html" title="interface in org.apache.wink.server.utils">BaseLinksBuilder</A>
<DD>Set the value of a template path parameter to be used during the building
 of the links.
<DT><A HREF="./org/apache/wink/common/http/HttpStatus.html#PAYMENT_REQUIRED"><B>PAYMENT_REQUIRED</B></A> - 
Static variable in class org.apache.wink.common.http.<A HREF="./org/apache/wink/common/http/HttpStatus.html" title="class in org.apache.wink.common.http">HttpStatus</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/rss/RssCloud.html#port"><B>port</B></A> - 
Variable in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssCloud.html" title="class in org.apache.wink.common.model.rss">RssCloud</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/Resource.html#post(java.lang.Class, java.lang.Object)"><B>post(Class&lt;T&gt;, Object)</B></A> - 
Method in interface org.apache.wink.client.<A HREF="./org/apache/wink/client/Resource.html" title="interface in org.apache.wink.client">Resource</A>
<DD>Invoke the POST method
<DT><A HREF="./org/apache/wink/client/Resource.html#post(org.apache.wink.client.EntityType, java.lang.Object)"><B>post(EntityType&lt;T&gt;, Object)</B></A> - 
Method in interface org.apache.wink.client.<A HREF="./org/apache/wink/client/Resource.html" title="interface in org.apache.wink.client">Resource</A>
<DD>Invoke the POST method
<DT><A HREF="./org/apache/wink/client/Resource.html#post(java.lang.Object)"><B>post(Object)</B></A> - 
Method in interface org.apache.wink.client.<A HREF="./org/apache/wink/client/Resource.html" title="interface in org.apache.wink.client">Resource</A>
<DD>Invoke the POST method
<DT><A HREF="./org/apache/wink/common/http/HttpStatus.html#PRECONDITION_FAILED"><B>PRECONDITION_FAILED</B></A> - 
Static variable in class org.apache.wink.common.http.<A HREF="./org/apache/wink/common/http/HttpStatus.html" title="class in org.apache.wink.common.http">HttpStatus</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/http/HttpStatus.html#PROCESSING"><B>PROCESSING</B></A> - 
Static variable in class org.apache.wink.common.http.<A HREF="./org/apache/wink/common/http/HttpStatus.html" title="class in org.apache.wink.common.http">HttpStatus</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Representation.html#profile"><B>profile</B></A> - 
Variable in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Representation.html" title="class in org.apache.wink.common.model.wadl">Representation</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Prop.html" title="class in org.apache.wink.webdav.model"><B>Prop</B></A> - Class in <A HREF="./org/apache/wink/webdav/model/package-summary.html">org.apache.wink.webdav.model</A><DD>The <code>prop</code> XML element per the WebDAV specification [RFC 4918]<DT><A HREF="./org/apache/wink/webdav/model/Prop.html#Prop()"><B>Prop()</B></A> - 
Constructor for class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Prop.html" title="class in org.apache.wink.webdav.model">Prop</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Propfind.html#prop"><B>prop</B></A> - 
Variable in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Propfind.html" title="class in org.apache.wink.webdav.model">Propfind</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Propstat.html#prop"><B>prop</B></A> - 
Variable in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Propstat.html" title="class in org.apache.wink.webdav.model">Propstat</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Remove.html#prop"><B>prop</B></A> - 
Variable in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Remove.html" title="class in org.apache.wink.webdav.model">Remove</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Set.html#prop"><B>prop</B></A> - 
Variable in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Set.html" title="class in org.apache.wink.webdav.model">Set</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/WebDAVConstants.html#PROPERTIES_SET"><B>PROPERTIES_SET</B></A> - 
Static variable in class org.apache.wink.webdav.<A HREF="./org/apache/wink/webdav/WebDAVConstants.html" title="class in org.apache.wink.webdav">WebDAVConstants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/WebDAVConstants.html#PROPERTY_CREATIONDATE"><B>PROPERTY_CREATIONDATE</B></A> - 
Static variable in class org.apache.wink.webdav.<A HREF="./org/apache/wink/webdav/WebDAVConstants.html" title="class in org.apache.wink.webdav">WebDAVConstants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/WebDAVConstants.html#PROPERTY_DISPLAYNAME"><B>PROPERTY_DISPLAYNAME</B></A> - 
Static variable in class org.apache.wink.webdav.<A HREF="./org/apache/wink/webdav/WebDAVConstants.html" title="class in org.apache.wink.webdav">WebDAVConstants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/WebDAVConstants.html#PROPERTY_GETCONTENTLANGUAGE"><B>PROPERTY_GETCONTENTLANGUAGE</B></A> - 
Static variable in class org.apache.wink.webdav.<A HREF="./org/apache/wink/webdav/WebDAVConstants.html" title="class in org.apache.wink.webdav">WebDAVConstants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/WebDAVConstants.html#PROPERTY_GETCONTENTLENGTH"><B>PROPERTY_GETCONTENTLENGTH</B></A> - 
Static variable in class org.apache.wink.webdav.<A HREF="./org/apache/wink/webdav/WebDAVConstants.html" title="class in org.apache.wink.webdav">WebDAVConstants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/WebDAVConstants.html#PROPERTY_GETCONTENTTYPE"><B>PROPERTY_GETCONTENTTYPE</B></A> - 
Static variable in class org.apache.wink.webdav.<A HREF="./org/apache/wink/webdav/WebDAVConstants.html" title="class in org.apache.wink.webdav">WebDAVConstants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/WebDAVConstants.html#PROPERTY_GETETAG"><B>PROPERTY_GETETAG</B></A> - 
Static variable in class org.apache.wink.webdav.<A HREF="./org/apache/wink/webdav/WebDAVConstants.html" title="class in org.apache.wink.webdav">WebDAVConstants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/WebDAVConstants.html#PROPERTY_GETLASTMODIFIED"><B>PROPERTY_GETLASTMODIFIED</B></A> - 
Static variable in class org.apache.wink.webdav.<A HREF="./org/apache/wink/webdav/WebDAVConstants.html" title="class in org.apache.wink.webdav">WebDAVConstants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/WebDAVConstants.html#PROPERTY_LOCKDISCOVERY"><B>PROPERTY_LOCKDISCOVERY</B></A> - 
Static variable in class org.apache.wink.webdav.<A HREF="./org/apache/wink/webdav/WebDAVConstants.html" title="class in org.apache.wink.webdav">WebDAVConstants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/WebDAVConstants.html#PROPERTY_RESOURCETYPE"><B>PROPERTY_RESOURCETYPE</B></A> - 
Static variable in class org.apache.wink.webdav.<A HREF="./org/apache/wink/webdav/WebDAVConstants.html" title="class in org.apache.wink.webdav">WebDAVConstants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/WebDAVConstants.html#PROPERTY_SUPPORTEDLOCK"><B>PROPERTY_SUPPORTEDLOCK</B></A> - 
Static variable in class org.apache.wink.webdav.<A HREF="./org/apache/wink/webdav/WebDAVConstants.html" title="class in org.apache.wink.webdav">WebDAVConstants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Propertybehavior.html" title="class in org.apache.wink.webdav.model"><B>Propertybehavior</B></A> - Class in <A HREF="./org/apache/wink/webdav/model/package-summary.html">org.apache.wink.webdav.model</A><DD>The <code>propertybehavior</code> XML element per the WebDAV specification
 [RFC 4918]<DT><A HREF="./org/apache/wink/webdav/model/Propertybehavior.html#Propertybehavior()"><B>Propertybehavior()</B></A> - 
Constructor for class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Propertybehavior.html" title="class in org.apache.wink.webdav.model">Propertybehavior</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Propertyupdate.html" title="class in org.apache.wink.webdav.model"><B>Propertyupdate</B></A> - Class in <A HREF="./org/apache/wink/webdav/model/package-summary.html">org.apache.wink.webdav.model</A><DD>The <code>propertyupdate</code> XML element per the WebDAV specification [RFC
 4918]<DT><A HREF="./org/apache/wink/webdav/model/Propertyupdate.html#Propertyupdate()"><B>Propertyupdate()</B></A> - 
Constructor for class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Propertyupdate.html" title="class in org.apache.wink.webdav.model">Propertyupdate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Propfind.html" title="class in org.apache.wink.webdav.model"><B>Propfind</B></A> - Class in <A HREF="./org/apache/wink/webdav/model/package-summary.html">org.apache.wink.webdav.model</A><DD>The <code>propfind</code> XML element per the WebDAV specification [RFC 4918]<DT><A HREF="./org/apache/wink/webdav/model/Propfind.html#Propfind()"><B>Propfind()</B></A> - 
Constructor for class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Propfind.html" title="class in org.apache.wink.webdav.model">Propfind</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/server/WebDAVResponseBuilder.html#propfind(org.apache.wink.common.model.synd.SyndEntry, java.lang.String)"><B>propfind(SyndEntry, String)</B></A> - 
Method in class org.apache.wink.webdav.server.<A HREF="./org/apache/wink/webdav/server/WebDAVResponseBuilder.html" title="class in org.apache.wink.webdav.server">WebDAVResponseBuilder</A>
<DD>Process the PROPFIND request for a given entry and create a response
 using the default implementation of <A HREF="./org/apache/wink/webdav/server/WebDAVResponseBuilder.PropertyHandler.html" title="class in org.apache.wink.webdav.server"><CODE>WebDAVResponseBuilder.PropertyHandler</CODE></A>
<DT><A HREF="./org/apache/wink/webdav/server/WebDAVResponseBuilder.html#propfind(org.apache.wink.common.model.synd.SyndEntry, java.lang.String, org.apache.wink.webdav.server.WebDAVResponseBuilder.PropertyHandler)"><B>propfind(SyndEntry, String, WebDAVResponseBuilder.PropertyHandler)</B></A> - 
Method in class org.apache.wink.webdav.server.<A HREF="./org/apache/wink/webdav/server/WebDAVResponseBuilder.html" title="class in org.apache.wink.webdav.server">WebDAVResponseBuilder</A>
<DD>Process the PROPFIND request for given document resource and create a
 response.
<DT><A HREF="./org/apache/wink/webdav/server/WebDAVResponseBuilder.html#propfind(org.apache.wink.common.model.synd.SyndFeed, java.lang.String, java.lang.String)"><B>propfind(SyndFeed, String, String)</B></A> - 
Method in class org.apache.wink.webdav.server.<A HREF="./org/apache/wink/webdav/server/WebDAVResponseBuilder.html" title="class in org.apache.wink.webdav.server">WebDAVResponseBuilder</A>
<DD>Process the PROPFIND request for the given feed and create a response
 using the default implementation of <A HREF="./org/apache/wink/webdav/server/WebDAVResponseBuilder.CollectionPropertyHandler.html" title="class in org.apache.wink.webdav.server"><CODE>WebDAVResponseBuilder.CollectionPropertyHandler</CODE></A>
<DT><A HREF="./org/apache/wink/webdav/server/WebDAVResponseBuilder.html#propfind(org.apache.wink.common.model.synd.SyndFeed, java.lang.String, java.lang.String, org.apache.wink.webdav.server.WebDAVResponseBuilder.CollectionPropertyHandler)"><B>propfind(SyndFeed, String, String, WebDAVResponseBuilder.CollectionPropertyHandler)</B></A> - 
Method in class org.apache.wink.webdav.server.<A HREF="./org/apache/wink/webdav/server/WebDAVResponseBuilder.html" title="class in org.apache.wink.webdav.server">WebDAVResponseBuilder</A>
<DD>Process the PROPFIND request for the given collection resource and create
 a response.
<DT><A HREF="./org/apache/wink/webdav/server/WebDAVRootResource.html#propfind(javax.ws.rs.core.HttpHeaders, java.lang.String)"><B>propfind(HttpHeaders, String)</B></A> - 
Method in class org.apache.wink.webdav.server.<A HREF="./org/apache/wink/webdav/server/WebDAVRootResource.html" title="class in org.apache.wink.webdav.server">WebDAVRootResource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Propfind.html#propname"><B>propname</B></A> - 
Variable in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Propfind.html" title="class in org.apache.wink.webdav.model">Propfind</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Propname.html" title="class in org.apache.wink.webdav.model"><B>Propname</B></A> - Class in <A HREF="./org/apache/wink/webdav/model/package-summary.html">org.apache.wink.webdav.model</A><DD>The <code>propname</code> XML element per the WebDAV specification [RFC 4918]<DT><A HREF="./org/apache/wink/webdav/model/Propname.html#Propname()"><B>Propname()</B></A> - 
Constructor for class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Propname.html" title="class in org.apache.wink.webdav.model">Propname</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Propstat.html" title="class in org.apache.wink.webdav.model"><B>Propstat</B></A> - Class in <A HREF="./org/apache/wink/webdav/model/package-summary.html">org.apache.wink.webdav.model</A><DD>The <code>propstat</code> XML element per the WebDAV specification [RFC 4918]<DT><A HREF="./org/apache/wink/webdav/model/Propstat.html#Propstat()"><B>Propstat()</B></A> - 
Constructor for class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Propstat.html" title="class in org.apache.wink.webdav.model">Propstat</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Response.html#propstat"><B>propstat</B></A> - 
Variable in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Response.html" title="class in org.apache.wink.webdav.model">Response</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/providers/protobuf/WinkProtobufProvider.html#PROTOBUF"><B>PROTOBUF</B></A> - 
Static variable in class org.apache.wink.providers.protobuf.<A HREF="./org/apache/wink/providers/protobuf/WinkProtobufProvider.html" title="class in org.apache.wink.providers.protobuf">WinkProtobufProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/rss/RssCloud.html#protocol"><B>protocol</B></A> - 
Variable in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssCloud.html" title="class in org.apache.wink.common.model.rss">RssCloud</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/synd/SyndSimpleContent.html#providers"><B>providers</B></A> - 
Variable in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndSimpleContent.html" title="class in org.apache.wink.common.model.synd">SyndSimpleContent</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/utils/ProviderUtils.html" title="class in org.apache.wink.common.utils"><B>ProviderUtils</B></A> - Class in <A HREF="./org/apache/wink/common/utils/package-summary.html">org.apache.wink.common.utils</A><DD>&nbsp;<DT><A HREF="./org/apache/wink/common/utils/ProviderUtils.html#ProviderUtils()"><B>ProviderUtils()</B></A> - 
Constructor for class org.apache.wink.common.utils.<A HREF="./org/apache/wink/common/utils/ProviderUtils.html" title="class in org.apache.wink.common.utils">ProviderUtils</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/utils/ProviderUtils.PROVIDER_EXCEPTION_ORIGINATOR.html" title="enum in org.apache.wink.common.utils"><B>ProviderUtils.PROVIDER_EXCEPTION_ORIGINATOR</B></A> - Enum in <A HREF="./org/apache/wink/common/utils/package-summary.html">org.apache.wink.common.utils</A><DD>&nbsp;<DT><A HREF="./org/apache/wink/common/http/HttpStatus.html#PROXY_AUTHENTICATION_REQUIRED"><B>PROXY_AUTHENTICATION_REQUIRED</B></A> - 
Static variable in class org.apache.wink.common.http.<A HREF="./org/apache/wink/common/http/HttpStatus.html" title="class in org.apache.wink.common.http">HttpStatus</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/handlers/ProxyAuthSecurityHandler.html" title="class in org.apache.wink.client.handlers"><B>ProxyAuthSecurityHandler</B></A> - Class in <A HREF="./org/apache/wink/client/handlers/package-summary.html">org.apache.wink.client.handlers</A><DD>SecurityHandler for a client to perform http proxy auth:
 <p/>
 <code>
 Usage:<br/>
 ClientConfig config = new ClientConfig();<br/>
 ProxyAuthSecurityHandler proxyAuthSecHandler = new ProxyAuthSecurityHandler();
 proxyAuthSecHandler.setUserName("username");
 proxyAuthSecHandler.setPassword("password");
 config.handlers(proxyAuthSecurityHandler);<br/>
 // create the rest client instance<br/>
 RestClient client = new RestClient(config);<br/>
 // create the resource instance to interact with Resource<br/>
 resource = client.resource("http://localhost:8080/path/to/resource");<br/>
 </code><DT><A HREF="./org/apache/wink/client/handlers/ProxyAuthSecurityHandler.html#ProxyAuthSecurityHandler()"><B>ProxyAuthSecurityHandler()</B></A> - 
Constructor for class org.apache.wink.client.handlers.<A HREF="./org/apache/wink/client/handlers/ProxyAuthSecurityHandler.html" title="class in org.apache.wink.client.handlers">ProxyAuthSecurityHandler</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/handlers/ProxyAuthSecurityHandler.html#ProxyAuthSecurityHandler(java.lang.String, java.lang.String)"><B>ProxyAuthSecurityHandler(String, String)</B></A> - 
Constructor for class org.apache.wink.client.handlers.<A HREF="./org/apache/wink/client/handlers/ProxyAuthSecurityHandler.html" title="class in org.apache.wink.client.handlers">ProxyAuthSecurityHandler</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/ClientConfig.html#proxyHost(java.lang.String)"><B>proxyHost(String)</B></A> - 
Method in class org.apache.wink.client.<A HREF="./org/apache/wink/client/ClientConfig.html" title="class in org.apache.wink.client">ClientConfig</A>
<DD>Set the proxy host
<DT><A HREF="./org/apache/wink/client/ClientConfig.html#proxyPort(int)"><B>proxyPort(int)</B></A> - 
Method in class org.apache.wink.client.<A HREF="./org/apache/wink/client/ClientConfig.html" title="class in org.apache.wink.client">ClientConfig</A>
<DD>Set the proxy port
<DT><A HREF="./org/apache/wink/common/model/rss/RssChannel.html#pubDate"><B>pubDate</B></A> - 
Variable in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssChannel.html" title="class in org.apache.wink.common.model.rss">RssChannel</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/rss/RssItem.html#pubDate"><B>pubDate</B></A> - 
Variable in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssItem.html" title="class in org.apache.wink.common.model.rss">RssItem</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/logging/InMemoryHandler.html#publish(java.util.logging.LogRecord)"><B>publish(LogRecord)</B></A> - 
Method in class org.apache.wink.logging.<A HREF="./org/apache/wink/logging/InMemoryHandler.html" title="class in org.apache.wink.logging">InMemoryHandler</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/logging/WinkLogHandler.html#publish(java.util.logging.LogRecord)"><B>publish(LogRecord)</B></A> - 
Method in class org.apache.wink.logging.<A HREF="./org/apache/wink/logging/WinkLogHandler.html" title="class in org.apache.wink.logging">WinkLogHandler</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomEntry.html#published"><B>published</B></A> - 
Variable in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomEntry.html" title="class in org.apache.wink.common.model.atom">AtomEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/Resource.html#put(java.lang.Class, java.lang.Object)"><B>put(Class&lt;T&gt;, Object)</B></A> - 
Method in interface org.apache.wink.client.<A HREF="./org/apache/wink/client/Resource.html" title="interface in org.apache.wink.client">Resource</A>
<DD>Invoke the PUT method
<DT><A HREF="./org/apache/wink/client/Resource.html#put(org.apache.wink.client.EntityType, java.lang.Object)"><B>put(EntityType&lt;T&gt;, Object)</B></A> - 
Method in interface org.apache.wink.client.<A HREF="./org/apache/wink/client/Resource.html" title="interface in org.apache.wink.client">Resource</A>
<DD>Invoke the PUT method
<DT><A HREF="./org/apache/wink/client/Resource.html#put(java.lang.Object)"><B>put(Object)</B></A> - 
Method in interface org.apache.wink.client.<A HREF="./org/apache/wink/client/Resource.html" title="interface in org.apache.wink.client">Resource</A>
<DD>Invoke the PUT method
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONArrayDelegate.html#put(boolean)"><B>put(boolean)</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONArrayDelegate.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONArrayDelegate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONArrayDelegate.html#put(double)"><B>put(double)</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONArrayDelegate.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONArrayDelegate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONArrayDelegate.html#put(int)"><B>put(int)</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONArrayDelegate.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONArrayDelegate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONArrayDelegate.html#put(short)"><B>put(short)</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONArrayDelegate.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONArrayDelegate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONArrayDelegate.html#put(java.util.Collection)"><B>put(Collection)</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONArrayDelegate.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONArrayDelegate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONArrayDelegate.html#put(int, boolean)"><B>put(int, boolean)</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONArrayDelegate.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONArrayDelegate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONArrayDelegate.html#put(int, java.util.Collection)"><B>put(int, Collection)</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONArrayDelegate.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONArrayDelegate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONArrayDelegate.html#put(int, double)"><B>put(int, double)</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONArrayDelegate.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONArrayDelegate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONArrayDelegate.html#put(int, int)"><B>put(int, int)</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONArrayDelegate.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONArrayDelegate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONArrayDelegate.html#put(int, long)"><B>put(int, long)</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONArrayDelegate.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONArrayDelegate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONArrayDelegate.html#put(int, short)"><B>put(int, short)</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONArrayDelegate.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONArrayDelegate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONArrayDelegate.html#put(int, java.util.Map)"><B>put(int, Map)</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONArrayDelegate.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONArrayDelegate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONArrayDelegate.html#put(int, java.lang.Object)"><B>put(int, Object)</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONArrayDelegate.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONArrayDelegate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONArrayDelegate.html#put(long)"><B>put(long)</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONArrayDelegate.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONArrayDelegate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONArrayDelegate.html#put(java.util.Map)"><B>put(Map)</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONArrayDelegate.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONArrayDelegate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONArrayDelegate.html#put(java.lang.Object)"><B>put(Object)</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONArrayDelegate.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONArrayDelegate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONObjectDelegate.html#put(java.lang.String, boolean)"><B>put(String, boolean)</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONObjectDelegate.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONObjectDelegate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONObjectDelegate.html#put(java.lang.String, java.util.Collection)"><B>put(String, Collection)</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONObjectDelegate.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONObjectDelegate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONObjectDelegate.html#put(java.lang.String, double)"><B>put(String, double)</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONObjectDelegate.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONObjectDelegate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONObjectDelegate.html#put(java.lang.String, int)"><B>put(String, int)</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONObjectDelegate.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONObjectDelegate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONObjectDelegate.html#put(java.lang.String, long)"><B>put(String, long)</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONObjectDelegate.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONObjectDelegate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONObjectDelegate.html#put(java.lang.String, org.apache.wink.json4j.compat.JSONObject)"><B>put(String, JSONObject)</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONObjectDelegate.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONObjectDelegate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONObjectDelegate.html#put(java.lang.String, short)"><B>put(String, short)</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONObjectDelegate.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONObjectDelegate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONObjectDelegate.html#put(java.lang.String, java.util.Map)"><B>put(String, Map)</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONObjectDelegate.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONObjectDelegate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONObjectDelegate.html#put(java.lang.String, java.lang.Object)"><B>put(String, Object)</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONObjectDelegate.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONObjectDelegate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONArray.html#put(boolean)"><B>put(boolean)</B></A> - 
Method in interface org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONArray.html" title="interface in org.apache.wink.json4j.compat">JSONArray</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONArray.html#put(java.util.Collection)"><B>put(Collection)</B></A> - 
Method in interface org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONArray.html" title="interface in org.apache.wink.json4j.compat">JSONArray</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONArray.html#put(double)"><B>put(double)</B></A> - 
Method in interface org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONArray.html" title="interface in org.apache.wink.json4j.compat">JSONArray</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONArray.html#put(int)"><B>put(int)</B></A> - 
Method in interface org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONArray.html" title="interface in org.apache.wink.json4j.compat">JSONArray</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONArray.html#put(int, boolean)"><B>put(int, boolean)</B></A> - 
Method in interface org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONArray.html" title="interface in org.apache.wink.json4j.compat">JSONArray</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONArray.html#put(int, java.util.Collection)"><B>put(int, Collection)</B></A> - 
Method in interface org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONArray.html" title="interface in org.apache.wink.json4j.compat">JSONArray</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONArray.html#put(int, double)"><B>put(int, double)</B></A> - 
Method in interface org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONArray.html" title="interface in org.apache.wink.json4j.compat">JSONArray</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONArray.html#put(int, int)"><B>put(int, int)</B></A> - 
Method in interface org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONArray.html" title="interface in org.apache.wink.json4j.compat">JSONArray</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONArray.html#put(int, long)"><B>put(int, long)</B></A> - 
Method in interface org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONArray.html" title="interface in org.apache.wink.json4j.compat">JSONArray</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONArray.html#put(int, short)"><B>put(int, short)</B></A> - 
Method in interface org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONArray.html" title="interface in org.apache.wink.json4j.compat">JSONArray</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONArray.html#put(int, java.util.Map)"><B>put(int, Map)</B></A> - 
Method in interface org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONArray.html" title="interface in org.apache.wink.json4j.compat">JSONArray</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONArray.html#put(int, java.lang.Object)"><B>put(int, Object)</B></A> - 
Method in interface org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONArray.html" title="interface in org.apache.wink.json4j.compat">JSONArray</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONArray.html#put(long)"><B>put(long)</B></A> - 
Method in interface org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONArray.html" title="interface in org.apache.wink.json4j.compat">JSONArray</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONArray.html#put(short)"><B>put(short)</B></A> - 
Method in interface org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONArray.html" title="interface in org.apache.wink.json4j.compat">JSONArray</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONArray.html#put(java.util.Map)"><B>put(Map)</B></A> - 
Method in interface org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONArray.html" title="interface in org.apache.wink.json4j.compat">JSONArray</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONArray.html#put(java.lang.Object)"><B>put(Object)</B></A> - 
Method in interface org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONArray.html" title="interface in org.apache.wink.json4j.compat">JSONArray</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONObject.html#put(java.lang.String, boolean)"><B>put(String, boolean)</B></A> - 
Method in interface org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONObject.html" title="interface in org.apache.wink.json4j.compat">JSONObject</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONObject.html#put(java.lang.String, java.util.Collection)"><B>put(String, Collection)</B></A> - 
Method in interface org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONObject.html" title="interface in org.apache.wink.json4j.compat">JSONObject</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONObject.html#put(java.lang.String, double)"><B>put(String, double)</B></A> - 
Method in interface org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONObject.html" title="interface in org.apache.wink.json4j.compat">JSONObject</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONObject.html#put(java.lang.String, int)"><B>put(String, int)</B></A> - 
Method in interface org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONObject.html" title="interface in org.apache.wink.json4j.compat">JSONObject</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONObject.html#put(java.lang.String, long)"><B>put(String, long)</B></A> - 
Method in interface org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONObject.html" title="interface in org.apache.wink.json4j.compat">JSONObject</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONObject.html#put(java.lang.String, short)"><B>put(String, short)</B></A> - 
Method in interface org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONObject.html" title="interface in org.apache.wink.json4j.compat">JSONObject</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONObject.html#put(java.lang.String, java.util.Map)"><B>put(String, Map)</B></A> - 
Method in interface org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONObject.html" title="interface in org.apache.wink.json4j.compat">JSONObject</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONObject.html#put(java.lang.String, java.lang.Object)"><B>put(String, Object)</B></A> - 
Method in interface org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONObject.html" title="interface in org.apache.wink.json4j.compat">JSONObject</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/JSONArray.html#put(int, java.lang.Object)"><B>put(int, Object)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONArray.html" title="class in org.apache.wink.json4j">JSONArray</A>
<DD>Map of java.util.ArrayList.add(int, java.lang.Object), for compatibility to other JSON parsers.
<DT><A HREF="./org/apache/wink/json4j/JSONArray.html#put(java.lang.Object)"><B>put(Object)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONArray.html" title="class in org.apache.wink.json4j">JSONArray</A>
<DD>Map of java.util.ArrayList.add(java.lang.Object), for compatibility to other JSON parsers.
<DT><A HREF="./org/apache/wink/json4j/JSONArray.html#put(java.lang.Object, boolean)"><B>put(Object, boolean)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONArray.html" title="class in org.apache.wink.json4j">JSONArray</A>
<DD>Map of java.util.ArrayList.add(java.lang.Object), for compatibility to other JSON parsers.
<DT><A HREF="./org/apache/wink/json4j/JSONArray.html#put(int, java.util.Map)"><B>put(int, Map)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONArray.html" title="class in org.apache.wink.json4j">JSONArray</A>
<DD>Method to place a java.util.Map instance in the array.
<DT><A HREF="./org/apache/wink/json4j/JSONArray.html#put(int, java.util.Map, boolean)"><B>put(int, Map, boolean)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONArray.html" title="class in org.apache.wink.json4j">JSONArray</A>
<DD>Method to place a java.util.Map instance in the array.
<DT><A HREF="./org/apache/wink/json4j/JSONArray.html#put(java.util.Map)"><B>put(Map)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONArray.html" title="class in org.apache.wink.json4j">JSONArray</A>
<DD>Method to place a map into the array.
<DT><A HREF="./org/apache/wink/json4j/JSONArray.html#put(java.util.Map, boolean)"><B>put(Map, boolean)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONArray.html" title="class in org.apache.wink.json4j">JSONArray</A>
<DD>Method to place a map into the array.
<DT><A HREF="./org/apache/wink/json4j/JSONArray.html#put(int, java.util.Collection)"><B>put(int, Collection)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONArray.html" title="class in org.apache.wink.json4j">JSONArray</A>
<DD>Method to place a map into the array.
<DT><A HREF="./org/apache/wink/json4j/JSONArray.html#put(int, java.util.Collection, boolean)"><B>put(int, Collection, boolean)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONArray.html" title="class in org.apache.wink.json4j">JSONArray</A>
<DD>Method to place a map into the array.
<DT><A HREF="./org/apache/wink/json4j/JSONArray.html#put(java.util.Collection)"><B>put(Collection)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONArray.html" title="class in org.apache.wink.json4j">JSONArray</A>
<DD>Method to place a map into the array.
<DT><A HREF="./org/apache/wink/json4j/JSONArray.html#put(java.util.Collection, boolean)"><B>put(Collection, boolean)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONArray.html" title="class in org.apache.wink.json4j">JSONArray</A>
<DD>Method to place a map into the array.
<DT><A HREF="./org/apache/wink/json4j/JSONArray.html#put(long)"><B>put(long)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONArray.html" title="class in org.apache.wink.json4j">JSONArray</A>
<DD>Method to place a long into the array.
<DT><A HREF="./org/apache/wink/json4j/JSONArray.html#put(int, long)"><B>put(int, long)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONArray.html" title="class in org.apache.wink.json4j">JSONArray</A>
<DD>Method to place a long into the array.
<DT><A HREF="./org/apache/wink/json4j/JSONArray.html#put(int)"><B>put(int)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONArray.html" title="class in org.apache.wink.json4j">JSONArray</A>
<DD>Method to place a int into the array.
<DT><A HREF="./org/apache/wink/json4j/JSONArray.html#put(int, int)"><B>put(int, int)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONArray.html" title="class in org.apache.wink.json4j">JSONArray</A>
<DD>Method to place an int into the array.
<DT><A HREF="./org/apache/wink/json4j/JSONArray.html#put(short)"><B>put(short)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONArray.html" title="class in org.apache.wink.json4j">JSONArray</A>
<DD>Method to place a short into the array.
<DT><A HREF="./org/apache/wink/json4j/JSONArray.html#put(int, short)"><B>put(int, short)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONArray.html" title="class in org.apache.wink.json4j">JSONArray</A>
<DD>Method to place a short into the array.
<DT><A HREF="./org/apache/wink/json4j/JSONArray.html#put(double)"><B>put(double)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONArray.html" title="class in org.apache.wink.json4j">JSONArray</A>
<DD>Method to place a double into the array.
<DT><A HREF="./org/apache/wink/json4j/JSONArray.html#put(int, double)"><B>put(int, double)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONArray.html" title="class in org.apache.wink.json4j">JSONArray</A>
<DD>Method to place a double into the array.
<DT><A HREF="./org/apache/wink/json4j/JSONArray.html#put(boolean)"><B>put(boolean)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONArray.html" title="class in org.apache.wink.json4j">JSONArray</A>
<DD>Method to place a int into the array.
<DT><A HREF="./org/apache/wink/json4j/JSONArray.html#put(int, boolean)"><B>put(int, boolean)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONArray.html" title="class in org.apache.wink.json4j">JSONArray</A>
<DD>Method to place a boolean into the array.
<DT><A HREF="./org/apache/wink/json4j/JSONObject.html#put(java.lang.Object, java.lang.Object, boolean)"><B>put(Object, Object, boolean)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONObject.html" title="class in org.apache.wink.json4j">JSONObject</A>
<DD>(non-Javadoc)
<DT><A HREF="./org/apache/wink/json4j/JSONObject.html#put(java.lang.Object, java.lang.Object)"><B>put(Object, Object)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONObject.html" title="class in org.apache.wink.json4j">JSONObject</A>
<DD>(non-Javadoc)
<DT><A HREF="./org/apache/wink/json4j/JSONObject.html#put(java.lang.String, java.lang.Object)"><B>put(String, Object)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONObject.html" title="class in org.apache.wink.json4j">JSONObject</A>
<DD>Similar to default HashMap put, except it returns JSONObject instead of Object.
<DT><A HREF="./org/apache/wink/json4j/JSONObject.html#put(java.lang.String, boolean)"><B>put(String, boolean)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONObject.html" title="class in org.apache.wink.json4j">JSONObject</A>
<DD>Method to add an atomic boolean to the JSONObject.
<DT><A HREF="./org/apache/wink/json4j/JSONObject.html#put(java.lang.String, double)"><B>put(String, double)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONObject.html" title="class in org.apache.wink.json4j">JSONObject</A>
<DD>Method to add an atomic double to the JSONObject.
<DT><A HREF="./org/apache/wink/json4j/JSONObject.html#put(java.lang.String, int)"><B>put(String, int)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONObject.html" title="class in org.apache.wink.json4j">JSONObject</A>
<DD>Method to add an atomic integer to the JSONObject.
<DT><A HREF="./org/apache/wink/json4j/JSONObject.html#put(java.lang.String, short)"><B>put(String, short)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONObject.html" title="class in org.apache.wink.json4j">JSONObject</A>
<DD>Method to add an atomic short to the JSONObject.
<DT><A HREF="./org/apache/wink/json4j/JSONObject.html#put(java.lang.String, long)"><B>put(String, long)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONObject.html" title="class in org.apache.wink.json4j">JSONObject</A>
<DD>Method to add an atomic long to the JSONObject.
<DT><A HREF="./org/apache/wink/json4j/JSONObject.html#put(java.lang.String, java.util.Map, boolean)"><B>put(String, Map, boolean)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONObject.html" title="class in org.apache.wink.json4j">JSONObject</A>
<DD>Method to add a Map as a new JSONObject contained in this JSONObject
<DT><A HREF="./org/apache/wink/json4j/JSONObject.html#put(java.lang.String, java.util.Map)"><B>put(String, Map)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONObject.html" title="class in org.apache.wink.json4j">JSONObject</A>
<DD>Method to add a Map as a new JSONObject contained in this JSONObject
 Same as calling put(String, Map, true);
<DT><A HREF="./org/apache/wink/json4j/JSONObject.html#put(java.lang.String, java.util.Collection, boolean)"><B>put(String, Collection, boolean)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONObject.html" title="class in org.apache.wink.json4j">JSONObject</A>
<DD>Method to add a Collection as a new JSONArray contained in this JSONObject
<DT><A HREF="./org/apache/wink/json4j/JSONObject.html#put(java.lang.String, java.util.Collection)"><B>put(String, Collection)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONObject.html" title="class in org.apache.wink.json4j">JSONObject</A>
<DD>Method to add a Collection as a new JSONArray contained in this JSONObject
<DT><A HREF="./org/apache/wink/json4j/JSONObject.html#put(java.lang.String, java.lang.Object[])"><B>put(String, Object[])</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONObject.html" title="class in org.apache.wink.json4j">JSONObject</A>
<DD>Method to add an Object array as a new JSONArray contained in this JSONObject
<DT><A HREF="./org/apache/wink/json4j/JSONObject.html#put(java.lang.String, java.lang.Object[], boolean)"><B>put(String, Object[], boolean)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONObject.html" title="class in org.apache.wink.json4j">JSONObject</A>
<DD>Method to add an Object array as a new JSONArray contained in this JSONObject
<DT><A HREF="./org/apache/wink/json4j/OrderedJSONObject.html#put(java.lang.Object, java.lang.Object)"><B>put(Object, Object)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/OrderedJSONObject.html" title="class in org.apache.wink.json4j">OrderedJSONObject</A>
<DD>Method to put a JSON'able object into the instance.
<DT><A HREF="./org/apache/wink/json4j/JSONObject.html#putOnce(java.lang.String, java.lang.Object)"><B>putOnce(String, Object)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONObject.html" title="class in org.apache.wink.json4j">JSONObject</A>
<DD>Put a key/value pair into the JSONObject, but only if key/value are both not null, and only if the key is not present already.
<DT><A HREF="./org/apache/wink/json4j/JSONObject.html#putOpt(java.lang.String, java.lang.Object)"><B>putOpt(String, Object)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONObject.html" title="class in org.apache.wink.json4j">JSONObject</A>
<DD>Put a key/value pair into the JSONObject, but only if the key and value are non-null.
</DL>
<HR>
<A NAME="_Q_"><!-- --></A><H2>
<B>Q</B></H2>
<DL>
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html#query"><B>query</B></A> - 
Variable in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchDescription</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/Resource.html#queryParam(java.lang.String, java.lang.Object...)"><B>queryParam(String, Object...)</B></A> - 
Method in interface org.apache.wink.client.<A HREF="./org/apache/wink/client/Resource.html" title="interface in org.apache.wink.client">Resource</A>
<DD>Add a query parameter to the uri
<DT><A HREF="./org/apache/wink/server/utils/BaseLinksBuilder.html#queryParam(java.lang.String, java.lang.String)"><B>queryParam(String, String)</B></A> - 
Method in interface org.apache.wink.server.utils.<A HREF="./org/apache/wink/server/utils/BaseLinksBuilder.html" title="interface in org.apache.wink.server.utils">BaseLinksBuilder</A>
<DD>Set the value of a query parameter to be added to the generated links
<DT><A HREF="./org/apache/wink/client/Resource.html#queryParams(javax.ws.rs.core.MultivaluedMap)"><B>queryParams(MultivaluedMap&lt;String, String&gt;)</B></A> - 
Method in interface org.apache.wink.client.<A HREF="./org/apache/wink/client/Resource.html" title="interface in org.apache.wink.client">Resource</A>
<DD>Add all the query parameters from the provided multivalued map.
<DT><A HREF="./org/apache/wink/common/model/wadl/Resource.html#queryType"><B>queryType</B></A> - 
Variable in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Resource.html" title="class in org.apache.wink.common.model.wadl">Resource</A>
<DD>&nbsp;
</DL>
<HR>
<A NAME="_R_"><!-- --></A><H2>
<B>R</B></H2>
<DL>
<DT><A HREF="./org/apache/wink/common/model/rss/RssChannel.html#rating"><B>rating</B></A> - 
Variable in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssChannel.html" title="class in org.apache.wink.common.model.rss">RssChannel</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/providers/abdera/AbderaAtomEntryProvider.html#readFrom(java.lang.Class, java.lang.reflect.Type, java.lang.annotation.Annotation[], javax.ws.rs.core.MediaType, javax.ws.rs.core.MultivaluedMap, java.io.InputStream)"><B>readFrom(Class&lt;Entry&gt;, Type, Annotation[], MediaType, MultivaluedMap&lt;String, String&gt;, InputStream)</B></A> - 
Method in class org.apache.wink.providers.abdera.<A HREF="./org/apache/wink/providers/abdera/AbderaAtomEntryProvider.html" title="class in org.apache.wink.providers.abdera">AbderaAtomEntryProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/providers/abdera/AbderaAtomFeedProvider.html#readFrom(java.lang.Class, java.lang.reflect.Type, java.lang.annotation.Annotation[], javax.ws.rs.core.MediaType, javax.ws.rs.core.MultivaluedMap, java.io.InputStream)"><B>readFrom(Class&lt;Feed&gt;, Type, Annotation[], MediaType, MultivaluedMap&lt;String, String&gt;, InputStream)</B></A> - 
Method in class org.apache.wink.providers.abdera.<A HREF="./org/apache/wink/providers/abdera/AbderaAtomFeedProvider.html" title="class in org.apache.wink.providers.abdera">AbderaAtomFeedProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/providers/jettison/JettisonJAXBElementProvider.html#readFrom(java.lang.Class, java.lang.reflect.Type, java.lang.annotation.Annotation[], javax.ws.rs.core.MediaType, javax.ws.rs.core.MultivaluedMap, java.io.InputStream)"><B>readFrom(Class&lt;JAXBElement&lt;?&gt;&gt;, Type, Annotation[], MediaType, MultivaluedMap&lt;String, String&gt;, InputStream)</B></A> - 
Method in class org.apache.wink.providers.jettison.<A HREF="./org/apache/wink/providers/jettison/JettisonJAXBElementProvider.html" title="class in org.apache.wink.providers.jettison">JettisonJAXBElementProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/providers/jettison/JettisonJAXBProvider.html#readFrom(java.lang.Class, java.lang.reflect.Type, java.lang.annotation.Annotation[], javax.ws.rs.core.MediaType, javax.ws.rs.core.MultivaluedMap, java.io.InputStream)"><B>readFrom(Class&lt;Object&gt;, Type, Annotation[], MediaType, MultivaluedMap&lt;String, String&gt;, InputStream)</B></A> - 
Method in class org.apache.wink.providers.jettison.<A HREF="./org/apache/wink/providers/jettison/JettisonJAXBProvider.html" title="class in org.apache.wink.providers.jettison">JettisonJAXBProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/providers/json/JsonArrayProvider.html#readFrom(java.lang.Class, java.lang.reflect.Type, java.lang.annotation.Annotation[], javax.ws.rs.core.MediaType, javax.ws.rs.core.MultivaluedMap, java.io.InputStream)"><B>readFrom(Class&lt;JSONArray&gt;, Type, Annotation[], MediaType, MultivaluedMap&lt;String, String&gt;, InputStream)</B></A> - 
Method in class org.apache.wink.providers.json.<A HREF="./org/apache/wink/providers/json/JsonArrayProvider.html" title="class in org.apache.wink.providers.json">JsonArrayProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/providers/json/JsonJAXBProvider.html#readFrom(java.lang.Class, java.lang.reflect.Type, java.lang.annotation.Annotation[], javax.ws.rs.core.MediaType, javax.ws.rs.core.MultivaluedMap, java.io.InputStream)"><B>readFrom(Class&lt;Object&gt;, Type, Annotation[], MediaType, MultivaluedMap&lt;String, String&gt;, InputStream)</B></A> - 
Method in class org.apache.wink.providers.json.<A HREF="./org/apache/wink/providers/json/JsonJAXBProvider.html" title="class in org.apache.wink.providers.json">JsonJAXBProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/providers/json/JsonProvider.html#readFrom(java.lang.Class, java.lang.reflect.Type, java.lang.annotation.Annotation[], javax.ws.rs.core.MediaType, javax.ws.rs.core.MultivaluedMap, java.io.InputStream)"><B>readFrom(Class&lt;JSONObject&gt;, Type, Annotation[], MediaType, MultivaluedMap&lt;String, String&gt;, InputStream)</B></A> - 
Method in class org.apache.wink.providers.json.<A HREF="./org/apache/wink/providers/json/JsonProvider.html" title="class in org.apache.wink.providers.json">JsonProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/providers/json4j/JSON4JArrayProvider.html#readFrom(java.lang.Class, java.lang.reflect.Type, java.lang.annotation.Annotation[], javax.ws.rs.core.MediaType, javax.ws.rs.core.MultivaluedMap, java.io.InputStream)"><B>readFrom(Class&lt;JSONArray&gt;, Type, Annotation[], MediaType, MultivaluedMap&lt;String, String&gt;, InputStream)</B></A> - 
Method in class org.apache.wink.providers.json4j.<A HREF="./org/apache/wink/providers/json4j/JSON4JArrayProvider.html" title="class in org.apache.wink.providers.json4j">JSON4JArrayProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/providers/json4j/JSON4JObjectProvider.html#readFrom(java.lang.Class, java.lang.reflect.Type, java.lang.annotation.Annotation[], javax.ws.rs.core.MediaType, javax.ws.rs.core.MultivaluedMap, java.io.InputStream)"><B>readFrom(Class&lt;JSONObject&gt;, Type, Annotation[], MediaType, MultivaluedMap&lt;String, String&gt;, InputStream)</B></A> - 
Method in class org.apache.wink.providers.json4j.<A HREF="./org/apache/wink/providers/json4j/JSON4JObjectProvider.html" title="class in org.apache.wink.providers.json4j">JSON4JObjectProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/providers/protobuf/WinkProtobufProvider.html#readFrom(java.lang.Class, java.lang.reflect.Type, java.lang.annotation.Annotation[], javax.ws.rs.core.MediaType, javax.ws.rs.core.MultivaluedMap, java.io.InputStream)"><B>readFrom(Class&lt;Message&gt;, Type, Annotation[], MediaType, MultivaluedMap&lt;String, String&gt;, InputStream)</B></A> - 
Method in class org.apache.wink.providers.protobuf.<A HREF="./org/apache/wink/providers/protobuf/WinkProtobufProvider.html" title="class in org.apache.wink.providers.protobuf">WinkProtobufProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/providers/thrift/WinkThriftProvider.html#readFrom(java.lang.Class, java.lang.reflect.Type, java.lang.annotation.Annotation[], javax.ws.rs.core.MediaType, javax.ws.rs.core.MultivaluedMap, java.io.InputStream)"><B>readFrom(Class&lt;TBase&gt;, Type, Annotation[], MediaType, MultivaluedMap&lt;String, String&gt;, InputStream)</B></A> - 
Method in class org.apache.wink.providers.thrift.<A HREF="./org/apache/wink/providers/thrift/WinkThriftProvider.html" title="class in org.apache.wink.providers.thrift">WinkThriftProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/utils/ProviderUtils.html#readFromStreamAsBytes(java.io.InputStream)"><B>readFromStreamAsBytes(InputStream)</B></A> - 
Static method in class org.apache.wink.common.utils.<A HREF="./org/apache/wink/common/utils/ProviderUtils.html" title="class in org.apache.wink.common.utils">ProviderUtils</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/utils/ProviderUtils.html#readFromStreamAsString(java.io.InputStream, javax.ws.rs.core.MediaType)"><B>readFromStreamAsString(InputStream, MediaType)</B></A> - 
Static method in class org.apache.wink.common.utils.<A HREF="./org/apache/wink/common/utils/ProviderUtils.html" title="class in org.apache.wink.common.utils">ProviderUtils</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/utils/ProviderUtils.html#readFromString(javax.ws.rs.ext.Providers, java.lang.String, java.lang.Class, javax.ws.rs.core.MediaType)"><B>readFromString(Providers, String, Class&lt;T&gt;, MediaType)</B></A> - 
Static method in class org.apache.wink.common.utils.<A HREF="./org/apache/wink/common/utils/ProviderUtils.html" title="class in org.apache.wink.common.utils">ProviderUtils</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/utils/ProviderUtils.html#readFromString(javax.ws.rs.ext.Providers, java.lang.String, java.lang.Class, java.lang.reflect.Type, javax.ws.rs.core.MediaType)"><B>readFromString(Providers, String, Class&lt;T&gt;, Type, MediaType)</B></A> - 
Static method in class org.apache.wink.common.utils.<A HREF="./org/apache/wink/common/utils/ProviderUtils.html" title="class in org.apache.wink.common.utils">ProviderUtils</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/utils/ProviderUtils.html#readFromString(javax.ws.rs.ext.Providers, java.lang.String, java.lang.Class, java.lang.reflect.Type, javax.ws.rs.core.MultivaluedMap, javax.ws.rs.core.MediaType)"><B>readFromString(Providers, String, Class&lt;T&gt;, Type, MultivaluedMap&lt;String, String&gt;, MediaType)</B></A> - 
Static method in class org.apache.wink.common.utils.<A HREF="./org/apache/wink/common/utils/ProviderUtils.html" title="class in org.apache.wink.common.utils">ProviderUtils</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/ClientConfig.html#readTimeout(int)"><B>readTimeout(int)</B></A> - 
Method in class org.apache.wink.client.<A HREF="./org/apache/wink/client/ClientConfig.html" title="class in org.apache.wink.client">ClientConfig</A>
<DD>Convenience method to set the wink.client.readTimeout property
<DT><A HREF="./org/apache/wink/client/BaseTest.html#RECEIVED_MESSAGE"><B>RECEIVED_MESSAGE</B></A> - 
Static variable in class org.apache.wink.client.<A HREF="./org/apache/wink/client/BaseTest.html" title="class in org.apache.wink.client">BaseTest</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/spring/Registrar.html#register(org.apache.wink.server.internal.registry.ResourceRegistry, org.apache.wink.common.internal.registry.ProvidersRegistry)"><B>register(ResourceRegistry, ProvidersRegistry)</B></A> - 
Method in class org.apache.wink.spring.<A HREF="./org/apache/wink/spring/Registrar.html" title="class in org.apache.wink.spring">Registrar</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/server/utils/RegistrationUtils.html#registerApplication(javax.ws.rs.core.Application, javax.servlet.ServletContext)"><B>registerApplication(Application, ServletContext)</B></A> - 
Static method in class org.apache.wink.server.utils.<A HREF="./org/apache/wink/server/utils/RegistrationUtils.html" title="class in org.apache.wink.server.utils">RegistrationUtils</A>
<DD>Registers resources and providers provided by the Application.
<DT><A HREF="./org/apache/wink/server/utils/RegistrationUtils.html#registerApplication(javax.ws.rs.core.Application, javax.servlet.ServletContext, java.lang.String)"><B>registerApplication(Application, ServletContext, String)</B></A> - 
Static method in class org.apache.wink.server.utils.<A HREF="./org/apache/wink/server/utils/RegistrationUtils.html" title="class in org.apache.wink.server.utils">RegistrationUtils</A>
<DD>Registers resources and providers provided by the Application.
<DT><A HREF="./org/apache/wink/server/utils/RegistrationUtils.html#registerClasses(javax.servlet.ServletContext, java.lang.Class...)"><B>registerClasses(ServletContext, Class&lt;?&gt;...)</B></A> - 
Static method in class org.apache.wink.server.utils.<A HREF="./org/apache/wink/server/utils/RegistrationUtils.html" title="class in org.apache.wink.server.utils">RegistrationUtils</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/server/utils/RegistrationUtils.html#registerClasses(javax.servlet.ServletContext, java.lang.String, java.lang.Class...)"><B>registerClasses(ServletContext, String, Class&lt;?&gt;...)</B></A> - 
Static method in class org.apache.wink.server.utils.<A HREF="./org/apache/wink/server/utils/RegistrationUtils.html" title="class in org.apache.wink.server.utils">RegistrationUtils</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/server/utils/RegistrationUtils.html#registerInstances(javax.servlet.ServletContext, java.lang.Object...)"><B>registerInstances(ServletContext, Object...)</B></A> - 
Static method in class org.apache.wink.server.utils.<A HREF="./org/apache/wink/server/utils/RegistrationUtils.html" title="class in org.apache.wink.server.utils">RegistrationUtils</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/server/utils/RegistrationUtils.html#registerInstances(javax.servlet.ServletContext, java.lang.String, java.lang.Object...)"><B>registerInstances(ServletContext, String, Object...)</B></A> - 
Static method in class org.apache.wink.server.utils.<A HREF="./org/apache/wink/server/utils/RegistrationUtils.html" title="class in org.apache.wink.server.utils">RegistrationUtils</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/rss/RssCloud.html#registerProcedure"><B>registerProcedure</B></A> - 
Variable in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssCloud.html" title="class in org.apache.wink.common.model.rss">RssCloud</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/spring/Registrar.html" title="class in org.apache.wink.spring"><B>Registrar</B></A> - Class in <A HREF="./org/apache/wink/spring/package-summary.html">org.apache.wink.spring</A><DD>&nbsp;<DT><A HREF="./org/apache/wink/spring/Registrar.html#Registrar()"><B>Registrar()</B></A> - 
Constructor for class org.apache.wink.spring.<A HREF="./org/apache/wink/spring/Registrar.html" title="class in org.apache.wink.spring">Registrar</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/server/utils/RegistrationUtils.html" title="class in org.apache.wink.server.utils"><B>RegistrationUtils</B></A> - Class in <A HREF="./org/apache/wink/server/utils/package-summary.html">org.apache.wink.server.utils</A><DD>&nbsp;<DT><A HREF="./org/apache/wink/server/utils/RegistrationUtils.html#RegistrationUtils()"><B>RegistrationUtils()</B></A> - 
Constructor for class org.apache.wink.server.utils.<A HREF="./org/apache/wink/server/utils/RegistrationUtils.html" title="class in org.apache.wink.server.utils">RegistrationUtils</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/server/utils/RegistrationUtils.InnerApplication.html" title="class in org.apache.wink.server.utils"><B>RegistrationUtils.InnerApplication</B></A> - Class in <A HREF="./org/apache/wink/server/utils/package-summary.html">org.apache.wink.server.utils</A><DD>&nbsp;<DT><A HREF="./org/apache/wink/server/utils/RegistrationUtils.InnerApplication.html#RegistrationUtils.InnerApplication(java.util.Set)"><B>RegistrationUtils.InnerApplication(Set&lt;Class&lt;?&gt;&gt;)</B></A> - 
Constructor for class org.apache.wink.server.utils.<A HREF="./org/apache/wink/server/utils/RegistrationUtils.InnerApplication.html" title="class in org.apache.wink.server.utils">RegistrationUtils.InnerApplication</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/server/utils/RegistrationUtils.InnerApplication.html#RegistrationUtils.InnerApplication(java.lang.Class...)"><B>RegistrationUtils.InnerApplication(Class&lt;?&gt;...)</B></A> - 
Constructor for class org.apache.wink.server.utils.<A HREF="./org/apache/wink/server/utils/RegistrationUtils.InnerApplication.html" title="class in org.apache.wink.server.utils">RegistrationUtils.InnerApplication</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/server/utils/RegistrationUtils.InnerApplication.html#RegistrationUtils.InnerApplication(java.lang.Object...)"><B>RegistrationUtils.InnerApplication(Object...)</B></A> - 
Constructor for class org.apache.wink.server.utils.<A HREF="./org/apache/wink/server/utils/RegistrationUtils.InnerApplication.html" title="class in org.apache.wink.server.utils">RegistrationUtils.InnerApplication</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomLink.html#rel"><B>rel</B></A> - 
Variable in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomLink.html" title="class in org.apache.wink.common.model.atom">AtomLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Link.html#rel"><B>rel</B></A> - 
Variable in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Link.html" title="class in org.apache.wink.common.model.wadl">Link</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/server/utils/SingleLinkBuilder.html#rel(java.lang.String)"><B>rel(String)</B></A> - 
Method in interface org.apache.wink.server.utils.<A HREF="./org/apache/wink/server/utils/SingleLinkBuilder.html" title="interface in org.apache.wink.server.utils">SingleLinkBuilder</A>
<DD>Set the rel attribute of the link
<DT><A HREF="./org/apache/wink/server/utils/BaseLinksBuilder.html#relativeTo(java.net.URI)"><B>relativeTo(URI)</B></A> - 
Method in interface org.apache.wink.server.utils.<A HREF="./org/apache/wink/server/utils/BaseLinksBuilder.html" title="interface in org.apache.wink.server.utils">BaseLinksBuilder</A>
<DD>Set the uri that the generated links will be relative to, if the
 generation mode is relative uri's.
<DT><A HREF="./org/apache/wink/server/utils/BaseLinksBuilder.html#relativize(boolean)"><B>relativize(boolean)</B></A> - 
Method in interface org.apache.wink.server.utils.<A HREF="./org/apache/wink/server/utils/BaseLinksBuilder.html" title="interface in org.apache.wink.server.utils">BaseLinksBuilder</A>
<DD>Set whether the links should be generated absolute or relative,
 overriding any configuration and request settings.
<DT><A HREF="./org/apache/wink/common/model/multipart/InMultiPart.html#remove()"><B>remove()</B></A> - 
Method in class org.apache.wink.common.model.multipart.<A HREF="./org/apache/wink/common/model/multipart/InMultiPart.html" title="class in org.apache.wink.common.model.multipart">InMultiPart</A>
<DD>Not implemented
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONArrayDelegate.html#remove(int)"><B>remove(int)</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONArrayDelegate.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONArrayDelegate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONObjectDelegate.html#remove(java.lang.String)"><B>remove(String)</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONObjectDelegate.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONObjectDelegate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONArray.html#remove(int)"><B>remove(int)</B></A> - 
Method in interface org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONArray.html" title="interface in org.apache.wink.json4j.compat">JSONArray</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONObject.html#remove(java.lang.String)"><B>remove(String)</B></A> - 
Method in interface org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONObject.html" title="interface in org.apache.wink.json4j.compat">JSONObject</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/OrderedJSONObject.html#remove(java.lang.Object)"><B>remove(Object)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/OrderedJSONObject.html" title="class in org.apache.wink.json4j">OrderedJSONObject</A>
<DD>Method to remove an entry from the OrderedJSONObject instance.
<DT><A HREF="./org/apache/wink/webdav/model/Remove.html" title="class in org.apache.wink.webdav.model"><B>Remove</B></A> - Class in <A HREF="./org/apache/wink/webdav/model/package-summary.html">org.apache.wink.webdav.model</A><DD>The <code>remove</code> XML element per the WebDAV specification [RFC 4918]<DT><A HREF="./org/apache/wink/webdav/model/Remove.html#Remove()"><B>Remove()</B></A> - 
Constructor for class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Remove.html" title="class in org.apache.wink.webdav.model">Remove</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Prop.html#removeAny(java.lang.String, java.lang.String)"><B>removeAny(String, String)</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Prop.html" title="class in org.apache.wink.webdav.model">Prop</A>
<DD>Remove the specified proprietary property
<DT><A HREF="./org/apache/wink/webdav/model/Prop.html#removeAny(javax.xml.namespace.QName)"><B>removeAny(QName)</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Prop.html" title="class in org.apache.wink.webdav.model">Prop</A>
<DD>Remove the specified proprietary property
<DT><A HREF="./org/apache/wink/webdav/model/Prop.html#removeAny(org.w3c.dom.Element)"><B>removeAny(Element)</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Prop.html" title="class in org.apache.wink.webdav.model">Prop</A>
<DD>Remove the specified proprietary property
<DT><A HREF="./org/apache/wink/webdav/model/Propertyupdate.html#removeOrSet"><B>removeOrSet</B></A> - 
Variable in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Propertyupdate.html" title="class in org.apache.wink.webdav.model">Propertyupdate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Param.html#repeating"><B>repeating</B></A> - 
Variable in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Param.html" title="class in org.apache.wink.common.model.wadl">Param</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Representation.html" title="class in org.apache.wink.common.model.wadl"><B>Representation</B></A> - Class in <A HREF="./org/apache/wink/common/model/wadl/package-summary.html">org.apache.wink.common.model.wadl</A><DD>Java class for anonymous complex type.<DT><A HREF="./org/apache/wink/common/model/wadl/Representation.html#Representation()"><B>Representation()</B></A> - 
Constructor for class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Representation.html" title="class in org.apache.wink.common.model.wadl">Representation</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Request.html#representation"><B>representation</B></A> - 
Variable in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Request.html" title="class in org.apache.wink.common.model.wadl">Request</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Response.html#representation"><B>representation</B></A> - 
Variable in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Response.html" title="class in org.apache.wink.common.model.wadl">Response</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Method.html#request"><B>request</B></A> - 
Variable in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Method.html" title="class in org.apache.wink.common.model.wadl">Method</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Request.html" title="class in org.apache.wink.common.model.wadl"><B>Request</B></A> - Class in <A HREF="./org/apache/wink/common/model/wadl/package-summary.html">org.apache.wink.common.model.wadl</A><DD>Java class for anonymous complex type.<DT><A HREF="./org/apache/wink/common/model/wadl/Request.html#Request()"><B>Request()</B></A> - 
Constructor for class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Request.html" title="class in org.apache.wink.common.model.wadl">Request</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/http/HttpStatus.html#REQUEST_TIMEOUT"><B>REQUEST_TIMEOUT</B></A> - 
Static variable in class org.apache.wink.common.http.<A HREF="./org/apache/wink/common/http/HttpStatus.html" title="class in org.apache.wink.common.http">HttpStatus</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/http/HttpStatus.html#REQUEST_TOO_LONG"><B>REQUEST_TOO_LONG</B></A> - 
Static variable in class org.apache.wink.common.http.<A HREF="./org/apache/wink/common/http/HttpStatus.html" title="class in org.apache.wink.common.http">HttpStatus</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/http/HttpStatus.html#REQUEST_URI_TOO_LONG"><B>REQUEST_URI_TOO_LONG</B></A> - 
Static variable in class org.apache.wink.common.http.<A HREF="./org/apache/wink/common/http/HttpStatus.html" title="class in org.apache.wink.common.http">HttpStatus</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/http/HttpStatus.html#REQUESTED_RANGE_NOT_SATISFIABLE"><B>REQUESTED_RANGE_NOT_SATISFIABLE</B></A> - 
Static variable in class org.apache.wink.common.http.<A HREF="./org/apache/wink/common/http/HttpStatus.html" title="class in org.apache.wink.common.http">HttpStatus</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/server/handlers/RequestHandler.html" title="interface in org.apache.wink.server.handlers"><B>RequestHandler</B></A> - Interface in <A HREF="./org/apache/wink/server/handlers/package-summary.html">org.apache.wink.server.handlers</A><DD>&nbsp;<DT><A HREF="./org/apache/wink/server/handlers/RequestHandlersChain.html" title="class in org.apache.wink.server.handlers"><B>RequestHandlersChain</B></A> - Class in <A HREF="./org/apache/wink/server/handlers/package-summary.html">org.apache.wink.server.handlers</A><DD>&nbsp;<DT><A HREF="./org/apache/wink/server/handlers/RequestHandlersChain.html#RequestHandlersChain()"><B>RequestHandlersChain()</B></A> - 
Constructor for class org.apache.wink.server.handlers.<A HREF="./org/apache/wink/server/handlers/RequestHandlersChain.html" title="class in org.apache.wink.server.handlers">RequestHandlersChain</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Param.html#required"><B>required</B></A> - 
Variable in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Param.html" title="class in org.apache.wink.common.model.wadl">Param</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/http/HttpStatus.html#RESET_CONTENT"><B>RESET_CONTENT</B></A> - 
Static variable in class org.apache.wink.common.http.<A HREF="./org/apache/wink/common/http/HttpStatus.html" title="class in org.apache.wink.common.http">HttpStatus</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/Resource.html" title="interface in org.apache.wink.client"><B>Resource</B></A> - Interface in <A HREF="./org/apache/wink/client/package-summary.html">org.apache.wink.client</A><DD>Represents a web resource, enabling the invocation of different http methods<DT><A HREF="./org/apache/wink/client/RestClient.html#resource(java.net.URI)"><B>resource(URI)</B></A> - 
Method in class org.apache.wink.client.<A HREF="./org/apache/wink/client/RestClient.html" title="class in org.apache.wink.client">RestClient</A>
<DD>Create a new <A HREF="./org/apache/wink/client/Resource.html" title="interface in org.apache.wink.client"><CODE>Resource</CODE></A> instance
<DT><A HREF="./org/apache/wink/client/RestClient.html#resource(java.lang.String)"><B>resource(String)</B></A> - 
Method in class org.apache.wink.client.<A HREF="./org/apache/wink/client/RestClient.html" title="class in org.apache.wink.client">RestClient</A>
<DD>Create a new <A HREF="./org/apache/wink/client/Resource.html" title="interface in org.apache.wink.client"><CODE>Resource</CODE></A> instance
<DT><A HREF="./org/apache/wink/client/RestClient.html#resource(java.lang.String, boolean)"><B>resource(String, boolean)</B></A> - 
Method in class org.apache.wink.client.<A HREF="./org/apache/wink/client/RestClient.html" title="class in org.apache.wink.client">RestClient</A>
<DD>Create a new <A HREF="./org/apache/wink/client/Resource.html" title="interface in org.apache.wink.client"><CODE>Resource</CODE></A> instance
<DT><A HREF="./org/apache/wink/common/model/wadl/Resource.html" title="class in org.apache.wink.common.model.wadl"><B>Resource</B></A> - Class in <A HREF="./org/apache/wink/common/model/wadl/package-summary.html">org.apache.wink.common.model.wadl</A><DD>Java class for anonymous complex type.<DT><A HREF="./org/apache/wink/common/model/wadl/Resource.html#Resource()"><B>Resource()</B></A> - 
Constructor for class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Resource.html" title="class in org.apache.wink.common.model.wadl">Resource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Resources.html#resource"><B>resource</B></A> - 
Variable in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Resources.html" title="class in org.apache.wink.common.model.wadl">Resources</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/server/utils/BaseLinksBuilder.html#resource(java.lang.Class)"><B>resource(Class&lt;?&gt;)</B></A> - 
Method in interface org.apache.wink.server.utils.<A HREF="./org/apache/wink/server/utils/BaseLinksBuilder.html" title="interface in org.apache.wink.server.utils">BaseLinksBuilder</A>
<DD>Set the resource class that the generated links should link to.
<DT><A HREF="./org/apache/wink/server/utils/BaseLinksBuilder.html#resource(java.lang.Object)"><B>resource(Object)</B></A> - 
Method in interface org.apache.wink.server.utils.<A HREF="./org/apache/wink/server/utils/BaseLinksBuilder.html" title="interface in org.apache.wink.server.utils">BaseLinksBuilder</A>
<DD>Set the resource instance that the generated links should link to.
<DT><A HREF="./org/apache/wink/common/model/wadl/Application.html#resources"><B>resources</B></A> - 
Variable in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Application.html" title="class in org.apache.wink.common.model.wadl">Application</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Resources.html" title="class in org.apache.wink.common.model.wadl"><B>Resources</B></A> - Class in <A HREF="./org/apache/wink/common/model/wadl/package-summary.html">org.apache.wink.common.model.wadl</A><DD>Java class for anonymous complex type.<DT><A HREF="./org/apache/wink/common/model/wadl/Resources.html#Resources()"><B>Resources()</B></A> - 
Constructor for class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Resources.html" title="class in org.apache.wink.common.model.wadl">Resources</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Link.html#resourceType"><B>resourceType</B></A> - 
Variable in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Link.html" title="class in org.apache.wink.common.model.wadl">Link</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/ResourceType.html" title="class in org.apache.wink.common.model.wadl"><B>ResourceType</B></A> - Class in <A HREF="./org/apache/wink/common/model/wadl/package-summary.html">org.apache.wink.common.model.wadl</A><DD>Java class for anonymous complex type.<DT><A HREF="./org/apache/wink/common/model/wadl/ResourceType.html#ResourceType()"><B>ResourceType()</B></A> - 
Constructor for class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/ResourceType.html" title="class in org.apache.wink.common.model.wadl">ResourceType</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Prop.html#resourcetype"><B>resourcetype</B></A> - 
Variable in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Prop.html" title="class in org.apache.wink.webdav.model">Prop</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Resourcetype.html" title="class in org.apache.wink.webdav.model"><B>Resourcetype</B></A> - Class in <A HREF="./org/apache/wink/webdav/model/package-summary.html">org.apache.wink.webdav.model</A><DD>The <code>resourcetype</code> Property per the WebDAV specification [RFC
 4918]<DT><A HREF="./org/apache/wink/webdav/model/Resourcetype.html#Resourcetype()"><B>Resourcetype()</B></A> - 
Constructor for class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Resourcetype.html" title="class in org.apache.wink.webdav.model">Resourcetype</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Application.html#resourceTypeOrMethodOrRepresentation"><B>resourceTypeOrMethodOrRepresentation</B></A> - 
Variable in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Application.html" title="class in org.apache.wink.common.model.wadl">Application</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Method.html#response"><B>response</B></A> - 
Variable in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Method.html" title="class in org.apache.wink.common.model.wadl">Method</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Response.html" title="class in org.apache.wink.common.model.wadl"><B>Response</B></A> - Class in <A HREF="./org/apache/wink/common/model/wadl/package-summary.html">org.apache.wink.common.model.wadl</A><DD>Java class for anonymous complex type.<DT><A HREF="./org/apache/wink/common/model/wadl/Response.html#Response()"><B>Response()</B></A> - 
Constructor for class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Response.html" title="class in org.apache.wink.common.model.wadl">Response</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Multistatus.html#response"><B>response</B></A> - 
Variable in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Multistatus.html" title="class in org.apache.wink.webdav.model">Multistatus</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Response.html" title="class in org.apache.wink.webdav.model"><B>Response</B></A> - Class in <A HREF="./org/apache/wink/webdav/model/package-summary.html">org.apache.wink.webdav.model</A><DD>The <code>response</code> XML element per the WebDAV specification [RFC 4918]<DT><A HREF="./org/apache/wink/webdav/model/Response.html#Response()"><B>Response()</B></A> - 
Constructor for class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Response.html" title="class in org.apache.wink.webdav.model">Response</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Response.html#Response(java.lang.String)"><B>Response(String)</B></A> - 
Constructor for class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Response.html" title="class in org.apache.wink.webdav.model">Response</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Multistatus.html#responsedescription"><B>responsedescription</B></A> - 
Variable in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Multistatus.html" title="class in org.apache.wink.webdav.model">Multistatus</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Propstat.html#responsedescription"><B>responsedescription</B></A> - 
Variable in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Propstat.html" title="class in org.apache.wink.webdav.model">Propstat</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Response.html#responsedescription"><B>responsedescription</B></A> - 
Variable in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Response.html" title="class in org.apache.wink.webdav.model">Response</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/server/handlers/ResponseHandler.html" title="interface in org.apache.wink.server.handlers"><B>ResponseHandler</B></A> - Interface in <A HREF="./org/apache/wink/server/handlers/package-summary.html">org.apache.wink.server.handlers</A><DD>&nbsp;<DT><A HREF="./org/apache/wink/server/handlers/ResponseHandlersChain.html" title="class in org.apache.wink.server.handlers"><B>ResponseHandlersChain</B></A> - Class in <A HREF="./org/apache/wink/server/handlers/package-summary.html">org.apache.wink.server.handlers</A><DD>&nbsp;<DT><A HREF="./org/apache/wink/server/handlers/ResponseHandlersChain.html#ResponseHandlersChain()"><B>ResponseHandlersChain()</B></A> - 
Constructor for class org.apache.wink.server.handlers.<A HREF="./org/apache/wink/server/handlers/ResponseHandlersChain.html" title="class in org.apache.wink.server.handlers">ResponseHandlersChain</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/RestConstants.html#REST_PARAM_ABSOLUTE_URLS"><B>REST_PARAM_ABSOLUTE_URLS</B></A> - 
Static variable in class org.apache.wink.common.<A HREF="./org/apache/wink/common/RestConstants.html" title="class in org.apache.wink.common">RestConstants</A>
<DD>Links in response should be absolute.
<DT><A HREF="./org/apache/wink/common/RestConstants.html#REST_PARAM_AUTHOR"><B>REST_PARAM_AUTHOR</B></A> - 
Static variable in class org.apache.wink.common.<A HREF="./org/apache/wink/common/RestConstants.html" title="class in org.apache.wink.common">RestConstants</A>
<DD>Filter by author parameter.
<DT><A HREF="./org/apache/wink/common/RestConstants.html#REST_PARAM_CATEGORY"><B>REST_PARAM_CATEGORY</B></A> - 
Static variable in class org.apache.wink.common.<A HREF="./org/apache/wink/common/RestConstants.html" title="class in org.apache.wink.common">RestConstants</A>
<DD>Specify filtering by category.
<DT><A HREF="./org/apache/wink/common/RestConstants.html#REST_PARAM_ENTRY_ID"><B>REST_PARAM_ENTRY_ID</B></A> - 
Static variable in class org.apache.wink.common.<A HREF="./org/apache/wink/common/RestConstants.html" title="class in org.apache.wink.common">RestConstants</A>
<DD>Filter by entry-id.
<DT><A HREF="./org/apache/wink/common/RestConstants.html#REST_PARAM_JSON_CALLBACK"><B>REST_PARAM_JSON_CALLBACK</B></A> - 
Static variable in class org.apache.wink.common.<A HREF="./org/apache/wink/common/RestConstants.html" title="class in org.apache.wink.common">RestConstants</A>
<DD>JSON will be encloses as parameter to the value - method name.
<DT><A HREF="./org/apache/wink/common/RestConstants.html#REST_PARAM_MEDIA_TYPE"><B>REST_PARAM_MEDIA_TYPE</B></A> - 
Static variable in class org.apache.wink.common.<A HREF="./org/apache/wink/common/RestConstants.html" title="class in org.apache.wink.common">RestConstants</A>
<DD>Overrides Accept-Header with one type.
<DT><A HREF="./org/apache/wink/common/RestConstants.html#REST_PARAM_ORDER_BY"><B>REST_PARAM_ORDER_BY</B></A> - 
Static variable in class org.apache.wink.common.<A HREF="./org/apache/wink/common/RestConstants.html" title="class in org.apache.wink.common">RestConstants</A>
<DD>Specified collection ordering.
<DT><A HREF="./org/apache/wink/common/RestConstants.html#REST_PARAM_PAGING_SIZE"><B>REST_PARAM_PAGING_SIZE</B></A> - 
Static variable in class org.apache.wink.common.<A HREF="./org/apache/wink/common/RestConstants.html" title="class in org.apache.wink.common">RestConstants</A>
<DD>Number of elements per page.
<DT><A HREF="./org/apache/wink/common/RestConstants.html#REST_PARAM_PAGING_SIZE_UNLIMITED"><B>REST_PARAM_PAGING_SIZE_UNLIMITED</B></A> - 
Static variable in class org.apache.wink.common.<A HREF="./org/apache/wink/common/RestConstants.html" title="class in org.apache.wink.common">RestConstants</A>
<DD>Special value of page-size.
<DT><A HREF="./org/apache/wink/common/RestConstants.html#REST_PARAM_PAGING_START"><B>REST_PARAM_PAGING_START</B></A> - 
Static variable in class org.apache.wink.common.<A HREF="./org/apache/wink/common/RestConstants.html" title="class in org.apache.wink.common">RestConstants</A>
<DD>The first item to include in the result page.
<DT><A HREF="./org/apache/wink/common/RestConstants.html#REST_PARAM_QUERY"><B>REST_PARAM_QUERY</B></A> - 
Static variable in class org.apache.wink.common.<A HREF="./org/apache/wink/common/RestConstants.html" title="class in org.apache.wink.common">RestConstants</A>
<DD>Filter by custom query.
<DT><A HREF="./org/apache/wink/common/RestConstants.html#REST_PARAM_RELATIVE_URLS"><B>REST_PARAM_RELATIVE_URLS</B></A> - 
Static variable in class org.apache.wink.common.<A HREF="./org/apache/wink/common/RestConstants.html" title="class in org.apache.wink.common">RestConstants</A>
<DD>Links in response should be relative.
<DT><A HREF="./org/apache/wink/client/RestClient.html" title="class in org.apache.wink.client"><B>RestClient</B></A> - Class in <A HREF="./org/apache/wink/client/package-summary.html">org.apache.wink.client</A><DD>The RestClient is the entry point for all rest service operations.<DT><A HREF="./org/apache/wink/client/RestClient.html#RestClient()"><B>RestClient()</B></A> - 
Constructor for class org.apache.wink.client.<A HREF="./org/apache/wink/client/RestClient.html" title="class in org.apache.wink.client">RestClient</A>
<DD>Construct a new RestClient using the default client configuration
<DT><A HREF="./org/apache/wink/client/RestClient.html#RestClient(org.apache.wink.client.ClientConfig)"><B>RestClient(ClientConfig)</B></A> - 
Constructor for class org.apache.wink.client.<A HREF="./org/apache/wink/client/RestClient.html" title="class in org.apache.wink.client">RestClient</A>
<DD>Construct a new RestClient using the supplied configuration
<DT><A HREF="./org/apache/wink/common/RestConstants.html" title="class in org.apache.wink.common"><B>RestConstants</B></A> - Class in <A HREF="./org/apache/wink/common/package-summary.html">org.apache.wink.common</A><DD>Constants to be used in REST and REST client components.<DT><A HREF="./org/apache/wink/common/RestException.html" title="class in org.apache.wink.common"><B>RestException</B></A> - Exception in <A HREF="./org/apache/wink/common/package-summary.html">org.apache.wink.common</A><DD>REST general exception.<DT><A HREF="./org/apache/wink/common/RestException.html#RestException()"><B>RestException()</B></A> - 
Constructor for exception org.apache.wink.common.<A HREF="./org/apache/wink/common/RestException.html" title="class in org.apache.wink.common">RestException</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/RestException.html#RestException(java.lang.String, java.lang.Throwable)"><B>RestException(String, Throwable)</B></A> - 
Constructor for exception org.apache.wink.common.<A HREF="./org/apache/wink/common/RestException.html" title="class in org.apache.wink.common">RestException</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/RestException.html#RestException(java.lang.String)"><B>RestException(String)</B></A> - 
Constructor for exception org.apache.wink.common.<A HREF="./org/apache/wink/common/RestException.html" title="class in org.apache.wink.common">RestException</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/RestException.html#RestException(java.lang.Throwable)"><B>RestException(Throwable)</B></A> - 
Constructor for exception org.apache.wink.common.<A HREF="./org/apache/wink/common/RestException.html" title="class in org.apache.wink.common">RestException</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Link.html#rev"><B>rev</B></A> - 
Variable in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Link.html" title="class in org.apache.wink.common.model.wadl">Link</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomFeed.html#rights"><B>rights</B></A> - 
Variable in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomFeed.html" title="class in org.apache.wink.common.model.atom">AtomFeed</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchQuery.html#role"><B>role</B></A> - 
Variable in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchQuery.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchQuery</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/rss/RssCategory.html" title="class in org.apache.wink.common.model.rss"><B>RssCategory</B></A> - Class in <A HREF="./org/apache/wink/common/model/rss/package-summary.html">org.apache.wink.common.model.rss</A><DD>
 Java class for "category" element of <a
 href="http://www.rssboard.org/rss-specification">RSS 2.0 Specification</a>.<DT><A HREF="./org/apache/wink/common/model/rss/RssCategory.html#RssCategory()"><B>RssCategory()</B></A> - 
Constructor for class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssCategory.html" title="class in org.apache.wink.common.model.rss">RssCategory</A>
<DD>Creates an RssCategory object
<DT><A HREF="./org/apache/wink/common/model/rss/RssCategory.html#RssCategory(org.apache.wink.common.model.synd.SyndCategory)"><B>RssCategory(SyndCategory)</B></A> - 
Constructor for class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssCategory.html" title="class in org.apache.wink.common.model.rss">RssCategory</A>
<DD>Creates an RssCategory object out of a SyndCategory object.
<DT><A HREF="./org/apache/wink/common/model/rss/RssChannel.html" title="class in org.apache.wink.common.model.rss"><B>RssChannel</B></A> - Class in <A HREF="./org/apache/wink/common/model/rss/package-summary.html">org.apache.wink.common.model.rss</A><DD>
 Java class for "channel" element of <a
 href="http://www.rssboard.org/rss-specification">RSS 2.0 Specification</a>.<DT><A HREF="./org/apache/wink/common/model/rss/RssChannel.html#RssChannel()"><B>RssChannel()</B></A> - 
Constructor for class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssChannel.html" title="class in org.apache.wink.common.model.rss">RssChannel</A>
<DD>Creates an RssChannel object.
<DT><A HREF="./org/apache/wink/common/model/rss/RssChannel.html#RssChannel(org.apache.wink.common.model.synd.SyndFeed)"><B>RssChannel(SyndFeed)</B></A> - 
Constructor for class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssChannel.html" title="class in org.apache.wink.common.model.rss">RssChannel</A>
<DD>Creates an RssChannel object out of a SyndFeed object.
<DT><A HREF="./org/apache/wink/common/model/rss/RssCloud.html" title="class in org.apache.wink.common.model.rss"><B>RssCloud</B></A> - Class in <A HREF="./org/apache/wink/common/model/rss/package-summary.html">org.apache.wink.common.model.rss</A><DD>
 Java class for "cloud" element of <a
 href="http://www.rssboard.org/rss-specification">RSS 2.0 Specification</a>.<DT><A HREF="./org/apache/wink/common/model/rss/RssCloud.html#RssCloud()"><B>RssCloud()</B></A> - 
Constructor for class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssCloud.html" title="class in org.apache.wink.common.model.rss">RssCloud</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/rss/RssEnclosure.html" title="class in org.apache.wink.common.model.rss"><B>RssEnclosure</B></A> - Class in <A HREF="./org/apache/wink/common/model/rss/package-summary.html">org.apache.wink.common.model.rss</A><DD>
 Java class for "enclosure" element of <a
 href="http://www.rssboard.org/rss-specification">RSS 2.0 Specification</a>.<DT><A HREF="./org/apache/wink/common/model/rss/RssEnclosure.html#RssEnclosure()"><B>RssEnclosure()</B></A> - 
Constructor for class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssEnclosure.html" title="class in org.apache.wink.common.model.rss">RssEnclosure</A>
<DD>Creates an RssEnclosure object
<DT><A HREF="./org/apache/wink/common/model/rss/RssEnclosure.html#RssEnclosure(org.apache.wink.common.model.synd.SyndLink)"><B>RssEnclosure(SyndLink)</B></A> - 
Constructor for class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssEnclosure.html" title="class in org.apache.wink.common.model.rss">RssEnclosure</A>
<DD>Creates an RssEnclosure object out of a SyndLink object.
<DT><A HREF="./org/apache/wink/common/model/rss/RssFeed.html" title="class in org.apache.wink.common.model.rss"><B>RssFeed</B></A> - Class in <A HREF="./org/apache/wink/common/model/rss/package-summary.html">org.apache.wink.common.model.rss</A><DD>
 Java class for "rss" element of <a
 href="http://www.rssboard.org/rss-specification">RSS 2.0 Specification</a>.<DT><A HREF="./org/apache/wink/common/model/rss/RssFeed.html#RssFeed()"><B>RssFeed()</B></A> - 
Constructor for class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssFeed.html" title="class in org.apache.wink.common.model.rss">RssFeed</A>
<DD>Creates an RssFeed object
<DT><A HREF="./org/apache/wink/common/model/rss/RssFeed.html#RssFeed(org.apache.wink.common.model.synd.SyndFeed)"><B>RssFeed(SyndFeed)</B></A> - 
Constructor for class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssFeed.html" title="class in org.apache.wink.common.model.rss">RssFeed</A>
<DD>Creates an RssFeed object out of a SyndFeed object.
<DT><A HREF="./org/apache/wink/common/model/rss/RssGuid.html" title="class in org.apache.wink.common.model.rss"><B>RssGuid</B></A> - Class in <A HREF="./org/apache/wink/common/model/rss/package-summary.html">org.apache.wink.common.model.rss</A><DD>
 Java class for "guid" element of <a
 href="http://www.rssboard.org/rss-specification">RSS 2.0 Specification</a>.<DT><A HREF="./org/apache/wink/common/model/rss/RssGuid.html#RssGuid()"><B>RssGuid()</B></A> - 
Constructor for class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssGuid.html" title="class in org.apache.wink.common.model.rss">RssGuid</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/rss/RssImage.html" title="class in org.apache.wink.common.model.rss"><B>RssImage</B></A> - Class in <A HREF="./org/apache/wink/common/model/rss/package-summary.html">org.apache.wink.common.model.rss</A><DD>
 Java class for "image" element of <a
 href="http://www.rssboard.org/rss-specification">RSS 2.0 Specification</a>.<DT><A HREF="./org/apache/wink/common/model/rss/RssImage.html#RssImage()"><B>RssImage()</B></A> - 
Constructor for class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssImage.html" title="class in org.apache.wink.common.model.rss">RssImage</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/rss/RssItem.html" title="class in org.apache.wink.common.model.rss"><B>RssItem</B></A> - Class in <A HREF="./org/apache/wink/common/model/rss/package-summary.html">org.apache.wink.common.model.rss</A><DD>
 Java class for "item" element of <a
 href="http://www.rssboard.org/rss-specification">RSS 2.0 Specification</a>.<DT><A HREF="./org/apache/wink/common/model/rss/RssItem.html#RssItem()"><B>RssItem()</B></A> - 
Constructor for class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssItem.html" title="class in org.apache.wink.common.model.rss">RssItem</A>
<DD>Creates an RssItem object
<DT><A HREF="./org/apache/wink/common/model/rss/RssItem.html#RssItem(org.apache.wink.common.model.synd.SyndEntry)"><B>RssItem(SyndEntry)</B></A> - 
Constructor for class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssItem.html" title="class in org.apache.wink.common.model.rss">RssItem</A>
<DD>Creates an RssItem object out of a SyndEntry object.
<DT><A HREF="./org/apache/wink/common/model/rss/RssSkipDays.html" title="class in org.apache.wink.common.model.rss"><B>RssSkipDays</B></A> - Class in <A HREF="./org/apache/wink/common/model/rss/package-summary.html">org.apache.wink.common.model.rss</A><DD>
 Java class for "skipDays" element of <a
 href="http://www.rssboard.org/rss-specification">RSS 2.0 Specification</a>.<DT><A HREF="./org/apache/wink/common/model/rss/RssSkipDays.html#RssSkipDays()"><B>RssSkipDays()</B></A> - 
Constructor for class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssSkipDays.html" title="class in org.apache.wink.common.model.rss">RssSkipDays</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/rss/RssSkipHours.html" title="class in org.apache.wink.common.model.rss"><B>RssSkipHours</B></A> - Class in <A HREF="./org/apache/wink/common/model/rss/package-summary.html">org.apache.wink.common.model.rss</A><DD>
 Java class for "skipHours" element of <a
 href="http://www.rssboard.org/rss-specification">RSS 2.0 Specification</a>.<DT><A HREF="./org/apache/wink/common/model/rss/RssSkipHours.html#RssSkipHours()"><B>RssSkipHours()</B></A> - 
Constructor for class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssSkipHours.html" title="class in org.apache.wink.common.model.rss">RssSkipHours</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/rss/RssSource.html" title="class in org.apache.wink.common.model.rss"><B>RssSource</B></A> - Class in <A HREF="./org/apache/wink/common/model/rss/package-summary.html">org.apache.wink.common.model.rss</A><DD>
 Java class for "source" element of <a
 href="http://www.rssboard.org/rss-specification">RSS 2.0 Specification</a>.<DT><A HREF="./org/apache/wink/common/model/rss/RssSource.html#RssSource()"><B>RssSource()</B></A> - 
Constructor for class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssSource.html" title="class in org.apache.wink.common.model.rss">RssSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/rss/RssTextInput.html" title="class in org.apache.wink.common.model.rss"><B>RssTextInput</B></A> - Class in <A HREF="./org/apache/wink/common/model/rss/package-summary.html">org.apache.wink.common.model.rss</A><DD>
 Java class for "textInput" element of <a
 href="http://www.rssboard.org/rss-specification">RSS 2.0 Specification</a>.<DT><A HREF="./org/apache/wink/common/model/rss/RssTextInput.html#RssTextInput()"><B>RssTextInput()</B></A> - 
Constructor for class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssTextInput.html" title="class in org.apache.wink.common.model.rss">RssTextInput</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/MockHttpServer.html#run()"><B>run()</B></A> - 
Method in class org.apache.wink.client.<A HREF="./org/apache/wink/client/MockHttpServer.html" title="class in org.apache.wink.client">MockHttpServer</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/server/handlers/AbstractHandlersChain.html#run(org.apache.wink.server.handlers.MessageContext)"><B>run(MessageContext)</B></A> - 
Method in class org.apache.wink.server.handlers.<A HREF="./org/apache/wink/server/handlers/AbstractHandlersChain.html" title="class in org.apache.wink.server.handlers">AbstractHandlersChain</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/RuntimeContext.html" title="interface in org.apache.wink.common"><B>RuntimeContext</B></A> - Interface in <A HREF="./org/apache/wink/common/package-summary.html">org.apache.wink.common</A><DD>&nbsp;</DL>
<HR>
<A NAME="_S_"><!-- --></A><H2>
<B>S</B></H2>
<DL>
<DT><A HREF="./org/apache/wink/common/model/app/AppCategories.html#scheme"><B>scheme</B></A> - 
Variable in class org.apache.wink.common.model.app.<A HREF="./org/apache/wink/common/model/app/AppCategories.html" title="class in org.apache.wink.common.model.app">AppCategories</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomCategory.html#scheme"><B>scheme</B></A> - 
Variable in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomCategory.html" title="class in org.apache.wink.common.model.atom">AtomCategory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/annotations/Scope.html" title="annotation in org.apache.wink.common.annotations"><B>Scope</B></A> - Annotation Type in <A HREF="./org/apache/wink/common/annotations/package-summary.html">org.apache.wink.common.annotations</A><DD>Declares Scope of the annotation<DT><A HREF="./org/apache/wink/common/annotations/Scope.ScopeType.html" title="enum in org.apache.wink.common.annotations"><B>Scope.ScopeType</B></A> - Enum in <A HREF="./org/apache/wink/common/annotations/package-summary.html">org.apache.wink.common.annotations</A><DD>&nbsp;<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchQuery.html#searchTerms"><B>searchTerms</B></A> - 
Variable in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchQuery.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchQuery</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/http/HttpStatus.html#SEE_OTHER"><B>SEE_OTHER</B></A> - 
Static variable in class org.apache.wink.common.http.<A HREF="./org/apache/wink/common/http/HttpStatus.html" title="class in org.apache.wink.common.http">HttpStatus</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/BaseTest.html#SENT_MESSAGE"><B>SENT_MESSAGE</B></A> - 
Static variable in class org.apache.wink.client.<A HREF="./org/apache/wink/client/BaseTest.html" title="class in org.apache.wink.client">BaseTest</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/multipart/InMultiPart.html#SEP"><B>SEP</B></A> - 
Static variable in class org.apache.wink.common.model.multipart.<A HREF="./org/apache/wink/common/model/multipart/InMultiPart.html" title="class in org.apache.wink.common.model.multipart">InMultiPart</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/multipart/OutMultiPart.html#SEP"><B>SEP</B></A> - 
Static variable in class org.apache.wink.common.model.multipart.<A HREF="./org/apache/wink/common/model/multipart/OutMultiPart.html" title="class in org.apache.wink.common.model.multipart">OutMultiPart</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/BaseTest.html#server"><B>server</B></A> - 
Variable in class org.apache.wink.client.<A HREF="./org/apache/wink/client/BaseTest.html" title="class in org.apache.wink.client">BaseTest</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/BaseTest.html#serverPort"><B>serverPort</B></A> - 
Variable in class org.apache.wink.client.<A HREF="./org/apache/wink/client/BaseTest.html" title="class in org.apache.wink.client">BaseTest</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/http/HttpStatus.html#SERVICE_UNAVAILABLE"><B>SERVICE_UNAVAILABLE</B></A> - 
Static variable in class org.apache.wink.common.http.<A HREF="./org/apache/wink/common/http/HttpStatus.html" title="class in org.apache.wink.common.http">HttpStatus</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/BaseTest.html#SERVICE_URL"><B>SERVICE_URL</B></A> - 
Static variable in class org.apache.wink.client.<A HREF="./org/apache/wink/client/BaseTest.html" title="class in org.apache.wink.client">BaseTest</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/BaseTest.html#serviceURL"><B>serviceURL</B></A> - 
Variable in class org.apache.wink.client.<A HREF="./org/apache/wink/client/BaseTest.html" title="class in org.apache.wink.client">BaseTest</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/JSONArray.html#set(int, java.lang.Object)"><B>set(int, Object)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONArray.html" title="class in org.apache.wink.json4j">JSONArray</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Set.html" title="class in org.apache.wink.webdav.model"><B>Set</B></A> - Class in <A HREF="./org/apache/wink/webdav/model/package-summary.html">org.apache.wink.webdav.model</A><DD>The <code>set</code> XML element per the WebDAV specification [RFC 4918]<DT><A HREF="./org/apache/wink/webdav/model/Set.html#Set()"><B>Set()</B></A> - 
Constructor for class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Set.html" title="class in org.apache.wink.webdav.model">Set</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html#setAdultContent(java.lang.String)"><B>setAdultContent(String)</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchDescription</A>
<DD>Sets the value of the adultContent property.
<DT><A HREF="./org/apache/wink/webdav/model/Propfind.html#setAllprop(org.apache.wink.webdav.model.Allprop)"><B>setAllprop(Allprop)</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Propfind.html" title="class in org.apache.wink.webdav.model">Propfind</A>
<DD>Sets the value of the allprop property.
<DT><A HREF="./org/apache/wink/webdav/server/WebDAVResponseBuilder.PropertyHandler.html#setAllPropertyNames(org.apache.wink.webdav.server.WebDAVResponseBuilder, org.apache.wink.webdav.model.Prop, org.apache.wink.common.model.synd.SyndBase)"><B>setAllPropertyNames(WebDAVResponseBuilder, Prop, SyndBase)</B></A> - 
Method in class org.apache.wink.webdav.server.<A HREF="./org/apache/wink/webdav/server/WebDAVResponseBuilder.PropertyHandler.html" title="class in org.apache.wink.webdav.server">WebDAVResponseBuilder.PropertyHandler</A>
<DD>Set the Prop instance with empty (no values) properties.
<DT><A HREF="./org/apache/wink/webdav/model/Error.html#setAny(java.lang.Object)"><B>setAny(Object)</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Error.html" title="class in org.apache.wink.webdav.model">Error</A>
<DD>Sets the value of the any property.
<DT><A HREF="./org/apache/wink/common/RuntimeContext.html#setAttribute(java.lang.Class, T)"><B>setAttribute(Class&lt;T&gt;, T)</B></A> - 
Method in interface org.apache.wink.common.<A HREF="./org/apache/wink/common/RuntimeContext.html" title="interface in org.apache.wink.common">RuntimeContext</A>
<DD>Convenience method for setting an attribute whose key that is the fully
 qualified name of a class
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html#setAttribution(java.lang.String)"><B>setAttribution(String)</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchDescription</A>
<DD>Sets the value of the attribution property.
<DT><A HREF="./org/apache/wink/common/model/rss/RssItem.html#setAuthor(java.lang.String)"><B>setAuthor(String)</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssItem.html" title="class in org.apache.wink.common.model.rss">RssItem</A>
<DD>Sets the value of the author property.
<DT><A HREF="./org/apache/wink/common/model/atom/AtomCommonAttributes.html#setBase(java.lang.String)"><B>setBase(String)</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomCommonAttributes.html" title="class in org.apache.wink.common.model.atom">AtomCommonAttributes</A>
<DD>Sets the value of base.
<DT><A HREF="./org/apache/wink/common/model/atom/AtomCommonAttributesSimpleContent.html#setBase(java.lang.String)"><B>setBase(String)</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomCommonAttributesSimpleContent.html" title="class in org.apache.wink.common.model.atom">AtomCommonAttributesSimpleContent</A>
<DD>Sets the value of base.
<DT><A HREF="./org/apache/wink/common/model/synd/SyndCommonAttributes.html#setBase(java.lang.String)"><B>setBase(String)</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndCommonAttributes.html" title="class in org.apache.wink.common.model.synd">SyndCommonAttributes</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Resources.html#setBase(java.lang.String)"><B>setBase(String)</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Resources.html" title="class in org.apache.wink.common.model.wadl">Resources</A>
<DD>Sets the value of the base property.
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchUrl.html#setBaseUri(java.lang.String)"><B>setBaseUri(String)</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchUrl.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchUrl</A>
<DD>Set Search base URI
<DT><A HREF="./org/apache/wink/common/AbstractDynamicResource.html#setBeanName(java.lang.String)"><B>setBeanName(String)</B></A> - 
Method in class org.apache.wink.common.<A HREF="./org/apache/wink/common/AbstractDynamicResource.html" title="class in org.apache.wink.common">AbstractDynamicResource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/DynamicResource.html#setBeanName(java.lang.String)"><B>setBeanName(String)</B></A> - 
Method in interface org.apache.wink.common.<A HREF="./org/apache/wink/common/DynamicResource.html" title="interface in org.apache.wink.common">DynamicResource</A>
<DD>sets bean name.
<DT><A HREF="./org/apache/wink/common/model/multipart/OutPart.html#setBody(java.lang.Object)"><B>setBody(Object)</B></A> - 
Method in class org.apache.wink.common.model.multipart.<A HREF="./org/apache/wink/common/model/multipart/OutPart.html" title="class in org.apache.wink.common.model.multipart">OutPart</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/multipart/OutMultiPart.html#setBoundary(java.lang.String)"><B>setBoundary(String)</B></A> - 
Method in class org.apache.wink.common.model.multipart.<A HREF="./org/apache/wink/common/model/multipart/OutMultiPart.html" title="class in org.apache.wink.common.model.multipart">OutMultiPart</A>
<DD>set the boundary to be used to separate between the different parts
<DT><A HREF="./org/apache/wink/client/ClientConfig.html#setBypassHostnameVerification(boolean)"><B>setBypassHostnameVerification(boolean)</B></A> - 
Method in class org.apache.wink.client.<A HREF="./org/apache/wink/client/ClientConfig.html" title="class in org.apache.wink.client">ClientConfig</A>
<DD>Set whether or not hostname verification to bypass hostname verification
 for SSL certificates.
<DT><A HREF="./org/apache/wink/common/categories/Categories.html#setCategories(java.util.List)"><B>setCategories(List&lt;AtomCategory&gt;)</B></A> - 
Method in class org.apache.wink.common.categories.<A HREF="./org/apache/wink/common/categories/Categories.html" title="class in org.apache.wink.common.categories">Categories</A>
<DD>Set a list of categories
<DT><A HREF="./org/apache/wink/common/model/rss/RssFeed.html#setChannel(org.apache.wink.common.model.rss.RssChannel)"><B>setChannel(RssChannel)</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssFeed.html" title="class in org.apache.wink.common.model.rss">RssFeed</A>
<DD>Sets the value of the channel property.
<DT><A HREF="./org/apache/wink/client/httpclient/ApacheHttpClientConfig.html#setChunked(boolean)"><B>setChunked(boolean)</B></A> - 
Method in class org.apache.wink.client.httpclient.<A HREF="./org/apache/wink/client/httpclient/ApacheHttpClientConfig.html" title="class in org.apache.wink.client.httpclient">ApacheHttpClientConfig</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/spring/Registrar.html#setClasses(java.util.Set)"><B>setClasses(Set&lt;Class&lt;?&gt;&gt;)</B></A> - 
Method in class org.apache.wink.spring.<A HREF="./org/apache/wink/spring/Registrar.html" title="class in org.apache.wink.spring">Registrar</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/rss/RssChannel.html#setCloud(org.apache.wink.common.model.rss.RssCloud)"><B>setCloud(RssCloud)</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssChannel.html" title="class in org.apache.wink.common.model.rss">RssChannel</A>
<DD>Sets the value of the cloud property.
<DT><A HREF="./org/apache/wink/webdav/model/Resourcetype.html#setCollection(org.apache.wink.webdav.model.Collection)"><B>setCollection(Collection)</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Resourcetype.html" title="class in org.apache.wink.webdav.model">Resourcetype</A>
<DD>Sets the value of the collection property.
<DT><A HREF="./org/apache/wink/common/AbstractDynamicResource.html#setCollectionTitle(java.lang.String)"><B>setCollectionTitle(String)</B></A> - 
Method in class org.apache.wink.common.<A HREF="./org/apache/wink/common/AbstractDynamicResource.html" title="class in org.apache.wink.common">AbstractDynamicResource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/rss/RssItem.html#setComments(java.lang.String)"><B>setComments(String)</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssItem.html" title="class in org.apache.wink.common.model.rss">RssItem</A>
<DD>Sets the value of the comments property.
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html#setContact(java.lang.String)"><B>setContact(String)</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchDescription</A>
<DD>Sets the value of the contact property.
<DT><A HREF="./org/apache/wink/common/model/atom/AtomEntry.html#setContent(org.apache.wink.common.model.atom.AtomContent)"><B>setContent(AtomContent)</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomEntry.html" title="class in org.apache.wink.common.model.atom">AtomEntry</A>
<DD>Sets the content.
<DT><A HREF="./org/apache/wink/common/model/rss/RssCategory.html#setContent(java.lang.String)"><B>setContent(String)</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssCategory.html" title="class in org.apache.wink.common.model.rss">RssCategory</A>
<DD>Sets the value of the content property.
<DT><A HREF="./org/apache/wink/common/model/rss/RssGuid.html#setContent(java.lang.String)"><B>setContent(String)</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssGuid.html" title="class in org.apache.wink.common.model.rss">RssGuid</A>
<DD>Sets the value of the content property.
<DT><A HREF="./org/apache/wink/common/model/rss/RssSource.html#setContent(java.lang.String)"><B>setContent(String)</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssSource.html" title="class in org.apache.wink.common.model.rss">RssSource</A>
<DD>Sets the value of the content property.
<DT><A HREF="./org/apache/wink/common/model/synd/SyndEntry.html#setContent(org.apache.wink.common.model.synd.SyndContent)"><B>setContent(SyndContent)</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndEntry.html" title="class in org.apache.wink.common.model.synd">SyndEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/multipart/OutPart.html#setContentType(java.lang.String)"><B>setContentType(String)</B></A> - 
Method in class org.apache.wink.common.model.multipart.<A HREF="./org/apache/wink/common/model/multipart/OutPart.html" title="class in org.apache.wink.common.model.multipart">OutPart</A>
<DD>Add the content type header
<DT><A HREF="./org/apache/wink/common/model/rss/RssChannel.html#setCopyright(java.lang.String)"><B>setCopyright(String)</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssChannel.html" title="class in org.apache.wink.common.model.rss">RssChannel</A>
<DD>Sets the value of the copyright property.
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchQuery.html#setCount(java.math.BigInteger)"><B>setCount(BigInteger)</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchQuery.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchQuery</A>
<DD>Sets the value of the count property.
<DT><A HREF="./org/apache/wink/webdav/model/Prop.html#setCreationdate(org.apache.wink.webdav.model.Creationdate)"><B>setCreationdate(Creationdate)</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Prop.html" title="class in org.apache.wink.webdav.model">Prop</A>
<DD>Sets the value of the creationdate property.
<DT><A HREF="./org/apache/wink/common/model/wadl/Param.html#setDefault(java.lang.String)"><B>setDefault(String)</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Param.html" title="class in org.apache.wink.common.model.wadl">Param</A>
<DD>Sets the value of the default property.
<DT><A HREF="./org/apache/wink/client/MockHttpServer.html#setDelayResponse(int)"><B>setDelayResponse(int)</B></A> - 
Method in class org.apache.wink.client.<A HREF="./org/apache/wink/client/MockHttpServer.html" title="class in org.apache.wink.client">MockHttpServer</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Activelock.html#setDepth(java.lang.String)"><B>setDepth(String)</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Activelock.html" title="class in org.apache.wink.webdav.model">Activelock</A>
<DD>Sets the value of the depth property.
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html#setDescription(java.lang.String)"><B>setDescription(String)</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchDescription</A>
<DD>Sets the value of the description property.
<DT><A HREF="./org/apache/wink/common/model/rss/RssChannel.html#setDescription(java.lang.String)"><B>setDescription(String)</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssChannel.html" title="class in org.apache.wink.common.model.rss">RssChannel</A>
<DD>Sets the value of the description property.
<DT><A HREF="./org/apache/wink/common/model/rss/RssImage.html#setDescription(java.lang.String)"><B>setDescription(String)</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssImage.html" title="class in org.apache.wink.common.model.rss">RssImage</A>
<DD>Sets the value of the description property.
<DT><A HREF="./org/apache/wink/common/model/rss/RssItem.html#setDescription(java.lang.String)"><B>setDescription(String)</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssItem.html" title="class in org.apache.wink.common.model.rss">RssItem</A>
<DD>Sets the value of the description property.
<DT><A HREF="./org/apache/wink/common/model/rss/RssTextInput.html#setDescription(java.lang.String)"><B>setDescription(String)</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssTextInput.html" title="class in org.apache.wink.common.model.rss">RssTextInput</A>
<DD>Sets the value of the description property.
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html#setDeveloper(java.lang.String)"><B>setDeveloper(String)</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchDescription</A>
<DD>Sets the value of the developer property.
<DT><A HREF="./org/apache/wink/webdav/model/Prop.html#setDisplayname(org.apache.wink.webdav.model.Displayname)"><B>setDisplayname(Displayname)</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Prop.html" title="class in org.apache.wink.webdav.model">Prop</A>
<DD>Sets the value of the displayname property.
<DT><A HREF="./org/apache/wink/common/model/rss/RssChannel.html#setDocs(java.lang.String)"><B>setDocs(String)</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssChannel.html" title="class in org.apache.wink.common.model.rss">RssChannel</A>
<DD>Sets the value of the docs property.
<DT><A HREF="./org/apache/wink/common/model/rss/RssCategory.html#setDomain(java.lang.String)"><B>setDomain(String)</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssCategory.html" title="class in org.apache.wink.common.model.rss">RssCategory</A>
<DD>Sets the value of the domain property.
<DT><A HREF="./org/apache/wink/common/model/rss/RssCloud.html#setDomain(java.lang.String)"><B>setDomain(String)</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssCloud.html" title="class in org.apache.wink.common.model.rss">RssCloud</A>
<DD>Sets the value of the domain property.
<DT><A HREF="./org/apache/wink/common/model/wadl/Representation.html#setElement(javax.xml.namespace.QName)"><B>setElement(QName)</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Representation.html" title="class in org.apache.wink.common.model.wadl">Representation</A>
<DD>Sets the value of the element property.
<DT><A HREF="./org/apache/wink/common/model/atom/AtomPerson.html#setEmail(java.lang.String)"><B>setEmail(String)</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomPerson.html" title="class in org.apache.wink.common.model.atom">AtomPerson</A>
<DD>Sets the value of email.
<DT><A HREF="./org/apache/wink/common/model/synd/SyndPerson.html#setEmail(java.lang.String)"><B>setEmail(String)</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndPerson.html" title="class in org.apache.wink.common.model.synd">SyndPerson</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/rss/RssItem.html#setEnclosure(org.apache.wink.common.model.rss.RssEnclosure)"><B>setEnclosure(RssEnclosure)</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssItem.html" title="class in org.apache.wink.common.model.rss">RssItem</A>
<DD>Sets the value of the enclosure property.
<DT><A HREF="./org/apache/wink/client/ClientRequest.html#setEntity(java.lang.Object)"><B>setEntity(Object)</B></A> - 
Method in interface org.apache.wink.client.<A HREF="./org/apache/wink/client/ClientRequest.html" title="interface in org.apache.wink.client">ClientRequest</A>
<DD>Set the request entity to send with the request.
<DT><A HREF="./org/apache/wink/client/ClientResponse.html#setEntity(java.lang.Object)"><B>setEntity(Object)</B></A> - 
Method in interface org.apache.wink.client.<A HREF="./org/apache/wink/client/ClientResponse.html" title="interface in org.apache.wink.client">ClientResponse</A>
<DD>Set the response entity
<DT><A HREF="./org/apache/wink/webdav/server/WebDAVResponseBuilder.CollectionPropertyHandler.html#setEntryPropertyHandler(org.apache.wink.webdav.server.WebDAVResponseBuilder.PropertyHandler)"><B>setEntryPropertyHandler(WebDAVResponseBuilder.PropertyHandler)</B></A> - 
Method in class org.apache.wink.webdav.server.<A HREF="./org/apache/wink/webdav/server/WebDAVResponseBuilder.CollectionPropertyHandler.html" title="class in org.apache.wink.webdav.server">WebDAVResponseBuilder.CollectionPropertyHandler</A>
<DD>Set the PropertyHandler that is used to set properties for the
 entries in the collection
<DT><A HREF="./org/apache/wink/webdav/model/Propstat.html#setError(org.apache.wink.webdav.model.Error)"><B>setError(Error)</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Propstat.html" title="class in org.apache.wink.webdav.model">Propstat</A>
<DD>Sets the value of the error property.
<DT><A HREF="./org/apache/wink/webdav/model/Response.html#setError(org.apache.wink.webdav.model.Error)"><B>setError(Error)</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Response.html" title="class in org.apache.wink.webdav.model">Response</A>
<DD>Sets the value of the error property.
<DT><A HREF="./org/apache/wink/webdav/model/Lockscope.html#setExclusive(org.apache.wink.webdav.model.Exclusive)"><B>setExclusive(Exclusive)</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Lockscope.html" title="class in org.apache.wink.webdav.model">Lockscope</A>
<DD>Sets the value of the exclusive property.
<DT><A HREF="./org/apache/wink/common/categories/Categories.html#setFixed(boolean)"><B>setFixed(boolean)</B></A> - 
Method in class org.apache.wink.common.categories.<A HREF="./org/apache/wink/common/categories/Categories.html" title="class in org.apache.wink.common.categories">Categories</A>
<DD>Sets whether or not this is a fixed listing of categories.
<DT><A HREF="./org/apache/wink/common/model/app/AppCategories.html#setFixed(org.apache.wink.common.model.app.AppYesNo)"><B>setFixed(AppYesNo)</B></A> - 
Method in class org.apache.wink.common.model.app.<A HREF="./org/apache/wink/common/model/app/AppCategories.html" title="class in org.apache.wink.common.model.app">AppCategories</A>
<DD>Sets the value of the fixed property.
<DT><A HREF="./org/apache/wink/common/model/wadl/Param.html#setFixed(java.lang.String)"><B>setFixed(String)</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Param.html" title="class in org.apache.wink.common.model.wadl">Param</A>
<DD>Sets the value of the fixed property.
<DT><A HREF="./org/apache/wink/common/model/atom/AtomFeed.html#setGenerator(org.apache.wink.common.model.atom.AtomGenerator)"><B>setGenerator(AtomGenerator)</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomFeed.html" title="class in org.apache.wink.common.model.atom">AtomFeed</A>
<DD>Sets the value of generator.
<DT><A HREF="./org/apache/wink/common/model/rss/RssChannel.html#setGenerator(java.lang.String)"><B>setGenerator(String)</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssChannel.html" title="class in org.apache.wink.common.model.rss">RssChannel</A>
<DD>Sets the value of the generator property.
<DT><A HREF="./org/apache/wink/common/model/synd/SyndFeed.html#setGenerator(org.apache.wink.common.model.synd.SyndGenerator)"><B>setGenerator(SyndGenerator)</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndFeed.html" title="class in org.apache.wink.common.model.synd">SyndFeed</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Prop.html#setGetcontentlanguage(org.apache.wink.webdav.model.Getcontentlanguage)"><B>setGetcontentlanguage(Getcontentlanguage)</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Prop.html" title="class in org.apache.wink.webdav.model">Prop</A>
<DD>Sets the value of the getcontentlanguage property.
<DT><A HREF="./org/apache/wink/webdav/model/Prop.html#setGetcontentlength(org.apache.wink.webdav.model.Getcontentlength)"><B>setGetcontentlength(Getcontentlength)</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Prop.html" title="class in org.apache.wink.webdav.model">Prop</A>
<DD>Sets the value of the getcontentlength property.
<DT><A HREF="./org/apache/wink/webdav/model/Prop.html#setGetcontenttype(org.apache.wink.webdav.model.Getcontenttype)"><B>setGetcontenttype(Getcontenttype)</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Prop.html" title="class in org.apache.wink.webdav.model">Prop</A>
<DD>Sets the value of the getcontenttype property.
<DT><A HREF="./org/apache/wink/webdav/model/Prop.html#setGetetag(org.apache.wink.webdav.model.Getetag)"><B>setGetetag(Getetag)</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Prop.html" title="class in org.apache.wink.webdav.model">Prop</A>
<DD>Sets the value of the getetag property.
<DT><A HREF="./org/apache/wink/webdav/model/Prop.html#setGetlastmodified(org.apache.wink.webdav.model.Getlastmodified)"><B>setGetlastmodified(Getlastmodified)</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Prop.html" title="class in org.apache.wink.webdav.model">Prop</A>
<DD>Sets the value of the getlastmodified property.
<DT><A HREF="./org/apache/wink/common/model/wadl/Application.html#setGrammars(org.apache.wink.common.model.wadl.Grammars)"><B>setGrammars(Grammars)</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Application.html" title="class in org.apache.wink.common.model.wadl">Application</A>
<DD>Sets the value of the grammars property.
<DT><A HREF="./org/apache/wink/common/model/rss/RssItem.html#setGuid(org.apache.wink.common.model.rss.RssGuid)"><B>setGuid(RssGuid)</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssItem.html" title="class in org.apache.wink.common.model.rss">RssItem</A>
<DD>Sets the value of the guid property.
<DT><A HREF="./org/apache/wink/common/model/multipart/InPart.html#setHeaders(javax.ws.rs.core.MultivaluedMap)"><B>setHeaders(MultivaluedMap&lt;String, String&gt;)</B></A> - 
Method in class org.apache.wink.common.model.multipart.<A HREF="./org/apache/wink/common/model/multipart/InPart.html" title="class in org.apache.wink.common.model.multipart">InPart</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/multipart/OutPart.html#setHeaders(javax.ws.rs.core.MultivaluedMap)"><B>setHeaders(MultivaluedMap&lt;String, String&gt;)</B></A> - 
Method in class org.apache.wink.common.model.multipart.<A HREF="./org/apache/wink/common/model/multipart/OutPart.html" title="class in org.apache.wink.common.model.multipart">OutPart</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchImage.html#setHeight(java.math.BigInteger)"><B>setHeight(BigInteger)</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchImage.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchImage</A>
<DD>Sets the value of the height property.
<DT><A HREF="./org/apache/wink/common/model/rss/RssImage.html#setHeight(java.lang.Integer)"><B>setHeight(Integer)</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssImage.html" title="class in org.apache.wink.common.model.rss">RssImage</A>
<DD>Sets the value of the height property.
<DT><A HREF="./org/apache/wink/common/categories/Categories.html#setHref(java.lang.String)"><B>setHref(String)</B></A> - 
Method in class org.apache.wink.common.categories.<A HREF="./org/apache/wink/common/categories/Categories.html" title="class in org.apache.wink.common.categories">Categories</A>
<DD>Sets the value of the href attribute.
<DT><A HREF="./org/apache/wink/common/categories/Categories.html#setHref(java.lang.Class, javax.ws.rs.core.MultivaluedMap)"><B>setHref(Class&lt;?&gt;, MultivaluedMap&lt;String, String&gt;)</B></A> - 
Method in class org.apache.wink.common.categories.<A HREF="./org/apache/wink/common/categories/Categories.html" title="class in org.apache.wink.common.categories">Categories</A>
<DD>Set Resource class that will generate Categories Document
<DT><A HREF="./org/apache/wink/common/categories/Categories.html#setHref(java.lang.Object, javax.ws.rs.core.MultivaluedMap)"><B>setHref(Object, MultivaluedMap&lt;String, String&gt;)</B></A> - 
Method in class org.apache.wink.common.categories.<A HREF="./org/apache/wink/common/categories/Categories.html" title="class in org.apache.wink.common.categories">Categories</A>
<DD>Set Resource that will generate Categories Document
<DT><A HREF="./org/apache/wink/common/model/app/AppCategories.html#setHref(java.lang.String)"><B>setHref(String)</B></A> - 
Method in class org.apache.wink.common.model.app.<A HREF="./org/apache/wink/common/model/app/AppCategories.html" title="class in org.apache.wink.common.model.app">AppCategories</A>
<DD>Sets the value of the href property.
<DT><A HREF="./org/apache/wink/common/model/app/AppCollection.html#setHref(java.lang.String)"><B>setHref(String)</B></A> - 
Method in class org.apache.wink.common.model.app.<A HREF="./org/apache/wink/common/model/app/AppCollection.html" title="class in org.apache.wink.common.model.app">AppCollection</A>
<DD>Sets the value of href.
<DT><A HREF="./org/apache/wink/common/model/atom/AtomLink.html#setHref(java.lang.String)"><B>setHref(String)</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomLink.html" title="class in org.apache.wink.common.model.atom">AtomLink</A>
<DD>Sets the value of href.
<DT><A HREF="./org/apache/wink/common/model/synd/SyndLink.html#setHref(java.lang.String)"><B>setHref(String)</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndLink.html" title="class in org.apache.wink.common.model.synd">SyndLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Include.html#setHref(java.lang.String)"><B>setHref(String)</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Include.html" title="class in org.apache.wink.common.model.wadl">Include</A>
<DD>Sets the value of the href property.
<DT><A HREF="./org/apache/wink/common/model/wadl/Method.html#setHref(java.lang.String)"><B>setHref(String)</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Method.html" title="class in org.apache.wink.common.model.wadl">Method</A>
<DD>Sets the value of the href property.
<DT><A HREF="./org/apache/wink/common/model/wadl/Param.html#setHref(java.lang.String)"><B>setHref(String)</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Param.html" title="class in org.apache.wink.common.model.wadl">Param</A>
<DD>Sets the value of the href property.
<DT><A HREF="./org/apache/wink/common/model/wadl/Representation.html#setHref(java.lang.String)"><B>setHref(String)</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Representation.html" title="class in org.apache.wink.common.model.wadl">Representation</A>
<DD>Sets the value of the href property.
<DT><A HREF="./org/apache/wink/common/model/atom/AtomLink.html#setHreflang(java.lang.String)"><B>setHreflang(String)</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomLink.html" title="class in org.apache.wink.common.model.atom">AtomLink</A>
<DD>Sets the value of hreflang.
<DT><A HREF="./org/apache/wink/common/model/synd/SyndLink.html#setHreflang(java.lang.String)"><B>setHreflang(String)</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndLink.html" title="class in org.apache.wink.common.model.synd">SyndLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/server/handlers/MessageContext.html#setHttpMethod(java.lang.String)"><B>setHttpMethod(String)</B></A> - 
Method in interface org.apache.wink.server.handlers.<A HREF="./org/apache/wink/server/handlers/MessageContext.html" title="interface in org.apache.wink.server.handlers">MessageContext</A>
<DD>Set the http method of the request.
<DT><A HREF="./org/apache/wink/common/model/atom/AtomFeed.html#setIcon(java.lang.String)"><B>setIcon(String)</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomFeed.html" title="class in org.apache.wink.common.model.atom">AtomFeed</A>
<DD>Sets the value of icon.
<DT><A HREF="./org/apache/wink/common/model/synd/SyndFeed.html#setIcon(java.lang.String)"><B>setIcon(String)</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndFeed.html" title="class in org.apache.wink.common.model.synd">SyndFeed</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomEntry.html#setId(java.lang.String)"><B>setId(String)</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomEntry.html" title="class in org.apache.wink.common.model.atom">AtomEntry</A>
<DD>Sets the value of id.
<DT><A HREF="./org/apache/wink/common/model/atom/AtomFeed.html#setId(java.lang.String)"><B>setId(String)</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomFeed.html" title="class in org.apache.wink.common.model.atom">AtomFeed</A>
<DD>Sets the value of id.
<DT><A HREF="./org/apache/wink/common/model/synd/SyndBase.html#setId(java.lang.String)"><B>setId(String)</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndBase.html" title="class in org.apache.wink.common.model.synd">SyndBase</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Method.html#setId(java.lang.String)"><B>setId(String)</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Method.html" title="class in org.apache.wink.common.model.wadl">Method</A>
<DD>Sets the value of the id property.
<DT><A HREF="./org/apache/wink/common/model/wadl/Param.html#setId(java.lang.String)"><B>setId(String)</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Param.html" title="class in org.apache.wink.common.model.wadl">Param</A>
<DD>Sets the value of the id property.
<DT><A HREF="./org/apache/wink/common/model/wadl/Representation.html#setId(java.lang.String)"><B>setId(String)</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Representation.html" title="class in org.apache.wink.common.model.wadl">Representation</A>
<DD>Sets the value of the id property.
<DT><A HREF="./org/apache/wink/common/model/wadl/Resource.html#setId(java.lang.String)"><B>setId(String)</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Resource.html" title="class in org.apache.wink.common.model.wadl">Resource</A>
<DD>Sets the value of the id property.
<DT><A HREF="./org/apache/wink/common/model/wadl/ResourceType.html#setId(java.lang.String)"><B>setId(String)</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/ResourceType.html" title="class in org.apache.wink.common.model.wadl">ResourceType</A>
<DD>Sets the value of the id property.
<DT><A HREF="./org/apache/wink/common/model/rss/RssChannel.html#setImage(org.apache.wink.common.model.rss.RssImage)"><B>setImage(RssImage)</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssChannel.html" title="class in org.apache.wink.common.model.rss">RssChannel</A>
<DD>Sets the value of the image property.
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchQuery.html#setInputEncoding(java.lang.String)"><B>setInputEncoding(String)</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchQuery.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchQuery</A>
<DD>Sets the value of the inputEncoding property.
<DT><A HREF="./org/apache/wink/common/model/multipart/InPart.html#setInputStream(java.io.InputStream)"><B>setInputStream(InputStream)</B></A> - 
Method in class org.apache.wink.common.model.multipart.<A HREF="./org/apache/wink/common/model/multipart/InPart.html" title="class in org.apache.wink.common.model.multipart">InPart</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/spring/Registrar.html#setInstances(java.util.Set)"><B>setInstances(Set&lt;Object&gt;)</B></A> - 
Method in class org.apache.wink.spring.<A HREF="./org/apache/wink/spring/Registrar.html" title="class in org.apache.wink.spring">Registrar</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/rss/RssGuid.html#setIsPermaLink(java.lang.Boolean)"><B>setIsPermaLink(Boolean)</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssGuid.html" title="class in org.apache.wink.common.model.rss">RssGuid</A>
<DD>Sets the value of the isPermaLink property.
<DT><A HREF="./org/apache/wink/common/model/atom/AtomFeed.html#setItemsPerPage(long)"><B>setItemsPerPage(long)</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomFeed.html" title="class in org.apache.wink.common.model.atom">AtomFeed</A>
<DD>Sets the value of opensearch itemsPerPage.
<DT><A HREF="./org/apache/wink/common/model/synd/SyndFeed.html#setItemsPerPage(long)"><B>setItemsPerPage(long)</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndFeed.html" title="class in org.apache.wink.common.model.synd">SyndFeed</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Propertybehavior.html#setKeepalive(org.apache.wink.webdav.model.Keepalive)"><B>setKeepalive(Keepalive)</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Propertybehavior.html" title="class in org.apache.wink.webdav.model">Propertybehavior</A>
<DD>Sets the value of the keepalive property.
<DT><A HREF="./org/apache/wink/common/model/atom/AtomCategory.html#setLabel(java.lang.String)"><B>setLabel(String)</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomCategory.html" title="class in org.apache.wink.common.model.atom">AtomCategory</A>
<DD>Sets the value of label.
<DT><A HREF="./org/apache/wink/common/model/synd/SyndCategory.html#setLabel(java.lang.String)"><B>setLabel(String)</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndCategory.html" title="class in org.apache.wink.common.model.synd">SyndCategory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomCommonAttributes.html#setLang(java.lang.String)"><B>setLang(String)</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomCommonAttributes.html" title="class in org.apache.wink.common.model.atom">AtomCommonAttributes</A>
<DD>Sets the value of lang.
<DT><A HREF="./org/apache/wink/common/model/atom/AtomCommonAttributesSimpleContent.html#setLang(java.lang.String)"><B>setLang(String)</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomCommonAttributesSimpleContent.html" title="class in org.apache.wink.common.model.atom">AtomCommonAttributesSimpleContent</A>
<DD>Sets the value of lang.
<DT><A HREF="./org/apache/wink/common/model/synd/SyndCommonAttributes.html#setLang(java.lang.String)"><B>setLang(String)</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndCommonAttributes.html" title="class in org.apache.wink.common.model.synd">SyndCommonAttributes</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Doc.html#setLang(java.lang.String)"><B>setLang(String)</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Doc.html" title="class in org.apache.wink.common.model.wadl">Doc</A>
<DD>Sets the value of the lang property.
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchQuery.html#setLanguage(java.lang.String)"><B>setLanguage(String)</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchQuery.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchQuery</A>
<DD>Sets the value of the language property.
<DT><A HREF="./org/apache/wink/common/model/rss/RssChannel.html#setLanguage(java.lang.String)"><B>setLanguage(String)</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssChannel.html" title="class in org.apache.wink.common.model.rss">RssChannel</A>
<DD>Sets the value of the language property.
<DT><A HREF="./org/apache/wink/common/model/rss/RssChannel.html#setLastBuildDate(java.lang.String)"><B>setLastBuildDate(String)</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssChannel.html" title="class in org.apache.wink.common.model.rss">RssChannel</A>
<DD>Sets the value of the lastBuildDate property.
<DT><A HREF="./org/apache/wink/common/model/atom/AtomLink.html#setLength(java.lang.String)"><B>setLength(String)</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomLink.html" title="class in org.apache.wink.common.model.atom">AtomLink</A>
<DD>Sets the value of length.
<DT><A HREF="./org/apache/wink/common/model/rss/RssEnclosure.html#setLength(java.lang.String)"><B>setLength(String)</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssEnclosure.html" title="class in org.apache.wink.common.model.rss">RssEnclosure</A>
<DD>Sets the value of the length property.
<DT><A HREF="./org/apache/wink/common/model/synd/SyndLink.html#setLength(java.lang.String)"><B>setLength(String)</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndLink.html" title="class in org.apache.wink.common.model.synd">SyndLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/rss/RssChannel.html#setLink(java.lang.String)"><B>setLink(String)</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssChannel.html" title="class in org.apache.wink.common.model.rss">RssChannel</A>
<DD>Sets the value of the link property.
<DT><A HREF="./org/apache/wink/common/model/rss/RssImage.html#setLink(java.lang.String)"><B>setLink(String)</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssImage.html" title="class in org.apache.wink.common.model.rss">RssImage</A>
<DD>Sets the value of the link property.
<DT><A HREF="./org/apache/wink/common/model/rss/RssItem.html#setLink(java.lang.String)"><B>setLink(String)</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssItem.html" title="class in org.apache.wink.common.model.rss">RssItem</A>
<DD>Sets the value of the link property.
<DT><A HREF="./org/apache/wink/common/model/rss/RssTextInput.html#setLink(java.lang.String)"><B>setLink(String)</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssTextInput.html" title="class in org.apache.wink.common.model.rss">RssTextInput</A>
<DD>Sets the value of the link property.
<DT><A HREF="./org/apache/wink/common/model/wadl/Param.html#setLink(org.apache.wink.common.model.wadl.Link)"><B>setLink(Link)</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Param.html" title="class in org.apache.wink.common.model.wadl">Param</A>
<DD>Sets the value of the link property.
<DT><A HREF="./org/apache/wink/client/ClientConfig.html#setLoadWinkApplications(boolean)"><B>setLoadWinkApplications(boolean)</B></A> - 
Method in class org.apache.wink.client.<A HREF="./org/apache/wink/client/ClientConfig.html" title="class in org.apache.wink.client">ClientConfig</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/multipart/OutPart.html#setLocationHeader(java.lang.String)"><B>setLocationHeader(String)</B></A> - 
Method in class org.apache.wink.common.model.multipart.<A HREF="./org/apache/wink/common/model/multipart/OutPart.html" title="class in org.apache.wink.common.model.multipart">OutPart</A>
<DD>set the location header
<DT><A HREF="./org/apache/wink/webdav/model/Prop.html#setLockdiscovery(org.apache.wink.webdav.model.Lockdiscovery)"><B>setLockdiscovery(Lockdiscovery)</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Prop.html" title="class in org.apache.wink.webdav.model">Prop</A>
<DD>Sets the value of the lockdiscovery property.
<DT><A HREF="./org/apache/wink/webdav/model/Activelock.html#setLockscope(org.apache.wink.webdav.model.Lockscope)"><B>setLockscope(Lockscope)</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Activelock.html" title="class in org.apache.wink.webdav.model">Activelock</A>
<DD>Sets the value of the lockscope property.
<DT><A HREF="./org/apache/wink/webdav/model/Lockentry.html#setLockscope(org.apache.wink.webdav.model.Lockscope)"><B>setLockscope(Lockscope)</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Lockentry.html" title="class in org.apache.wink.webdav.model">Lockentry</A>
<DD>Sets the value of the lockscope property.
<DT><A HREF="./org/apache/wink/webdav/model/Lockinfo.html#setLockscope(org.apache.wink.webdav.model.Lockscope)"><B>setLockscope(Lockscope)</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Lockinfo.html" title="class in org.apache.wink.webdav.model">Lockinfo</A>
<DD>Sets the value of the lockscope property.
<DT><A HREF="./org/apache/wink/webdav/model/Activelock.html#setLocktoken(org.apache.wink.webdav.model.Locktoken)"><B>setLocktoken(Locktoken)</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Activelock.html" title="class in org.apache.wink.webdav.model">Activelock</A>
<DD>Sets the value of the locktoken property.
<DT><A HREF="./org/apache/wink/webdav/model/Activelock.html#setLocktype(org.apache.wink.webdav.model.Locktype)"><B>setLocktype(Locktype)</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Activelock.html" title="class in org.apache.wink.webdav.model">Activelock</A>
<DD>Sets the value of the locktype property.
<DT><A HREF="./org/apache/wink/webdav/model/Lockentry.html#setLocktype(org.apache.wink.webdav.model.Locktype)"><B>setLocktype(Locktype)</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Lockentry.html" title="class in org.apache.wink.webdav.model">Lockentry</A>
<DD>Sets the value of the locktype property.
<DT><A HREF="./org/apache/wink/webdav/model/Lockinfo.html#setLocktype(org.apache.wink.webdav.model.Locktype)"><B>setLocktype(Locktype)</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Lockinfo.html" title="class in org.apache.wink.webdav.model">Lockinfo</A>
<DD>Sets the value of the locktype property.
<DT><A HREF="./org/apache/wink/common/model/atom/AtomFeed.html#setLogo(java.lang.String)"><B>setLogo(String)</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomFeed.html" title="class in org.apache.wink.common.model.atom">AtomFeed</A>
<DD>Sets the value of logo.
<DT><A HREF="./org/apache/wink/common/model/synd/SyndFeed.html#setLogo(java.lang.String)"><B>setLogo(String)</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndFeed.html" title="class in org.apache.wink.common.model.synd">SyndFeed</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html#setLongName(java.lang.String)"><B>setLongName(String)</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchDescription</A>
<DD>Sets the value of the longName property.
<DT><A HREF="./org/apache/wink/common/model/rss/RssChannel.html#setManagingEditor(java.lang.String)"><B>setManagingEditor(String)</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssChannel.html" title="class in org.apache.wink.common.model.rss">RssChannel</A>
<DD>Sets the value of the managingEditor property.
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchParameter.html#setMandatory(boolean)"><B>setMandatory(boolean)</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchParameter.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchParameter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/httpclient/ApacheHttpClientConfig.html#setMaxPooledConnections(int)"><B>setMaxPooledConnections(int)</B></A> - 
Method in class org.apache.wink.client.httpclient.<A HREF="./org/apache/wink/client/httpclient/ApacheHttpClientConfig.html" title="class in org.apache.wink.client.httpclient">ApacheHttpClientConfig</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Option.html#setMediaType(java.lang.String)"><B>setMediaType(String)</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Option.html" title="class in org.apache.wink.common.model.wadl">Option</A>
<DD>Sets the value of the mediaType property.
<DT><A HREF="./org/apache/wink/common/model/wadl/Representation.html#setMediaType(java.lang.String)"><B>setMediaType(String)</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Representation.html" title="class in org.apache.wink.common.model.wadl">Representation</A>
<DD>Sets the value of the mediaType property.
<DT><A HREF="./org/apache/wink/client/ClientResponse.html#setMessage(java.lang.String)"><B>setMessage(String)</B></A> - 
Method in interface org.apache.wink.client.<A HREF="./org/apache/wink/client/ClientResponse.html" title="interface in org.apache.wink.client">ClientResponse</A>
<DD>Set the response message
<DT><A HREF="./org/apache/wink/client/ClientRequest.html#setMethod(java.lang.String)"><B>setMethod(String)</B></A> - 
Method in interface org.apache.wink.client.<A HREF="./org/apache/wink/client/ClientRequest.html" title="interface in org.apache.wink.client">ClientRequest</A>
<DD>Set the http method
<DT><A HREF="./org/apache/wink/client/MockHttpServer.html#setMockHttpServerResponses(org.apache.wink.client.MockHttpServer.MockHttpServerResponse...)"><B>setMockHttpServerResponses(MockHttpServer.MockHttpServerResponse...)</B></A> - 
Method in class org.apache.wink.client.<A HREF="./org/apache/wink/client/MockHttpServer.html" title="class in org.apache.wink.client">MockHttpServer</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/MockHttpServer.MockHttpServerResponse.html#setMockResponseCode(int)"><B>setMockResponseCode(int)</B></A> - 
Method in class org.apache.wink.client.<A HREF="./org/apache/wink/client/MockHttpServer.MockHttpServerResponse.html" title="class in org.apache.wink.client">MockHttpServer.MockHttpServerResponse</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/MockHttpServer.MockHttpServerResponse.html#setMockResponseContent(java.lang.String)"><B>setMockResponseContent(String)</B></A> - 
Method in class org.apache.wink.client.<A HREF="./org/apache/wink/client/MockHttpServer.MockHttpServerResponse.html" title="class in org.apache.wink.client">MockHttpServer.MockHttpServerResponse</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/MockHttpServer.MockHttpServerResponse.html#setMockResponseContent(byte[])"><B>setMockResponseContent(byte[])</B></A> - 
Method in class org.apache.wink.client.<A HREF="./org/apache/wink/client/MockHttpServer.MockHttpServerResponse.html" title="class in org.apache.wink.client">MockHttpServer.MockHttpServerResponse</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/MockHttpServer.MockHttpServerResponse.html#setMockResponseContentEchoRequest(boolean)"><B>setMockResponseContentEchoRequest(boolean)</B></A> - 
Method in class org.apache.wink.client.<A HREF="./org/apache/wink/client/MockHttpServer.MockHttpServerResponse.html" title="class in org.apache.wink.client">MockHttpServer.MockHttpServerResponse</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/MockHttpServer.MockHttpServerResponse.html#setMockResponseContentType(java.lang.String)"><B>setMockResponseContentType(String)</B></A> - 
Method in class org.apache.wink.client.<A HREF="./org/apache/wink/client/MockHttpServer.MockHttpServerResponse.html" title="class in org.apache.wink.client">MockHttpServer.MockHttpServerResponse</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/MockHttpServer.MockHttpServerResponse.html#setMockResponseHeader(java.lang.String, java.lang.String)"><B>setMockResponseHeader(String, String)</B></A> - 
Method in class org.apache.wink.client.<A HREF="./org/apache/wink/client/MockHttpServer.MockHttpServerResponse.html" title="class in org.apache.wink.client">MockHttpServer.MockHttpServerResponse</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/MockHttpServer.MockHttpServerResponse.html#setMockResponseHeaders(java.util.Map)"><B>setMockResponseHeaders(Map&lt;String, String&gt;)</B></A> - 
Method in class org.apache.wink.client.<A HREF="./org/apache/wink/client/MockHttpServer.MockHttpServerResponse.html" title="class in org.apache.wink.client">MockHttpServer.MockHttpServerResponse</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomPerson.html#setName(java.lang.String)"><B>setName(String)</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomPerson.html" title="class in org.apache.wink.common.model.atom">AtomPerson</A>
<DD>Sets the value of name.
<DT><A HREF="./org/apache/wink/common/model/rss/RssTextInput.html#setName(java.lang.String)"><B>setName(String)</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssTextInput.html" title="class in org.apache.wink.common.model.rss">RssTextInput</A>
<DD>Sets the value of the name property.
<DT><A HREF="./org/apache/wink/common/model/synd/SyndPerson.html#setName(java.lang.String)"><B>setName(String)</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndPerson.html" title="class in org.apache.wink.common.model.synd">SyndPerson</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Method.html#setName(java.lang.String)"><B>setName(String)</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Method.html" title="class in org.apache.wink.common.model.wadl">Method</A>
<DD>Sets the value of the name property.
<DT><A HREF="./org/apache/wink/common/model/wadl/Param.html#setName(java.lang.String)"><B>setName(String)</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Param.html" title="class in org.apache.wink.common.model.wadl">Param</A>
<DD>Sets the value of the name property.
<DT><A HREF="./org/apache/wink/webdav/model/Propertybehavior.html#setOmit(org.apache.wink.webdav.model.Omit)"><B>setOmit(Omit)</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Propertybehavior.html" title="class in org.apache.wink.webdav.model">Propertybehavior</A>
<DD>Sets the value of the omit property.
<DT><A HREF="./org/apache/wink/common/model/atom/AtomFeed.html#setOpenSearchQueries(java.util.List)"><B>setOpenSearchQueries(List&lt;OpenSearchQuery&gt;)</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomFeed.html" title="class in org.apache.wink.common.model.atom">AtomFeed</A>
<DD>Sets the list of opensearch Query elements
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchQuery.html#setOutputEncoding(java.lang.String)"><B>setOutputEncoding(String)</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchQuery.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchQuery</A>
<DD>Sets the value of the outputEncoding property.
<DT><A HREF="./org/apache/wink/webdav/model/Activelock.html#setOwner(org.apache.wink.webdav.model.Owner)"><B>setOwner(Owner)</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Activelock.html" title="class in org.apache.wink.webdav.model">Activelock</A>
<DD>Sets the value of the owner property.
<DT><A HREF="./org/apache/wink/webdav/model/Lockinfo.html#setOwner(org.apache.wink.webdav.model.Owner)"><B>setOwner(Owner)</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Lockinfo.html" title="class in org.apache.wink.webdav.model">Lockinfo</A>
<DD>Sets the value of the owner property.
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchParameter.html#setParameter(java.lang.String)"><B>setParameter(String)</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchParameter.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchParameter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchParameter.html#setParameterKey(java.lang.String)"><B>setParameterKey(String)</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchParameter.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchParameter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/AbstractDynamicResource.html#setParent(java.lang.Object)"><B>setParent(Object)</B></A> - 
Method in class org.apache.wink.common.<A HREF="./org/apache/wink/common/AbstractDynamicResource.html" title="class in org.apache.wink.common">AbstractDynamicResource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/DynamicResource.html#setParent(java.lang.Object)"><B>setParent(Object)</B></A> - 
Method in interface org.apache.wink.common.<A HREF="./org/apache/wink/common/DynamicResource.html" title="interface in org.apache.wink.common">DynamicResource</A>
<DD>
 Sets parents.
<DT><A HREF="./org/apache/wink/client/handlers/AbstractAuthSecurityHandler.html#setPassword(java.lang.String)"><B>setPassword(String)</B></A> - 
Method in class org.apache.wink.client.handlers.<A HREF="./org/apache/wink/client/handlers/AbstractAuthSecurityHandler.html" title="class in org.apache.wink.client.handlers">AbstractAuthSecurityHandler</A>
<DD>Sets the password to use.
<DT><A HREF="./org/apache/wink/common/AbstractDynamicResource.html#setPath(java.lang.String)"><B>setPath(String)</B></A> - 
Method in class org.apache.wink.common.<A HREF="./org/apache/wink/common/AbstractDynamicResource.html" title="class in org.apache.wink.common">AbstractDynamicResource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/rss/RssCloud.html#setPath(java.lang.String)"><B>setPath(String)</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssCloud.html" title="class in org.apache.wink.common.model.rss">RssCloud</A>
<DD>Sets the value of the path property.
<DT><A HREF="./org/apache/wink/common/model/wadl/Param.html#setPath(java.lang.String)"><B>setPath(String)</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Param.html" title="class in org.apache.wink.common.model.wadl">Param</A>
<DD>Sets the value of the path property.
<DT><A HREF="./org/apache/wink/common/model/wadl/Resource.html#setPath(java.lang.String)"><B>setPath(String)</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Resource.html" title="class in org.apache.wink.common.model.wadl">Resource</A>
<DD>Sets the value of the path property.
<DT><A HREF="./org/apache/wink/common/model/rss/RssCloud.html#setPort(int)"><B>setPort(int)</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssCloud.html" title="class in org.apache.wink.common.model.rss">RssCloud</A>
<DD>Sets the value of the port property.
<DT><A HREF="./org/apache/wink/server/utils/RegistrationUtils.InnerApplication.html#setPriority(double)"><B>setPriority(double)</B></A> - 
Method in class org.apache.wink.server.utils.<A HREF="./org/apache/wink/server/utils/RegistrationUtils.InnerApplication.html" title="class in org.apache.wink.server.utils">RegistrationUtils.InnerApplication</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/spring/Registrar.html#setPriority(double)"><B>setPriority(double)</B></A> - 
Method in class org.apache.wink.spring.<A HREF="./org/apache/wink/spring/Registrar.html" title="class in org.apache.wink.spring">Registrar</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Propfind.html#setProp(org.apache.wink.webdav.model.Prop)"><B>setProp(Prop)</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Propfind.html" title="class in org.apache.wink.webdav.model">Propfind</A>
<DD>Sets the value of the prop property.
<DT><A HREF="./org/apache/wink/webdav/model/Propstat.html#setProp(org.apache.wink.webdav.model.Prop)"><B>setProp(Prop)</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Propstat.html" title="class in org.apache.wink.webdav.model">Propstat</A>
<DD>Sets the value of the prop property.
<DT><A HREF="./org/apache/wink/webdav/model/Remove.html#setProp(org.apache.wink.webdav.model.Prop)"><B>setProp(Prop)</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Remove.html" title="class in org.apache.wink.webdav.model">Remove</A>
<DD>Sets the value of the prop property.
<DT><A HREF="./org/apache/wink/webdav/model/Set.html#setProp(org.apache.wink.webdav.model.Prop)"><B>setProp(Prop)</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Set.html" title="class in org.apache.wink.webdav.model">Set</A>
<DD>Sets the value of the prop property.
<DT><A HREF="./org/apache/wink/client/ClientConfig.html#setProperties(java.util.Properties)"><B>setProperties(Properties)</B></A> - 
Method in class org.apache.wink.client.<A HREF="./org/apache/wink/client/ClientConfig.html" title="class in org.apache.wink.client">ClientConfig</A>
<DD>Convenience method to set the client configuration properties.
<DT><A HREF="./org/apache/wink/webdav/model/Prop.html#setProperty(javax.xml.namespace.QName)"><B>setProperty(QName)</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Prop.html" title="class in org.apache.wink.webdav.model">Prop</A>
<DD>Set a proprietary property, and return the Element representing it
<DT><A HREF="./org/apache/wink/webdav/model/Prop.html#setProperty(javax.xml.namespace.QName, java.lang.String)"><B>setProperty(QName, String)</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Prop.html" title="class in org.apache.wink.webdav.model">Prop</A>
<DD>Set a proprietary property, and return the Element representing it
<DT><A HREF="./org/apache/wink/webdav/model/Prop.html#setProperty(javax.xml.namespace.QName, org.w3c.dom.Element)"><B>setProperty(QName, Element)</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Prop.html" title="class in org.apache.wink.webdav.model">Prop</A>
<DD>Set a proprietary property, and return the Element representing it
<DT><A HREF="./org/apache/wink/webdav/model/Prop.html#setProperty(java.lang.String, java.lang.String)"><B>setProperty(String, String)</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Prop.html" title="class in org.apache.wink.webdav.model">Prop</A>
<DD>Set a proprietary property, and return the Element representing it
<DT><A HREF="./org/apache/wink/webdav/model/Prop.html#setProperty(java.lang.String, java.lang.String, java.lang.String)"><B>setProperty(String, String, String)</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Prop.html" title="class in org.apache.wink.webdav.model">Prop</A>
<DD>Set a proprietary property, and return the Element representing it
<DT><A HREF="./org/apache/wink/webdav/model/Prop.html#setProperty(java.lang.String, java.lang.String, org.w3c.dom.Element)"><B>setProperty(String, String, Element)</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Prop.html" title="class in org.apache.wink.webdav.model">Prop</A>
<DD>Set a proprietary property, and return the Element representing it
<DT><A HREF="./org/apache/wink/webdav/model/Response.html#setProperty(java.lang.Object, int)"><B>setProperty(Object, int)</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Response.html" title="class in org.apache.wink.webdav.model">Response</A>
<DD>Add the provided property to the correct propstat element with the
 specified Http status.
<DT><A HREF="./org/apache/wink/webdav/model/Response.html#setProperty(java.lang.Object, int, java.lang.String, org.apache.wink.webdav.model.Error)"><B>setProperty(Object, int, String, Error)</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Response.html" title="class in org.apache.wink.webdav.model">Response</A>
<DD>Sets the provided property to the correct propstat element.
<DT><A HREF="./org/apache/wink/webdav/model/Response.html#setPropertyNotFound(java.lang.Object)"><B>setPropertyNotFound(Object)</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Response.html" title="class in org.apache.wink.webdav.model">Response</A>
<DD>Add the provided property to the correct propstat element with an Http
 status of NOT FOUND.
<DT><A HREF="./org/apache/wink/webdav/model/Response.html#setPropertyOk(java.lang.Object)"><B>setPropertyOk(Object)</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Response.html" title="class in org.apache.wink.webdav.model">Response</A>
<DD>Add the provided property to the correct propstat element with an Http
 status of OK.
<DT><A HREF="./org/apache/wink/webdav/server/WebDAVResponseBuilder.PropertyHandler.html#setPropertyValue(org.apache.wink.webdav.server.WebDAVResponseBuilder, org.apache.wink.webdav.model.Response, java.lang.Object, org.apache.wink.common.model.synd.SyndBase)"><B>setPropertyValue(WebDAVResponseBuilder, Response, Object, SyndBase)</B></A> - 
Method in class org.apache.wink.webdav.server.<A HREF="./org/apache/wink/webdav/server/WebDAVResponseBuilder.PropertyHandler.html" title="class in org.apache.wink.webdav.server">WebDAVResponseBuilder.PropertyHandler</A>
<DD>Set the value of a provided property, and set the property on the
 response object with the correct status.
<DT><A HREF="./org/apache/wink/webdav/model/Propfind.html#setPropname(org.apache.wink.webdav.model.Propname)"><B>setPropname(Propname)</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Propfind.html" title="class in org.apache.wink.webdav.model">Propfind</A>
<DD>Sets the value of the propname property.
<DT><A HREF="./org/apache/wink/common/model/rss/RssCloud.html#setProtocol(java.lang.String)"><B>setProtocol(String)</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssCloud.html" title="class in org.apache.wink.common.model.rss">RssCloud</A>
<DD>Sets the value of the protocol property.
<DT><A HREF="./org/apache/wink/common/model/atom/AtomContent.html#setProviders(javax.ws.rs.ext.Providers)"><B>setProviders(Providers)</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomContent.html" title="class in org.apache.wink.common.model.atom">AtomContent</A>
<DD>Sets the Providers on a local field so that the registry of custom and system
 providers is available when a client application retrieves the value, expecting
 it to be seamlessly unmarshalled or converted to the expected type declared in
 getValue(Class).
<DT><A HREF="./org/apache/wink/common/model/multipart/InMultiPart.html#setProviders(javax.ws.rs.ext.Providers)"><B>setProviders(Providers)</B></A> - 
Method in class org.apache.wink.common.model.multipart.<A HREF="./org/apache/wink/common/model/multipart/InMultiPart.html" title="class in org.apache.wink.common.model.multipart">InMultiPart</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/multipart/InPart.html#setProviders(javax.ws.rs.ext.Providers)"><B>setProviders(Providers)</B></A> - 
Method in class org.apache.wink.common.model.multipart.<A HREF="./org/apache/wink/common/model/multipart/InPart.html" title="class in org.apache.wink.common.model.multipart">InPart</A>
<DD>set the providers to be used by the @see InPart#getBody(Class, Type)
 method for deserialization of the part
<DT><A HREF="./org/apache/wink/common/model/synd/SyndContent.html#setProviders(javax.ws.rs.ext.Providers)"><B>setProviders(Providers)</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndContent.html" title="class in org.apache.wink.common.model.synd">SyndContent</A>
<DD>Sets the Providers on a local field so that the registry of custom and system
 providers is available when a client application retrieves the value, expecting
 it to be seamlessly unmarshalled or converted to the expected type declared in
 getValue(Class).
<DT><A HREF="./org/apache/wink/common/model/rss/RssChannel.html#setPubDate(java.lang.String)"><B>setPubDate(String)</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssChannel.html" title="class in org.apache.wink.common.model.rss">RssChannel</A>
<DD>Sets the value of the pubDate property.
<DT><A HREF="./org/apache/wink/common/model/rss/RssItem.html#setPubDate(java.lang.String)"><B>setPubDate(String)</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssItem.html" title="class in org.apache.wink.common.model.rss">RssItem</A>
<DD>Sets the value of the pubDate property.
<DT><A HREF="./org/apache/wink/common/model/atom/AtomEntry.html#setPublished(javax.xml.datatype.XMLGregorianCalendar)"><B>setPublished(XMLGregorianCalendar)</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomEntry.html" title="class in org.apache.wink.common.model.atom">AtomEntry</A>
<DD>Sets the value of published.
<DT><A HREF="./org/apache/wink/common/model/atom/AtomEntry.html#setPublished(long)"><B>setPublished(long)</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomEntry.html" title="class in org.apache.wink.common.model.atom">AtomEntry</A>
<DD>Sets the value of published.
<DT><A HREF="./org/apache/wink/common/model/atom/AtomEntry.html#setPublished(java.util.Date)"><B>setPublished(Date)</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomEntry.html" title="class in org.apache.wink.common.model.atom">AtomEntry</A>
<DD>Sets the value of published.
<DT><A HREF="./org/apache/wink/common/model/synd/SyndEntry.html#setPublished(java.util.Date)"><B>setPublished(Date)</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndEntry.html" title="class in org.apache.wink.common.model.synd">SyndEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Resource.html#setQueryType(java.lang.String)"><B>setQueryType(String)</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Resource.html" title="class in org.apache.wink.common.model.wadl">Resource</A>
<DD>Sets the value of the queryType property.
<DT><A HREF="./org/apache/wink/common/model/rss/RssChannel.html#setRating(java.lang.String)"><B>setRating(String)</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssChannel.html" title="class in org.apache.wink.common.model.rss">RssChannel</A>
<DD>Sets the value of the rating property.
<DT><A HREF="./org/apache/wink/client/MockHttpServer.html#setReadTimeout(int)"><B>setReadTimeout(int)</B></A> - 
Method in class org.apache.wink.client.<A HREF="./org/apache/wink/client/MockHttpServer.html" title="class in org.apache.wink.client">MockHttpServer</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/rss/RssCloud.html#setRegisterProcedure(java.lang.String)"><B>setRegisterProcedure(String)</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssCloud.html" title="class in org.apache.wink.common.model.rss">RssCloud</A>
<DD>Sets the value of the registerProcedure property.
<DT><A HREF="./org/apache/wink/common/model/atom/AtomLink.html#setRel(java.lang.String)"><B>setRel(String)</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomLink.html" title="class in org.apache.wink.common.model.atom">AtomLink</A>
<DD>Sets the value of rel.
<DT><A HREF="./org/apache/wink/common/model/synd/SyndLink.html#setRel(java.lang.String)"><B>setRel(String)</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndLink.html" title="class in org.apache.wink.common.model.synd">SyndLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Link.html#setRel(java.lang.String)"><B>setRel(String)</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Link.html" title="class in org.apache.wink.common.model.wadl">Link</A>
<DD>Sets the value of the rel property.
<DT><A HREF="./org/apache/wink/common/model/wadl/Param.html#setRepeating(java.lang.Boolean)"><B>setRepeating(Boolean)</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Param.html" title="class in org.apache.wink.common.model.wadl">Param</A>
<DD>Sets the value of the repeating property.
<DT><A HREF="./org/apache/wink/common/model/wadl/Method.html#setRequest(org.apache.wink.common.model.wadl.Request)"><B>setRequest(Request)</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Method.html" title="class in org.apache.wink.common.model.wadl">Method</A>
<DD>Sets the value of the request property.
<DT><A HREF="./org/apache/wink/common/model/wadl/Param.html#setRequired(java.lang.Boolean)"><B>setRequired(Boolean)</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Param.html" title="class in org.apache.wink.common.model.wadl">Param</A>
<DD>Sets the value of the required property.
<DT><A HREF="./org/apache/wink/common/model/wadl/Link.html#setResourceType(java.lang.String)"><B>setResourceType(String)</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Link.html" title="class in org.apache.wink.common.model.wadl">Link</A>
<DD>Sets the value of the resourceType property.
<DT><A HREF="./org/apache/wink/webdav/model/Prop.html#setResourcetype(org.apache.wink.webdav.model.Resourcetype)"><B>setResourcetype(Resourcetype)</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Prop.html" title="class in org.apache.wink.webdav.model">Prop</A>
<DD>Sets the value of the resourcetype property.
<DT><A HREF="./org/apache/wink/webdav/model/Multistatus.html#setResponsedescription(java.lang.String)"><B>setResponsedescription(String)</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Multistatus.html" title="class in org.apache.wink.webdav.model">Multistatus</A>
<DD>Sets the value of the responsedescription property.
<DT><A HREF="./org/apache/wink/webdav/model/Propstat.html#setResponsedescription(java.lang.String)"><B>setResponsedescription(String)</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Propstat.html" title="class in org.apache.wink.webdav.model">Propstat</A>
<DD>Sets the value of the responsedescription property.
<DT><A HREF="./org/apache/wink/webdav/model/Response.html#setResponsedescription(java.lang.String)"><B>setResponsedescription(String)</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Response.html" title="class in org.apache.wink.webdav.model">Response</A>
<DD>Sets the value of the responsedescription property.
<DT><A HREF="./org/apache/wink/server/handlers/MessageContext.html#setResponseEntity(java.lang.Object)"><B>setResponseEntity(Object)</B></A> - 
Method in interface org.apache.wink.server.handlers.<A HREF="./org/apache/wink/server/handlers/MessageContext.html" title="interface in org.apache.wink.server.handlers">MessageContext</A>
<DD>Set the response entity.
<DT><A HREF="./org/apache/wink/server/handlers/MessageContext.html#setResponseMediaType(javax.ws.rs.core.MediaType)"><B>setResponseMediaType(MediaType)</B></A> - 
Method in interface org.apache.wink.server.handlers.<A HREF="./org/apache/wink/server/handlers/MessageContext.html" title="interface in org.apache.wink.server.handlers">MessageContext</A>
<DD>Set the response media type
<DT><A HREF="./org/apache/wink/server/handlers/MessageContext.html#setResponseStatusCode(int)"><B>setResponseStatusCode(int)</B></A> - 
Method in interface org.apache.wink.server.handlers.<A HREF="./org/apache/wink/server/handlers/MessageContext.html" title="interface in org.apache.wink.server.handlers">MessageContext</A>
<DD>Set the response status code
<DT><A HREF="./org/apache/wink/common/model/wadl/Link.html#setRev(java.lang.String)"><B>setRev(String)</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Link.html" title="class in org.apache.wink.common.model.wadl">Link</A>
<DD>Sets the value of the rev property.
<DT><A HREF="./org/apache/wink/common/model/atom/AtomFeed.html#setRights(org.apache.wink.common.model.atom.AtomText)"><B>setRights(AtomText)</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomFeed.html" title="class in org.apache.wink.common.model.atom">AtomFeed</A>
<DD>Sets the value of rights.
<DT><A HREF="./org/apache/wink/common/model/synd/SyndFeed.html#setRights(org.apache.wink.common.model.synd.SyndText)"><B>setRights(SyndText)</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndFeed.html" title="class in org.apache.wink.common.model.synd">SyndFeed</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchQuery.html#setRole(java.lang.String)"><B>setRole(String)</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchQuery.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchQuery</A>
<DD>Sets the value of the role property.
<DT><A HREF="./org/apache/wink/common/categories/Categories.html#setScheme(java.lang.String)"><B>setScheme(String)</B></A> - 
Method in class org.apache.wink.common.categories.<A HREF="./org/apache/wink/common/categories/Categories.html" title="class in org.apache.wink.common.categories">Categories</A>
<DD>Sets the default scheme for this listing of categories
<DT><A HREF="./org/apache/wink/common/model/app/AppCategories.html#setScheme(java.lang.String)"><B>setScheme(String)</B></A> - 
Method in class org.apache.wink.common.model.app.<A HREF="./org/apache/wink/common/model/app/AppCategories.html" title="class in org.apache.wink.common.model.app">AppCategories</A>
<DD>Sets the value of the scheme property.
<DT><A HREF="./org/apache/wink/common/model/atom/AtomCategory.html#setScheme(java.lang.String)"><B>setScheme(String)</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomCategory.html" title="class in org.apache.wink.common.model.atom">AtomCategory</A>
<DD>Sets the value of scheme.
<DT><A HREF="./org/apache/wink/common/model/synd/SyndCategory.html#setScheme(java.lang.String)"><B>setScheme(String)</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndCategory.html" title="class in org.apache.wink.common.model.synd">SyndCategory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchQuery.html#setSearchTerms(java.lang.String)"><B>setSearchTerms(String)</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchQuery.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchQuery</A>
<DD>Sets the value of the searchTerms property.
<DT><A HREF="./org/apache/wink/client/MockHttpServer.html#setServerPort(int)"><B>setServerPort(int)</B></A> - 
Method in class org.apache.wink.client.<A HREF="./org/apache/wink/client/MockHttpServer.html" title="class in org.apache.wink.client">MockHttpServer</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Lockscope.html#setShared(org.apache.wink.webdav.model.Shared)"><B>setShared(Shared)</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Lockscope.html" title="class in org.apache.wink.webdav.model">Lockscope</A>
<DD>Sets the value of the shared property.
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html#setShortName(java.lang.String)"><B>setShortName(String)</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchDescription</A>
<DD>Sets the value of the shortName property.
<DT><A HREF="./org/apache/wink/common/model/rss/RssChannel.html#setSkipDays(org.apache.wink.common.model.rss.RssSkipDays)"><B>setSkipDays(RssSkipDays)</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssChannel.html" title="class in org.apache.wink.common.model.rss">RssChannel</A>
<DD>Sets the value of the skipDays property.
<DT><A HREF="./org/apache/wink/common/model/rss/RssChannel.html#setSkipHours(org.apache.wink.common.model.rss.RssSkipHours)"><B>setSkipHours(RssSkipHours)</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssChannel.html" title="class in org.apache.wink.common.model.rss">RssChannel</A>
<DD>Sets the value of the skipHours property.
<DT><A HREF="./org/apache/wink/common/model/rss/RssItem.html#setSource(org.apache.wink.common.model.rss.RssSource)"><B>setSource(RssSource)</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssItem.html" title="class in org.apache.wink.common.model.rss">RssItem</A>
<DD>Sets the value of the source property.
<DT><A HREF="./org/apache/wink/common/model/atom/AtomContent.html#setSrc(java.lang.String)"><B>setSrc(String)</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomContent.html" title="class in org.apache.wink.common.model.atom">AtomContent</A>
<DD>Sets the value of src.
<DT><A HREF="./org/apache/wink/common/model/synd/SyndContent.html#setSrc(java.lang.String)"><B>setSrc(String)</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndContent.html" title="class in org.apache.wink.common.model.synd">SyndContent</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomFeed.html#setStartIndex(long)"><B>setStartIndex(long)</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomFeed.html" title="class in org.apache.wink.common.model.atom">AtomFeed</A>
<DD>Sets the value of opensearch startIndex.
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchQuery.html#setStartIndex(java.math.BigInteger)"><B>setStartIndex(BigInteger)</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchQuery.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchQuery</A>
<DD>Sets the value of the startIndex property.
<DT><A HREF="./org/apache/wink/common/model/synd/SyndFeed.html#setStartIndex(long)"><B>setStartIndex(long)</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndFeed.html" title="class in org.apache.wink.common.model.synd">SyndFeed</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchQuery.html#setStartPage(java.math.BigInteger)"><B>setStartPage(BigInteger)</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchQuery.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchQuery</A>
<DD>Sets the value of the startPage property.
<DT><A HREF="./org/apache/wink/webdav/model/Propstat.html#setStatus(java.lang.String)"><B>setStatus(String)</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Propstat.html" title="class in org.apache.wink.webdav.model">Propstat</A>
<DD>Sets the value of the status property.
<DT><A HREF="./org/apache/wink/webdav/model/Response.html#setStatus(java.lang.String)"><B>setStatus(String)</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Response.html" title="class in org.apache.wink.webdav.model">Response</A>
<DD>Sets the value of the status property.
<DT><A HREF="./org/apache/wink/client/ClientResponse.html#setStatusCode(int)"><B>setStatusCode(int)</B></A> - 
Method in interface org.apache.wink.client.<A HREF="./org/apache/wink/client/ClientResponse.html" title="interface in org.apache.wink.client">ClientResponse</A>
<DD>Set the response status code
<DT><A HREF="./org/apache/wink/common/model/wadl/Param.html#setStyle(org.apache.wink.common.model.wadl.ParamStyle)"><B>setStyle(ParamStyle)</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Param.html" title="class in org.apache.wink.common.model.wadl">Param</A>
<DD>Sets the value of the style property.
<DT><A HREF="./org/apache/wink/common/model/atom/AtomFeed.html#setSubtitle(org.apache.wink.common.model.atom.AtomText)"><B>setSubtitle(AtomText)</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomFeed.html" title="class in org.apache.wink.common.model.atom">AtomFeed</A>
<DD>Sets the value of subtitle.
<DT><A HREF="./org/apache/wink/common/model/synd/SyndFeed.html#setSubtitle(org.apache.wink.common.model.synd.SyndText)"><B>setSubtitle(SyndText)</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndFeed.html" title="class in org.apache.wink.common.model.synd">SyndFeed</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomEntry.html#setSummary(org.apache.wink.common.model.atom.AtomText)"><B>setSummary(AtomText)</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomEntry.html" title="class in org.apache.wink.common.model.atom">AtomEntry</A>
<DD>Sets the value of summary.
<DT><A HREF="./org/apache/wink/common/model/synd/SyndEntry.html#setSummary(org.apache.wink.common.model.synd.SyndText)"><B>setSummary(SyndText)</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndEntry.html" title="class in org.apache.wink.common.model.synd">SyndEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Prop.html#setSupportedlock(org.apache.wink.webdav.model.Supportedlock)"><B>setSupportedlock(Supportedlock)</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Prop.html" title="class in org.apache.wink.webdav.model">Prop</A>
<DD>Sets the value of the supportedlock property.
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html#setSyndicationRight(java.lang.String)"><B>setSyndicationRight(String)</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchDescription</A>
<DD>Sets the value of the syndicationRight property.
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html#setTags(java.lang.String)"><B>setTags(String)</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchDescription</A>
<DD>Sets the value of the tags property.
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchUrl.html#setTemplate(java.lang.String)"><B>setTemplate(String)</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchUrl.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchUrl</A>
<DD>Sets the value of the template property.
<DT><A HREF="./org/apache/wink/common/categories/Categories.html#setTemplateParameters(javax.ws.rs.core.MultivaluedMap)"><B>setTemplateParameters(MultivaluedMap&lt;String, String&gt;)</B></A> - 
Method in class org.apache.wink.common.categories.<A HREF="./org/apache/wink/common/categories/Categories.html" title="class in org.apache.wink.common.categories">Categories</A>
<DD>Set Uri Template Variables
<DT><A HREF="./org/apache/wink/common/model/atom/AtomCategory.html#setTerm(java.lang.String)"><B>setTerm(String)</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomCategory.html" title="class in org.apache.wink.common.model.atom">AtomCategory</A>
<DD>Sets the value of term.
<DT><A HREF="./org/apache/wink/common/model/synd/SyndCategory.html#setTerm(java.lang.String)"><B>setTerm(String)</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndCategory.html" title="class in org.apache.wink.common.model.synd">SyndCategory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/rss/RssChannel.html#setTextInput(org.apache.wink.common.model.rss.RssTextInput)"><B>setTextInput(RssTextInput)</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssChannel.html" title="class in org.apache.wink.common.model.rss">RssChannel</A>
<DD>Sets the value of the textInput property.
<DT><A HREF="./org/apache/wink/webdav/model/Activelock.html#setTimeout(java.lang.String)"><B>setTimeout(String)</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Activelock.html" title="class in org.apache.wink.webdav.model">Activelock</A>
<DD>Sets the value of the timeout property.
<DT><A HREF="./org/apache/wink/common/model/app/AppCollection.html#setTitle(org.apache.wink.common.model.atom.AtomText)"><B>setTitle(AtomText)</B></A> - 
Method in class org.apache.wink.common.model.app.<A HREF="./org/apache/wink/common/model/app/AppCollection.html" title="class in org.apache.wink.common.model.app">AppCollection</A>
<DD>Sets the value of title.
<DT><A HREF="./org/apache/wink/common/model/app/AppWorkspace.html#setTitle(org.apache.wink.common.model.atom.AtomText)"><B>setTitle(AtomText)</B></A> - 
Method in class org.apache.wink.common.model.app.<A HREF="./org/apache/wink/common/model/app/AppWorkspace.html" title="class in org.apache.wink.common.model.app">AppWorkspace</A>
<DD>Sets the value of title.
<DT><A HREF="./org/apache/wink/common/model/atom/AtomEntry.html#setTitle(org.apache.wink.common.model.atom.AtomText)"><B>setTitle(AtomText)</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomEntry.html" title="class in org.apache.wink.common.model.atom">AtomEntry</A>
<DD>Sets the value of title.
<DT><A HREF="./org/apache/wink/common/model/atom/AtomFeed.html#setTitle(org.apache.wink.common.model.atom.AtomText)"><B>setTitle(AtomText)</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomFeed.html" title="class in org.apache.wink.common.model.atom">AtomFeed</A>
<DD>Sets the value of title.
<DT><A HREF="./org/apache/wink/common/model/atom/AtomLink.html#setTitle(java.lang.String)"><B>setTitle(String)</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomLink.html" title="class in org.apache.wink.common.model.atom">AtomLink</A>
<DD>Sets the value of title.
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchQuery.html#setTitle(java.lang.String)"><B>setTitle(String)</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchQuery.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchQuery</A>
<DD>Sets the value of the title property.
<DT><A HREF="./org/apache/wink/common/model/rss/RssChannel.html#setTitle(java.lang.String)"><B>setTitle(String)</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssChannel.html" title="class in org.apache.wink.common.model.rss">RssChannel</A>
<DD>Sets the value of the title property.
<DT><A HREF="./org/apache/wink/common/model/rss/RssImage.html#setTitle(java.lang.String)"><B>setTitle(String)</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssImage.html" title="class in org.apache.wink.common.model.rss">RssImage</A>
<DD>Sets the value of the title property.
<DT><A HREF="./org/apache/wink/common/model/rss/RssItem.html#setTitle(java.lang.String)"><B>setTitle(String)</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssItem.html" title="class in org.apache.wink.common.model.rss">RssItem</A>
<DD>Sets the value of the title property.
<DT><A HREF="./org/apache/wink/common/model/rss/RssTextInput.html#setTitle(java.lang.String)"><B>setTitle(String)</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssTextInput.html" title="class in org.apache.wink.common.model.rss">RssTextInput</A>
<DD>Sets the value of the title property.
<DT><A HREF="./org/apache/wink/common/model/synd/SyndBase.html#setTitle(org.apache.wink.common.model.synd.SyndText)"><B>setTitle(SyndText)</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndBase.html" title="class in org.apache.wink.common.model.synd">SyndBase</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/synd/SyndLink.html#setTitle(java.lang.String)"><B>setTitle(String)</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndLink.html" title="class in org.apache.wink.common.model.synd">SyndLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Doc.html#setTitle(java.lang.String)"><B>setTitle(String)</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Doc.html" title="class in org.apache.wink.common.model.wadl">Doc</A>
<DD>Sets the value of the title property.
<DT><A HREF="./org/apache/wink/common/model/atom/AtomFeed.html#setTotalResults(long)"><B>setTotalResults(long)</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomFeed.html" title="class in org.apache.wink.common.model.atom">AtomFeed</A>
<DD>Sets the value of opensearch totalResults.
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchQuery.html#setTotalResults(java.math.BigInteger)"><B>setTotalResults(BigInteger)</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchQuery.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchQuery</A>
<DD>Sets the value of the totalResults property.
<DT><A HREF="./org/apache/wink/common/model/synd/SyndFeed.html#setTotalResults(long)"><B>setTotalResults(long)</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndFeed.html" title="class in org.apache.wink.common.model.synd">SyndFeed</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/rss/RssChannel.html#setTtl(java.lang.Integer)"><B>setTtl(Integer)</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssChannel.html" title="class in org.apache.wink.common.model.rss">RssChannel</A>
<DD>Sets the value of the ttl property.
<DT><A HREF="./org/apache/wink/common/model/atom/AtomContent.html#setType(java.lang.String)"><B>setType(String)</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomContent.html" title="class in org.apache.wink.common.model.atom">AtomContent</A>
<DD>Sets the value of type.
<DT><A HREF="./org/apache/wink/common/model/atom/AtomLink.html#setType(java.lang.String)"><B>setType(String)</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomLink.html" title="class in org.apache.wink.common.model.atom">AtomLink</A>
<DD>Sets the value of type.
<DT><A HREF="./org/apache/wink/common/model/atom/AtomText.html#setType(org.apache.wink.common.model.atom.AtomTextType)"><B>setType(AtomTextType)</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomText.html" title="class in org.apache.wink.common.model.atom">AtomText</A>
<DD>Sets the value of type.
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchImage.html#setType(java.lang.String)"><B>setType(String)</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchImage.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchImage</A>
<DD>Sets the value of the type property.
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchUrl.html#setType(java.lang.String)"><B>setType(String)</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchUrl.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchUrl</A>
<DD>Sets the value of the type property.
<DT><A HREF="./org/apache/wink/common/model/rss/RssEnclosure.html#setType(java.lang.String)"><B>setType(String)</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssEnclosure.html" title="class in org.apache.wink.common.model.rss">RssEnclosure</A>
<DD>Sets the value of the type property.
<DT><A HREF="./org/apache/wink/common/model/synd/SyndContent.html#setType(java.lang.String)"><B>setType(String)</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndContent.html" title="class in org.apache.wink.common.model.synd">SyndContent</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/synd/SyndLink.html#setType(java.lang.String)"><B>setType(String)</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndLink.html" title="class in org.apache.wink.common.model.synd">SyndLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/synd/SyndText.html#setType(org.apache.wink.common.model.synd.SyndTextType)"><B>setType(SyndTextType)</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndText.html" title="class in org.apache.wink.common.model.synd">SyndText</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Param.html#setType(javax.xml.namespace.QName)"><B>setType(QName)</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Param.html" title="class in org.apache.wink.common.model.wadl">Param</A>
<DD>Sets the value of the type property.
<DT><A HREF="./org/apache/wink/client/BaseTest.html#setUp()"><B>setUp()</B></A> - 
Method in class org.apache.wink.client.<A HREF="./org/apache/wink/client/BaseTest.html" title="class in org.apache.wink.client">BaseTest</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomEntry.html#setUpdated(javax.xml.datatype.XMLGregorianCalendar)"><B>setUpdated(XMLGregorianCalendar)</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomEntry.html" title="class in org.apache.wink.common.model.atom">AtomEntry</A>
<DD>Sets the value of updated.
<DT><A HREF="./org/apache/wink/common/model/atom/AtomEntry.html#setUpdated(long)"><B>setUpdated(long)</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomEntry.html" title="class in org.apache.wink.common.model.atom">AtomEntry</A>
<DD>Sets the value of updated.
<DT><A HREF="./org/apache/wink/common/model/atom/AtomEntry.html#setUpdated(java.util.Date)"><B>setUpdated(Date)</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomEntry.html" title="class in org.apache.wink.common.model.atom">AtomEntry</A>
<DD>Sets the value of updated.
<DT><A HREF="./org/apache/wink/common/model/atom/AtomFeed.html#setUpdated(javax.xml.datatype.XMLGregorianCalendar)"><B>setUpdated(XMLGregorianCalendar)</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomFeed.html" title="class in org.apache.wink.common.model.atom">AtomFeed</A>
<DD>Sets the value of updated.
<DT><A HREF="./org/apache/wink/common/model/atom/AtomFeed.html#setUpdated(long)"><B>setUpdated(long)</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomFeed.html" title="class in org.apache.wink.common.model.atom">AtomFeed</A>
<DD>Sets the value of updated.
<DT><A HREF="./org/apache/wink/common/model/atom/AtomFeed.html#setUpdated(java.util.Date)"><B>setUpdated(Date)</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomFeed.html" title="class in org.apache.wink.common.model.atom">AtomFeed</A>
<DD>Sets the value of updated.
<DT><A HREF="./org/apache/wink/common/model/synd/SyndBase.html#setUpdated(java.util.Date)"><B>setUpdated(Date)</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndBase.html" title="class in org.apache.wink.common.model.synd">SyndBase</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/ClientRequest.html#setURI(java.net.URI)"><B>setURI(URI)</B></A> - 
Method in interface org.apache.wink.client.<A HREF="./org/apache/wink/client/ClientRequest.html" title="interface in org.apache.wink.client">ClientRequest</A>
<DD>Set the uri of the request
<DT><A HREF="./org/apache/wink/common/model/atom/AtomGenerator.html#setUri(java.lang.String)"><B>setUri(String)</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomGenerator.html" title="class in org.apache.wink.common.model.atom">AtomGenerator</A>
<DD>Sets the value of uri.
<DT><A HREF="./org/apache/wink/common/model/atom/AtomPerson.html#setUri(java.lang.String)"><B>setUri(String)</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomPerson.html" title="class in org.apache.wink.common.model.atom">AtomPerson</A>
<DD>Sets the value of uri.
<DT><A HREF="./org/apache/wink/common/model/synd/SyndGenerator.html#setUri(java.lang.String)"><B>setUri(String)</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndGenerator.html" title="class in org.apache.wink.common.model.synd">SyndGenerator</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/synd/SyndPerson.html#setUri(java.lang.String)"><B>setUri(String)</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndPerson.html" title="class in org.apache.wink.common.model.synd">SyndPerson</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/rss/RssEnclosure.html#setUrl(java.lang.String)"><B>setUrl(String)</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssEnclosure.html" title="class in org.apache.wink.common.model.rss">RssEnclosure</A>
<DD>Sets the value of the url property.
<DT><A HREF="./org/apache/wink/common/model/rss/RssImage.html#setUrl(java.lang.String)"><B>setUrl(String)</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssImage.html" title="class in org.apache.wink.common.model.rss">RssImage</A>
<DD>Sets the value of the url property.
<DT><A HREF="./org/apache/wink/common/model/rss/RssSource.html#setUrl(java.lang.String)"><B>setUrl(String)</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssSource.html" title="class in org.apache.wink.common.model.rss">RssSource</A>
<DD>Sets the value of the url property.
<DT><A HREF="./org/apache/wink/providers/jettison/JettisonJAXBElementProvider.html#setUseAsReader(boolean)"><B>setUseAsReader(boolean)</B></A> - 
Method in class org.apache.wink.providers.jettison.<A HREF="./org/apache/wink/providers/jettison/JettisonJAXBElementProvider.html" title="class in org.apache.wink.providers.jettison">JettisonJAXBElementProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/providers/jettison/JettisonJAXBProvider.html#setUseAsReader(boolean)"><B>setUseAsReader(boolean)</B></A> - 
Method in class org.apache.wink.providers.jettison.<A HREF="./org/apache/wink/providers/jettison/JettisonJAXBProvider.html" title="class in org.apache.wink.providers.jettison">JettisonJAXBProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/providers/jettison/JettisonJAXBElementProvider.html#setUseAsWriter(boolean)"><B>setUseAsWriter(boolean)</B></A> - 
Method in class org.apache.wink.providers.jettison.<A HREF="./org/apache/wink/providers/jettison/JettisonJAXBElementProvider.html" title="class in org.apache.wink.providers.jettison">JettisonJAXBElementProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/providers/jettison/JettisonJAXBProvider.html#setUseAsWriter(boolean)"><B>setUseAsWriter(boolean)</B></A> - 
Method in class org.apache.wink.providers.jettison.<A HREF="./org/apache/wink/providers/jettison/JettisonJAXBProvider.html" title="class in org.apache.wink.providers.jettison">JettisonJAXBProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/handlers/AbstractAuthSecurityHandler.html#setUserName(java.lang.String)"><B>setUserName(String)</B></A> - 
Method in class org.apache.wink.client.handlers.<A HREF="./org/apache/wink/client/handlers/AbstractAuthSecurityHandler.html" title="class in org.apache.wink.client.handlers">AbstractAuthSecurityHandler</A>
<DD>Sets the username to use.
<DT><A HREF="./org/apache/wink/common/model/atom/AtomCommonAttributesSimpleContent.html#setValue(java.lang.String)"><B>setValue(String)</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomCommonAttributesSimpleContent.html" title="class in org.apache.wink.common.model.atom">AtomCommonAttributesSimpleContent</A>
<DD>Sets the value of value.
<DT><A HREF="./org/apache/wink/common/model/atom/AtomContent.html#setValue(java.lang.Object)"><B>setValue(Object)</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomContent.html" title="class in org.apache.wink.common.model.atom">AtomContent</A>
<DD>Sets the content of the "atom:content" element as a String.
<DT><A HREF="./org/apache/wink/common/model/atom/AtomText.html#setValue(java.lang.Object)"><B>setValue(Object)</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomText.html" title="class in org.apache.wink.common.model.atom">AtomText</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchImage.html#setValue(java.lang.String)"><B>setValue(String)</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchImage.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchImage</A>
<DD>Sets the value of the value property.
<DT><A HREF="./org/apache/wink/common/model/synd/SyndSimpleContent.html#setValue(java.lang.Object)"><B>setValue(Object)</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndSimpleContent.html" title="class in org.apache.wink.common.model.synd">SyndSimpleContent</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Option.html#setValue(java.lang.String)"><B>setValue(String)</B></A> - 
Method in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Option.html" title="class in org.apache.wink.common.model.wadl">Option</A>
<DD>Sets the value of the value property.
<DT><A HREF="./org/apache/wink/webdav/model/Creationdate.html#setValue(java.lang.String)"><B>setValue(String)</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Creationdate.html" title="class in org.apache.wink.webdav.model">Creationdate</A>
<DD>Sets the value.
<DT><A HREF="./org/apache/wink/webdav/model/Creationdate.html#setValue(java.util.Date)"><B>setValue(Date)</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Creationdate.html" title="class in org.apache.wink.webdav.model">Creationdate</A>
<DD>Sets the value.
<DT><A HREF="./org/apache/wink/webdav/model/Displayname.html#setValue(java.lang.String)"><B>setValue(String)</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Displayname.html" title="class in org.apache.wink.webdav.model">Displayname</A>
<DD>Sets the value.
<DT><A HREF="./org/apache/wink/webdav/model/Getcontentlanguage.html#setValue(java.lang.String)"><B>setValue(String)</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Getcontentlanguage.html" title="class in org.apache.wink.webdav.model">Getcontentlanguage</A>
<DD>Sets the value.
<DT><A HREF="./org/apache/wink/webdav/model/Getcontentlength.html#setValue(java.lang.String)"><B>setValue(String)</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Getcontentlength.html" title="class in org.apache.wink.webdav.model">Getcontentlength</A>
<DD>Sets the value.
<DT><A HREF="./org/apache/wink/webdav/model/Getcontenttype.html#setValue(java.lang.String)"><B>setValue(String)</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Getcontenttype.html" title="class in org.apache.wink.webdav.model">Getcontenttype</A>
<DD>Sets the value.
<DT><A HREF="./org/apache/wink/webdav/model/Getetag.html#setValue(java.lang.String)"><B>setValue(String)</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Getetag.html" title="class in org.apache.wink.webdav.model">Getetag</A>
<DD>Sets the value.
<DT><A HREF="./org/apache/wink/webdav/model/Getlastmodified.html#setValue(java.lang.String)"><B>setValue(String)</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Getlastmodified.html" title="class in org.apache.wink.webdav.model">Getlastmodified</A>
<DD>Sets the value.
<DT><A HREF="./org/apache/wink/webdav/model/Getlastmodified.html#setValue(java.util.Date)"><B>setValue(Date)</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Getlastmodified.html" title="class in org.apache.wink.webdav.model">Getlastmodified</A>
<DD>Sets the value.
<DT><A HREF="./org/apache/wink/common/model/atom/AtomGenerator.html#setVersion(java.lang.String)"><B>setVersion(String)</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomGenerator.html" title="class in org.apache.wink.common.model.atom">AtomGenerator</A>
<DD>Sets the value of version.
<DT><A HREF="./org/apache/wink/common/model/rss/RssFeed.html#setVersion(java.lang.String)"><B>setVersion(String)</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssFeed.html" title="class in org.apache.wink.common.model.rss">RssFeed</A>
<DD>Sets the value of the version property.
<DT><A HREF="./org/apache/wink/common/model/synd/SyndGenerator.html#setVersion(java.lang.String)"><B>setVersion(String)</B></A> - 
Method in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndGenerator.html" title="class in org.apache.wink.common.model.synd">SyndGenerator</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/rss/RssChannel.html#setWebMaster(java.lang.String)"><B>setWebMaster(String)</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssChannel.html" title="class in org.apache.wink.common.model.rss">RssChannel</A>
<DD>Sets the value of the webMaster property.
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchImage.html#setWidth(java.math.BigInteger)"><B>setWidth(BigInteger)</B></A> - 
Method in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchImage.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchImage</A>
<DD>Sets the value of the width property.
<DT><A HREF="./org/apache/wink/common/model/rss/RssImage.html#setWidth(java.lang.Integer)"><B>setWidth(Integer)</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssImage.html" title="class in org.apache.wink.common.model.rss">RssImage</A>
<DD>Sets the value of the width property.
<DT><A HREF="./org/apache/wink/common/AbstractDynamicResource.html#setWorkspaceTitle(java.lang.String)"><B>setWorkspaceTitle(String)</B></A> - 
Method in class org.apache.wink.common.<A HREF="./org/apache/wink/common/AbstractDynamicResource.html" title="class in org.apache.wink.common">AbstractDynamicResource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Locktype.html#setWrite(org.apache.wink.webdav.model.Write)"><B>setWrite(Write)</B></A> - 
Method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Locktype.html" title="class in org.apache.wink.webdav.model">Locktype</A>
<DD>Sets the value of the write property.
<DT><A HREF="./org/apache/wink/webdav/model/Lockscope.html#shared"><B>shared</B></A> - 
Variable in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Lockscope.html" title="class in org.apache.wink.webdav.model">Lockscope</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Shared.html" title="class in org.apache.wink.webdav.model"><B>Shared</B></A> - Class in <A HREF="./org/apache/wink/webdav/model/package-summary.html">org.apache.wink.webdav.model</A><DD>The <code>shared</code> XML element per the WebDAV specification [RFC 4918]<DT><A HREF="./org/apache/wink/webdav/model/Shared.html#Shared()"><B>Shared()</B></A> - 
Constructor for class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Shared.html" title="class in org.apache.wink.webdav.model">Shared</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html#shortName"><B>shortName</B></A> - 
Variable in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchDescription</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/server/utils/SingleLinkBuilder.html" title="interface in org.apache.wink.server.utils"><B>SingleLinkBuilder</B></A> - Interface in <A HREF="./org/apache/wink/server/utils/package-summary.html">org.apache.wink.server.utils</A><DD>A builder for generating a single link to a resource.<DT><A HREF="./org/apache/wink/common/model/rss/RssChannel.html#skipDays"><B>skipDays</B></A> - 
Variable in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssChannel.html" title="class in org.apache.wink.common.model.rss">RssChannel</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/rss/RssChannel.html#skipHours"><B>skipHours</B></A> - 
Variable in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssChannel.html" title="class in org.apache.wink.common.model.rss">RssChannel</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/http/HttpHeadersEx.html#SLUG"><B>SLUG</B></A> - 
Static variable in class org.apache.wink.common.http.<A HREF="./org/apache/wink/common/http/HttpHeadersEx.html" title="class in org.apache.wink.common.http">HttpHeadersEx</A>
<DD>Non RFC 2616 - Atom Publishing Protocol
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONObjectDelegate.html#sortedKeys()"><B>sortedKeys()</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONObjectDelegate.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONObjectDelegate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONObject.html#sortedKeys()"><B>sortedKeys()</B></A> - 
Method in interface org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONObject.html" title="interface in org.apache.wink.json4j.compat">JSONObject</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/JSONObject.html#sortedKeys()"><B>sortedKeys()</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONObject.html" title="class in org.apache.wink.json4j">JSONObject</A>
<DD>Utility function that returns an iterator of all the keys (attributes) of this JSONObject sorted in lexicographic manner (String.compareTo).
<DT><A HREF="./org/apache/wink/common/model/rss/RssItem.html#source"><B>source</B></A> - 
Variable in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssItem.html" title="class in org.apache.wink.common.model.rss">RssItem</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Source.html" title="class in org.apache.wink.webdav.model"><B>Source</B></A> - Class in <A HREF="./org/apache/wink/webdav/model/package-summary.html">org.apache.wink.webdav.model</A><DD>The <code>source</code> Property per the WebDAV specification [RFC 4918]<DT><A HREF="./org/apache/wink/webdav/model/Source.html#Source()"><B>Source()</B></A> - 
Constructor for class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Source.html" title="class in org.apache.wink.webdav.model">Source</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomContent.html#src"><B>src</B></A> - 
Variable in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomContent.html" title="class in org.apache.wink.common.model.atom">AtomContent</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Link.html#src"><B>src</B></A> - 
Variable in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Link.html" title="class in org.apache.wink.webdav.model">Link</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomFeed.html#startIndex"><B>startIndex</B></A> - 
Variable in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomFeed.html" title="class in org.apache.wink.common.model.atom">AtomFeed</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchQuery.html#startIndex"><B>startIndex</B></A> - 
Variable in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchQuery.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchQuery</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchQuery.html#startPage"><B>startPage</B></A> - 
Variable in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchQuery.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchQuery</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/MockHttpServer.html#startServer()"><B>startServer()</B></A> - 
Method in class org.apache.wink.client.<A HREF="./org/apache/wink/client/MockHttpServer.html" title="class in org.apache.wink.client">MockHttpServer</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Response.html#status"><B>status</B></A> - 
Variable in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Response.html" title="class in org.apache.wink.common.model.wadl">Response</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Propstat.html#status"><B>status</B></A> - 
Variable in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Propstat.html" title="class in org.apache.wink.webdav.model">Propstat</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Response.html#status"><B>status</B></A> - 
Variable in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Response.html" title="class in org.apache.wink.webdav.model">Response</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/MockHttpServer.html#stopServer()"><B>stopServer()</B></A> - 
Method in class org.apache.wink.client.<A HREF="./org/apache/wink/client/MockHttpServer.html" title="class in org.apache.wink.client">MockHttpServer</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Param.html#style"><B>style</B></A> - 
Variable in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Param.html" title="class in org.apache.wink.common.model.wadl">Param</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/server/utils/BaseLinksBuilder.html#subResource(java.lang.String)"><B>subResource(String)</B></A> - 
Method in interface org.apache.wink.server.utils.<A HREF="./org/apache/wink/server/utils/BaseLinksBuilder.html" title="interface in org.apache.wink.server.utils">BaseLinksBuilder</A>
<DD>Set the sub-resource path that the generated links should link to,
 relative to the resource set in the builder.
<DT><A HREF="./org/apache/wink/common/model/atom/AtomFeed.html#subtitle"><B>subtitle</B></A> - 
Variable in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomFeed.html" title="class in org.apache.wink.common.model.atom">AtomFeed</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomEntry.html#summary"><B>summary</B></A> - 
Variable in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomEntry.html" title="class in org.apache.wink.common.model.atom">AtomEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/ClientConfig.html#supportDTDExpansion(boolean)"><B>supportDTDExpansion(boolean)</B></A> - 
Method in class org.apache.wink.client.<A HREF="./org/apache/wink/client/ClientConfig.html" title="class in org.apache.wink.client">ClientConfig</A>
<DD>Convenience method to set the wink.supportDTDExpansion property
<DT><A HREF="./org/apache/wink/webdav/model/Prop.html#supportedlock"><B>supportedlock</B></A> - 
Variable in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Prop.html" title="class in org.apache.wink.webdav.model">Prop</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Supportedlock.html" title="class in org.apache.wink.webdav.model"><B>Supportedlock</B></A> - Class in <A HREF="./org/apache/wink/webdav/model/package-summary.html">org.apache.wink.webdav.model</A><DD>The <code>supportedlock</code> Property per the WebDAV specification [RFC
 4918]<DT><A HREF="./org/apache/wink/webdav/model/Supportedlock.html#Supportedlock()"><B>Supportedlock()</B></A> - 
Constructor for class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Supportedlock.html" title="class in org.apache.wink.webdav.model">Supportedlock</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/http/HttpStatus.html#SWITCHING_PROTOCOLS"><B>SWITCHING_PROTOCOLS</B></A> - 
Static variable in class org.apache.wink.common.http.<A HREF="./org/apache/wink/common/http/HttpStatus.html" title="class in org.apache.wink.common.http">HttpStatus</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/synd/SyndBase.html" title="class in org.apache.wink.common.model.synd"><B>SyndBase</B></A> - Class in <A HREF="./org/apache/wink/common/model/synd/package-summary.html">org.apache.wink.common.model.synd</A><DD>&nbsp;<DT><A HREF="./org/apache/wink/common/model/synd/SyndBase.html#SyndBase()"><B>SyndBase()</B></A> - 
Constructor for class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndBase.html" title="class in org.apache.wink.common.model.synd">SyndBase</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/synd/SyndBase.html#SyndBase(java.lang.String, org.apache.wink.common.model.synd.SyndText, java.util.Date)"><B>SyndBase(String, SyndText, Date)</B></A> - 
Constructor for class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndBase.html" title="class in org.apache.wink.common.model.synd">SyndBase</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/synd/SyndBase.html#SyndBase(org.apache.wink.common.model.synd.SyndBase)"><B>SyndBase(SyndBase)</B></A> - 
Constructor for class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndBase.html" title="class in org.apache.wink.common.model.synd">SyndBase</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/synd/SyndCategory.html" title="class in org.apache.wink.common.model.synd"><B>SyndCategory</B></A> - Class in <A HREF="./org/apache/wink/common/model/synd/package-summary.html">org.apache.wink.common.model.synd</A><DD>&nbsp;<DT><A HREF="./org/apache/wink/common/model/synd/SyndCategory.html#SyndCategory()"><B>SyndCategory()</B></A> - 
Constructor for class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndCategory.html" title="class in org.apache.wink.common.model.synd">SyndCategory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/synd/SyndCategory.html#SyndCategory(java.lang.String)"><B>SyndCategory(String)</B></A> - 
Constructor for class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndCategory.html" title="class in org.apache.wink.common.model.synd">SyndCategory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/synd/SyndCategory.html#SyndCategory(java.lang.String, java.lang.String, java.lang.String)"><B>SyndCategory(String, String, String)</B></A> - 
Constructor for class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndCategory.html" title="class in org.apache.wink.common.model.synd">SyndCategory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/synd/SyndCategory.html#SyndCategory(org.apache.wink.common.model.synd.SyndCategory)"><B>SyndCategory(SyndCategory)</B></A> - 
Constructor for class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndCategory.html" title="class in org.apache.wink.common.model.synd">SyndCategory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/synd/SyndCommonAttributes.html" title="class in org.apache.wink.common.model.synd"><B>SyndCommonAttributes</B></A> - Class in <A HREF="./org/apache/wink/common/model/synd/package-summary.html">org.apache.wink.common.model.synd</A><DD>&nbsp;<DT><A HREF="./org/apache/wink/common/model/synd/SyndCommonAttributes.html#SyndCommonAttributes()"><B>SyndCommonAttributes()</B></A> - 
Constructor for class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndCommonAttributes.html" title="class in org.apache.wink.common.model.synd">SyndCommonAttributes</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/synd/SyndCommonAttributes.html#SyndCommonAttributes(org.apache.wink.common.model.synd.SyndCommonAttributes)"><B>SyndCommonAttributes(SyndCommonAttributes)</B></A> - 
Constructor for class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndCommonAttributes.html" title="class in org.apache.wink.common.model.synd">SyndCommonAttributes</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/synd/SyndContent.html" title="class in org.apache.wink.common.model.synd"><B>SyndContent</B></A> - Class in <A HREF="./org/apache/wink/common/model/synd/package-summary.html">org.apache.wink.common.model.synd</A><DD>&nbsp;<DT><A HREF="./org/apache/wink/common/model/synd/SyndContent.html#SyndContent()"><B>SyndContent()</B></A> - 
Constructor for class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndContent.html" title="class in org.apache.wink.common.model.synd">SyndContent</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/synd/SyndContent.html#SyndContent(java.lang.Object)"><B>SyndContent(Object)</B></A> - 
Constructor for class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndContent.html" title="class in org.apache.wink.common.model.synd">SyndContent</A>
<DD>Creates a new SyndContent with the specified value and 'text' type
 attribute.
<DT><A HREF="./org/apache/wink/common/model/synd/SyndContent.html#SyndContent(java.lang.Object, java.lang.String, boolean)"><B>SyndContent(Object, String, boolean)</B></A> - 
Constructor for class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndContent.html" title="class in org.apache.wink.common.model.synd">SyndContent</A>
<DD>Creates a new SyndContent with the specified value or src, and type
 attribute.
<DT><A HREF="./org/apache/wink/common/model/synd/SyndContent.html#SyndContent(java.lang.Object, java.lang.String)"><B>SyndContent(Object, String)</B></A> - 
Constructor for class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndContent.html" title="class in org.apache.wink.common.model.synd">SyndContent</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/synd/SyndContent.html#SyndContent(org.apache.wink.common.model.synd.SyndContent)"><B>SyndContent(SyndContent)</B></A> - 
Constructor for class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndContent.html" title="class in org.apache.wink.common.model.synd">SyndContent</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/synd/SyndEntry.html" title="class in org.apache.wink.common.model.synd"><B>SyndEntry</B></A> - Class in <A HREF="./org/apache/wink/common/model/synd/package-summary.html">org.apache.wink.common.model.synd</A><DD>&nbsp;<DT><A HREF="./org/apache/wink/common/model/synd/SyndEntry.html#SyndEntry()"><B>SyndEntry()</B></A> - 
Constructor for class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndEntry.html" title="class in org.apache.wink.common.model.synd">SyndEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/synd/SyndEntry.html#SyndEntry(java.lang.String, java.lang.String)"><B>SyndEntry(String, String)</B></A> - 
Constructor for class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndEntry.html" title="class in org.apache.wink.common.model.synd">SyndEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/synd/SyndEntry.html#SyndEntry(org.apache.wink.common.model.synd.SyndText, java.lang.String)"><B>SyndEntry(SyndText, String)</B></A> - 
Constructor for class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndEntry.html" title="class in org.apache.wink.common.model.synd">SyndEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/synd/SyndEntry.html#SyndEntry(java.lang.String, java.lang.String, java.util.Date)"><B>SyndEntry(String, String, Date)</B></A> - 
Constructor for class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndEntry.html" title="class in org.apache.wink.common.model.synd">SyndEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/synd/SyndEntry.html#SyndEntry(org.apache.wink.common.model.synd.SyndText, java.lang.String, java.util.Date)"><B>SyndEntry(SyndText, String, Date)</B></A> - 
Constructor for class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndEntry.html" title="class in org.apache.wink.common.model.synd">SyndEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/synd/SyndEntry.html#SyndEntry(org.apache.wink.common.model.synd.SyndEntry)"><B>SyndEntry(SyndEntry)</B></A> - 
Constructor for class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndEntry.html" title="class in org.apache.wink.common.model.synd">SyndEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/synd/SyndFeed.html" title="class in org.apache.wink.common.model.synd"><B>SyndFeed</B></A> - Class in <A HREF="./org/apache/wink/common/model/synd/package-summary.html">org.apache.wink.common.model.synd</A><DD>&nbsp;<DT><A HREF="./org/apache/wink/common/model/synd/SyndFeed.html#SyndFeed()"><B>SyndFeed()</B></A> - 
Constructor for class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndFeed.html" title="class in org.apache.wink.common.model.synd">SyndFeed</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/synd/SyndFeed.html#SyndFeed(java.lang.String, java.lang.String)"><B>SyndFeed(String, String)</B></A> - 
Constructor for class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndFeed.html" title="class in org.apache.wink.common.model.synd">SyndFeed</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/synd/SyndFeed.html#SyndFeed(org.apache.wink.common.model.synd.SyndText, java.lang.String)"><B>SyndFeed(SyndText, String)</B></A> - 
Constructor for class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndFeed.html" title="class in org.apache.wink.common.model.synd">SyndFeed</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/synd/SyndFeed.html#SyndFeed(java.lang.String, java.lang.String, java.util.Date)"><B>SyndFeed(String, String, Date)</B></A> - 
Constructor for class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndFeed.html" title="class in org.apache.wink.common.model.synd">SyndFeed</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/synd/SyndFeed.html#SyndFeed(org.apache.wink.common.model.synd.SyndText, java.lang.String, java.util.Date)"><B>SyndFeed(SyndText, String, Date)</B></A> - 
Constructor for class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndFeed.html" title="class in org.apache.wink.common.model.synd">SyndFeed</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/synd/SyndFeed.html#SyndFeed(org.apache.wink.common.model.synd.SyndFeed)"><B>SyndFeed(SyndFeed)</B></A> - 
Constructor for class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndFeed.html" title="class in org.apache.wink.common.model.synd">SyndFeed</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/synd/SyndGenerator.html" title="class in org.apache.wink.common.model.synd"><B>SyndGenerator</B></A> - Class in <A HREF="./org/apache/wink/common/model/synd/package-summary.html">org.apache.wink.common.model.synd</A><DD>&nbsp;<DT><A HREF="./org/apache/wink/common/model/synd/SyndGenerator.html#SyndGenerator()"><B>SyndGenerator()</B></A> - 
Constructor for class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndGenerator.html" title="class in org.apache.wink.common.model.synd">SyndGenerator</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/synd/SyndGenerator.html#SyndGenerator(java.lang.String)"><B>SyndGenerator(String)</B></A> - 
Constructor for class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndGenerator.html" title="class in org.apache.wink.common.model.synd">SyndGenerator</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/synd/SyndGenerator.html#SyndGenerator(java.lang.String, java.lang.String, java.lang.String)"><B>SyndGenerator(String, String, String)</B></A> - 
Constructor for class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndGenerator.html" title="class in org.apache.wink.common.model.synd">SyndGenerator</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/synd/SyndGenerator.html#SyndGenerator(org.apache.wink.common.model.synd.SyndGenerator)"><B>SyndGenerator(SyndGenerator)</B></A> - 
Constructor for class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndGenerator.html" title="class in org.apache.wink.common.model.synd">SyndGenerator</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html#syndicationRight"><B>syndicationRight</B></A> - 
Variable in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchDescription</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/synd/SyndLink.html" title="class in org.apache.wink.common.model.synd"><B>SyndLink</B></A> - Class in <A HREF="./org/apache/wink/common/model/synd/package-summary.html">org.apache.wink.common.model.synd</A><DD>&nbsp;<DT><A HREF="./org/apache/wink/common/model/synd/SyndLink.html#SyndLink()"><B>SyndLink()</B></A> - 
Constructor for class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndLink.html" title="class in org.apache.wink.common.model.synd">SyndLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/synd/SyndLink.html#SyndLink(java.lang.String, java.lang.String, java.lang.String)"><B>SyndLink(String, String, String)</B></A> - 
Constructor for class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndLink.html" title="class in org.apache.wink.common.model.synd">SyndLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/synd/SyndLink.html#SyndLink(java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String)"><B>SyndLink(String, String, String, String, String, String)</B></A> - 
Constructor for class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndLink.html" title="class in org.apache.wink.common.model.synd">SyndLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/synd/SyndLink.html#SyndLink(org.apache.wink.common.model.synd.SyndLink)"><B>SyndLink(SyndLink)</B></A> - 
Constructor for class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndLink.html" title="class in org.apache.wink.common.model.synd">SyndLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/synd/SyndPerson.html" title="class in org.apache.wink.common.model.synd"><B>SyndPerson</B></A> - Class in <A HREF="./org/apache/wink/common/model/synd/package-summary.html">org.apache.wink.common.model.synd</A><DD>&nbsp;<DT><A HREF="./org/apache/wink/common/model/synd/SyndPerson.html#SyndPerson()"><B>SyndPerson()</B></A> - 
Constructor for class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndPerson.html" title="class in org.apache.wink.common.model.synd">SyndPerson</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/synd/SyndPerson.html#SyndPerson(java.lang.String)"><B>SyndPerson(String)</B></A> - 
Constructor for class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndPerson.html" title="class in org.apache.wink.common.model.synd">SyndPerson</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/synd/SyndPerson.html#SyndPerson(java.lang.String, java.lang.String, java.lang.String)"><B>SyndPerson(String, String, String)</B></A> - 
Constructor for class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndPerson.html" title="class in org.apache.wink.common.model.synd">SyndPerson</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/synd/SyndPerson.html#SyndPerson(org.apache.wink.common.model.synd.SyndPerson)"><B>SyndPerson(SyndPerson)</B></A> - 
Constructor for class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndPerson.html" title="class in org.apache.wink.common.model.synd">SyndPerson</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/synd/SyndSimpleContent.html" title="class in org.apache.wink.common.model.synd"><B>SyndSimpleContent</B></A> - Class in <A HREF="./org/apache/wink/common/model/synd/package-summary.html">org.apache.wink.common.model.synd</A><DD>&nbsp;<DT><A HREF="./org/apache/wink/common/model/synd/SyndSimpleContent.html#SyndSimpleContent()"><B>SyndSimpleContent()</B></A> - 
Constructor for class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndSimpleContent.html" title="class in org.apache.wink.common.model.synd">SyndSimpleContent</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/synd/SyndSimpleContent.html#SyndSimpleContent(java.lang.Object)"><B>SyndSimpleContent(Object)</B></A> - 
Constructor for class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndSimpleContent.html" title="class in org.apache.wink.common.model.synd">SyndSimpleContent</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/synd/SyndSimpleContent.html#SyndSimpleContent(java.lang.Object, java.lang.String)"><B>SyndSimpleContent(Object, String)</B></A> - 
Constructor for class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndSimpleContent.html" title="class in org.apache.wink.common.model.synd">SyndSimpleContent</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/synd/SyndSimpleContent.html#SyndSimpleContent(org.apache.wink.common.model.synd.SyndSimpleContent)"><B>SyndSimpleContent(SyndSimpleContent)</B></A> - 
Constructor for class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndSimpleContent.html" title="class in org.apache.wink.common.model.synd">SyndSimpleContent</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/synd/SyndText.html" title="class in org.apache.wink.common.model.synd"><B>SyndText</B></A> - Class in <A HREF="./org/apache/wink/common/model/synd/package-summary.html">org.apache.wink.common.model.synd</A><DD>&nbsp;<DT><A HREF="./org/apache/wink/common/model/synd/SyndText.html#SyndText()"><B>SyndText()</B></A> - 
Constructor for class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndText.html" title="class in org.apache.wink.common.model.synd">SyndText</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/synd/SyndText.html#SyndText(java.lang.String)"><B>SyndText(String)</B></A> - 
Constructor for class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndText.html" title="class in org.apache.wink.common.model.synd">SyndText</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/synd/SyndText.html#SyndText(java.lang.String, org.apache.wink.common.model.synd.SyndTextType)"><B>SyndText(String, SyndTextType)</B></A> - 
Constructor for class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndText.html" title="class in org.apache.wink.common.model.synd">SyndText</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/synd/SyndText.html#SyndText(org.apache.wink.common.model.synd.SyndText)"><B>SyndText(SyndText)</B></A> - 
Constructor for class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndText.html" title="class in org.apache.wink.common.model.synd">SyndText</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/synd/SyndTextType.html" title="enum in org.apache.wink.common.model.synd"><B>SyndTextType</B></A> - Enum in <A HREF="./org/apache/wink/common/model/synd/package-summary.html">org.apache.wink.common.model.synd</A><DD>An enum for specifying the type of a Text construct<DT><A HREF="./org/apache/wink/common/WinkApplication.html#SYSTEM_PRIORITY"><B>SYSTEM_PRIORITY</B></A> - 
Static variable in class org.apache.wink.common.<A HREF="./org/apache/wink/common/WinkApplication.html" title="class in org.apache.wink.common">WinkApplication</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/server/utils/SystemLinksBuilder.html" title="interface in org.apache.wink.server.utils"><B>SystemLinksBuilder</B></A> - Interface in <A HREF="./org/apache/wink/server/utils/package-summary.html">org.apache.wink.server.utils</A><DD>A builder for generating the system links of a resource.<DT><A HREF="./org/apache/wink/server/utils/SystemLinksBuilder.LinkType.html" title="enum in org.apache.wink.server.utils"><B>SystemLinksBuilder.LinkType</B></A> - Enum in <A HREF="./org/apache/wink/server/utils/package-summary.html">org.apache.wink.server.utils</A><DD>Types of system links</DL>
<HR>
<A NAME="_T_"><!-- --></A><H2>
<B>T</B></H2>
<DL>
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html#tags"><B>tags</B></A> - 
Variable in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchDescription</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/BaseTest.html#tearDown()"><B>tearDown()</B></A> - 
Method in class org.apache.wink.client.<A HREF="./org/apache/wink/client/BaseTest.html" title="class in org.apache.wink.client">BaseTest</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchUrl.html#template"><B>template</B></A> - 
Variable in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchUrl.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchUrl</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/http/HttpStatus.html#TEMPORARY_REDIRECT"><B>TEMPORARY_REDIRECT</B></A> - 
Static variable in class org.apache.wink.common.http.<A HREF="./org/apache/wink/common/http/HttpStatus.html" title="class in org.apache.wink.common.http">HttpStatus</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomCategory.html#term"><B>term</B></A> - 
Variable in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomCategory.html" title="class in org.apache.wink.common.model.atom">AtomCategory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/rss/RssChannel.html#textInput"><B>textInput</B></A> - 
Variable in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssChannel.html" title="class in org.apache.wink.common.model.rss">RssChannel</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/providers/thrift/WinkThriftProvider.html#THRIFT"><B>THRIFT</B></A> - 
Static variable in class org.apache.wink.providers.thrift.<A HREF="./org/apache/wink/providers/thrift/WinkThriftProvider.html" title="class in org.apache.wink.providers.thrift">WinkThriftProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/providers/thrift/WinkThriftProvider.html#THRIFT_TYPE"><B>THRIFT_TYPE</B></A> - 
Static variable in class org.apache.wink.providers.thrift.<A HREF="./org/apache/wink/providers/thrift/WinkThriftProvider.html" title="class in org.apache.wink.providers.thrift">WinkThriftProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Activelock.html#timeout"><B>timeout</B></A> - 
Variable in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Activelock.html" title="class in org.apache.wink.webdav.model">Activelock</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/WebDAVHeaders.html#TIMEOUT"><B>TIMEOUT</B></A> - 
Static variable in class org.apache.wink.webdav.<A HREF="./org/apache/wink/webdav/WebDAVHeaders.html" title="class in org.apache.wink.webdav">WebDAVHeaders</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/app/AppCollection.html#title"><B>title</B></A> - 
Variable in class org.apache.wink.common.model.app.<A HREF="./org/apache/wink/common/model/app/AppCollection.html" title="class in org.apache.wink.common.model.app">AppCollection</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/app/AppWorkspace.html#title"><B>title</B></A> - 
Variable in class org.apache.wink.common.model.app.<A HREF="./org/apache/wink/common/model/app/AppWorkspace.html" title="class in org.apache.wink.common.model.app">AppWorkspace</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomEntry.html#title"><B>title</B></A> - 
Variable in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomEntry.html" title="class in org.apache.wink.common.model.atom">AtomEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomFeed.html#title"><B>title</B></A> - 
Variable in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomFeed.html" title="class in org.apache.wink.common.model.atom">AtomFeed</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomLink.html#title"><B>title</B></A> - 
Variable in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomLink.html" title="class in org.apache.wink.common.model.atom">AtomLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchQuery.html#title"><B>title</B></A> - 
Variable in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchQuery.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchQuery</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/rss/RssChannel.html#title"><B>title</B></A> - 
Variable in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssChannel.html" title="class in org.apache.wink.common.model.rss">RssChannel</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/rss/RssImage.html#title"><B>title</B></A> - 
Variable in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssImage.html" title="class in org.apache.wink.common.model.rss">RssImage</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/rss/RssItem.html#title"><B>title</B></A> - 
Variable in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssItem.html" title="class in org.apache.wink.common.model.rss">RssItem</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/rss/RssTextInput.html#title"><B>title</B></A> - 
Variable in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssTextInput.html" title="class in org.apache.wink.common.model.rss">RssTextInput</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Doc.html#title"><B>title</B></A> - 
Variable in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Doc.html" title="class in org.apache.wink.common.model.wadl">Doc</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/utils/XML.html#toJson(java.io.InputStream, java.io.OutputStream)"><B>toJson(InputStream, OutputStream)</B></A> - 
Static method in class org.apache.wink.json4j.utils.<A HREF="./org/apache/wink/json4j/utils/XML.html" title="class in org.apache.wink.json4j.utils">XML</A>
<DD>Method to do the transform from an XML input stream to a JSON stream.
<DT><A HREF="./org/apache/wink/json4j/utils/XML.html#toJson(java.io.InputStream, java.io.OutputStream, boolean)"><B>toJson(InputStream, OutputStream, boolean)</B></A> - 
Static method in class org.apache.wink.json4j.utils.<A HREF="./org/apache/wink/json4j/utils/XML.html" title="class in org.apache.wink.json4j.utils">XML</A>
<DD>Method to do the transform from an XML input stream to a JSON stream.
<DT><A HREF="./org/apache/wink/json4j/utils/XML.html#toJson(java.io.InputStream)"><B>toJson(InputStream)</B></A> - 
Static method in class org.apache.wink.json4j.utils.<A HREF="./org/apache/wink/json4j/utils/XML.html" title="class in org.apache.wink.json4j.utils">XML</A>
<DD>Method to take an input stream to an XML document and return a String of the JSON format.
<DT><A HREF="./org/apache/wink/json4j/utils/XML.html#toJson(java.io.InputStream, boolean)"><B>toJson(InputStream, boolean)</B></A> - 
Static method in class org.apache.wink.json4j.utils.<A HREF="./org/apache/wink/json4j/utils/XML.html" title="class in org.apache.wink.json4j.utils">XML</A>
<DD>Method to take an input stream to an XML document and return a String of the JSON format.
<DT><A HREF="./org/apache/wink/json4j/utils/XML.html#toJson(java.io.File, boolean)"><B>toJson(File, boolean)</B></A> - 
Static method in class org.apache.wink.json4j.utils.<A HREF="./org/apache/wink/json4j/utils/XML.html" title="class in org.apache.wink.json4j.utils">XML</A>
<DD>Method to take an XML file and return a String of the JSON format.
<DT><A HREF="./org/apache/wink/json4j/utils/XML.html#toJson(java.io.File)"><B>toJson(File)</B></A> - 
Static method in class org.apache.wink.json4j.utils.<A HREF="./org/apache/wink/json4j/utils/XML.html" title="class in org.apache.wink.json4j.utils">XML</A>
<DD>Method to take an XML file and return a String of the JSON format.
<DT><A HREF="./org/apache/wink/json4j/JSONObject.html#toJSONArray(org.apache.wink.json4j.JSONArray)"><B>toJSONArray(JSONArray)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONObject.html" title="class in org.apache.wink.json4j">JSONObject</A>
<DD>Produce a JSONArray containing the values of the members of this JSONObject
<DT><A HREF="./org/apache/wink/json4j/compat/JSONString.html#toJSONString()"><B>toJSONString()</B></A> - 
Method in interface org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONString.html" title="interface in org.apache.wink.json4j.compat">JSONString</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/JSONString.html#toJSONString()"><B>toJSONString()</B></A> - 
Method in interface org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONString.html" title="interface in org.apache.wink.json4j">JSONString</A>
<DD>Method to return a JSON compliant representation of this object.
<DT><A HREF="./org/apache/wink/common/http/HttpStatus.html#toString()"><B>toString()</B></A> - 
Method in class org.apache.wink.common.http.<A HREF="./org/apache/wink/common/http/HttpStatus.html" title="class in org.apache.wink.common.http">HttpStatus</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/app/AppYesNo.html#toString()"><B>toString()</B></A> - 
Method in enum org.apache.wink.common.model.app.<A HREF="./org/apache/wink/common/model/app/AppYesNo.html" title="enum in org.apache.wink.common.model.app">AppYesNo</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONArrayDelegate.html#toString()"><B>toString()</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONArrayDelegate.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONArrayDelegate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONArrayDelegate.html#toString(int)"><B>toString(int)</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONArrayDelegate.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONArrayDelegate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONObjectDelegate.html#toString()"><B>toString()</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONObjectDelegate.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONObjectDelegate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONObjectDelegate.html#toString(int)"><B>toString(int)</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONObjectDelegate.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONObjectDelegate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONStringerDelegate.html#toString()"><B>toString()</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONStringerDelegate.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONStringerDelegate</A>
<DD>Return a string of the stringer contents.
<DT><A HREF="./org/apache/wink/json4j/compat/JSONArray.html#toString()"><B>toString()</B></A> - 
Method in interface org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONArray.html" title="interface in org.apache.wink.json4j.compat">JSONArray</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONArray.html#toString(int)"><B>toString(int)</B></A> - 
Method in interface org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONArray.html" title="interface in org.apache.wink.json4j.compat">JSONArray</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONObject.html#toString()"><B>toString()</B></A> - 
Method in interface org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONObject.html" title="interface in org.apache.wink.json4j.compat">JSONObject</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONObject.html#toString(int)"><B>toString(int)</B></A> - 
Method in interface org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONObject.html" title="interface in org.apache.wink.json4j.compat">JSONObject</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONStringer.html#toString()"><B>toString()</B></A> - 
Method in interface org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONStringer.html" title="interface in org.apache.wink.json4j.compat">JSONStringer</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/JSONArray.html#toString()"><B>toString()</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONArray.html" title="class in org.apache.wink.json4j">JSONArray</A>
<DD>Over-ridden toString() method.
<DT><A HREF="./org/apache/wink/json4j/JSONArray.html#toString(int)"><B>toString(int)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONArray.html" title="class in org.apache.wink.json4j">JSONArray</A>
<DD>Function to return a string of JSON text with specified indention.
<DT><A HREF="./org/apache/wink/json4j/JSONObject.html#toString()"><B>toString()</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONObject.html" title="class in org.apache.wink.json4j">JSONObject</A>
<DD>Over-ridden toString() method.
<DT><A HREF="./org/apache/wink/json4j/JSONObject.html#toString(boolean)"><B>toString(boolean)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONObject.html" title="class in org.apache.wink.json4j">JSONObject</A>
<DD>Verbose capable toString method.
<DT><A HREF="./org/apache/wink/json4j/JSONObject.html#toString(int)"><B>toString(int)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONObject.html" title="class in org.apache.wink.json4j">JSONObject</A>
<DD>Function to return a string of JSON text with specified indention.
<DT><A HREF="./org/apache/wink/json4j/JSONStringer.html#toString()"><B>toString()</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONStringer.html" title="class in org.apache.wink.json4j">JSONStringer</A>
<DD>Return a string of the stringer contents.
<DT><A HREF="./org/apache/wink/server/handlers/AbstractHandlersChain.html#toString()"><B>toString()</B></A> - 
Method in class org.apache.wink.server.handlers.<A HREF="./org/apache/wink/server/handlers/AbstractHandlersChain.html" title="class in org.apache.wink.server.handlers">AbstractHandlersChain</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomCategory.html#toSynd(org.apache.wink.common.model.synd.SyndCategory)"><B>toSynd(SyndCategory)</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomCategory.html" title="class in org.apache.wink.common.model.atom">AtomCategory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomCommonAttributes.html#toSynd(org.apache.wink.common.model.synd.SyndCommonAttributes)"><B>toSynd(SyndCommonAttributes)</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomCommonAttributes.html" title="class in org.apache.wink.common.model.atom">AtomCommonAttributes</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomCommonAttributesSimpleContent.html#toSynd(org.apache.wink.common.model.synd.SyndSimpleContent)"><B>toSynd(SyndSimpleContent)</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomCommonAttributesSimpleContent.html" title="class in org.apache.wink.common.model.atom">AtomCommonAttributesSimpleContent</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomContent.html#toSynd(org.apache.wink.common.model.synd.SyndContent)"><B>toSynd(SyndContent)</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomContent.html" title="class in org.apache.wink.common.model.atom">AtomContent</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomEntry.html#toSynd(org.apache.wink.common.model.synd.SyndEntry)"><B>toSynd(SyndEntry)</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomEntry.html" title="class in org.apache.wink.common.model.atom">AtomEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomFeed.html#toSynd(org.apache.wink.common.model.synd.SyndFeed)"><B>toSynd(SyndFeed)</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomFeed.html" title="class in org.apache.wink.common.model.atom">AtomFeed</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomGenerator.html#toSynd(org.apache.wink.common.model.synd.SyndGenerator)"><B>toSynd(SyndGenerator)</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomGenerator.html" title="class in org.apache.wink.common.model.atom">AtomGenerator</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomLink.html#toSynd(org.apache.wink.common.model.synd.SyndLink)"><B>toSynd(SyndLink)</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomLink.html" title="class in org.apache.wink.common.model.atom">AtomLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomPerson.html#toSynd(org.apache.wink.common.model.synd.SyndPerson)"><B>toSynd(SyndPerson)</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomPerson.html" title="class in org.apache.wink.common.model.atom">AtomPerson</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomText.html#toSynd(org.apache.wink.common.model.synd.SyndText)"><B>toSynd(SyndText)</B></A> - 
Method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomText.html" title="class in org.apache.wink.common.model.atom">AtomText</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/rss/RssCategory.html#toSynd(org.apache.wink.common.model.synd.SyndCategory)"><B>toSynd(SyndCategory)</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssCategory.html" title="class in org.apache.wink.common.model.rss">RssCategory</A>
<DD>Maps an RssCategory object into a SyndCategory object.
<DT><A HREF="./org/apache/wink/common/model/rss/RssChannel.html#toSynd(org.apache.wink.common.model.synd.SyndFeed)"><B>toSynd(SyndFeed)</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssChannel.html" title="class in org.apache.wink.common.model.rss">RssChannel</A>
<DD>Maps an RssChannel object into a SyndFeed object.
<DT><A HREF="./org/apache/wink/common/model/rss/RssEnclosure.html#toSynd(org.apache.wink.common.model.synd.SyndLink)"><B>toSynd(SyndLink)</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssEnclosure.html" title="class in org.apache.wink.common.model.rss">RssEnclosure</A>
<DD>Maps an RssEnclosure object into a SyndLink object.
<DT><A HREF="./org/apache/wink/common/model/rss/RssFeed.html#toSynd(org.apache.wink.common.model.synd.SyndFeed)"><B>toSynd(SyndFeed)</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssFeed.html" title="class in org.apache.wink.common.model.rss">RssFeed</A>
<DD>Maps RssFeed into Syndication Object Model (SyndFeed).
<DT><A HREF="./org/apache/wink/common/model/rss/RssItem.html#toSynd(org.apache.wink.common.model.synd.SyndEntry)"><B>toSynd(SyndEntry)</B></A> - 
Method in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssItem.html" title="class in org.apache.wink.common.model.rss">RssItem</A>
<DD>Maps an RssItem object into a SyndEntry object.
<DT><A HREF="./org/apache/wink/common/model/atom/AtomFeed.html#totalResults"><B>totalResults</B></A> - 
Variable in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomFeed.html" title="class in org.apache.wink.common.model.atom">AtomFeed</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchQuery.html#totalResults"><B>totalResults</B></A> - 
Variable in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchQuery.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchQuery</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/utils/XML.html#toXml(java.io.InputStream, java.io.OutputStream)"><B>toXml(InputStream, OutputStream)</B></A> - 
Static method in class org.apache.wink.json4j.utils.<A HREF="./org/apache/wink/json4j/utils/XML.html" title="class in org.apache.wink.json4j.utils">XML</A>
<DD>Method to do the transform from an JSON input stream to a XML stream.
<DT><A HREF="./org/apache/wink/json4j/utils/XML.html#toXml(java.io.InputStream, java.io.OutputStream, boolean)"><B>toXml(InputStream, OutputStream, boolean)</B></A> - 
Static method in class org.apache.wink.json4j.utils.<A HREF="./org/apache/wink/json4j/utils/XML.html" title="class in org.apache.wink.json4j.utils">XML</A>
<DD>Method to do the transform from an JSON input stream to a XML stream.
<DT><A HREF="./org/apache/wink/json4j/utils/XML.html#toXml(java.io.InputStream)"><B>toXml(InputStream)</B></A> - 
Static method in class org.apache.wink.json4j.utils.<A HREF="./org/apache/wink/json4j/utils/XML.html" title="class in org.apache.wink.json4j.utils">XML</A>
<DD>Method to take an input stream to an JSON document and return a String of the XML format.
<DT><A HREF="./org/apache/wink/json4j/utils/XML.html#toXml(java.io.InputStream, boolean)"><B>toXml(InputStream, boolean)</B></A> - 
Static method in class org.apache.wink.json4j.utils.<A HREF="./org/apache/wink/json4j/utils/XML.html" title="class in org.apache.wink.json4j.utils">XML</A>
<DD>Method to take an input stream to an JSON document and return a String of the XML format.
<DT><A HREF="./org/apache/wink/json4j/utils/XML.html#toXml(java.io.File, boolean)"><B>toXml(File, boolean)</B></A> - 
Static method in class org.apache.wink.json4j.utils.<A HREF="./org/apache/wink/json4j/utils/XML.html" title="class in org.apache.wink.json4j.utils">XML</A>
<DD>Method to take a JSON file and return a String of the XML format.
<DT><A HREF="./org/apache/wink/json4j/utils/XML.html#toXml(java.io.File)"><B>toXml(File)</B></A> - 
Static method in class org.apache.wink.json4j.utils.<A HREF="./org/apache/wink/json4j/utils/XML.html" title="class in org.apache.wink.json4j.utils">XML</A>
<DD>Method to take an JSON file and return a String of the XML format.
<DT><A HREF="./org/apache/wink/common/http/HttpMethodEx.html#TRACE"><B>TRACE</B></A> - 
Static variable in class org.apache.wink.common.http.<A HREF="./org/apache/wink/common/http/HttpMethodEx.html" title="class in org.apache.wink.common.http">HttpMethodEx</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/rss/RssChannel.html#ttl"><B>ttl</B></A> - 
Variable in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssChannel.html" title="class in org.apache.wink.common.model.rss">RssChannel</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/logging/WinkLogHandler.html#turnLoggingCaptureOff()"><B>turnLoggingCaptureOff()</B></A> - 
Static method in class org.apache.wink.logging.<A HREF="./org/apache/wink/logging/WinkLogHandler.html" title="class in org.apache.wink.logging">WinkLogHandler</A>
<DD>turns logging capture off
<DT><A HREF="./org/apache/wink/logging/WinkLogHandler.html#turnLoggingCaptureOn(org.apache.wink.logging.WinkLogHandler.LEVEL)"><B>turnLoggingCaptureOn(WinkLogHandler.LEVEL)</B></A> - 
Static method in class org.apache.wink.logging.<A HREF="./org/apache/wink/logging/WinkLogHandler.html" title="class in org.apache.wink.logging">WinkLogHandler</A>
<DD>turns logging capture on
<DT><A HREF="./org/apache/wink/common/model/atom/AtomContent.html#type"><B>type</B></A> - 
Variable in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomContent.html" title="class in org.apache.wink.common.model.atom">AtomContent</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomLink.html#type"><B>type</B></A> - 
Variable in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomLink.html" title="class in org.apache.wink.common.model.atom">AtomLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomText.html#type"><B>type</B></A> - 
Variable in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomText.html" title="class in org.apache.wink.common.model.atom">AtomText</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchImage.html#type"><B>type</B></A> - 
Variable in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchImage.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchImage</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchUrl.html#type"><B>type</B></A> - 
Variable in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchUrl.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchUrl</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/rss/RssEnclosure.html#type"><B>type</B></A> - 
Variable in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssEnclosure.html" title="class in org.apache.wink.common.model.rss">RssEnclosure</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/synd/SyndSimpleContent.html#type"><B>type</B></A> - 
Variable in class org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndSimpleContent.html" title="class in org.apache.wink.common.model.synd">SyndSimpleContent</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Param.html#type"><B>type</B></A> - 
Variable in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Param.html" title="class in org.apache.wink.common.model.wadl">Param</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Resource.html#type"><B>type</B></A> - 
Variable in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Resource.html" title="class in org.apache.wink.common.model.wadl">Resource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/server/utils/SingleLinkBuilder.html#type(javax.ws.rs.core.MediaType)"><B>type(MediaType)</B></A> - 
Method in interface org.apache.wink.server.utils.<A HREF="./org/apache/wink/server/utils/SingleLinkBuilder.html" title="interface in org.apache.wink.server.utils">SingleLinkBuilder</A>
<DD>Set the type attribute of the link
<DT><A HREF="./org/apache/wink/server/utils/SystemLinksBuilder.html#types(org.apache.wink.server.utils.SystemLinksBuilder.LinkType...)"><B>types(SystemLinksBuilder.LinkType...)</B></A> - 
Method in interface org.apache.wink.server.utils.<A HREF="./org/apache/wink/server/utils/SystemLinksBuilder.html" title="interface in org.apache.wink.server.utils">SystemLinksBuilder</A>
<DD>Set the types of system links to generate.
</DL>
<HR>
<A NAME="_U_"><!-- --></A><H2>
<B>U</B></H2>
<DL>
<DT><A HREF="./org/apache/wink/common/http/HttpStatus.html#UNAUTHORIZED"><B>UNAUTHORIZED</B></A> - 
Static variable in class org.apache.wink.common.http.<A HREF="./org/apache/wink/common/http/HttpStatus.html" title="class in org.apache.wink.common.http">HttpStatus</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/osgi/WinkRequestProcessor.html#unbindComponent(java.lang.Object)"><B>unbindComponent(Object)</B></A> - 
Method in class org.apache.wink.osgi.<A HREF="./org/apache/wink/osgi/WinkRequestProcessor.html" title="class in org.apache.wink.osgi">WinkRequestProcessor</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/osgi/WinkRequestProcessor.html#unbindComponentClass(java.lang.Class)"><B>unbindComponentClass(Class)</B></A> - 
Method in class org.apache.wink.osgi.<A HREF="./org/apache/wink/osgi/WinkRequestProcessor.html" title="class in org.apache.wink.osgi">WinkRequestProcessor</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/app/AppCategories.html#unmarshal(java.io.Reader)"><B>unmarshal(Reader)</B></A> - 
Static method in class org.apache.wink.common.model.app.<A HREF="./org/apache/wink/common/model/app/AppCategories.html" title="class in org.apache.wink.common.model.app">AppCategories</A>
<DD>Convenience method for creating an AppCategories from xml
<DT><A HREF="./org/apache/wink/common/model/app/AppService.html#unmarshal(java.io.Reader)"><B>unmarshal(Reader)</B></A> - 
Static method in class org.apache.wink.common.model.app.<A HREF="./org/apache/wink/common/model/app/AppService.html" title="class in org.apache.wink.common.model.app">AppService</A>
<DD>Convenience method for creating an AppService from xml
<DT><A HREF="./org/apache/wink/common/model/atom/AtomEntry.html#unmarshal(java.io.Reader)"><B>unmarshal(Reader)</B></A> - 
Static method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomEntry.html" title="class in org.apache.wink.common.model.atom">AtomEntry</A>
<DD>Convenience method for creating an AtomEntry from xml
<DT><A HREF="./org/apache/wink/common/model/atom/AtomFeed.html#unmarshal(java.io.Reader)"><B>unmarshal(Reader)</B></A> - 
Static method in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomFeed.html" title="class in org.apache.wink.common.model.atom">AtomFeed</A>
<DD>Convenience method for creating an AtomFeed from xml
<DT><A HREF="./org/apache/wink/webdav/model/Multistatus.html#unmarshal(java.io.InputStream)"><B>unmarshal(InputStream)</B></A> - 
Static method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Multistatus.html" title="class in org.apache.wink.webdav.model">Multistatus</A>
<DD>Unmarshal a Multistatus object from the provided input stream
<DT><A HREF="./org/apache/wink/webdav/model/Multistatus.html#unmarshal(java.io.Reader)"><B>unmarshal(Reader)</B></A> - 
Static method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Multistatus.html" title="class in org.apache.wink.webdav.model">Multistatus</A>
<DD>Unmarshal a Multistatus object from the provided reader
<DT><A HREF="./org/apache/wink/webdav/model/Propertyupdate.html#unmarshal(java.io.InputStream)"><B>unmarshal(InputStream)</B></A> - 
Static method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Propertyupdate.html" title="class in org.apache.wink.webdav.model">Propertyupdate</A>
<DD>Unmarshal a Propertyupdate object from the provided input stream
<DT><A HREF="./org/apache/wink/webdav/model/Propertyupdate.html#unmarshal(java.io.Reader)"><B>unmarshal(Reader)</B></A> - 
Static method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Propertyupdate.html" title="class in org.apache.wink.webdav.model">Propertyupdate</A>
<DD>Unmarshal a Propertyupdate object from the provided reader
<DT><A HREF="./org/apache/wink/webdav/model/Propfind.html#unmarshal(java.io.InputStream)"><B>unmarshal(InputStream)</B></A> - 
Static method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Propfind.html" title="class in org.apache.wink.webdav.model">Propfind</A>
<DD>Unmarshal a Propfind object from the provided input stream
<DT><A HREF="./org/apache/wink/webdav/model/Propfind.html#unmarshal(java.io.Reader)"><B>unmarshal(Reader)</B></A> - 
Static method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Propfind.html" title="class in org.apache.wink.webdav.model">Propfind</A>
<DD>Unmarshal a Propfind object from the provided reader
<DT><A HREF="./org/apache/wink/webdav/model/WebDAVModelHelper.html#unmarshal(javax.xml.bind.Unmarshaller, java.io.Reader, java.lang.Class, java.lang.String)"><B>unmarshal(Unmarshaller, Reader, Class&lt;T&gt;, String)</B></A> - 
Static method in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/WebDAVModelHelper.html" title="class in org.apache.wink.webdav.model">WebDAVModelHelper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/http/HttpStatus.html#UNPROCESSABLE_ENTITY"><B>UNPROCESSABLE_ENTITY</B></A> - 
Static variable in class org.apache.wink.common.http.<A HREF="./org/apache/wink/common/http/HttpStatus.html" title="class in org.apache.wink.common.http">HttpStatus</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/http/HttpStatus.html#UNSUPPORTED_MEDIA_TYPE"><B>UNSUPPORTED_MEDIA_TYPE</B></A> - 
Static variable in class org.apache.wink.common.http.<A HREF="./org/apache/wink/common/http/HttpStatus.html" title="class in org.apache.wink.common.http">HttpStatus</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomEntry.html#updated"><B>updated</B></A> - 
Variable in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomEntry.html" title="class in org.apache.wink.common.model.atom">AtomEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomFeed.html#updated"><B>updated</B></A> - 
Variable in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomFeed.html" title="class in org.apache.wink.common.model.atom">AtomFeed</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/client/Resource.html#uri(java.net.URI)"><B>uri(URI)</B></A> - 
Method in interface org.apache.wink.client.<A HREF="./org/apache/wink/client/Resource.html" title="interface in org.apache.wink.client">Resource</A>
<DD>Set the uri of this resource and create a new UriBuilder
<DT><A HREF="./org/apache/wink/client/Resource.html#uri(java.lang.String)"><B>uri(String)</B></A> - 
Method in interface org.apache.wink.client.<A HREF="./org/apache/wink/client/Resource.html" title="interface in org.apache.wink.client">Resource</A>
<DD>Set the uri of this resource and create a new UriBuilder
<DT><A HREF="./org/apache/wink/common/model/atom/AtomGenerator.html#uri"><B>uri</B></A> - 
Variable in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomGenerator.html" title="class in org.apache.wink.common.model.atom">AtomGenerator</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomPerson.html#uri"><B>uri</B></A> - 
Variable in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomPerson.html" title="class in org.apache.wink.common.model.atom">AtomPerson</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html#url"><B>url</B></A> - 
Variable in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchDescription.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchDescription</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/rss/RssEnclosure.html#url"><B>url</B></A> - 
Variable in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssEnclosure.html" title="class in org.apache.wink.common.model.rss">RssEnclosure</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/rss/RssImage.html#url"><B>url</B></A> - 
Variable in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssImage.html" title="class in org.apache.wink.common.model.rss">RssImage</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/rss/RssSource.html#url"><B>url</B></A> - 
Variable in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssSource.html" title="class in org.apache.wink.common.model.rss">RssSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/http/HttpStatus.html#USE_PROXY"><B>USE_PROXY</B></A> - 
Static variable in class org.apache.wink.common.http.<A HREF="./org/apache/wink/common/http/HttpStatus.html" title="class in org.apache.wink.common.http">HttpStatus</A>
<DD>&nbsp;
</DL>
<HR>
<A NAME="_V_"><!-- --></A><H2>
<B>V</B></H2>
<DL>
<DT><A HREF="./org/apache/wink/common/model/app/AppYesNo.html#value()"><B>value()</B></A> - 
Method in enum org.apache.wink.common.model.app.<A HREF="./org/apache/wink/common/model/app/AppYesNo.html" title="enum in org.apache.wink.common.model.app">AppYesNo</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/atom/AtomCommonAttributesSimpleContent.html#value"><B>value</B></A> - 
Variable in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomCommonAttributesSimpleContent.html" title="class in org.apache.wink.common.model.atom">AtomCommonAttributesSimpleContent</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchImage.html#value"><B>value</B></A> - 
Variable in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchImage.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchImage</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/HTTPMethods.html#value()"><B>value()</B></A> - 
Method in enum org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/HTTPMethods.html" title="enum in org.apache.wink.common.model.wadl">HTTPMethods</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/Option.html#value"><B>value</B></A> - 
Variable in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Option.html" title="class in org.apache.wink.common.model.wadl">Option</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/wadl/ParamStyle.html#value()"><B>value()</B></A> - 
Method in enum org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/ParamStyle.html" title="enum in org.apache.wink.common.model.wadl">ParamStyle</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONWriterDelegate.html#value(boolean)"><B>value(boolean)</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONWriterDelegate.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONWriterDelegate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONWriterDelegate.html#value(double)"><B>value(double)</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONWriterDelegate.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONWriterDelegate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONWriterDelegate.html#value(long)"><B>value(long)</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONWriterDelegate.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONWriterDelegate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONWriterDelegate.html#value(short)"><B>value(short)</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONWriterDelegate.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONWriterDelegate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONWriterDelegate.html#value(java.lang.Object)"><B>value(Object)</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONWriterDelegate.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONWriterDelegate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONWriter.html#value(boolean)"><B>value(boolean)</B></A> - 
Method in interface org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONWriter.html" title="interface in org.apache.wink.json4j.compat">JSONWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONWriter.html#value(double)"><B>value(double)</B></A> - 
Method in interface org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONWriter.html" title="interface in org.apache.wink.json4j.compat">JSONWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONWriter.html#value(long)"><B>value(long)</B></A> - 
Method in interface org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONWriter.html" title="interface in org.apache.wink.json4j.compat">JSONWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONWriter.html#value(short)"><B>value(short)</B></A> - 
Method in interface org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONWriter.html" title="interface in org.apache.wink.json4j.compat">JSONWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONWriter.html#value(java.lang.Object)"><B>value(Object)</B></A> - 
Method in interface org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONWriter.html" title="interface in org.apache.wink.json4j.compat">JSONWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/JSONWriter.html#value(boolean)"><B>value(boolean)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONWriter.html" title="class in org.apache.wink.json4j">JSONWriter</A>
<DD>Method to write a boolean to the current writer position.
<DT><A HREF="./org/apache/wink/json4j/JSONWriter.html#value(double)"><B>value(double)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONWriter.html" title="class in org.apache.wink.json4j">JSONWriter</A>
<DD>Method to write a double to the current writer position.
<DT><A HREF="./org/apache/wink/json4j/JSONWriter.html#value(long)"><B>value(long)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONWriter.html" title="class in org.apache.wink.json4j">JSONWriter</A>
<DD>Method to write a double to the current writer position.
<DT><A HREF="./org/apache/wink/json4j/JSONWriter.html#value(int)"><B>value(int)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONWriter.html" title="class in org.apache.wink.json4j">JSONWriter</A>
<DD>Method to write an int to the current writer position.
<DT><A HREF="./org/apache/wink/json4j/JSONWriter.html#value(short)"><B>value(short)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONWriter.html" title="class in org.apache.wink.json4j">JSONWriter</A>
<DD>Method to write a short to the current writer position.
<DT><A HREF="./org/apache/wink/json4j/JSONWriter.html#value(java.lang.Object)"><B>value(Object)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONWriter.html" title="class in org.apache.wink.json4j">JSONWriter</A>
<DD>Method to write an Object to the current writer position.
<DT><A HREF="./org/apache/wink/common/annotations/Scope.ScopeType.html#valueOf(java.lang.String)"><B>valueOf(String)</B></A> - 
Static method in enum org.apache.wink.common.annotations.<A HREF="./org/apache/wink/common/annotations/Scope.ScopeType.html" title="enum in org.apache.wink.common.annotations">Scope.ScopeType</A>
<DD>Returns the enum constant of this type with the specified name.
<DT><A HREF="./org/apache/wink/common/http/HttpStatus.html#valueOf(int)"><B>valueOf(int)</B></A> - 
Static method in class org.apache.wink.common.http.<A HREF="./org/apache/wink/common/http/HttpStatus.html" title="class in org.apache.wink.common.http">HttpStatus</A>
<DD>Gets HttpStatus for given status code.
<DT><A HREF="./org/apache/wink/common/model/app/AppYesNo.html#valueOf(java.lang.String)"><B>valueOf(String)</B></A> - 
Static method in enum org.apache.wink.common.model.app.<A HREF="./org/apache/wink/common/model/app/AppYesNo.html" title="enum in org.apache.wink.common.model.app">AppYesNo</A>
<DD>Returns the enum constant of this type with the specified name.
<DT><A HREF="./org/apache/wink/common/model/atom/AtomTextType.html#valueOf(java.lang.String)"><B>valueOf(String)</B></A> - 
Static method in enum org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomTextType.html" title="enum in org.apache.wink.common.model.atom">AtomTextType</A>
<DD>Returns the enum constant of this type with the specified name.
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchParameter.OpenSearchParams.html#valueOf(java.lang.String)"><B>valueOf(String)</B></A> - 
Static method in enum org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchParameter.OpenSearchParams.html" title="enum in org.apache.wink.common.model.opensearch">OpenSearchParameter.OpenSearchParams</A>
<DD>Returns the enum constant of this type with the specified name.
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchQuery.QueryRole.html#valueOf(java.lang.String)"><B>valueOf(String)</B></A> - 
Static method in enum org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchQuery.QueryRole.html" title="enum in org.apache.wink.common.model.opensearch">OpenSearchQuery.QueryRole</A>
<DD>Returns the enum constant of this type with the specified name.
<DT><A HREF="./org/apache/wink/common/model/synd/SyndTextType.html#valueOf(java.lang.String)"><B>valueOf(String)</B></A> - 
Static method in enum org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndTextType.html" title="enum in org.apache.wink.common.model.synd">SyndTextType</A>
<DD>Returns the enum constant of this type with the specified name.
<DT><A HREF="./org/apache/wink/common/model/wadl/HTTPMethods.html#valueOf(java.lang.String)"><B>valueOf(String)</B></A> - 
Static method in enum org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/HTTPMethods.html" title="enum in org.apache.wink.common.model.wadl">HTTPMethods</A>
<DD>Returns the enum constant of this type with the specified name.
<DT><A HREF="./org/apache/wink/common/model/wadl/ParamStyle.html#valueOf(java.lang.String)"><B>valueOf(String)</B></A> - 
Static method in enum org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/ParamStyle.html" title="enum in org.apache.wink.common.model.wadl">ParamStyle</A>
<DD>Returns the enum constant of this type with the specified name.
<DT><A HREF="./org/apache/wink/common/utils/ProviderUtils.PROVIDER_EXCEPTION_ORIGINATOR.html#valueOf(java.lang.String)"><B>valueOf(String)</B></A> - 
Static method in enum org.apache.wink.common.utils.<A HREF="./org/apache/wink/common/utils/ProviderUtils.PROVIDER_EXCEPTION_ORIGINATOR.html" title="enum in org.apache.wink.common.utils">ProviderUtils.PROVIDER_EXCEPTION_ORIGINATOR</A>
<DD>Returns the enum constant of this type with the specified name.
<DT><A HREF="./org/apache/wink/logging/WinkLogHandler.LEVEL.html#valueOf(java.lang.String)"><B>valueOf(String)</B></A> - 
Static method in enum org.apache.wink.logging.<A HREF="./org/apache/wink/logging/WinkLogHandler.LEVEL.html" title="enum in org.apache.wink.logging">WinkLogHandler.LEVEL</A>
<DD>Returns the enum constant of this type with the specified name.
<DT><A HREF="./org/apache/wink/server/utils/SystemLinksBuilder.LinkType.html#valueOf(java.lang.String)"><B>valueOf(String)</B></A> - 
Static method in enum org.apache.wink.server.utils.<A HREF="./org/apache/wink/server/utils/SystemLinksBuilder.LinkType.html" title="enum in org.apache.wink.server.utils">SystemLinksBuilder.LinkType</A>
<DD>Returns the enum constant of this type with the specified name.
<DT><A HREF="./org/apache/wink/webdav/WebDAVMethod.html#valueOf(java.lang.String)"><B>valueOf(String)</B></A> - 
Static method in enum org.apache.wink.webdav.<A HREF="./org/apache/wink/webdav/WebDAVMethod.html" title="enum in org.apache.wink.webdav">WebDAVMethod</A>
<DD>Returns the enum constant of this type with the specified name.
<DT><A HREF="./org/apache/wink/common/http/HttpStatus.html#valueOfStatusLine(java.lang.String)"><B>valueOfStatusLine(String)</B></A> - 
Static method in class org.apache.wink.common.http.<A HREF="./org/apache/wink/common/http/HttpStatus.html" title="class in org.apache.wink.common.http">HttpStatus</A>
<DD>Gets HttpStatus for given status line.
<DT><A HREF="./org/apache/wink/common/annotations/Scope.ScopeType.html#values()"><B>values()</B></A> - 
Static method in enum org.apache.wink.common.annotations.<A HREF="./org/apache/wink/common/annotations/Scope.ScopeType.html" title="enum in org.apache.wink.common.annotations">Scope.ScopeType</A>
<DD>Returns an array containing the constants of this enum type, in
the order they are declared.
<DT><A HREF="./org/apache/wink/common/model/app/AppYesNo.html#values()"><B>values()</B></A> - 
Static method in enum org.apache.wink.common.model.app.<A HREF="./org/apache/wink/common/model/app/AppYesNo.html" title="enum in org.apache.wink.common.model.app">AppYesNo</A>
<DD>Returns an array containing the constants of this enum type, in
the order they are declared.
<DT><A HREF="./org/apache/wink/common/model/atom/AtomTextType.html#values()"><B>values()</B></A> - 
Static method in enum org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomTextType.html" title="enum in org.apache.wink.common.model.atom">AtomTextType</A>
<DD>Returns an array containing the constants of this enum type, in
the order they are declared.
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchParameter.OpenSearchParams.html#values()"><B>values()</B></A> - 
Static method in enum org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchParameter.OpenSearchParams.html" title="enum in org.apache.wink.common.model.opensearch">OpenSearchParameter.OpenSearchParams</A>
<DD>Returns an array containing the constants of this enum type, in
the order they are declared.
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchQuery.QueryRole.html#values()"><B>values()</B></A> - 
Static method in enum org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchQuery.QueryRole.html" title="enum in org.apache.wink.common.model.opensearch">OpenSearchQuery.QueryRole</A>
<DD>Returns an array containing the constants of this enum type, in
the order they are declared.
<DT><A HREF="./org/apache/wink/common/model/synd/SyndTextType.html#values()"><B>values()</B></A> - 
Static method in enum org.apache.wink.common.model.synd.<A HREF="./org/apache/wink/common/model/synd/SyndTextType.html" title="enum in org.apache.wink.common.model.synd">SyndTextType</A>
<DD>Returns an array containing the constants of this enum type, in
the order they are declared.
<DT><A HREF="./org/apache/wink/common/model/wadl/HTTPMethods.html#values()"><B>values()</B></A> - 
Static method in enum org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/HTTPMethods.html" title="enum in org.apache.wink.common.model.wadl">HTTPMethods</A>
<DD>Returns an array containing the constants of this enum type, in
the order they are declared.
<DT><A HREF="./org/apache/wink/common/model/wadl/ParamStyle.html#values()"><B>values()</B></A> - 
Static method in enum org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/ParamStyle.html" title="enum in org.apache.wink.common.model.wadl">ParamStyle</A>
<DD>Returns an array containing the constants of this enum type, in
the order they are declared.
<DT><A HREF="./org/apache/wink/common/utils/ProviderUtils.PROVIDER_EXCEPTION_ORIGINATOR.html#values()"><B>values()</B></A> - 
Static method in enum org.apache.wink.common.utils.<A HREF="./org/apache/wink/common/utils/ProviderUtils.PROVIDER_EXCEPTION_ORIGINATOR.html" title="enum in org.apache.wink.common.utils">ProviderUtils.PROVIDER_EXCEPTION_ORIGINATOR</A>
<DD>Returns an array containing the constants of this enum type, in
the order they are declared.
<DT><A HREF="./org/apache/wink/logging/WinkLogHandler.LEVEL.html#values()"><B>values()</B></A> - 
Static method in enum org.apache.wink.logging.<A HREF="./org/apache/wink/logging/WinkLogHandler.LEVEL.html" title="enum in org.apache.wink.logging">WinkLogHandler.LEVEL</A>
<DD>Returns an array containing the constants of this enum type, in
the order they are declared.
<DT><A HREF="./org/apache/wink/server/utils/SystemLinksBuilder.LinkType.html#values()"><B>values()</B></A> - 
Static method in enum org.apache.wink.server.utils.<A HREF="./org/apache/wink/server/utils/SystemLinksBuilder.LinkType.html" title="enum in org.apache.wink.server.utils">SystemLinksBuilder.LinkType</A>
<DD>Returns an array containing the constants of this enum type, in
the order they are declared.
<DT><A HREF="./org/apache/wink/webdav/WebDAVMethod.html#values()"><B>values()</B></A> - 
Static method in enum org.apache.wink.webdav.<A HREF="./org/apache/wink/webdav/WebDAVMethod.html" title="enum in org.apache.wink.webdav">WebDAVMethod</A>
<DD>Returns an array containing the constants of this enum type, in
the order they are declared.
<DT><A HREF="./org/apache/wink/common/model/atom/AtomGenerator.html#version"><B>version</B></A> - 
Variable in class org.apache.wink.common.model.atom.<A HREF="./org/apache/wink/common/model/atom/AtomGenerator.html" title="class in org.apache.wink.common.model.atom">AtomGenerator</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/rss/RssFeed.html#version"><B>version</B></A> - 
Variable in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssFeed.html" title="class in org.apache.wink.common.model.rss">RssFeed</A>
<DD>&nbsp;
</DL>
<HR>
<A NAME="_W_"><!-- --></A><H2>
<B>W</B></H2>
<DL>
<DT><A HREF="./org/apache/wink/common/model/wadl/WADLDoc.html" title="annotation in org.apache.wink.common.model.wadl"><B>WADLDoc</B></A> - Annotation Type in <A HREF="./org/apache/wink/common/model/wadl/package-summary.html">org.apache.wink.common.model.wadl</A><DD>&nbsp;<DT><A HREF="./org/apache/wink/common/model/wadl/WADLGenerator.html" title="class in org.apache.wink.common.model.wadl"><B>WADLGenerator</B></A> - Class in <A HREF="./org/apache/wink/common/model/wadl/package-summary.html">org.apache.wink.common.model.wadl</A><DD>&nbsp;<DT><A HREF="./org/apache/wink/common/model/wadl/WADLGenerator.html#WADLGenerator()"><B>WADLGenerator()</B></A> - 
Constructor for class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/WADLGenerator.html" title="class in org.apache.wink.common.model.wadl">WADLGenerator</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/WebDAVConstants.html" title="class in org.apache.wink.webdav"><B>WebDAVConstants</B></A> - Class in <A HREF="./org/apache/wink/webdav/package-summary.html">org.apache.wink.webdav</A><DD>WebDAV properties.<DT><A HREF="./org/apache/wink/webdav/WebDAVHeaders.html" title="class in org.apache.wink.webdav"><B>WebDAVHeaders</B></A> - Class in <A HREF="./org/apache/wink/webdav/package-summary.html">org.apache.wink.webdav</A><DD>&nbsp;<DT><A HREF="./org/apache/wink/webdav/WebDAVHeaders.html#WebDAVHeaders()"><B>WebDAVHeaders()</B></A> - 
Constructor for class org.apache.wink.webdav.<A HREF="./org/apache/wink/webdav/WebDAVHeaders.html" title="class in org.apache.wink.webdav">WebDAVHeaders</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/server/WebDAVLockableResource.html" title="class in org.apache.wink.webdav.server"><B>WebDAVLockableResource</B></A> - Class in <A HREF="./org/apache/wink/webdav/server/package-summary.html">org.apache.wink.webdav.server</A><DD>Base resource for WebDAV-enabled Lockable resources.<DT><A HREF="./org/apache/wink/webdav/server/WebDAVLockableResource.html#WebDAVLockableResource()"><B>WebDAVLockableResource()</B></A> - 
Constructor for class org.apache.wink.webdav.server.<A HREF="./org/apache/wink/webdav/server/WebDAVLockableResource.html" title="class in org.apache.wink.webdav.server">WebDAVLockableResource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/WebDAVMethod.html" title="enum in org.apache.wink.webdav"><B>WebDAVMethod</B></A> - Enum in <A HREF="./org/apache/wink/webdav/package-summary.html">org.apache.wink.webdav</A><DD>WebDAV HTTP methods.<DT><A HREF="./org/apache/wink/webdav/WebDAVMethod.COPY.html" title="annotation in org.apache.wink.webdav"><B>WebDAVMethod.COPY</B></A> - Annotation Type in <A HREF="./org/apache/wink/webdav/package-summary.html">org.apache.wink.webdav</A><DD>&nbsp;<DT><A HREF="./org/apache/wink/webdav/WebDAVMethod.LOCK.html" title="annotation in org.apache.wink.webdav"><B>WebDAVMethod.LOCK</B></A> - Annotation Type in <A HREF="./org/apache/wink/webdav/package-summary.html">org.apache.wink.webdav</A><DD>&nbsp;<DT><A HREF="./org/apache/wink/webdav/WebDAVMethod.MKCOL.html" title="annotation in org.apache.wink.webdav"><B>WebDAVMethod.MKCOL</B></A> - Annotation Type in <A HREF="./org/apache/wink/webdav/package-summary.html">org.apache.wink.webdav</A><DD>&nbsp;<DT><A HREF="./org/apache/wink/webdav/WebDAVMethod.MOVE.html" title="annotation in org.apache.wink.webdav"><B>WebDAVMethod.MOVE</B></A> - Annotation Type in <A HREF="./org/apache/wink/webdav/package-summary.html">org.apache.wink.webdav</A><DD>&nbsp;<DT><A HREF="./org/apache/wink/webdav/WebDAVMethod.PROPFIND.html" title="annotation in org.apache.wink.webdav"><B>WebDAVMethod.PROPFIND</B></A> - Annotation Type in <A HREF="./org/apache/wink/webdav/package-summary.html">org.apache.wink.webdav</A><DD>&nbsp;<DT><A HREF="./org/apache/wink/webdav/WebDAVMethod.PROPPATCH.html" title="annotation in org.apache.wink.webdav"><B>WebDAVMethod.PROPPATCH</B></A> - Annotation Type in <A HREF="./org/apache/wink/webdav/package-summary.html">org.apache.wink.webdav</A><DD>&nbsp;<DT><A HREF="./org/apache/wink/webdav/WebDAVMethod.UNLOCK.html" title="annotation in org.apache.wink.webdav"><B>WebDAVMethod.UNLOCK</B></A> - Annotation Type in <A HREF="./org/apache/wink/webdav/package-summary.html">org.apache.wink.webdav</A><DD>&nbsp;<DT><A HREF="./org/apache/wink/webdav/model/WebDAVModelHelper.html" title="class in org.apache.wink.webdav.model"><B>WebDAVModelHelper</B></A> - Class in <A HREF="./org/apache/wink/webdav/model/package-summary.html">org.apache.wink.webdav.model</A><DD>&nbsp;<DT><A HREF="./org/apache/wink/webdav/model/WebDAVModelHelper.html#WebDAVModelHelper()"><B>WebDAVModelHelper()</B></A> - 
Constructor for class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/WebDAVModelHelper.html" title="class in org.apache.wink.webdav.model">WebDAVModelHelper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/server/WebDAVResource.html" title="class in org.apache.wink.webdav.server"><B>WebDAVResource</B></A> - Class in <A HREF="./org/apache/wink/webdav/server/package-summary.html">org.apache.wink.webdav.server</A><DD>Base Resource for WebDAV-enabled resources.<DT><A HREF="./org/apache/wink/webdav/server/WebDAVResource.html#WebDAVResource()"><B>WebDAVResource()</B></A> - 
Constructor for class org.apache.wink.webdav.server.<A HREF="./org/apache/wink/webdav/server/WebDAVResource.html" title="class in org.apache.wink.webdav.server">WebDAVResource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/server/WebDAVResponseBuilder.html" title="class in org.apache.wink.webdav.server"><B>WebDAVResponseBuilder</B></A> - Class in <A HREF="./org/apache/wink/webdav/server/package-summary.html">org.apache.wink.webdav.server</A><DD>&nbsp;<DT><A HREF="./org/apache/wink/webdav/server/WebDAVResponseBuilder.CollectionPropertyHandler.html" title="class in org.apache.wink.webdav.server"><B>WebDAVResponseBuilder.CollectionPropertyHandler</B></A> - Class in <A HREF="./org/apache/wink/webdav/server/package-summary.html">org.apache.wink.webdav.server</A><DD>Extends the <A HREF="./org/apache/wink/webdav/server/WebDAVResponseBuilder.PropertyHandler.html" title="class in org.apache.wink.webdav.server"><CODE>WebDAVResponseBuilder.PropertyHandler</CODE></A> to provide additional data for the
 creation of multistatus responses for collections (feeds).<DT><A HREF="./org/apache/wink/webdav/server/WebDAVResponseBuilder.CollectionPropertyHandler.html#WebDAVResponseBuilder.CollectionPropertyHandler()"><B>WebDAVResponseBuilder.CollectionPropertyHandler()</B></A> - 
Constructor for class org.apache.wink.webdav.server.<A HREF="./org/apache/wink/webdav/server/WebDAVResponseBuilder.CollectionPropertyHandler.html" title="class in org.apache.wink.webdav.server">WebDAVResponseBuilder.CollectionPropertyHandler</A>
<DD>Constructs a CollectionPropertyProvider that is also the property
 handler for the entries
<DT><A HREF="./org/apache/wink/webdav/server/WebDAVResponseBuilder.CollectionPropertyHandler.html#WebDAVResponseBuilder.CollectionPropertyHandler(org.apache.wink.webdav.server.WebDAVResponseBuilder.PropertyHandler)"><B>WebDAVResponseBuilder.CollectionPropertyHandler(WebDAVResponseBuilder.PropertyHandler)</B></A> - 
Constructor for class org.apache.wink.webdav.server.<A HREF="./org/apache/wink/webdav/server/WebDAVResponseBuilder.CollectionPropertyHandler.html" title="class in org.apache.wink.webdav.server">WebDAVResponseBuilder.CollectionPropertyHandler</A>
<DD>Constructor accepting another <A HREF="./org/apache/wink/webdav/server/WebDAVResponseBuilder.PropertyHandler.html" title="class in org.apache.wink.webdav.server"><CODE>WebDAVResponseBuilder.PropertyHandler</CODE></A> to provide
 properties for the entries in the collection.
<DT><A HREF="./org/apache/wink/webdav/server/WebDAVResponseBuilder.PropertyHandler.html" title="class in org.apache.wink.webdav.server"><B>WebDAVResponseBuilder.PropertyHandler</B></A> - Class in <A HREF="./org/apache/wink/webdav/server/package-summary.html">org.apache.wink.webdav.server</A><DD>Used during the creation of a WebDAV multistatus response to get the
 properties and their values.<DT><A HREF="./org/apache/wink/webdav/server/WebDAVResponseBuilder.PropertyHandler.html#WebDAVResponseBuilder.PropertyHandler()"><B>WebDAVResponseBuilder.PropertyHandler()</B></A> - 
Constructor for class org.apache.wink.webdav.server.<A HREF="./org/apache/wink/webdav/server/WebDAVResponseBuilder.PropertyHandler.html" title="class in org.apache.wink.webdav.server">WebDAVResponseBuilder.PropertyHandler</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/server/WebDAVRootResource.html" title="class in org.apache.wink.webdav.server"><B>WebDAVRootResource</B></A> - Class in <A HREF="./org/apache/wink/webdav/server/package-summary.html">org.apache.wink.webdav.server</A><DD>&nbsp;<DT><A HREF="./org/apache/wink/webdav/server/WebDAVRootResource.html#WebDAVRootResource()"><B>WebDAVRootResource()</B></A> - 
Constructor for class org.apache.wink.webdav.server.<A HREF="./org/apache/wink/webdav/server/WebDAVRootResource.html" title="class in org.apache.wink.webdav.server">WebDAVRootResource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/server/WebDAVUtils.html" title="class in org.apache.wink.webdav.server"><B>WebDAVUtils</B></A> - Class in <A HREF="./org/apache/wink/webdav/server/package-summary.html">org.apache.wink.webdav.server</A><DD>&nbsp;<DT><A HREF="./org/apache/wink/webdav/server/WebDAVUtils.html#WebDAVUtils()"><B>WebDAVUtils()</B></A> - 
Constructor for class org.apache.wink.webdav.server.<A HREF="./org/apache/wink/webdav/server/WebDAVUtils.html" title="class in org.apache.wink.webdav.server">WebDAVUtils</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/rss/RssChannel.html#webMaster"><B>webMaster</B></A> - 
Variable in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssChannel.html" title="class in org.apache.wink.common.model.rss">RssChannel</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/opensearch/OpenSearchImage.html#width"><B>width</B></A> - 
Variable in class org.apache.wink.common.model.opensearch.<A HREF="./org/apache/wink/common/model/opensearch/OpenSearchImage.html" title="class in org.apache.wink.common.model.opensearch">OpenSearchImage</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/rss/RssImage.html#width"><B>width</B></A> - 
Variable in class org.apache.wink.common.model.rss.<A HREF="./org/apache/wink/common/model/rss/RssImage.html" title="class in org.apache.wink.common.model.rss">RssImage</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/WinkApplication.html" title="class in org.apache.wink.common"><B>WinkApplication</B></A> - Class in <A HREF="./org/apache/wink/common/package-summary.html">org.apache.wink.common</A><DD>Enhances javax.ws.rs.core.Application with <tt>getPriority</tt> and
 <tt>getInstances</tt> methods.<DT><A HREF="./org/apache/wink/common/WinkApplication.html#WinkApplication()"><B>WinkApplication()</B></A> - 
Constructor for class org.apache.wink.common.<A HREF="./org/apache/wink/common/WinkApplication.html" title="class in org.apache.wink.common">WinkApplication</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/providers/jackson/WinkJacksonJaxbJsonProvider.html" title="class in org.apache.wink.providers.jackson"><B>WinkJacksonJaxbJsonProvider</B></A> - Class in <A HREF="./org/apache/wink/providers/jackson/package-summary.html">org.apache.wink.providers.jackson</A><DD>&nbsp;<DT><A HREF="./org/apache/wink/providers/jackson/WinkJacksonJaxbJsonProvider.html#WinkJacksonJaxbJsonProvider()"><B>WinkJacksonJaxbJsonProvider()</B></A> - 
Constructor for class org.apache.wink.providers.jackson.<A HREF="./org/apache/wink/providers/jackson/WinkJacksonJaxbJsonProvider.html" title="class in org.apache.wink.providers.jackson">WinkJacksonJaxbJsonProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/logging/WinkLogHandler.html" title="class in org.apache.wink.logging"><B>WinkLogHandler</B></A> - Class in <A HREF="./org/apache/wink/logging/package-summary.html">org.apache.wink.logging</A><DD>&nbsp;<DT><A HREF="./org/apache/wink/logging/WinkLogHandler.html#WinkLogHandler()"><B>WinkLogHandler()</B></A> - 
Constructor for class org.apache.wink.logging.<A HREF="./org/apache/wink/logging/WinkLogHandler.html" title="class in org.apache.wink.logging">WinkLogHandler</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/logging/WinkLogHandler.LEVEL.html" title="enum in org.apache.wink.logging"><B>WinkLogHandler.LEVEL</B></A> - Enum in <A HREF="./org/apache/wink/logging/package-summary.html">org.apache.wink.logging</A><DD>&nbsp;<DT><A HREF="./org/apache/wink/providers/protobuf/WinkProtobufProvider.html" title="class in org.apache.wink.providers.protobuf"><B>WinkProtobufProvider</B></A> - Class in <A HREF="./org/apache/wink/providers/protobuf/package-summary.html">org.apache.wink.providers.protobuf</A><DD>JAX-RS message provider for Google Protocol Buffer<DT><A HREF="./org/apache/wink/providers/protobuf/WinkProtobufProvider.html#WinkProtobufProvider()"><B>WinkProtobufProvider()</B></A> - 
Constructor for class org.apache.wink.providers.protobuf.<A HREF="./org/apache/wink/providers/protobuf/WinkProtobufProvider.html" title="class in org.apache.wink.providers.protobuf">WinkProtobufProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/osgi/WinkRequestProcessor.html" title="class in org.apache.wink.osgi"><B>WinkRequestProcessor</B></A> - Class in <A HREF="./org/apache/wink/osgi/package-summary.html">org.apache.wink.osgi</A><DD>This component listens to registrations of services of type <code>java.lang.Object</code>
 with the property <code>javax.ws.rs</code> set to true and registers them with the 
 Wink RequestProcessor.<DT><A HREF="./org/apache/wink/osgi/WinkRequestProcessor.html#WinkRequestProcessor()"><B>WinkRequestProcessor()</B></A> - 
Constructor for class org.apache.wink.osgi.<A HREF="./org/apache/wink/osgi/WinkRequestProcessor.html" title="class in org.apache.wink.osgi">WinkRequestProcessor</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/providers/thrift/WinkThriftProvider.html" title="class in org.apache.wink.providers.thrift"><B>WinkThriftProvider</B></A> - Class in <A HREF="./org/apache/wink/providers/thrift/package-summary.html">org.apache.wink.providers.thrift</A><DD>JAX-RS message provider for Apache Thrift<DT><A HREF="./org/apache/wink/providers/thrift/WinkThriftProvider.html#WinkThriftProvider()"><B>WinkThriftProvider()</B></A> - 
Constructor for class org.apache.wink.providers.thrift.<A HREF="./org/apache/wink/providers/thrift/WinkThriftProvider.html" title="class in org.apache.wink.providers.thrift">WinkThriftProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/annotations/Workspace.html" title="annotation in org.apache.wink.common.annotations"><B>Workspace</B></A> - Annotation Type in <A HREF="./org/apache/wink/common/annotations/package-summary.html">org.apache.wink.common.annotations</A><DD>Allows automatic contruction of APP service document.<DT><A HREF="./org/apache/wink/common/model/app/AppService.html#workspace"><B>workspace</B></A> - 
Variable in class org.apache.wink.common.model.app.<A HREF="./org/apache/wink/common/model/app/AppService.html" title="class in org.apache.wink.common.model.app">AppService</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/multipart/OutMultiPart.html#write(java.io.OutputStream, javax.ws.rs.ext.Providers)"><B>write(OutputStream, Providers)</B></A> - 
Method in class org.apache.wink.common.model.multipart.<A HREF="./org/apache/wink/common/model/multipart/OutMultiPart.html" title="class in org.apache.wink.common.model.multipart">OutMultiPart</A>
<DD>This method write the multiPart message to the os stream, it make a usage
 of the providers for the serialization of the parts
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONArrayDelegate.html#write(java.io.Writer)"><B>write(Writer)</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONArrayDelegate.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONArrayDelegate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONObjectDelegate.html#write(java.io.Writer)"><B>write(Writer)</B></A> - 
Method in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONObjectDelegate.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONObjectDelegate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONArray.html#write(java.io.Writer)"><B>write(Writer)</B></A> - 
Method in interface org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONArray.html" title="interface in org.apache.wink.json4j.compat">JSONArray</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/compat/JSONObject.html#write(java.io.Writer)"><B>write(Writer)</B></A> - 
Method in interface org.apache.wink.json4j.compat.<A HREF="./org/apache/wink/json4j/compat/JSONObject.html" title="interface in org.apache.wink.json4j.compat">JSONObject</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/JSONArray.html#write(java.io.OutputStream)"><B>write(OutputStream)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONArray.html" title="class in org.apache.wink.json4j">JSONArray</A>
<DD>Convert this object into a stream of JSON text.
<DT><A HREF="./org/apache/wink/json4j/JSONArray.html#write(java.io.OutputStream, boolean)"><B>write(OutputStream, boolean)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONArray.html" title="class in org.apache.wink.json4j">JSONArray</A>
<DD>Convert this object into a stream of JSON text.
<DT><A HREF="./org/apache/wink/json4j/JSONArray.html#write(java.io.OutputStream, int)"><B>write(OutputStream, int)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONArray.html" title="class in org.apache.wink.json4j">JSONArray</A>
<DD>Convert this object into a String of JSON text, specifying how many spaces should
 be used for each indent level.
<DT><A HREF="./org/apache/wink/json4j/JSONArray.html#write(java.io.Writer)"><B>write(Writer)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONArray.html" title="class in org.apache.wink.json4j">JSONArray</A>
<DD>Convert this object into a stream of JSON text.
<DT><A HREF="./org/apache/wink/json4j/JSONArray.html#write(java.io.Writer, boolean)"><B>write(Writer, boolean)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONArray.html" title="class in org.apache.wink.json4j">JSONArray</A>
<DD>Convert this object into a stream of JSON text, specifying verbosity.
<DT><A HREF="./org/apache/wink/json4j/JSONArray.html#write(java.io.Writer, int)"><B>write(Writer, int)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONArray.html" title="class in org.apache.wink.json4j">JSONArray</A>
<DD>Convert this array into a stream of JSON text, specifying verbosity.
<DT><A HREF="./org/apache/wink/json4j/JSONArray.html#write(boolean)"><B>write(boolean)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONArray.html" title="class in org.apache.wink.json4j">JSONArray</A>
<DD>Convert this object into a String of JSON text, specifying verbosity.
<DT><A HREF="./org/apache/wink/json4j/JSONArray.html#write(int)"><B>write(int)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONArray.html" title="class in org.apache.wink.json4j">JSONArray</A>
<DD>Convert this array into a String of JSON text, specifying verbosity.
<DT><A HREF="./org/apache/wink/json4j/JSONArray.html#write()"><B>write()</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONArray.html" title="class in org.apache.wink.json4j">JSONArray</A>
<DD>Convert this object into a String of JSON text.
<DT><A HREF="./org/apache/wink/json4j/JSONArtifact.html#write(java.io.OutputStream)"><B>write(OutputStream)</B></A> - 
Method in interface org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONArtifact.html" title="interface in org.apache.wink.json4j">JSONArtifact</A>
<DD>Write this object to the stream as JSON text in UTF-8 encoding.
<DT><A HREF="./org/apache/wink/json4j/JSONArtifact.html#write(java.io.OutputStream, boolean)"><B>write(OutputStream, boolean)</B></A> - 
Method in interface org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONArtifact.html" title="interface in org.apache.wink.json4j">JSONArtifact</A>
<DD>Write this object to the stream as JSON text in UTF-8 encoding, specifying whether to use verbose (tab-indented) output or not.
<DT><A HREF="./org/apache/wink/json4j/JSONArtifact.html#write(java.io.OutputStream, int)"><B>write(OutputStream, int)</B></A> - 
Method in interface org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONArtifact.html" title="interface in org.apache.wink.json4j">JSONArtifact</A>
<DD>Write this object to the stream as JSON text in UTF-8 encoding, specifying how many spaces should be used for each indent.
<DT><A HREF="./org/apache/wink/json4j/JSONArtifact.html#write(java.io.Writer)"><B>write(Writer)</B></A> - 
Method in interface org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONArtifact.html" title="interface in org.apache.wink.json4j">JSONArtifact</A>
<DD>Write this object to the writer as JSON text.
<DT><A HREF="./org/apache/wink/json4j/JSONArtifact.html#write(java.io.Writer, boolean)"><B>write(Writer, boolean)</B></A> - 
Method in interface org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONArtifact.html" title="interface in org.apache.wink.json4j">JSONArtifact</A>
<DD>Writer this object to the writer as JSON text, specifying whether to use verbose (tab-indented) output or not.
<DT><A HREF="./org/apache/wink/json4j/JSONArtifact.html#write(java.io.Writer, int)"><B>write(Writer, int)</B></A> - 
Method in interface org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONArtifact.html" title="interface in org.apache.wink.json4j">JSONArtifact</A>
<DD>Write this object to the writer as JSON text, specifying how many spaces should be used for each indent.
<DT><A HREF="./org/apache/wink/json4j/JSONArtifact.html#write(boolean)"><B>write(boolean)</B></A> - 
Method in interface org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONArtifact.html" title="interface in org.apache.wink.json4j">JSONArtifact</A>
<DD>Convert this object into a String of JSON text, specifying whether to use verbose (tab-indented) output or not.
<DT><A HREF="./org/apache/wink/json4j/JSONArtifact.html#write(int)"><B>write(int)</B></A> - 
Method in interface org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONArtifact.html" title="interface in org.apache.wink.json4j">JSONArtifact</A>
<DD>Convert this object into a String of JSON text, specifying how many spaces should be used for each indent.
<DT><A HREF="./org/apache/wink/json4j/JSONArtifact.html#write()"><B>write()</B></A> - 
Method in interface org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONArtifact.html" title="interface in org.apache.wink.json4j">JSONArtifact</A>
<DD>Convert this object into a String of JSON text.
<DT><A HREF="./org/apache/wink/json4j/JSONObject.html#write(java.io.OutputStream)"><B>write(OutputStream)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONObject.html" title="class in org.apache.wink.json4j">JSONObject</A>
<DD>Write this object to the stream as JSON text in UTF-8 encoding.
<DT><A HREF="./org/apache/wink/json4j/JSONObject.html#write(java.io.OutputStream, boolean)"><B>write(OutputStream, boolean)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONObject.html" title="class in org.apache.wink.json4j">JSONObject</A>
<DD>Convert this object into a stream of JSON text.
<DT><A HREF="./org/apache/wink/json4j/JSONObject.html#write(java.io.OutputStream, int)"><B>write(OutputStream, int)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONObject.html" title="class in org.apache.wink.json4j">JSONObject</A>
<DD>Write this object to the stream as JSON text in UTF-8 encoding, specifying how many spaces should be used for each indent.
<DT><A HREF="./org/apache/wink/json4j/JSONObject.html#write(java.io.Writer)"><B>write(Writer)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONObject.html" title="class in org.apache.wink.json4j">JSONObject</A>
<DD>Write this object to the writer as JSON text.
<DT><A HREF="./org/apache/wink/json4j/JSONObject.html#write(java.io.Writer, boolean)"><B>write(Writer, boolean)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONObject.html" title="class in org.apache.wink.json4j">JSONObject</A>
<DD>Write this object to the writer as JSON text in UTF-8 encoding, specifying whether to use verbose (tab-indented) output or not.
<DT><A HREF="./org/apache/wink/json4j/JSONObject.html#write(java.io.Writer, int)"><B>write(Writer, int)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONObject.html" title="class in org.apache.wink.json4j">JSONObject</A>
<DD>Write this object to the writer as JSON text, specifying how many spaces should be used for each indent.
<DT><A HREF="./org/apache/wink/json4j/JSONObject.html#write(int)"><B>write(int)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONObject.html" title="class in org.apache.wink.json4j">JSONObject</A>
<DD>Convert this object into a String of JSON text, specifying how many spaces should be used for each indent.
<DT><A HREF="./org/apache/wink/json4j/JSONObject.html#write(boolean)"><B>write(boolean)</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONObject.html" title="class in org.apache.wink.json4j">JSONObject</A>
<DD>Convert this object into a String of JSON text, specifying whether to use verbose (tab-indented) output or not.
<DT><A HREF="./org/apache/wink/json4j/JSONObject.html#write()"><B>write()</B></A> - 
Method in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONObject.html" title="class in org.apache.wink.json4j">JSONObject</A>
<DD>Convert this object into a String of JSON text.
<DT><A HREF="./org/apache/wink/webdav/model/Locktype.html#write"><B>write</B></A> - 
Variable in class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Locktype.html" title="class in org.apache.wink.webdav.model">Locktype</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/webdav/model/Write.html" title="class in org.apache.wink.webdav.model"><B>Write</B></A> - Class in <A HREF="./org/apache/wink/webdav/model/package-summary.html">org.apache.wink.webdav.model</A><DD>The <code>write</code> XML element per the WebDAV specification [RFC 4918]<DT><A HREF="./org/apache/wink/webdav/model/Write.html#Write()"><B>Write()</B></A> - 
Constructor for class org.apache.wink.webdav.model.<A HREF="./org/apache/wink/webdav/model/Write.html" title="class in org.apache.wink.webdav.model">Write</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/multipart/OutPart.html#writeBody(java.io.OutputStream, javax.ws.rs.ext.Providers)"><B>writeBody(OutputStream, Providers)</B></A> - 
Method in class org.apache.wink.common.model.multipart.<A HREF="./org/apache/wink/common/model/multipart/OutPart.html" title="class in org.apache.wink.common.model.multipart">OutPart</A>
<DD>write the part body to the os stream, the providers might be used to
 serialize the body
<DT><A HREF="./org/apache/wink/common/model/multipart/OutPart.html#writePart(java.io.OutputStream, javax.ws.rs.ext.Providers)"><B>writePart(OutputStream, Providers)</B></A> - 
Method in class org.apache.wink.common.model.multipart.<A HREF="./org/apache/wink/common/model/multipart/OutPart.html" title="class in org.apache.wink.common.model.multipart">OutPart</A>
<DD>write the entire part to the os stream, the providers might be used to serialize the body
<DT><A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONWriterDelegate.html#writer"><B>writer</B></A> - 
Variable in class org.apache.wink.json4j.compat.impl.<A HREF="./org/apache/wink/json4j/compat/impl/ApacheJSONWriterDelegate.html" title="class in org.apache.wink.json4j.compat.impl">ApacheJSONWriterDelegate</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/JSONWriter.html#writer"><B>writer</B></A> - 
Variable in class org.apache.wink.json4j.<A HREF="./org/apache/wink/json4j/JSONWriter.html" title="class in org.apache.wink.json4j">JSONWriter</A>
<DD>The writer to use to output JSON in a semi-streaming fashion.
<DT><A HREF="./org/apache/wink/providers/abdera/AbderaAtomEntryProvider.html#writeTo(org.apache.abdera.model.Entry, java.lang.Class, java.lang.reflect.Type, java.lang.annotation.Annotation[], javax.ws.rs.core.MediaType, javax.ws.rs.core.MultivaluedMap, java.io.OutputStream)"><B>writeTo(Entry, Class&lt;?&gt;, Type, Annotation[], MediaType, MultivaluedMap&lt;String, Object&gt;, OutputStream)</B></A> - 
Method in class org.apache.wink.providers.abdera.<A HREF="./org/apache/wink/providers/abdera/AbderaAtomEntryProvider.html" title="class in org.apache.wink.providers.abdera">AbderaAtomEntryProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/providers/abdera/AbderaAtomFeedProvider.html#writeTo(org.apache.abdera.model.Feed, java.lang.Class, java.lang.reflect.Type, java.lang.annotation.Annotation[], javax.ws.rs.core.MediaType, javax.ws.rs.core.MultivaluedMap, java.io.OutputStream)"><B>writeTo(Feed, Class&lt;?&gt;, Type, Annotation[], MediaType, MultivaluedMap&lt;String, Object&gt;, OutputStream)</B></A> - 
Method in class org.apache.wink.providers.abdera.<A HREF="./org/apache/wink/providers/abdera/AbderaAtomFeedProvider.html" title="class in org.apache.wink.providers.abdera">AbderaAtomFeedProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/providers/jettison/JettisonJAXBElementProvider.html#writeTo(javax.xml.bind.JAXBElement, java.lang.Class, java.lang.reflect.Type, java.lang.annotation.Annotation[], javax.ws.rs.core.MediaType, javax.ws.rs.core.MultivaluedMap, java.io.OutputStream)"><B>writeTo(JAXBElement&lt;?&gt;, Class&lt;?&gt;, Type, Annotation[], MediaType, MultivaluedMap&lt;String, Object&gt;, OutputStream)</B></A> - 
Method in class org.apache.wink.providers.jettison.<A HREF="./org/apache/wink/providers/jettison/JettisonJAXBElementProvider.html" title="class in org.apache.wink.providers.jettison">JettisonJAXBElementProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/providers/jettison/JettisonJAXBProvider.html#writeTo(java.lang.Object, java.lang.Class, java.lang.reflect.Type, java.lang.annotation.Annotation[], javax.ws.rs.core.MediaType, javax.ws.rs.core.MultivaluedMap, java.io.OutputStream)"><B>writeTo(Object, Class&lt;?&gt;, Type, Annotation[], MediaType, MultivaluedMap&lt;String, Object&gt;, OutputStream)</B></A> - 
Method in class org.apache.wink.providers.jettison.<A HREF="./org/apache/wink/providers/jettison/JettisonJAXBProvider.html" title="class in org.apache.wink.providers.jettison">JettisonJAXBProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/providers/json/JsonArrayProvider.html#writeTo(org.json.JSONArray, java.lang.Class, java.lang.reflect.Type, java.lang.annotation.Annotation[], javax.ws.rs.core.MediaType, javax.ws.rs.core.MultivaluedMap, java.io.OutputStream)"><B>writeTo(JSONArray, Class&lt;?&gt;, Type, Annotation[], MediaType, MultivaluedMap&lt;String, Object&gt;, OutputStream)</B></A> - 
Method in class org.apache.wink.providers.json.<A HREF="./org/apache/wink/providers/json/JsonArrayProvider.html" title="class in org.apache.wink.providers.json">JsonArrayProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/providers/json/JsonJAXBProvider.html#writeTo(java.lang.Object, java.lang.Class, java.lang.reflect.Type, java.lang.annotation.Annotation[], javax.ws.rs.core.MediaType, javax.ws.rs.core.MultivaluedMap, java.io.OutputStream)"><B>writeTo(Object, Class&lt;?&gt;, Type, Annotation[], MediaType, MultivaluedMap&lt;String, Object&gt;, OutputStream)</B></A> - 
Method in class org.apache.wink.providers.json.<A HREF="./org/apache/wink/providers/json/JsonJAXBProvider.html" title="class in org.apache.wink.providers.json">JsonJAXBProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/providers/json/JsonProvider.html#writeTo(org.json.JSONObject, java.lang.Class, java.lang.reflect.Type, java.lang.annotation.Annotation[], javax.ws.rs.core.MediaType, javax.ws.rs.core.MultivaluedMap, java.io.OutputStream)"><B>writeTo(JSONObject, Class&lt;?&gt;, Type, Annotation[], MediaType, MultivaluedMap&lt;String, Object&gt;, OutputStream)</B></A> - 
Method in class org.apache.wink.providers.json.<A HREF="./org/apache/wink/providers/json/JsonProvider.html" title="class in org.apache.wink.providers.json">JsonProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/providers/json4j/JSON4JArrayProvider.html#writeTo(org.apache.wink.json4j.JSONArray, java.lang.Class, java.lang.reflect.Type, java.lang.annotation.Annotation[], javax.ws.rs.core.MediaType, javax.ws.rs.core.MultivaluedMap, java.io.OutputStream)"><B>writeTo(JSONArray, Class&lt;?&gt;, Type, Annotation[], MediaType, MultivaluedMap&lt;String, Object&gt;, OutputStream)</B></A> - 
Method in class org.apache.wink.providers.json4j.<A HREF="./org/apache/wink/providers/json4j/JSON4JArrayProvider.html" title="class in org.apache.wink.providers.json4j">JSON4JArrayProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/providers/json4j/JSON4JObjectProvider.html#writeTo(org.apache.wink.json4j.JSONObject, java.lang.Class, java.lang.reflect.Type, java.lang.annotation.Annotation[], javax.ws.rs.core.MediaType, javax.ws.rs.core.MultivaluedMap, java.io.OutputStream)"><B>writeTo(JSONObject, Class&lt;?&gt;, Type, Annotation[], MediaType, MultivaluedMap&lt;String, Object&gt;, OutputStream)</B></A> - 
Method in class org.apache.wink.providers.json4j.<A HREF="./org/apache/wink/providers/json4j/JSON4JObjectProvider.html" title="class in org.apache.wink.providers.json4j">JSON4JObjectProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/providers/protobuf/WinkProtobufProvider.html#writeTo(com.google.protobuf.Message, java.lang.Class, java.lang.reflect.Type, java.lang.annotation.Annotation[], javax.ws.rs.core.MediaType, javax.ws.rs.core.MultivaluedMap, java.io.OutputStream)"><B>writeTo(Message, Class&lt;?&gt;, Type, Annotation[], MediaType, MultivaluedMap&lt;String, Object&gt;, OutputStream)</B></A> - 
Method in class org.apache.wink.providers.protobuf.<A HREF="./org/apache/wink/providers/protobuf/WinkProtobufProvider.html" title="class in org.apache.wink.providers.protobuf">WinkProtobufProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/providers/thrift/WinkThriftProvider.html#writeTo(org.apache.thrift.TBase, java.lang.Class, java.lang.reflect.Type, java.lang.annotation.Annotation[], javax.ws.rs.core.MediaType, javax.ws.rs.core.MultivaluedMap, java.io.OutputStream)"><B>writeTo(TBase, Class&lt;?&gt;, Type, Annotation[], MediaType, MultivaluedMap&lt;String, Object&gt;, OutputStream)</B></A> - 
Method in class org.apache.wink.providers.thrift.<A HREF="./org/apache/wink/providers/thrift/WinkThriftProvider.html" title="class in org.apache.wink.providers.thrift">WinkThriftProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/utils/ProviderUtils.html#writeToStream(java.lang.String, java.io.OutputStream, javax.ws.rs.core.MediaType)"><B>writeToStream(String, OutputStream, MediaType)</B></A> - 
Static method in class org.apache.wink.common.utils.<A HREF="./org/apache/wink/common/utils/ProviderUtils.html" title="class in org.apache.wink.common.utils">ProviderUtils</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/utils/ProviderUtils.html#writeToString(javax.ws.rs.ext.Providers, java.lang.Object, javax.ws.rs.core.MediaType)"><B>writeToString(Providers, Object, MediaType)</B></A> - 
Static method in class org.apache.wink.common.utils.<A HREF="./org/apache/wink/common/utils/ProviderUtils.html" title="class in org.apache.wink.common.utils">ProviderUtils</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/utils/ProviderUtils.html#writeToString(javax.ws.rs.ext.Providers, java.lang.Object, java.lang.Class, javax.ws.rs.core.MediaType)"><B>writeToString(Providers, Object, Class&lt;?&gt;, MediaType)</B></A> - 
Static method in class org.apache.wink.common.utils.<A HREF="./org/apache/wink/common/utils/ProviderUtils.html" title="class in org.apache.wink.common.utils">ProviderUtils</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/utils/ProviderUtils.html#writeToString(javax.ws.rs.ext.Providers, java.lang.Object, java.lang.Class, java.lang.reflect.Type, javax.ws.rs.core.MediaType)"><B>writeToString(Providers, Object, Class&lt;?&gt;, Type, MediaType)</B></A> - 
Static method in class org.apache.wink.common.utils.<A HREF="./org/apache/wink/common/utils/ProviderUtils.html" title="class in org.apache.wink.common.utils">ProviderUtils</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/utils/ProviderUtils.html#writeToString(javax.ws.rs.ext.Providers, java.lang.Object, java.lang.Class, java.lang.reflect.Type, javax.ws.rs.core.MultivaluedMap, javax.ws.rs.core.MediaType)"><B>writeToString(Providers, Object, Class&lt;?&gt;, Type, MultivaluedMap&lt;String, Object&gt;, MediaType)</B></A> - 
Static method in class org.apache.wink.common.utils.<A HREF="./org/apache/wink/common/utils/ProviderUtils.html" title="class in org.apache.wink.common.utils">ProviderUtils</A>
<DD>&nbsp;
</DL>
<HR>
<A NAME="_X_"><!-- --></A><H2>
<B>X</B></H2>
<DL>
<DT><A HREF="./org/apache/wink/common/http/HttpHeadersEx.html#X_HTTP_METHOD_OVERRIDE"><B>X_HTTP_METHOD_OVERRIDE</B></A> - 
Static variable in class org.apache.wink.common.http.<A HREF="./org/apache/wink/common/http/HttpHeadersEx.html" title="class in org.apache.wink.common.http">HttpHeadersEx</A>
<DD>Non RFC 2616 - Google Doc convention
<DT><A HREF="./org/apache/wink/common/http/HttpHeadersEx.html#X_METHOD_OVERRIDE"><B>X_METHOD_OVERRIDE</B></A> - 
Static variable in class org.apache.wink.common.http.<A HREF="./org/apache/wink/common/http/HttpHeadersEx.html" title="class in org.apache.wink.common.http">HttpHeadersEx</A>
<DD>Non RFC 2616 - Some client implementing Google Doc
<DT><A HREF="./org/apache/wink/common/RestConstants.html#XHTML_PREFIX"><B>XHTML_PREFIX</B></A> - 
Static variable in class org.apache.wink.common.<A HREF="./org/apache/wink/common/RestConstants.html" title="class in org.apache.wink.common">RestConstants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/json4j/utils/XML.html" title="class in org.apache.wink.json4j.utils"><B>XML</B></A> - Class in <A HREF="./org/apache/wink/json4j/utils/package-summary.html">org.apache.wink.json4j.utils</A><DD>This class is a static helper for various ways of converting an XML document/InputStream 
 into a JSON stream or String and vice-versa.<DT><A HREF="./org/apache/wink/json4j/utils/XML.html#XML()"><B>XML()</B></A> - 
Constructor for class org.apache.wink.json4j.utils.<A HREF="./org/apache/wink/json4j/utils/XML.html" title="class in org.apache.wink.json4j.utils">XML</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/XmlFormattingOptions.html" title="class in org.apache.wink.common.model"><B>XmlFormattingOptions</B></A> - Class in <A HREF="./org/apache/wink/common/model/package-summary.html">org.apache.wink.common.model</A><DD>Holds the following XML Formatting Options:
 
 omitXmlDeclaration - indicates if xml declaration should be omitted.<DT><A HREF="./org/apache/wink/common/model/XmlFormattingOptions.html#XmlFormattingOptions()"><B>XmlFormattingOptions()</B></A> - 
Constructor for class org.apache.wink.common.model.<A HREF="./org/apache/wink/common/model/XmlFormattingOptions.html" title="class in org.apache.wink.common.model">XmlFormattingOptions</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/XmlFormattingOptions.html#XmlFormattingOptions(boolean, boolean)"><B>XmlFormattingOptions(boolean, boolean)</B></A> - 
Constructor for class org.apache.wink.common.model.<A HREF="./org/apache/wink/common/model/XmlFormattingOptions.html" title="class in org.apache.wink.common.model">XmlFormattingOptions</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/wink/common/model/XmlFormattingOptions.html#XmlFormattingOptions(java.util.Map)"><B>XmlFormattingOptions(Map&lt;String, Object&gt;)</B></A> - 
Constructor for class org.apache.wink.common.model.<A HREF="./org/apache/wink/common/model/XmlFormattingOptions.html" title="class in org.apache.wink.common.model">XmlFormattingOptions</A>
<DD>&nbsp;
</DL>
<HR>
<A NAME="___"><!-- --></A><H2>
<B>_</B></H2>
<DL>
<DT><A HREF="./org/apache/wink/common/model/wadl/Param.html#_default"><B>_default</B></A> - 
Variable in class org.apache.wink.common.model.wadl.<A HREF="./org/apache/wink/common/model/wadl/Param.html" title="class in org.apache.wink.common.model.wadl">Param</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="#_K_">K</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="#___">_</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; 2009-2013 <a href="http://www.apache.org/">The Apache Software Foundation</a>. All Rights Reserved.
</BODY>
</HTML>
