@Published(tag="architect") public class HttpMessagingClient extends Object implements MessageSenderClient
修飾子とタイプ | フィールドと説明 |
---|---|
static String |
SYNCMESSAGE_STATUS_CODE
SyncMessageのヘッダレコードからステータスコードを取り出すために使用するキー
|
修飾子とタイプ | メソッドと説明 |
---|---|
protected void |
addCommonValue(nablarch.fw.messaging.realtime.http.client.HttpProtocolClient.HttpRequestMethodEnum httpMethod,
MessageSenderSettings settings,
SyncMessage requestMessage)
要求電文に、共通プロトコルヘッダ相当部分及びフレームワーク制御ヘッダ部で使用する要素を追加する。
|
protected nablarch.core.dataformat.SimpleDataConvertResult |
bodyStringToMap(String uri,
nablarch.fw.messaging.realtime.http.client.HttpProtocolClient.HttpRequestMethodEnum httpMethod,
SyncMessage requestMessage,
HttpResult httpResult)
返信のボディ部分を解析し、応答電文に設定するデータを生成する。
|
protected HttpInputStreamReader |
createCharHttpStreamReader()
HTTPリクエストを発行後、OutputStreamを読み取り結果を返却させるためのIFを生成する。
|
protected HttpOutputStreamWriter |
createCharHttpStreamWritter(String charset,
String bodyText)
HTTPリクエストを発行時の送信内容を保持するオブジェクトを生成する。
|
protected HttpProtocolClient |
createHttpProtocolClient()
HTTPプロトコルを実装したクラスのインスタンスを生成する。
|
protected HttpResult |
execute(HttpProtocolClient httpProtocolClient,
nablarch.fw.messaging.realtime.http.client.HttpProtocolClient.HttpRequestMethodEnum httpMethod,
String uri,
Map<List> headerInfo,
Map urlParams,
String charset,
String bodyText)
HTTPリクエストを送出する。
|
protected String |
getAccept()
レスポンスの本文として受信可能なタイプを取得します
|
protected List |
getExistBodyHttpMethod()
送信にbody部が存在するHTTPメソッドのリストを取得する。
|
String |
getQueryStringEncoding()
クエリストリングをエンコードする際に使用する文字コードを取得する。
|
protected String |
getRequestContentsType(nablarch.fw.messaging.realtime.http.client.HttpProtocolClient.HttpRequestMethodEnum httpMethod,
nablarch.core.dataformat.SimpleDataConvertResult requestBodyDataConvertResult)
送信時に設定するコンテンツタイプを取得する。
|
protected String |
getRequestMessageFormatFileNamePattern()
要求電文のフォーマット定義ファイル名のパターンを取得する。
|
protected String |
getResponseMessageFormatFileNamePattern()
応答電文のデータフォーマット定義ファイル名パターンを取得する。
|
String |
getUserIdToFormatKey()
ユーザIDとフォーマット定義ファイル上のキーとの対応を取得する。
|
protected Map |
headerToMap(SyncMessage requestMessage,
HttpResult httpResult)
返信のヘッダ部分を解析し、応答電文に設定するデータを生成する。
|
protected void |
initHttpProtocolClient(HttpProtocolClient argHttpProtocolClient,
MessageSenderSettings settings,
String mimeType)
HTTPプロトコルを実装したクラスのインスタンスの初期化を行う。
|
protected nablarch.core.dataformat.SimpleDataConvertResult |
mapToBodyString(String uri,
nablarch.fw.messaging.realtime.http.client.HttpProtocolClient.HttpRequestMethodEnum httpMethod,
SyncMessage requestMessage)
HTTP通信のボディ部を生成する。
|
protected Map<List> |
mapToHeaderMap(SyncMessage requestMessage)
HTTPヘッダに含める内容を生成する。
|
protected Map |
mapToQueryMap(String preUri,
nablarch.fw.messaging.realtime.http.client.HttpProtocolClient.HttpRequestMethodEnum httpMethod,
SyncMessage requestMessage)
クエリストリングを生成する。
|
protected String |
mapToUriString(String preUri,
nablarch.fw.messaging.realtime.http.client.HttpProtocolClient.HttpRequestMethodEnum httpMethod,
SyncMessage requestMessage)
URIを生成する。
|
SyncMessage |
sendSync(MessageSenderSettings settings,
SyncMessage requestMessage)
HTTPを使用したリアルタイム通信通信を行う。
|
void |
setQueryStringEncoding(String queryStringEncoding)
クエリストリングをエンコードする際に使用する文字コードを設定する。
|
void |
setUserIdToFormatKey(String userIdToFormatKey)
ユーザIDとフォーマット定義ファイル上のキーとの対応を設定する。
|
public SyncMessage sendSync(MessageSenderSettings settings, SyncMessage requestMessage) throws MessagingException
sendSync
インタフェース内 MessageSenderClient
settings
- MessageSender
の設定情報requestMessage
- 要求電文MessagingException
- 通信に失敗した際に送出される。protected void addCommonValue(nablarch.fw.messaging.realtime.http.client.HttpProtocolClient.HttpRequestMethodEnum httpMethod, MessageSenderSettings settings, SyncMessage requestMessage)
httpMethod
- HTTPメソッドsettings
- MessageSender
の設定情報requestMessage
- 要求電文protected HttpProtocolClient createHttpProtocolClient()
protected void initHttpProtocolClient(HttpProtocolClient argHttpProtocolClient, MessageSenderSettings settings, String mimeType)
argHttpProtocolClient
- 初期化対象のHttpProtocolClientのインスタンスsettings
- MessageSender
の設定情報mimeType
- 送信するデータの種別protected String getAccept()
protected String mapToUriString(String preUri, nablarch.fw.messaging.realtime.http.client.HttpProtocolClient.HttpRequestMethodEnum httpMethod, SyncMessage requestMessage)
このメソッドはURI生成ルールのカスタマイズのために存在している。本クラスの実装では、引数preUriを返却する。
preUri
- メッセージ送信定義に記述されているURIhttpMethod
- HTTPメソッドrequestMessage
- 要求電文protected Map mapToQueryMap(String preUri, nablarch.fw.messaging.realtime.http.client.HttpProtocolClient.HttpRequestMethodEnum httpMethod, SyncMessage requestMessage)
このメソッドはクエリストリング生成ルールのカスタマイズのために存在している。本クラスの実装では、空のMapを返す。
preUri
- メッセージ送信定義に記述されているURIhttpMethod
- HTTPメソッドrequestMessage
- 要求電文protected Map<List> mapToHeaderMap(SyncMessage requestMessage)
requestMessage
- 要求電文protected nablarch.core.dataformat.SimpleDataConvertResult mapToBodyString(String uri, nablarch.fw.messaging.realtime.http.client.HttpProtocolClient.HttpRequestMethodEnum httpMethod, SyncMessage requestMessage) throws HttpMessagingInvalidDataFormatException
uri
- 接続先httpMethod
- HTTPメソッドrequestMessage
- 要求電文HttpMessagingInvalidDataFormatException
- 電文フォーマット変換に失敗した場合に送出される。protected String getRequestContentsType(nablarch.fw.messaging.realtime.http.client.HttpProtocolClient.HttpRequestMethodEnum httpMethod, nablarch.core.dataformat.SimpleDataConvertResult requestBodyDataConvertResult)
httpMethod
- HTTPメソッドrequestBodyDataConvertResult
- 本文のデータ変換結果protected HttpResult execute(HttpProtocolClient httpProtocolClient, nablarch.fw.messaging.realtime.http.client.HttpProtocolClient.HttpRequestMethodEnum httpMethod, String uri, Map<List> headerInfo, Map urlParams, String charset, String bodyText)
httpProtocolClient
- HTTPリクエストを発行するオブジェクトhttpMethod
- HTTPメソッドuri
- 送信先headerInfo
- HTTPリクエストのヘッダ情報urlParams
- URLパラメータcharset
- 文字コードbodyText
- HTTPリクエストの本文protected HttpInputStreamReader createCharHttpStreamReader()
protected HttpOutputStreamWriter createCharHttpStreamWritter(String charset, String bodyText)
charset
- 文字コードbodyText
- 送信時の本文protected Map headerToMap(SyncMessage requestMessage, HttpResult httpResult)
requestMessage
- 要求電文httpResult
- 送信結果protected nablarch.core.dataformat.SimpleDataConvertResult bodyStringToMap(String uri, nablarch.fw.messaging.realtime.http.client.HttpProtocolClient.HttpRequestMethodEnum httpMethod, SyncMessage requestMessage, HttpResult httpResult) throws HttpMessagingInvalidDataFormatException
uri
- 接続先httpMethod
- HTTPメソッドrequestMessage
- 要求電文httpResult
- 送信結果HttpMessagingInvalidDataFormatException
- 電文フォーマット変換に失敗した場合に送出される。protected String getResponseMessageFormatFileNamePattern()
protected String getRequestMessageFormatFileNamePattern()
public String getUserIdToFormatKey()
public void setUserIdToFormatKey(String userIdToFormatKey)
userIdToFormatKey
- フォーマット定義ファイル上のキーprotected List getExistBodyHttpMethod()
public String getQueryStringEncoding()
public void setQueryStringEncoding(String queryStringEncoding)
queryStringEncoding
- 文字コード