<!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) on Mon Oct 19 13:38:32 CDT 2009 -->
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
<TITLE>
Resource (Apache Wink 1.0-incubating API)
</TITLE>

<META NAME="date" CONTENT="2009-10-19">

<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="Resource (Apache Wink 1.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">    <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="class-use/Resource.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../serialized-form.html"><FONT CLASS="NavBarFont1"><B>Serialized</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="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&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;<A HREF="../../../../org/apache/wink/client/MockHttpServer.html" title="class in org.apache.wink.client"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../../org/apache/wink/client/RestClient.html" title="class in org.apache.wink.client"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
  <A HREF="../../../../index.html?org/apache/wink/client/Resource.html" target="_top"><B>FRAMES</B></A>  &nbsp;
&nbsp;<A HREF="Resource.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>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
  SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_top"></A>
<!-- ========= END OF TOP NAVBAR ========= -->

<HR>
<!-- ======== START OF CLASS DATA ======== -->
<H2>
<FONT SIZE="-1">
org.apache.wink.client</FONT>
<BR>
Interface Resource</H2>
<HR>
<DL>
<DT><PRE>public interface <B>Resource</B></DL>
</PRE>

<P>
Represents a web resource, enabling the invocation of different http methods
<P>

<P>
<HR>

<P>

<!-- ========== METHOD SUMMARY =========== -->

<A NAME="method_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Method Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../org/apache/wink/client/Resource.html" title="interface in org.apache.wink.client">Resource</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/wink/client/Resource.html#accept(javax.ws.rs.core.MediaType...)">accept</A></B>(javax.ws.rs.core.MediaType...&nbsp;values)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Add values to the Accept header.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../org/apache/wink/client/Resource.html" title="interface in org.apache.wink.client">Resource</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/wink/client/Resource.html#accept(java.lang.String...)">accept</A></B>(java.lang.String...&nbsp;values)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Add values to the Accept header.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../org/apache/wink/client/Resource.html" title="interface in org.apache.wink.client">Resource</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/wink/client/Resource.html#acceptLanguage(java.util.Locale...)">acceptLanguage</A></B>(java.util.Locale...&nbsp;values)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Add values to the Accept-Language header.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../org/apache/wink/client/Resource.html" title="interface in org.apache.wink.client">Resource</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/wink/client/Resource.html#acceptLanguage(java.lang.String...)">acceptLanguage</A></B>(java.lang.String...&nbsp;values)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Add values to the Accept-Language header.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;java.lang.Object</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/wink/client/Resource.html#attribute(java.lang.String)">attribute</A></B>(java.lang.String&nbsp;key)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Get an attribute</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../org/apache/wink/client/Resource.html" title="interface in org.apache.wink.client">Resource</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/wink/client/Resource.html#attribute(java.lang.String, java.lang.Object)">attribute</A></B>(java.lang.String&nbsp;key,
          java.lang.Object&nbsp;value)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Set an attribute on the resource.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../org/apache/wink/client/Resource.html" title="interface in org.apache.wink.client">Resource</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/wink/client/Resource.html#contentType(javax.ws.rs.core.MediaType)">contentType</A></B>(javax.ws.rs.core.MediaType&nbsp;mediaType)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Set the Content-Type header, overriding any previous value.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../org/apache/wink/client/Resource.html" title="interface in org.apache.wink.client">Resource</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/wink/client/Resource.html#contentType(java.lang.String)">contentType</A></B>(java.lang.String&nbsp;mediaType)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Set the Content-Type header, overriding any previous value.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../org/apache/wink/client/Resource.html" title="interface in org.apache.wink.client">Resource</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/wink/client/Resource.html#cookie(javax.ws.rs.core.Cookie)">cookie</A></B>(javax.ws.rs.core.Cookie&nbsp;value)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Add a Cookie value.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../org/apache/wink/client/Resource.html" title="interface in org.apache.wink.client">Resource</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/wink/client/Resource.html#cookie(java.lang.String)">cookie</A></B>(java.lang.String&nbsp;value)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Add a Cookie value.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../org/apache/wink/client/ClientResponse.html" title="interface in org.apache.wink.client">ClientResponse</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/wink/client/Resource.html#delete()">delete</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Invoke the DELETE method</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0" SUMMARY="">
