<!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 Mar 17 10:38:12 PDT 2013 -->
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
<TITLE>
Index (Apache Wink 1.3.0 API)
</TITLE>

<META NAME="date" CONTENT="2013-03-17">

<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.3.0 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/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 <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/javax/xml/bind.JAXBElement.html?is-external=true" title="class or interface in javax.xml"><CODE>JAXBElement</CODE></A><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 <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/javax/xml/bind.JAXBElement.html?is-external=true" title="class or interface in javax.xml"><CODE>JAXBElement</CODE></A><code>&lt;</code><A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang"><CODE>String</CODE></A><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 <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/javax/xml/bind.JAXBElement.html?is-external=true" title="class or interface in javax.xml"><CODE>JAXBElement</CODE></A><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 <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/javax/xml/bind.JAXBElement.html?is-external=true" title="class or interface in javax.xml"><CODE>JAXBElement</CODE></A><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 <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/javax/xml/bind.JAXBElement.html?is-external=true" title="class or interface in javax.xml"><CODE>JAXBElement</CODE></A><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 <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/javax/xml/bind.JAXBElement.html?is-external=true" title="class or interface in javax.xml"><CODE>JAXBElement</CODE></A><code>&lt;</code><A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang"><CODE>String</CODE></A><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 <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/javax/xml/bind.JAXBElement.html?is-external=true" title="class or interface in javax.xml"><CODE>JAXBElement</CODE></A><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 <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/javax/xml/bind.JAXBElement.html?is-external=true" title="class or interface in javax.xml"><CODE>JAXBElement</CODE></A><code>&lt;</code><A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang"><CODE>String</CODE></A><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 <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/javax/xml/bind.JAXBElement.html?is-external=true" title="class or interface in javax.xml"><CODE>JAXBElement</CODE></A><code>&lt;</code><A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang"><CODE>String</CODE></A><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 <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/javax/xml/bind.JAXBElement.html?is-external=true" title="class or interface in javax.xml"><CODE>JAXBElement</CODE></A><code>&lt;</code><A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang"><CODE>String</CODE></A><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 <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/javax/xml/bind.JAXBElement.html?is-external=true" title="class or interface in javax.xml"><CODE>JAXBElement</CODE></A><code>&lt;</code><A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang"><CODE>String</CODE></A><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 <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/javax/xml/bind.JAXBElement.html?is-external=true" title="class or interface in javax.xml"><CODE>JAXBElement</CODE></A><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 <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/javax/xml/bind.JAXBElement.html?is-external=true" title="class or interface in javax.xml"><CODE>JAXBElement</CODE></A><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 <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/javax/xml/bind.JAXBElement.html?is-external=true" title="class or interface in javax.xml"><CODE>JAXBElement</CODE></A><code>&lt;</code><A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang"><CODE>String</CODE></A><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 <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/javax/xml/bind.JAXBElement.html?is-external=true" title="class or interface in javax.xml"><CODE>JAXBElement</CODE></A><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 <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/javax/xml/bind.JAXBElement.html?is-external=true" title="class or interface in javax.xml"><CODE>JAXBElement</CODE></A><code>&lt;</code><A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang"><CODE>String</CODE></A><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 <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/javax/xml/bind.JAXBElement.html?is-external=true" title="class or interface in javax.xml"><CODE>JAXBElement</CODE></A><code>&lt;</code><A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/math/BigInteger.html?is-external=true" title="class or interface in java.math"><CODE>BigInteger</CODE></A>
 <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 <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/javax/xml/bind.JAXBElement.html?is-external=true" title="class or interface in javax.xml"><CODE>JAXBElement</CODE></A><code>&lt;</code><A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang"><CODE>String</CODE></A><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 <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/javax/xml/bind.JAXBElement.html?is-external=true" title="class or interface in javax.xml"><CODE>JAXBElement</CODE></A><code>&lt;</code><A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang"><CODE>String</CODE></A><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 <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/javax/xml/bind.JAXBElement.html?is-external=true" title="class or interface in javax.xml"><CODE>JAXBElement</CODE></A><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 <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/javax/xml/bind.JAXBElement.html?is-external=true" title="class or interface in javax.xml"><CODE>JAXBElement</CODE></A><code>&lt;</code><A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang"><CODE>String</CODE></A><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 <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/javax/xml/bind.JAXBElement.html?is-external=true" title="class or interface in javax.xml"><CODE>JAXBElement</CODE></A><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 <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/javax/xml/bind.JAXBElement.html?is-external=true" title="class or interface in javax.xml"><CODE>JAXBElement</CODE></A><code>&lt;</code><A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang"><CODE>String</CODE></A><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 <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/javax/xml/bind.JAXBElement.html?is-external=true" title="class or interface in javax.xml"><CODE>JAXBElement</CODE></A> <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 <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/javax/xml/bind.JAXBElement.html?is-external=true" title="class or interface in javax.xml"><CODE>JAXBElement</CODE></A> <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 <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/javax/xml/bind.JAXBElement.html?is-external=true" title="class or interface in javax.xml"><CODE>JAXBElement</CODE></A> <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 <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/javax/xml/bind.JAXBElement.html?is-external=true" title="class or interface in javax.xml"><CODE>JAXBElement</CODE></A> <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 <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/javax/xml/bind.JAXBElement.html?is-external=true" title="class or interface in javax.xml"><CODE>JAXBElement</CODE></A> <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 <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/javax/xml/bind.JAXBElement.html?is-external=true" title="class or interface in javax.xml"><CODE>JAXBElement</CODE></A> <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 <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/javax/xml/bind.JAXBElement.html?is-external=true" title="class or interface in javax.xml"><CODE>JAXBElement</CODE></A> <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 <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/javax/xml/bind.JAXBElement.html?is-external=true" title="class or interface in javax.xml"><CODE>JAXBElement</CODE></A> <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 <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/javax/xml/bind.JAXBElement.html?is-external=true" title="class or interface in javax.xml"><CODE>JAXBElement</CODE></A> <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 <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/javax/xml/bind.JAXBElement.html?is-external=true" title="class or interface in javax.xml"><CODE>JAXBElement</CODE></A> <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 <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/javax/xml/bind.JAXBElement.html?is-external=true" title="class or interface in javax.xml"><CODE>JAXBElement</CODE></A> <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 <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/javax/xml/bind.JAXBElement.html?is-external=true" title="class or interface in javax.xml"><CODE>JAXBElement</CODE></A><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 <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/javax/xml/bind.JAXBElement.html?is-external=true" title="class or interface in javax.xml"><CODE>JAXBElement</CODE></A><code>&lt;</code><A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang"><CODE>String</CODE></A><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 <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/javax/xml/bind.JAXBElement.html?is-external=true" title="class or interface in javax.xml"><CODE>JAXBElement</CODE></A><code>&lt;</code><A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang"><CODE>String</CODE></A><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 <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/javax/xml/bind.JAXBElement.html?is-external=true" title="class or interface in javax.xml"><CODE>JAXBElement</CODE></A><code>&lt;</code><A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/math/BigInteger.html?is-external=true" title="class or interface in java.math"><CODE>BigInteger</CODE></A>
 <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 <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/javax/xml/bind.JAXBElement.html?is-external=true" title="class or interface in javax.xml"><CODE>JAXBElement</CODE></A><code>&lt;</code><A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang"><CODE>String</CODE></A><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 <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/javax/xml/bind.JAXBElement.html?is-external=true" title="class or interface in javax.xml"><CODE>JAXBElement</CODE></A><code>&lt;</code><A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang"><CODE>String</CODE></A><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 <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/javax/xml/bind.JAXBElement.html?is-external=true" title="class or interface in javax.xml"><CODE>JAXBElement</CODE></A><code>&lt;</code><A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang"><CODE>String</CODE></A><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 <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/javax/xml/bind.JAXBElement.html?is-external=true" title="class or interface in javax.xml"><CODE>JAXBElement</CODE></A><code>&lt;</code><A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang"><CODE>String</CODE></A><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 <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/javax/xml/bind.JAXBElement.html?is-external=true" title="class or interface in javax.xml"><CODE>JAXBElement</CODE></A><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 <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/javax/xml/bind.JAXBElement.html?is-external=true" title="class or interface in javax.xml"><CODE>JAXBElement</CODE></A><code>&lt;</code><A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/math/BigInteger.html?is-external=true" title="class or interface in java.math"><CODE>BigInteger</CODE></A>
 <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 <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/javax/xml/bind.JAXBElement.html?is-external=true" title="class or interface in javax.xml"><CODE>JAXBElement</CODE></A><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 <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/javax/xml/bind.JAXBElement.html?is-external=true" title="class or interface in javax.xml"><CODE>JAXBElement</CODE></A><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/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/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>
