| br.com.igor.proxy.http.GeneralHttpClient
All known Subclasses: br.com.igor.proxy.http.HttpClientDefault,
GeneralHttpClient | public interface GeneralHttpClient (Code) | | Esta interface define operações básicas para comunicação
utilizando o protocolo HTTP.
O objetivo é implementar estas funcionalidades em um ponto
central do GA, fornecendo uma espécie de "fachada" para as
aplicações internas do GA que necessitem comunicar via HTTP.
Subclasse conhecida:
HttpClientDefault author: f3568416 |
Method Summary | |
public void | addPostParameter(String name, String value) Adiciona um par nome-valor na requisicao. | public void | addPostParameter(NameValue[] nv) Adiciona um par nome-valor na requisicao. | public void | addRequestHeader(String name, String value) Adiciona um par nome-valor no cabecalho da requisicao. | public void | addRequestHeader(NameValue[] nv) Adiciona um par nome-valor ao cabecalho da requisicao. | public int | executeRequest() Envia a requisicao ao servidor. | public void | fileUpload(String paramName, File targetFile) | public String | getResponseBody() Obtem o corpo da resposta da ultima requsicao executada. | public InputStream | getResponseBodyAsStream() | public NameValue[] | getResponseFooters() Obtem o rodape' da resposta da ultima requisicao executada. | public String | getResponseFootersAsString() Obtem o rodape' da resposta da ultima requisicao executada. | public NameValue[] | getResponseHeaders() Obtem o cabecalho da resposta da ultima requisicao executada. | public String | getResponseHeadersAsString() Obtem o cabecalho da resposta da ultima requisicao executada.
o cabecalho da resposta na forma de uma unica string. | public int | getStatusCode() Obtem o codigo relativo ao status da ultima requisicao executada. | public String | getStatusPhrase() Obtem uma frase explicativa do status da ultima requisicao executada. | public void | initRequest(String url, int method) Inicializa recursos para efetuar uma requisicao. | public void | setPostRequestBody(String body) Seta o corpo da requisicao. | public void | setProxy(String ip, int port) | public void | setProxyAuthorization(String host, int port, String user, String passwd) Configura parametros para permitir autenticacao do requisitante
por um servidor proxy, quando houver tal restricao. | public void | setRetryCount(int c) Configura o numero maximo de tentativas AUTOMATICAS para
re-executar uma requisicao em caso de erro na comunicacao.
ATENCAO - O uso desta opcao pode causar o envio repetido
da mesma requisicao ao servidor, levando a inconsistencias em
bases de dados, caso se trate de uma mensagem transacional.
Parameters: c - numero de tentativas. | public void | setServerAuthorization(String user, String passwd) Configura parametros para permitir autenticacao do requisitante
pelo servidor destino da requisicao, quando houver tal restricao. | public void | setTimeout(int t) |
HTTPCLIENT_GET_METHOD | final public int HTTPCLIENT_GET_METHOD(Code) | | Propriedade que identifica metodo GET
|
HTTPCLIENT_POST_METHOD | final public int HTTPCLIENT_POST_METHOD(Code) | | Propriedade que identifica metodo POST
|
HTTPCLIENT_STATUS_NOTFOUND | final public int HTTPCLIENT_STATUS_NOTFOUND(Code) | | |
HTTPCLIENT_STATUS_OK | final public int HTTPCLIENT_STATUS_OK(Code) | | Propriedade que identifica status execucao OK
|
addPostParameter | public void addPostParameter(String name, String value)(Code) | | Adiciona um par nome-valor na requisicao.
Valido somente quando se utiliza o metodo
HTTPCLIENT_POST_METHOD .
Podem ser utilizados diversos pares nome-valor, conforme as
necessidades da aplicacao.
OBSERVACAO - Este metodo e' mutuamente exclusivo
com
GeneralHttpClient.setPostRequestBody(String) ,
portanto deve-se este ou aquele.
Parameters: name - um nome para compor o par nome-valor Parameters: value - um valor para compor o par nome-valor See Also: GeneralHttpClient.addPostParameter(NameValue) See Also: |
addRequestHeader | public void addRequestHeader(String name, String value)(Code) | | Adiciona um par nome-valor no cabecalho da requisicao.
Podem ser utilizados diversos pares nome-valor, conforme as
necessidades da aplicacao.
Parameters: name - um nome para compor o par nome-valor Parameters: value - um valor para compor o par nome-valor See Also: GeneralHttpClient.addRequestHeader(NameValue) See Also: |
getResponseBody | public String getResponseBody() throws IOException(Code) | | Obtem o corpo da resposta da ultima requsicao executada.
o corpo da resposta throws: IOException - caso ocorra algum erro de comunicacao |
getResponseBodyAsStream | public InputStream getResponseBodyAsStream() throws IOException(Code) | | Obtem o corpo da resposta da ultima requisicao executada na forma
de um InputStream
um InputStream contendo o corpo da resposta throws: IOException - caso ocorra algum erro de comunicacao |
getResponseFooters | public NameValue[] getResponseFooters() throws IOException(Code) | | Obtem o rodape' da resposta da ultima requisicao executada.
o rodape' da resposta na forma de um array de objetos NameValue throws: IOException - caso ocorra algum erro de comunicacao |
getResponseFootersAsString | public String getResponseFootersAsString() throws IOException(Code) | | Obtem o rodape' da resposta da ultima requisicao executada.
o rodape' da resposta na forma de uma unica string. throws: IOException - caso ocorra algum erro de comunicacao |
getResponseHeaders | public NameValue[] getResponseHeaders() throws IOException(Code) | | Obtem o cabecalho da resposta da ultima requisicao executada.
o cabecalho da resposta na forma de um array de objetos NameValue throws: IOException - caso ocorra algum erro de comunicacao |
getResponseHeadersAsString | public String getResponseHeadersAsString() throws IOException(Code) | | Obtem o cabecalho da resposta da ultima requisicao executada.
o cabecalho da resposta na forma de uma unica string. throws: IOException - caso ocorra algum erro de comunicacao |
getStatusPhrase | public String getStatusPhrase()(Code) | | Obtem uma frase explicativa do status da ultima requisicao executada.
texto explicativo do status |
initRequest | public void initRequest(String url, int method)(Code) | | Inicializa recursos para efetuar uma requisicao.
E' OBRIGATORIA a chamada a este metodo ANTES de se configurar
parametros e dados de uma nova requisicao, ou seja, antes da
chamada a
GeneralHttpClient.executeRequest()
Uma nova chamada a este metodo somente deve ser feita
APOS o tratamento da resposta.
Exemplo dos passos necessarios:
HttpClientGA cli = HttpClientGAFactory.getInstance();
cli.setTimeout(15000);
cli.setRetryCount(2);
cli.initRequest(url,HttpClientGA.HTTPCLIENT_GET_METHOD);
cli.executeRequest();
//trata a resposta
System.out.println(cli.getResponseBody());
//inicia nova requisicao para a mesma ou outra url:
cli.initRequest(url2,HttpClientGA.HTTPCLIENT_GET_METHOD);
cli.executeRequest();
//trata a resposta
System.out.println(cli.getResponseBody());
EXPLICACOES ADICIONAIS SOBRE A NECESSIDADE DESTE METODO:
Isso e' necessario porque nao temos como liberar automaticamente
os recursos apos cada executeRequest(), pois somente o usuario deste objeto
sabe o momento exato da liberacaoa: apos execucao dos metodos que leem
cabecalho, corpo e rodape da resposta.
Tambem nao podemos liberar automaticamente os recursos antes de
cada executeRequest(), pois isso causaria a perda de todos parametros/dados
configurados.
Parameters: url - uma url completa incluindo o campo protocolo, tal como http:// Parameters: method - metodo a ser utilizado na comunicacao, o qual pode ser:- HTTPCLIENT_GET_METHOD ou - HTTPCLIENT_POST_METHOD |
setPostRequestBody | public void setPostRequestBody(String body)(Code) | | Seta o corpo da requisicao.
Valido somente quando se utiliza o metodo
HTTPCLIENT_POST_METHOD .
OBSERVACAO - Este metodo e' mutuamente exclusivo
com
GeneralHttpClient.addPostParameter() portanto deve-se usar este ou aqueles.
Parameters: body - o corpo da requisicao |
setProxy | public void setProxy(String ip, int port)(Code) | | Seta o endereço e porta do porxy
Parameters: ip - Parameters: port - |
setProxyAuthorization | public void setProxyAuthorization(String host, int port, String user, String passwd)(Code) | | Configura parametros para permitir autenticacao do requisitante
por um servidor proxy, quando houver tal restricao.
Ex: acesso 'a internet a partir de uma rede interna.
Parameters: host - nome ou endereco do servidor proxy Parameters: port - porta no servidor proxy Parameters: user - identificacao do usuario Parameters: passwd - senha do usuario |
setRetryCount | public void setRetryCount(int c)(Code) | | Configura o numero maximo de tentativas AUTOMATICAS para
re-executar uma requisicao em caso de erro na comunicacao.
ATENCAO - O uso desta opcao pode causar o envio repetido
da mesma requisicao ao servidor, levando a inconsistencias em
bases de dados, caso se trate de uma mensagem transacional.
Parameters: c - numero de tentativas. Se c==0 NAO sera' executada nenhuma tentativa AUTOMATICA |
setServerAuthorization | public void setServerAuthorization(String user, String passwd)(Code) | | Configura parametros para permitir autenticacao do requisitante
pelo servidor destino da requisicao, quando houver tal restricao.
Ex: aplicacao destino faz controle de acesso
Parameters: user - identificacao do usuario Parameters: passwd - senha do usuario |
setTimeout | public void setTimeout(int t)(Code) | | Configura o tempo maximo de espera por uma resposta
do servidor.
Ex: setTimeout(5000) --->> espera 5 segundos
Parameters: t - tempo em milissegundos |
|
|