<TR ALIGN="right" VALIGN="">
<TD NOWRAP><FONT SIZE="-1">
<CODE>&lt;T&gt; T</CODE></FONT></TD>
</TR>
</TABLE>
</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/wink/client/Resource.html#delete(java.lang.Class)">delete</A></B>(java.lang.Class&lt;T&gt;&nbsp;responseEntity)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Invoke the DELETE method</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0" SUMMARY="">
<TR ALIGN="right" VALIGN="">
<TD NOWRAP><FONT SIZE="-1">
<CODE>&lt;T&gt; T</CODE></FONT></TD>
</TR>
</TABLE>
</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/wink/client/Resource.html#delete(org.apache.wink.client.EntityType)">delete</A></B>(<A HREF="../../../../org/apache/wink/client/EntityType.html" title="class in org.apache.wink.client">EntityType</A>&lt;T&gt;&nbsp;responseEntity)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Invoke the DELETE method</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../org/apache/wink/client/ClientResponse.html" title="interface in org.apache.wink.client">ClientResponse</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/wink/client/Resource.html#get()">get</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Invoke the GET method</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0" SUMMARY="">
<TR ALIGN="right" VALIGN="">
<TD NOWRAP><FONT SIZE="-1">
<CODE>&lt;T&gt; T</CODE></FONT></TD>
</TR>
</TABLE>
</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/wink/client/Resource.html#get(java.lang.Class)">get</A></B>(java.lang.Class&lt;T&gt;&nbsp;responseEntity)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Invoke the GET method</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0" SUMMARY="">
<TR ALIGN="right" VALIGN="">
<TD NOWRAP><FONT SIZE="-1">
<CODE>&lt;T&gt; T</CODE></FONT></TD>
</TR>
</TABLE>
</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/wink/client/Resource.html#get(org.apache.wink.client.EntityType)">get</A></B>(<A HREF="../../../../org/apache/wink/client/EntityType.html" title="class in org.apache.wink.client">EntityType</A>&lt;T&gt;&nbsp;responseEntity)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Invoke the GET method</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;javax.ws.rs.core.UriBuilder</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/wink/client/Resource.html#getUriBuilder()">getUriBuilder</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Get the <CODE>UriBuilder</CODE> associated with this resource.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../org/apache/wink/client/ClientResponse.html" title="interface in org.apache.wink.client">ClientResponse</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/wink/client/Resource.html#head()">head</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Invoke the HEAD method</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../org/apache/wink/client/Resource.html" title="interface in org.apache.wink.client">Resource</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/wink/client/Resource.html#header(java.lang.String, java.lang.String...)">header</A></B>(java.lang.String&nbsp;name,
       java.lang.String...&nbsp;values)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Add a request header to be used in every invocation</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0" SUMMARY="">
<TR ALIGN="right" VALIGN="">
<TD NOWRAP><FONT SIZE="-1">
<CODE>&lt;T&gt; T</CODE></FONT></TD>
</TR>
</TABLE>
</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/wink/client/Resource.html#invoke(java.lang.String, java.lang.Class, java.lang.Object)">invoke</A></B>(java.lang.String&nbsp;method,
       java.lang.Class&lt;T&gt;&nbsp;responseEntity,
       java.lang.Object&nbsp;requestEntity)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Invoke a request to the uri associated with the resource, and with any
 headers and attributes set on the resource.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0" SUMMARY="">
<TR ALIGN="right" VALIGN="">
<TD NOWRAP><FONT SIZE="-1">
<CODE>&lt;T&gt; T</CODE></FONT></TD>
</TR>
</TABLE>
</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/wink/client/Resource.html#invoke(java.lang.String, org.apache.wink.client.EntityType, java.lang.Object)">invoke</A></B>(java.lang.String&nbsp;method,
       <A HREF="../../../../org/apache/wink/client/EntityType.html" title="class in org.apache.wink.client">EntityType</A>&lt;T&gt;&nbsp;responseEntity,
       java.lang.Object&nbsp;requestEntity)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Invoke a request to the uri associated with the resource, and with any
 headers and attributes set on the resource.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../org/apache/wink/client/ClientResponse.html" title="interface in org.apache.wink.client">ClientResponse</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/wink/client/Resource.html#options()">options</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Invoke the OPTIONS method</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0" SUMMARY="">
<TR ALIGN="right" VALIGN="">
<TD NOWRAP><FONT SIZE="-1">
<CODE>&lt;T&gt; T</CODE></FONT></TD>
</TR>
</TABLE>
</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/wink/client/Resource.html#post(java.lang.Class, java.lang.Object)">post</A></B>(java.lang.Class&lt;T&gt;&nbsp;responseEntity,
     java.lang.Object&nbsp;requestEntity)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Invoke the POST method</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0" SUMMARY="">
