検索

第214章 MLLP コンポーネント

download PDF

Camel バージョン 2.17 から利用可能

MLLP コンポーネントは、MLLP プロトコルの nuances を処理し、Healthcare プロバイダーが MLLP プロトコルを使用して他のシステムと通信するのに必要な機能を提供します。 MLLP コンポーネントは、単純な設定 URI、自動化された HL7 承認生成および自動承認インターテグレーションを提供します。

MLLP プロトコルは通常、多数の同時 TCP 接続を使用しません。単一のアクティブな TCP 接続は通常です。 そのため、MLLP コンポーネントは標準の Java Sockets をベースとした簡単な thread-per-connection モデルを使用します。これにより、実装がシンプルになり、Camel 自体以外の依存関係がなくなります。

コンポーネントは以下をサポートします。

  • TCP サーバーを使用する Camel コンシューマー
  • TCP クライアントを使用した Camel プロデューサー

MLLP コンポーネントは byte[] ペイロードを使用し、Camel Type Conversion を使用して byte[] を別のタイプに変換します。 

Maven ユーザーは、このコンポーネントの pom.xml に以下の依存関係を追加する必要があります。

<dependency>
    <groupId>org.apache.camel</groupId>
    <artifactId>camel-mllp</artifactId>
    <version>x.x.x</version>
    <!-- use the same version as your Camel core version -->
</dependency>

214.1. MLLP オプション

MLLP コンポーネントは、以下に示す 5 つのオプションをサポートします。

Name説明デフォルトType

logPhi (advanced)

PHI データをログに記録するにはコンポーネントを設定します。

true

ブール値

logPhiMaxBytes (advanced)

ログエントリーにログインする PHI の最大バイト数を設定します。

5120

整数

defaultCharset (advanced)

String 変換へのバイト変換に使用するデフォルトの文字セットを設定します。

ISO-8859-1

文字列

設定 (共通)

MLLP エンドポイントの作成時に使用するデフォルト設定を設定します。

 

MllpConfiguration

resolveProperty Placeholders (advanced)

起動時にコンポーネント自体がプロパティープレースホルダーを解決するかどうか。String タイプのプロパティーのみがプロパティープレースホルダーを使用できます。

true

boolean

MLLP エンドポイントは、URI 構文を使用して設定します。

mllp:hostname:port

以下の path パラメーターおよびクエリーパラメーターを使用します。

214.1.1. パスパラメーター(2 パラメーター):

Name説明デフォルトType

hostname

TCP 接続に 必要な ホスト名または IP。デフォルト値は null で、すべてのローカル IP アドレスを意味します。

 

文字列

port

TCP 接続に 必要な ポート番号

 

int

214.1.2. クエリーパラメーター(27 パラメーター):

Name説明デフォルトType

autoAck (common)

MLLP Acknowledgement MLLP コンシューマーのみの自動生成の有効化/無効化

true

boolean

bufferWrites (common)

非推奨: ソケットに書き込む前に HL7 ペイロードのバッファー処理を有効/無効にします。

false

boolean

hl7Headers (common)

HL7 Message MLLP コンシューマーのみからのメッセージヘッダーの自動生成を有効または無効にします。

true

boolean

requireEndOfData (common)

MLLP 標準に対する厳密なコンプライアンスの有効化/無効化。MLLP 標準は、START_OF_BLOCKhl7 payloadEND_OF_BLOCKEND_OF_DATA を指定しますが、一部のシステムでは最終的な END_OF_DATA バイトが送信されません。この設定は、最終的な END_OF_DATA バイトが必要かどうか、または任意になるかどうかを制御します。

true

boolean

stringPayload (common)

ペイロードを String に変換するか、有効化/無効にします。有効にすると、外部システムから受信した HL7 ペイロードは String に変換されます。charsetName プロパティーを設定すると、その文字セットが変換に使用されます。charsetName プロパティーが設定されていない場合、MSH-18 の値は、適切な文字セットを決定するために使用されます。MSH-18 が設定されていない場合は、デフォルトの ISO-8859-1 文字セットが使用されます。

true

boolean

