org.lyra.Widgets
Class HTTPClient

java.lang.Object
  extended by org.lyra.Widgets.HTTPClient

public class HTTPClient
extends java.lang.Object

Wrapper method for built-in Java commands that enable a one-method use for calling and retrieving documents over the HTTP protocol. Requires an instance of Ledger and a language map in order to track requests being made. All errors are handled internally, as a result it becomes necessary to check for non-null string returns in order to ensure that the request was proper.

Since:
1.0.1
Version:
1.0.5, %Revision, 174%, %LastChangedDate, 27/10/12 3:33PM%
Author:
Martin Foster

Field Summary
private static java.lang.String CLASS
           
private static java.lang.String CLIENT
           
static java.lang.String ENCODING
          Encoding scheme used for HTTP sessions.
private  java.util.Map<java.lang.String,java.lang.String> Lang
           
private  Ledger Logger
           
private  Operations Ops
           
 
Constructor Summary
HTTPClient(Ledger logger, java.util.Map<java.lang.String,java.lang.String> lang)
          Base constructor for class.
 
Method Summary
private  java.lang.String fetchCommon(java.lang.String address, java.util.Map<java.lang.String,java.lang.String> args, boolean post, java.io.File dest)
          General method which handles both POST and GET requests based on a simple switch.
 java.lang.String fetchGet(java.lang.String address, java.util.Map<java.lang.String,java.lang.String> args)
          Makes a GET specific request to a host, using a Map collection as a key/pair store.
 java.lang.String fetchImage(java.lang.String address, java.io.File dest)
          Makes a GET specific request to a host.
 java.lang.String fetchPost(java.lang.String address, java.util.Map<java.lang.String,java.lang.String> args)
          Makes a POST specific request to a host, using a Map collection as a key/pair store.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

Logger

private Ledger Logger

Lang

private java.util.Map<java.lang.String,java.lang.String> Lang

Ops

private Operations Ops

CLASS

private static final java.lang.String CLASS
See Also:
Constant Field Values

CLIENT

private static final java.lang.String CLIENT
See Also:
Constant Field Values

ENCODING

public static final java.lang.String ENCODING
Encoding scheme used for HTTP sessions.

See Also:
Constant Field Values
Constructor Detail

HTTPClient

public HTTPClient(Ledger logger,
                  java.util.Map<java.lang.String,java.lang.String> lang)
Base constructor for class.

Parameters:
logger - Ledger instance for application logging.
lang - Language instance for error codes.
Method Detail

fetchCommon

private java.lang.String fetchCommon(java.lang.String address,
                                     java.util.Map<java.lang.String,java.lang.String> args,
                                     boolean post,
                                     java.io.File dest)
General method which handles both POST and GET requests based on a simple switch.

Parameters:
address - Formatted URL address.
args - Key/Pair map containing all the arguments to pass on.
post - Boolean indicating if we treat this as a POST or GET request.
dest - Destination file name.
Returns:
String document containing the reply.

fetchPost

public java.lang.String fetchPost(java.lang.String address,
                                  java.util.Map<java.lang.String,java.lang.String> args)
Makes a POST specific request to a host, using a Map collection as a key/pair store.

Parameters:
address - Formatted URL address.
args - Key/Pair map containing all the arguments to pass on.
Returns:
String document containing the reply.

fetchGet

public java.lang.String fetchGet(java.lang.String address,
                                 java.util.Map<java.lang.String,java.lang.String> args)
Makes a GET specific request to a host, using a Map collection as a key/pair store.

Parameters:
address - Formatted URL address.
args - Key/Pair map containing all the arguments to pass on.
Returns:
String document containing the reply.

fetchImage

public java.lang.String fetchImage(java.lang.String address,
                                   java.io.File dest)
Makes a GET specific request to a host. Since the element returned is an image the information is saved directly to a file.

Parameters:
address - Formatted URL address.
dest - Destination File instance.
Returns:
String document containing the reply.