<TR ALIGN="right" VALIGN="">
<TD NOWRAP><FONT SIZE="-1">
<CODE>&lt;T&gt; T</CODE></FONT></TD>
</TR>
</TABLE>
</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/wink/client/Resource.html#post(org.apache.wink.client.EntityType, java.lang.Object)">post</A></B>(<A HREF="../../../../org/apache/wink/client/EntityType.html" title="class in org.apache.wink.client">EntityType</A>&lt;T&gt;&nbsp;responseEntity,
     java.lang.Object&nbsp;requestEntity)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Invoke the POST method</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../org/apache/wink/client/ClientResponse.html" title="interface in org.apache.wink.client">ClientResponse</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/wink/client/Resource.html#post(java.lang.Object)">post</A></B>(java.lang.Object&nbsp;requestEntity)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Invoke the POST method</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0" SUMMARY="">
<TR ALIGN="right" VALIGN="">
<TD NOWRAP><FONT SIZE="-1">
<CODE>&lt;T&gt; T</CODE></FONT></TD>
</TR>
</TABLE>
</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/wink/client/Resource.html#put(java.lang.Class, java.lang.Object)">put</A></B>(java.lang.Class&lt;T&gt;&nbsp;responseEntity,
    java.lang.Object&nbsp;requestEntity)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Invoke the PUT method</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0" SUMMARY="">
<TR ALIGN="right" VALIGN="">
<TD NOWRAP><FONT SIZE="-1">
<CODE>&lt;T&gt; T</CODE></FONT></TD>
</TR>
</TABLE>
</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/wink/client/Resource.html#put(org.apache.wink.client.EntityType, java.lang.Object)">put</A></B>(<A HREF="../../../../org/apache/wink/client/EntityType.html" title="class in org.apache.wink.client">EntityType</A>&lt;T&gt;&nbsp;responseEntity,
    java.lang.Object&nbsp;requestEntity)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Invoke the PUT method</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../org/apache/wink/client/ClientResponse.html" title="interface in org.apache.wink.client">ClientResponse</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/wink/client/Resource.html#put(java.lang.Object)">put</A></B>(java.lang.Object&nbsp;requestEntity)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Invoke the PUT method</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../org/apache/wink/client/Resource.html" title="interface in org.apache.wink.client">Resource</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/wink/client/Resource.html#queryParam(java.lang.String, java.lang.Object...)">queryParam</A></B>(java.lang.String&nbsp;key,
           java.lang.Object...&nbsp;values)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Add a query parameter to the uri</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../org/apache/wink/client/Resource.html" title="interface in org.apache.wink.client">Resource</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/wink/client/Resource.html#queryParams(javax.ws.rs.core.MultivaluedMap)">queryParams</A></B>(javax.ws.rs.core.MultivaluedMap&lt;java.lang.String,java.lang.String&gt;&nbsp;params)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Add all the query parameters from the provided multivalued map.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../org/apache/wink/client/Resource.html" title="interface in org.apache.wink.client">Resource</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/wink/client/Resource.html#uri(java.lang.String)">uri</A></B>(java.lang.String&nbsp;uri)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Set the uri of this resource and create a new UriBuilder</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../org/apache/wink/client/Resource.html" title="interface in org.apache.wink.client">Resource</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/wink/client/Resource.html#uri(java.net.URI)">uri</A></B>(java.net.URI&nbsp;uri)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Set the uri of this resource and create a new UriBuilder</TD>
</TR>
</TABLE>
&nbsp;
<P>

<!-- ============ METHOD DETAIL ========== -->

<A NAME="method_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Method Detail</B></FONT></TH>
</TR>
</TABLE>

<A NAME="header(java.lang.String, java.lang.String...)"><!-- --></A><H3>
header</H3>
<PRE>
<A HREF="../../../../org/apache/wink/client/Resource.html" title="interface in org.apache.wink.client">Resource</A> <B>header</B>(java.lang.String&nbsp;name,
                java.lang.String...&nbsp;values)</PRE>
<DL>
<DD>Add a request header to be used in every invocation
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>name</CODE> - name of the header to add. the name of the header is case
            insensitive.<DD><CODE>values</CODE> - the values of the header. All of the values will be added
            to the same header, separated by a commas (,).
<DT><B>Returns:</B><DD>this resource instance</DL>
</DD>
</DL>
<HR>

<A NAME="accept(java.lang.String...)"><!-- --></A><H3>
accept</H3>
<PRE>
<A HREF="../../../../org/apache/wink/client/Resource.html" title="interface in org.apache.wink.client">Resource</A> <B>accept</B>(java.lang.String...&nbsp;values)</PRE>
<DL>
<DD>Add values to the Accept header.
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>values</CODE> - accept header values to add
<DT><B>Returns:</B><DD>this resource instance</DL>
</DD>
</DL>
<HR>