validatePayload (common)

HL7 Payloads の検証を有効/無効にします。有効にされている場合、外部システムから受信した HL7 Payloads が検証されます(検証の詳細は Hl7Util.generateInvalidPayloadExceptionMessage を参照してください)。ペイロードが検出されると、MllpInvalidMessageException(コンシューマーの場合)または MllpInvalidAcknowledgementException がスローされます。

false

boolean

bridgeErrorHandler (consumer)

コンシューマーの Camel ルーティングエラーハンドラーへのブリッジを許可します。つまり、コンシューマーが受信メッセージを受信しようしている間に発生した例外や、ルーティングエラーハンドラーによって処理されます。無効な場合、コンシューマーは org.apache.camel.spi.ExceptionHandler を使用して WARN または ERROR レベルでロギングし、無視されます。

true

boolean

exceptionHandler (consumer)

コンシューマーによるカスタム ExceptionHandler の使用を許可します。bridgeErrorHandler オプションが有効な場合は、このオプションは使用されていないことに注意してください。デフォルトでは、コンシューマーは例外に対応し、WARN または ERROR レベルでログに記録され、無視されます。

 

ExceptionHandler

exchangePattern (consumer)

コンシューマーがエクスチェンジを作成する際に交換パターンを設定します。

InOut

ExchangePattern

同期 (詳細)

同期処理を厳密に使用するかどうかを設定します(このコンポーネントは同期操作のみをサポートします)。

true

boolean

backlog (tcp)

受信接続のindication(接続リクエスト)の最大キューの長さが、backlog パラメーターに設定されます。キューが満杯になると接続が到達すると、接続は拒否されます。

5

整数

lenientBind (tcp)

TCP サーバーのみ: TCP ServerSocket がバインドされる前にエンドポイントを起動できます。一部の環境では、TCP ServerSocket をバインドする前にエンドポイントを開始できるようにする必要がある場合があります。

false

boolean

maxConcurrentConsumers (tcp)

許可される同時 MLLP コンシューマー接続の最大数。新しい接続が受信され、最大数が確立されている場合、新しい接続は即座にリセットされます。

5

int

reuseAddress (tcp)

SO_REUSEADDR ソケットオプションを有効化/無効化します。

false

ブール値

acceptTimeout (timeout)

TCP 接続 TCP サーバーのみを待機する際のタイムアウト(ミリ秒単位)

60000

int

bindRetryInterval (timeout)

TCP サーバーのみ: バインドの試行まで待機する時間(ミリ秒単位)。

5000

int

bindTimeout (timeout)

TCP サーバーのみ: サーバーポートへのバインディングを再試行する時間(ミリ秒単位)。

30000

int

connectTimeout (timeout)

TCP 接続 TCP クライアントのみを確立するタイムアウト(ミリ秒単位)

30000

int

idleTimeout (timeout)

Client TCP Connection をリセットする前に許可される概算時間。null 値またはゼロ以下の値を指定すると、アイドルタイムアウトが無効になります。

 

整数

maxReceiveTimeouts (timeout)

非推奨。TCP 接続をリセットする前に許可されるタイムアウトの最大数(receiveTimeout で指定)。

 

整数

keepAlive (tcp)

SO_KEEPALIVE ソケットオプションを有効化/無効化します。

true

ブール値

receiveBufferSize (tcp)

SO_RCVBUF オプションを指定された値に設定します(バイト単位)。

8192

整数

sendBufferSize (tcp)

SO_SNDBUF オプションを指定された値(バイト単位)に設定します。

8192

整数

tcpNoDelay (tcp)

TCP_NODELAY ソケットオプションを有効化/無効にします。

true

ブール値

readTimeout (timeout)

MLLP フレームの開始後に使用される SO_TIMEOUT 値(ミリ秒単位)。

5000

int

receiveTimeout (timeout)

MLLP フレームの開始を待機する際に使用される SO_TIMEOUT 値(ミリ秒単位)。

15000

int

charsetName (codec)

エクスチェンジに CamelCharsetName プロパティーを設定します。

 

文字列

Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

© 2024 Red Hat, Inc.