Class HttpProtocolBasicClient
java.lang.Object
nablarch.fw.messaging.realtime.http.client.HttpProtocolBasicClient
- All Implemented Interfaces:
HttpProtocolClient
@Published(tag="architect")
public class HttpProtocolBasicClient
extends Object
implements HttpProtocolClient
Http接続用クライアント。
- Author:
- TIS
-
Nested Class Summary
Nested classes/interfaces inherited from interface nablarch.fw.messaging.realtime.http.client.HttpProtocolClient
HttpProtocolClient.HttpRequestMethodEnum
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionprotected HttpURLConnection
createHttpConnection
(String targetUrl, HttpProtocolClient.HttpRequestMethodEnum method, Map<String, List<String>> headerInfo) HttpURLConnectionを作成する。execute
(HttpProtocolClient.HttpRequestMethodEnum httpMethod, String url, Map<String, List<String>> headerInfo, Map<String, String> urlParams, HttpOutputStreamWriter writer, HttpInputStreamReader reader) HTTP通信を行う。protected String
paramStringBuilder
(Map<String, String> paramData) URLにパラメータを文字列として埋め込む場合の文字列を作成して返却する。void
受け入れるデータ種別を設定する。void
setConnectTimeout
(int connectTimeout) 接続タイムアウトを設定する。void
setContentType
(String contentType) コンテンツタイプを設定する。void
setProxyInfo
(String url, int port) プロキシ情報を設定する。void
setQueryStringEncoding
(String queryStringEncoding) パラメータをエンコードする際に使用する文字コードを設定する。void
setReadTimeout
(int readTimeout) 読み取りタイムアウトを設定する。void
setSslContext
(SSLContext sslContext) SSLContextを設定する。
-
Constructor Details
-
HttpProtocolBasicClient
public HttpProtocolBasicClient()コンストラクタ
-
-
Method Details
-
setProxyInfo
プロキシ情報を設定する。- Specified by:
setProxyInfo
in interfaceHttpProtocolClient
- Parameters:
url
- プロキシURLport
- ポート番号
-
setConnectTimeout
public void setConnectTimeout(int connectTimeout) 接続タイムアウトを設定する。- Specified by:
setConnectTimeout
in interfaceHttpProtocolClient
- Parameters:
connectTimeout
- 接続タイムアウト
-
setReadTimeout
public void setReadTimeout(int readTimeout) 読み取りタイムアウトを設定する。- Specified by:
setReadTimeout
in interfaceHttpProtocolClient
- Parameters:
readTimeout
- 読み取りタイムアウト
-
setContentType
コンテンツタイプを設定する。- Specified by:
setContentType
in interfaceHttpProtocolClient
- Parameters:
contentType
- コンテンツタイプ
-
setAccept
受け入れるデータ種別を設定する。- Specified by:
setAccept
in interfaceHttpProtocolClient
- Parameters:
accept
- 受け入れるデータ種別
-
setSslContext
SSLContextを設定する。- Specified by:
setSslContext
in interfaceHttpProtocolClient
- Parameters:
sslContext
- SSLContext
-
setQueryStringEncoding
パラメータをエンコードする際に使用する文字コードを設定する。- Specified by:
setQueryStringEncoding
in interfaceHttpProtocolClient
- Parameters:
queryStringEncoding
- 文字コード
-
execute
public HttpResult execute(HttpProtocolClient.HttpRequestMethodEnum httpMethod, String url, Map<String, List<String>> headerInfo, Map<String, throws HttpMessagingExceptionString> urlParams, HttpOutputStreamWriter writer, HttpInputStreamReader reader) HTTP通信を行う。- Specified by:
execute
in interfaceHttpProtocolClient
- Parameters:
httpMethod
- HTTPメソッドurl
- 接続先headerInfo
- HttpHeadderに渡す情報urlParams
- URLパラメータ。送信するパラメータがない場合は、null可。writer
- StreamWritter。送信するBody部が存在しない場合は、null可。reader
- 応答の読み込みに使用するreader- Returns:
- レスポンスコード
- Throws:
HttpMessagingException
- 何らかの理由(接続タイムアウト、ソケットの予期せぬclose等)で通信が失敗した場合に送出される。
-
createHttpConnection
protected HttpURLConnection createHttpConnection(String targetUrl, HttpProtocolClient.HttpRequestMethodEnum method, Map<String, List<String>> headerInfo) throws IOExceptionHttpURLConnectionを作成する。- Parameters:
targetUrl
- 接続先method
- 接続メソッドheaderInfo
- HttpHeadderに渡す情報- Returns:
- HttpURLConnection
- Throws:
IOException
- 接続例外
-
paramStringBuilder
URLにパラメータを文字列として埋め込む場合の文字列を作成して返却する。- Parameters:
paramData
- 作成元パラメータ- Returns:
- 作成結果
-