<A NAME="accept(javax.ws.rs.core.MediaType...)"><!-- --></A><H3>
accept</H3>
<PRE>
<A HREF="../../../../org/apache/wink/client/Resource.html" title="interface in org.apache.wink.client">Resource</A> <B>accept</B>(javax.ws.rs.core.MediaType...&nbsp;values)</PRE>
<DL>
<DD>Add values to the Accept header.
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>values</CODE> - accept header values to add
<DT><B>Returns:</B><DD>this resource instance</DL>
</DD>
</DL>
<HR>

<A NAME="acceptLanguage(java.lang.String...)"><!-- --></A><H3>
acceptLanguage</H3>
<PRE>
<A HREF="../../../../org/apache/wink/client/Resource.html" title="interface in org.apache.wink.client">Resource</A> <B>acceptLanguage</B>(java.lang.String...&nbsp;values)</PRE>
<DL>
<DD>Add values to the Accept-Language header.
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>values</CODE> - accept-langage header values to add
<DT><B>Returns:</B><DD>this resource instance</DL>
</DD>
</DL>
<HR>

<A NAME="acceptLanguage(java.util.Locale...)"><!-- --></A><H3>
acceptLanguage</H3>
<PRE>
<A HREF="../../../../org/apache/wink/client/Resource.html" title="interface in org.apache.wink.client">Resource</A> <B>acceptLanguage</B>(java.util.Locale...&nbsp;values)</PRE>
<DL>
<DD>Add values to the Accept-Language header.
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>values</CODE> - accept-langage header values to add
<DT><B>Returns:</B><DD>this resource instance</DL>
</DD>
</DL>
<HR>

<A NAME="cookie(java.lang.String)"><!-- --></A><H3>
cookie</H3>
<PRE>
<A HREF="../../../../org/apache/wink/client/Resource.html" title="interface in org.apache.wink.client">Resource</A> <B>cookie</B>(java.lang.String&nbsp;value)</PRE>
<DL>
<DD>Add a Cookie value. Every call to this method will create a new Cookie
 header.
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>value</CODE> - the cookie value to add
<DT><B>Returns:</B><DD>this resource instance</DL>
</DD>
</DL>
<HR>

<A NAME="cookie(javax.ws.rs.core.Cookie)"><!-- --></A><H3>
cookie</H3>
<PRE>
<A HREF="../../../../org/apache/wink/client/Resource.html" title="interface in org.apache.wink.client">Resource</A> <B>cookie</B>(javax.ws.rs.core.Cookie&nbsp;value)</PRE>
<DL>
<DD>Add a Cookie value. Every call to this method will create a new Cookie
 header.
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>value</CODE> - the cookie value to add
<DT><B>Returns:</B><DD>this resource instance</DL>
</DD>
</DL>
<HR>

<A NAME="contentType(java.lang.String)"><!-- --></A><H3>
contentType</H3>
<PRE>
<A HREF="../../../../org/apache/wink/client/Resource.html" title="interface in org.apache.wink.client">Resource</A> <B>contentType</B>(java.lang.String&nbsp;mediaType)</PRE>
<DL>
<DD>Set the Content-Type header, overriding any previous value.
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>mediaType</CODE> - the content type to set
<DT><B>Returns:</B><DD>this resource instance</DL>
</DD>
</DL>
<HR>

<A NAME="contentType(javax.ws.rs.core.MediaType)"><!-- --></A><H3>
contentType</H3>
<PRE>
<A HREF="../../../../org/apache/wink/client/Resource.html" title="interface in org.apache.wink.client">Resource</A> <B>contentType</B>(javax.ws.rs.core.MediaType&nbsp;mediaType)</PRE>
<DL>
<DD>Set the Content-Type header, overriding any previous value.
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>mediaType</CODE> - the content type to set
<DT><B>Returns:</B><DD>this resource instance</DL>
</DD>
</DL>
<HR>

<A NAME="queryParam(java.lang.String, java.lang.Object...)"><!-- --></A><H3>
queryParam</H3>
<PRE>
<A HREF="../../../../org/apache/wink/client/Resource.html" title="interface in org.apache.wink.client">Resource</A> <B>queryParam</B>(java.lang.String&nbsp;key,
                    java.lang.Object...&nbsp;values)</PRE>
<DL>
<DD>Add a query parameter to the uri
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>key</CODE> - the name of the query parameter<DD><CODE>values</CODE> - values of the query parameters. A query parameter will be
            added for every value
<DT><B>Returns:</B><DD>this resource instance</DL>
</DD>
</DL>
<HR>

