<!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 Thu May 03 15:25:56 PDT 2012 -->
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
<TITLE>
Index (Apache Wink 1.2.0-incubating API)
</TITLE>

<META NAME="date" CONTENT="2012-05-03">

<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.2.0-incubating 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/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/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-2012 <a href="http://www.apache.org/">The Apache Software Foundation</a>. All Rights Reserved.
</BODY>
</HTML>
