248.4. 例

248.4.1. すべてのアプリケーションの一覧表示

// sending route
from("direct:apps")
    .to("openshift:myClient?username=foo&password=secret&operation=list");
    .to("log:apps");

この場合、すべてのアプリケーションに関する情報が pojo として返されます。json レスポンスが必要な場合は、mode=json を設定します。

248.4.2. アプリケーションの停止

// stopping the foobar application
from("direct:control")
    .to("openshift:myClient?username=foo&password=secret&operation=stop&application=foobar");
 

上記の例では、foobar という名前のアプリケーションを停止します。

 

ギア状態の変更のポーリング

コンシューマーは、ギアの状態の変更をポーリングするために使用されます。新しいギアが追加/削除/またはそのライフサイクルが変更されたときなど (開始、停止など)。

// trigger when state changes on our gears
from("openshift:myClient?username=foo&password=secret&delay=30s")
    .log("Event ${header.CamelOpenShiftEventType} on application ${body.name} changed state to ${header.CamelOpenShiftEventNewState}");

 

コンシューマーが Exchange を発行すると、ボディーにはメッセージボディーとして com.openshift.client.IApplication が含まれます。そして、以下のヘッダーが含まれています。

ヘッダーnull の可能性があります説明

CamelOpenShiftEventType

いいえ

追加、削除、または変更のいずれかのイベントのタイプ。

CamelOpenShiftEventOldState

イベントタイプが変更されたときの古い状態。

CamelOpenShiftEventNewState

いいえ

いずれかのイベントタイプの新しい状態