<A NAME="queryParams(javax.ws.rs.core.MultivaluedMap)"><!-- --></A><H3>
queryParams</H3>
<PRE>
<A HREF="../../../../org/apache/wink/client/Resource.html" title="interface in org.apache.wink.client">Resource</A> <B>queryParams</B>(javax.ws.rs.core.MultivaluedMap&lt;java.lang.String,java.lang.String&gt;&nbsp;params)</PRE>
<DL>
<DD>Add all the query parameters from the provided multivalued map.
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>params</CODE> - multivalued map of parameters.
<DT><B>Returns:</B><DD>this resource instance</DL>
</DD>
</DL>
<HR>

<A NAME="attribute(java.lang.String, java.lang.Object)"><!-- --></A><H3>
attribute</H3>
<PRE>
<A HREF="../../../../org/apache/wink/client/Resource.html" title="interface in org.apache.wink.client">Resource</A> <B>attribute</B>(java.lang.String&nbsp;key,
                   java.lang.Object&nbsp;value)</PRE>
<DL>
<DD>Set an attribute on the resource. All the attributes are available to
 handlers during a request via the <CODE>BaseRequestResponse.getAttributes()</CODE>
 and <CODE>BaseRequestResponse.getAttributes()</CODE> methods.
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>key</CODE> - attribute key<DD><CODE>value</CODE> - attribute value
<DT><B>Returns:</B><DD>this resource instance</DL>
</DD>
</DL>
<HR>

<A NAME="attribute(java.lang.String)"><!-- --></A><H3>
attribute</H3>
<PRE>
java.lang.Object <B>attribute</B>(java.lang.String&nbsp;key)</PRE>
<DL>
<DD>Get an attribute
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>key</CODE> - attribute key
<DT><B>Returns:</B><DD>attribute value, or null if the attribute is not set</DL>
</DD>
</DL>
<HR>

<A NAME="getUriBuilder()"><!-- --></A><H3>
getUriBuilder</H3>
<PRE>
javax.ws.rs.core.UriBuilder <B>getUriBuilder</B>()</PRE>
<DL>
<DD>Get the <CODE>UriBuilder</CODE> associated with this resource. All
 modifications to the builder affect the uri of the resource
<P>
<DD><DL>

<DT><B>Returns:</B><DD>the <CODE>UriBuilder</CODE> associated with this resource</DL>
</DD>
</DL>
<HR>

<A NAME="uri(java.net.URI)"><!-- --></A><H3>
uri</H3>
<PRE>
<A HREF="../../../../org/apache/wink/client/Resource.html" title="interface in org.apache.wink.client">Resource</A> <B>uri</B>(java.net.URI&nbsp;uri)</PRE>
<DL>
<DD>Set the uri of this resource and create a new UriBuilder
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>uri</CODE> - the new uri for this resource
<DT><B>Returns:</B><DD>this resource instance</DL>
</DD>
</DL>
<HR>

<A NAME="uri(java.lang.String)"><!-- --></A><H3>
uri</H3>
<PRE>
<A HREF="../../../../org/apache/wink/client/Resource.html" title="interface in org.apache.wink.client">Resource</A> <B>uri</B>(java.lang.String&nbsp;uri)</PRE>
<DL>
<DD>Set the uri of this resource and create a new UriBuilder
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>uri</CODE> - the new uri for this resource
<DT><B>Returns:</B><DD>this resource instance</DL>
</DD>
</DL>
<HR>

<A NAME="invoke(java.lang.String, java.lang.Class, java.lang.Object)"><!-- --></A><H3>
invoke</H3>
<PRE>
&lt;T&gt; T <B>invoke</B>(java.lang.String&nbsp;method,
             java.lang.Class&lt;T&gt;&nbsp;responseEntity,
             java.lang.Object&nbsp;requestEntity)</PRE>
<DL>
<DD>Invoke a request to the uri associated with the resource, and with any
 headers and attributes set on the resource. If the response code
 represents an error code, then a <A HREF="../../../../org/apache/wink/client/ClientWebException.html" title="class in org.apache.wink.client"><CODE>ClientWebException</CODE></A> is thrown.
<P>
<DD><DL>
<DT><B>Type Parameters:</B><DD><CODE>T</CODE> - the type of response entity to return<DT><B>Parameters:</B><DD><CODE>method</CODE> - the http request method<DD><CODE>responseEntity</CODE> - the class of the response entity to return<DD><CODE>requestEntity</CODE> - the request entity for methods that can send an
            entity (PUT, POST)
<DT><B>Returns:</B><DD>an instance of the response entity as specified by the response
         entity type
<DT><B>Throws:</B>
<DD><CODE><A HREF="../../../../org/apache/wink/client/ClientWebException.html" title="class in org.apache.wink.client">ClientWebException</A></CODE> - if the response code represents an error code</DL>
</DD>
</DL>
<HR>

