org.apache.abdera.protocol.client
Class Client

java.lang.Object
  extended by org.apache.abdera.protocol.client.Client
Direct Known Subclasses:
CommonsClient

public abstract class Client
extends java.lang.Object

An Atom Publishing Protocol client.


Field Summary
protected  Abdera abdera
           
protected  Cache cache
           
 
Constructor Summary
  Client()
           
protected Client(Abdera abdera)
           
 
Method Summary
abstract  void addCredentials(java.lang.String target, java.lang.String realm, java.lang.String scheme, org.apache.commons.httpclient.Credentials credentials)
          Add a set of authentication credentials to the client.
 ClientResponse delete(java.lang.String uri)
           
 ClientResponse delete(java.lang.String uri, RequestOptions options)
           
abstract  ClientResponse execute(java.lang.String method, java.lang.String uri, org.apache.commons.httpclient.methods.RequestEntity entity, RequestOptions options)
          Execute an arbitrary HTTP request
 ClientResponse get(java.lang.String uri)
           
 ClientResponse get(java.lang.String uri, RequestOptions options)
           
 Cache getCache()
           
abstract  RequestOptions getDefaultRequestOptions()
          Get the default request options used by this client.
 ClientResponse head(java.lang.String uri)
           
 ClientResponse head(java.lang.String uri, RequestOptions options)
           
 Cache initCache(CacheFactory factory)
           
 ClientResponse post(java.lang.String uri, Base base)
           
 ClientResponse post(java.lang.String uri, Base base, RequestOptions options)
           
 ClientResponse post(java.lang.String uri, java.io.InputStream in)
           
 ClientResponse post(java.lang.String uri, java.io.InputStream in, RequestOptions options)
           
 ClientResponse post(java.lang.String uri, org.apache.commons.httpclient.methods.RequestEntity entity)
           
 ClientResponse post(java.lang.String uri, org.apache.commons.httpclient.methods.RequestEntity entity, RequestOptions options)
           
 ClientResponse put(java.lang.String uri, Base base)
           
 ClientResponse put(java.lang.String uri, Base base, RequestOptions options)
           
 ClientResponse put(java.lang.String uri, java.io.InputStream in)
           
 ClientResponse put(java.lang.String uri, java.io.InputStream in, RequestOptions options)
           
 ClientResponse put(java.lang.String uri, org.apache.commons.httpclient.methods.RequestEntity entity)
           
 ClientResponse put(java.lang.String uri, org.apache.commons.httpclient.methods.RequestEntity entity, RequestOptions options)
           
static void registerFactory(org.apache.commons.httpclient.protocol.SecureProtocolSocketFactory factory, int port)
           
static
<T extends org.apache.commons.httpclient.auth.AuthScheme>
void
registerScheme(java.lang.String name, java.lang.Class<T> scheme)
          Register a new authentication scheme.
static void registerTrustManager()
           
static void registerTrustManager(int port)
           
static void registerTrustManager(javax.net.ssl.TrustManager trustManager)
           
static void registerTrustManager(javax.net.ssl.TrustManager trustManager, int port)
           
abstract  void setAuthenticationSchemePriority(java.lang.String... scheme)
          Set the order in which authentication schemes should be used.
 void teardown()
          Explicitly tear down the Client instance
abstract  void usePreemptiveAuthentication(boolean val)
          Indicates if the client should authenticate before attempting to do anything else.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

abdera

protected final Abdera abdera

cache

protected final Cache cache
Constructor Detail

Client

public Client()

Client

protected Client(Abdera abdera)
Method Detail

getDefaultRequestOptions

public abstract RequestOptions getDefaultRequestOptions()
Get the default request options used by this client.


addCredentials

public abstract void addCredentials(java.lang.String target,
                                    java.lang.String realm,
                                    java.lang.String scheme,
                                    org.apache.commons.httpclient.Credentials credentials)
                             throws java.net.URISyntaxException
Add a set of authentication credentials to the client.

Parameters:
target - The URI for which you wish to authenticate
realm - The authentication realm these credentials apply to, or null if the credentials apply to any realm
scheme - The authentication scheme these credentials apply to, or null if the credentials apply to any scheme
credentials - The credentials to use
Throws:
java.net.URISyntaxException

setAuthenticationSchemePriority

public abstract void setAuthenticationSchemePriority(java.lang.String... scheme)
Set the order in which authentication schemes should be used.


usePreemptiveAuthentication

public abstract void usePreemptiveAuthentication(boolean val)
Indicates if the client should authenticate before attempting to do anything else.


getCache

public Cache getCache()

initCache

public Cache initCache(CacheFactory factory)

head

public ClientResponse head(java.lang.String uri,
                           RequestOptions options)

get

public ClientResponse get(java.lang.String uri,
                          RequestOptions options)

post

public ClientResponse post(java.lang.String uri,
                           org.apache.commons.httpclient.methods.RequestEntity entity,
                           RequestOptions options)

post

public ClientResponse post(java.lang.String uri,
                           java.io.InputStream in,
                           RequestOptions options)

post

public ClientResponse post(java.lang.String uri,
                           Base base,
                           RequestOptions options)

put

public ClientResponse put(java.lang.String uri,
                          org.apache.commons.httpclient.methods.RequestEntity entity,
                          RequestOptions options)

put

public ClientResponse put(java.lang.String uri,
                          java.io.InputStream in,
                          RequestOptions options)

put

public ClientResponse put(java.lang.String uri,
                          Base base,
                          RequestOptions options)

delete

public ClientResponse delete(java.lang.String uri,
                             RequestOptions options)

head

public ClientResponse head(java.lang.String uri)

get

public ClientResponse get(java.lang.String uri)

post

public ClientResponse post(java.lang.String uri,
                           org.apache.commons.httpclient.methods.RequestEntity entity)

post

public ClientResponse post(java.lang.String uri,
                           java.io.InputStream in)

post

public ClientResponse post(java.lang.String uri,
                           Base base)

put

public ClientResponse put(java.lang.String uri,
                          org.apache.commons.httpclient.methods.RequestEntity entity)

put

public ClientResponse put(java.lang.String uri,
                          java.io.InputStream in)

put

public ClientResponse put(java.lang.String uri,
                          Base base)

delete

public ClientResponse delete(java.lang.String uri)

execute

public abstract ClientResponse execute(java.lang.String method,
                                       java.lang.String uri,
                                       org.apache.commons.httpclient.methods.RequestEntity entity,
                                       RequestOptions options)
Execute an arbitrary HTTP request

Parameters:
method - The method name
uri - The URI to execute the request on
entity - The request entity to use for generating the request
options - The options to use for this request
Returns:
the server's response

registerScheme

public static <T extends org.apache.commons.httpclient.auth.AuthScheme> void registerScheme(java.lang.String name,
                                                                                            java.lang.Class<T> scheme)
Register a new authentication scheme.

Parameters:
name -
scheme -

registerTrustManager

public static void registerTrustManager(javax.net.ssl.TrustManager trustManager)

registerTrustManager

public static void registerTrustManager()

registerTrustManager

public static void registerTrustManager(javax.net.ssl.TrustManager trustManager,
                                        int port)

registerTrustManager

public static void registerTrustManager(int port)

registerFactory

public static void registerFactory(org.apache.commons.httpclient.protocol.SecureProtocolSocketFactory factory,
                                   int port)

teardown

public void teardown()
Explicitly tear down the Client instance