<A NAME="invoke(java.lang.String, org.apache.wink.client.EntityType, java.lang.Object)"><!-- --></A><H3>
invoke</H3>
<PRE>
&lt;T&gt; T <B>invoke</B>(java.lang.String&nbsp;method,
             <A HREF="../../../../org/apache/wink/client/EntityType.html" title="class in org.apache.wink.client">EntityType</A>&lt;T&gt;&nbsp;responseEntity,
             java.lang.Object&nbsp;requestEntity)</PRE>
<DL>
<DD>Invoke a request to the uri associated with the resource, and with any
 headers and attributes set on the resource. If the response code
 represents an error code, then a <A HREF="../../../../org/apache/wink/client/ClientWebException.html" title="class in org.apache.wink.client"><CODE>ClientWebException</CODE></A> is thrown.
<P>
<DD><DL>
<DT><B>Type Parameters:</B><DD><CODE>T</CODE> - the type of response entity to return<DT><B>Parameters:</B><DD><CODE>method</CODE> - the http request method<DD><CODE>responseEntity</CODE> - an instance of <A HREF="../../../../org/apache/wink/client/EntityType.html" title="class in org.apache.wink.client"><CODE>EntityType</CODE></A> specifying the
            response entity to return<DD><CODE>requestEntity</CODE> - the request entity for methods that can send an
            entity (PUT, POST)
<DT><B>Returns:</B><DD>an instance of the response entity as specified by the response
         entity type
<DT><B>Throws:</B>
<DD><CODE><A HREF="../../../../org/apache/wink/client/ClientWebException.html" title="class in org.apache.wink.client">ClientWebException</A></CODE> - if the response code represents an error code</DL>
</DD>
</DL>
<HR>

<A NAME="head()"><!-- --></A><H3>
head</H3>
<PRE>
<A HREF="../../../../org/apache/wink/client/ClientResponse.html" title="interface in org.apache.wink.client">ClientResponse</A> <B>head</B>()</PRE>
<DL>
<DD>Invoke the HEAD method
<P>
<DD><DL>

<DT><B>Returns:</B><DD>the ClientResponse for the invocation</DL>
</DD>
</DL>
<HR>

<A NAME="options()"><!-- --></A><H3>
options</H3>
<PRE>
<A HREF="../../../../org/apache/wink/client/ClientResponse.html" title="interface in org.apache.wink.client">ClientResponse</A> <B>options</B>()</PRE>
<DL>
<DD>Invoke the OPTIONS method
<P>
<DD><DL>

<DT><B>Returns:</B><DD>the ClientResponse for the invocation</DL>
</DD>
</DL>
<HR>

<A NAME="get(java.lang.Class)"><!-- --></A><H3>
get</H3>
<PRE>
&lt;T&gt; T <B>get</B>(java.lang.Class&lt;T&gt;&nbsp;responseEntity)</PRE>
<DL>
<DD>Invoke the GET method
<P>
<DD><DL>
<DT><B>Type Parameters:</B><DD><CODE>T</CODE> - type of response entity<DT><B>Parameters:</B><DD><CODE>responseEntity</CODE> - response entity class
<DT><B>Returns:</B><DD>an instance of the response entity as specified by the response
         entity type
<DT><B>Throws:</B>
<DD><CODE><A HREF="../../../../org/apache/wink/client/ClientWebException.html" title="class in org.apache.wink.client">ClientWebException</A></CODE> - if the response code represents an error code</DL>
</DD>
</DL>
<HR>

<A NAME="get(org.apache.wink.client.EntityType)"><!-- --></A><H3>
get</H3>
<PRE>
&lt;T&gt; T <B>get</B>(<A HREF="../../../../org/apache/wink/client/EntityType.html" title="class in org.apache.wink.client">EntityType</A>&lt;T&gt;&nbsp;responseEntity)</PRE>
<DL>
<DD>Invoke the GET method
<P>
<DD><DL>
<DT><B>Type Parameters:</B><DD><CODE>T</CODE> - type of response entity<DT><B>Parameters:</B><DD><CODE>responseEntity</CODE> - an instance of <A HREF="../../../../org/apache/wink/client/EntityType.html" title="class in org.apache.wink.client"><CODE>EntityType</CODE></A> specifying the
            response entity to return
<DT><B>Returns:</B><DD>an instance of the response entity as specified by the response
         entity type
<DT><B>Throws:</B>
<DD><CODE><A HREF="../../../../org/apache/wink/client/ClientWebException.html" title="class in org.apache.wink.client">ClientWebException</A></CODE> - if the response code represents an error code</DL>
</DD>
</DL>
<HR>

<A NAME="get()"><!-- --></A><H3>
get</H3>
<PRE>
<A HREF="../../../../org/apache/wink/client/ClientResponse.html" title="interface in org.apache.wink.client">ClientResponse</A> <B>get</B>()</PRE>
<DL>
<DD>Invoke the GET method
<P>
<DD><DL>

<DT><B>Returns:</B><DD>the ClientResponse for the invocation</DL>
</DD>
</DL>
<HR>

<A NAME="post(java.lang.Class, java.lang.Object)"><!-- --></A><H3>
post</H3>
<PRE>
&lt;T&gt; T <B>post</B>(java.lang.Class&lt;T&gt;&nbsp;responseEntity,
           java.lang.Object&nbsp;requestEntity)</PRE>
<DL>
<DD>Invoke the POST method
<P>
<DD><DL>
<DT><B>Type Parameters:</B><DD><CODE>T</CODE> - type of response entity<DT><B>Parameters:</B><DD><CODE>responseEntity</CODE> - response entity class<DD><CODE>requestEntity</CODE> - request entity to send
<DT><B>Returns:</B><DD>an instance of the response entity as specified by the response
         entity type
<DT><B>Throws:</B>
<DD><CODE><A HREF="../../../../org/apache/wink/client/ClientWebException.html" title="class in org.apache.wink.client">ClientWebException</A></CODE> - if the response code represents an error code</DL>
</DD>
</DL>
<HR>

<A NAME="post(org.apache.wink.client.EntityType, java.lang.Object)"><!-- --></A><H3>
post</H3>
<PRE>
&lt;T&gt; T <B>post</B>(<A HREF="../../../../org/apache/wink/client/EntityType.html" title="class in org.apache.wink.client">EntityType</A>&lt;T&gt;&nbsp;responseEntity,
           java.lang.Object&nbsp;requestEntity)</PRE>
<DL>
<DD>Invoke the POST method
<P>
<DD><DL>
<DT><B>Type Parameters:</B><DD><CODE>T</CODE> - type of response entity<DT><B>Parameters:</B><DD><CODE>responseEntity</CODE> - an instance of <A HREF="../../../../org/apache/wink/client/EntityType.html" title="class in org.apache.wink.client"><CODE>EntityType</CODE></A> specifying the
            response entity to return<DD><CODE>requestEntity</CODE> - request entity to send
<DT><B>Returns:</B><DD>an instance of the response entity as specified by the response
         entity type
<DT><B>Throws:</B>
<DD><CODE><A HREF="../../../../org/apache/wink/client/ClientWebException.html" title="class in org.apache.wink.client">ClientWebException</A></CODE> - if the response code represents an error code</DL>
</DD>
</DL>
<HR>

<A NAME="post(java.lang.Object)"><!-- --></A><H3>
post</H3>
<PRE>
<A HREF="../../../../org/apache/wink/client/ClientResponse.html" title="interface in org.apache.wink.client">ClientResponse</A> <B>post</B>(java.lang.Object&nbsp;requestEntity)</PRE>
<DL>
<DD>Invoke the POST method
<P>
<DD><DL>

<DT><B>Returns:</B><DD>the ClientResponse for the invocation</DL>
</DD>
</DL>
<HR>

<A NAME="put(java.lang.Class, java.lang.Object)"><!-- --></A><H3>
put</H3>
<PRE>
&lt;T&gt; T <B>put</B>(java.lang.Class&lt;T&gt;&nbsp;responseEntity,
          java.lang.Object&nbsp;requestEntity)</PRE>
<DL>
<DD>Invoke the PUT method
<P>
<DD><DL>
<DT><B>Type Parameters:</B><DD><CODE>T</CODE> - type of response entity<DT><B>Parameters:</B><DD><CODE>responseEntity</CODE> - response entity class<DD><CODE>requestEntity</CODE> - request entity to send
<DT><B>Returns:</B><DD>an instance of the response entity as specified by the response
         entity type
<DT><B>Throws:</B>
<DD><CODE><A HREF="../../../../org/apache/wink/client/ClientWebException.html" title="class in org.apache.wink.client">ClientWebException</A></CODE> - if the response code represents an error code</DL>
</DD>
</DL>
<HR>

<A NAME="put(org.apache.wink.client.EntityType, java.lang.Object)"><!-- --></A><H3>
put</H3>
<PRE>
&lt;T&gt; T <B>put</B>(<A HREF="../../../../org/apache/wink/client/EntityType.html" title="class in org.apache.wink.client">EntityType</A>&lt;T&gt;&nbsp;responseEntity,
          java.lang.Object&nbsp;requestEntity)</PRE>
<DL>
<DD>Invoke the PUT method
<P>
<DD><DL>
<DT><B>Type Parameters:</B><DD><CODE>T</CODE> - type of response entity<DT><B>Parameters:</B><DD><CODE>responseEntity</CODE> - an instance of <A HREF="../../../../org/apache/wink/client/EntityType.html" title="class in org.apache.wink.client"><CODE>EntityType</CODE></A> specifying the
            response entity to return<DD><CODE>requestEntity</CODE> - request entity to send
<DT><B>Returns:</B><DD>an instance of the response entity as specified by the response
         entity type
<DT><B>Throws:</B>
<DD><CODE><A HREF="../../../../org/apache/wink/client/ClientWebException.html" title="class in org.apache.wink.client">ClientWebException</A></CODE> - if the response code represents an error code</DL>
</DD>
</DL>
<HR>

<A NAME="put(java.lang.Object)"><!-- --></A><H3>
put</H3>
<PRE>
<A HREF="../../../../org/apache/wink/client/ClientResponse.html" title="interface in org.apache.wink.client">ClientResponse</A> <B>put</B>(java.lang.Object&nbsp;requestEntity)</PRE>
<DL>
<DD>Invoke the PUT method
<P>
<DD><DL>

<DT><B>Returns:</B><DD>the ClientResponse for the invocation</DL>
</DD>
</DL>
<HR>

<A NAME="delete(java.lang.Class)"><!-- --></A><H3>
delete</H3>
<PRE>
&lt;T&gt; T <B>delete</B>(java.lang.Class&lt;T&gt;&nbsp;responseEntity)</PRE>
<DL>
<DD>Invoke the DELETE method
<P>
<DD><DL>
<DT><B>Type Parameters:</B><DD><CODE>T</CODE> - type of response entity<DT><B>Parameters:</B><DD><CODE>responseEntity</CODE> - response entity class
<DT><B>Returns:</B><DD>an instance of the response entity as specified by the response
         entity type
<DT><B>Throws:</B>
<DD><CODE><A HREF="../../../../org/apache/wink/client/ClientWebException.html" title="class in org.apache.wink.client">ClientWebException</A></CODE> - if the response code represents an error code</DL>
</DD>
</DL>
<HR>

<A NAME="delete(org.apache.wink.client.EntityType)"><!-- --></A><H3>
delete</H3>
<PRE>
&lt;T&gt; T <B>delete</B>(<A HREF="../../../../org/apache/wink/client/EntityType.html" title="class in org.apache.wink.client">EntityType</A>&lt;T&gt;&nbsp;responseEntity)</PRE>
<DL>
<DD>Invoke the DELETE method
<P>
<DD><DL>
<DT><B>Type Parameters:</B><DD><CODE>T</CODE> - type of response entity<DT><B>Parameters:</B><DD><CODE>responseEntity</CODE> - an instance of <A HREF="../../../../org/apache/wink/client/EntityType.html" title="class in org.apache.wink.client"><CODE>EntityType</CODE></A> specifying the
            response entity to return
<DT><B>Returns:</B><DD>an instance of the response entity as specified by the response
         entity type
<DT><B>Throws:</B>
<DD><CODE><A HREF="../../../../org/apache/wink/client/ClientWebException.html" title="class in org.apache.wink.client">ClientWebException</A></CODE> - if the response code represents an error code</DL>
</DD>
</DL>
<HR>

<A NAME="delete()"><!-- --></A><H3>
delete</H3>
<PRE>
<A HREF="../../../../org/apache/wink/client/ClientResponse.html" title="interface in org.apache.wink.client">ClientResponse</A> <B>delete</B>()</PRE>
<DL>
<DD>Invoke the DELETE method
<P>
<DD><DL>

<DT><B>Returns:</B><DD>the ClientResponse for the invocation</DL>
</DD>
</DL>
<!-- ========= END OF CLASS DATA ========= -->
<HR>


<!-- ======= 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">    <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="class-use/Resource.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../serialized-form.html"><FONT CLASS="NavBarFont1"><B>Serialized</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="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&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;<A HREF="../../../../org/apache/wink/client/MockHttpServer.html" title="class in org.apache.wink.client"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../../org/apache/wink/client/RestClient.html" title="class in org.apache.wink.client"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
  <A HREF="../../../../index.html?org/apache/wink/client/Resource.html" target="_top"><B>FRAMES</B></A>  &nbsp;
&nbsp;<A HREF="Resource.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>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
  SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_bottom"></A>
<!-- ======== END OF BOTTOM NAVBAR ======= -->

<HR>
Copyright &#169; 2009 <a href="http://www.apache.org/">The Apache Software Foundation</a>. All Rights Reserved.
</BODY>
</HTML>
