この章では、Oracle Web Services Manager(Oracle WSM)Step SDKに関するリファレンス情報を示します。Oracle WSM Step SDKには、次のインタフェースとメソッドが含まれています。
インタフェースIStep
既知の実装クラス
AbstractStep
宣言
public interface IStep
説明
ステップとは、パイプラインの基本実行ブロックです。ステップは、Java Beanのフレームワークを使用して構成されるJava Beanです。AbstractStepクラスは、このインタフェースの部分的な実装を提供する抽象クラスです。ステップでは、リソース・プーリング方式を使用して複数のリクエストを効率的に処理できますが、起動ごとの状態を保持できません。
表2-1 IStepのメソッド
| メソッド | 説明 |
|---|---|
|
setEnabled() |
このステップを有効または無効にします。 |
|
getEnabled() |
ブール値をsetEnabledから取得します。 |
|
setStepName() |
このステップの名前を設定します。 |
|
getStepName() |
ステップ名を取得します。 |
|
getAgentContext() |
ポリシー強制ポイントのコンテキスト情報を取得します。 |
|
setAgentContext() |
エージェント・コンテキストを設定します。 |
|
execute() |
このステップを実行します。 |
|
init() |
このメソッドは、Beanが作成された後またはBeanのプロパティが変更された後にコールされます。 |
|
destroy() |
ステップのライフサイクルを確実にクリーンな状態で終了できます。 |
|
getFaultCodes() |
このステップによってスローされるフォルト・コードを取得します。 |
|
setFaultCodes() |
このステップによってスローされるフォルト・コードを設定します。 |
宣言
public void setEnabled(boolean enabled)
説明
このステップを有効または無効にします。
パラメータ
Enabled: trueの場合、ステップは有効です。
宣言
public boolean getEnabled()
説明
ブール値をsetEnabledから取得します。
リターン
trueまたはfalseのいずれかのブール値。ステップが有効な場合はtrueの値を返します。
宣言
public void setStepName(java.lang.String stepName)
説明
このステップの名前を設定します。
パラメータ
stepName: ステップの名前
宣言
public void setAgentContext(AgentContext context)
説明
エージェント・コンテキストを設定します。
パラメータ
context(AgentContext型): パイプラインの実行時のエージェントの情報を表します。
宣言
public IResult execute(IMessageContext context)
Throws Fault
説明
このステップを実行します。
パラメータ
context: リクエストおよびレスポンスを含むメッセージ・コンテキスト
リターン
IResult: このメソッドの実行が成功した場合
Fault: スローされる場合は、Fault型の例外
宣言
public void init()
throws java.lang.IllegalStateException
説明
このメソッドは、Beanが作成された後またはBeanのプロパティが変更された後にコールされます。
スロー
java.lang.IllegalStateException
宣言
public void destroy()
throws java.lang.IllegalStateException
説明
destroyメソッドを使用すると、ステップのライフサイクルを確実にクリーンな状態で終了できます。
インタフェースIContext
サブインタフェース
IMessageContext
宣言
public interface IContext
説明
コンポーネントに関するパイプライン実行コンテキストについての情報
表2-2 IContext()のメソッド
| メソッド | 説明 |
|---|---|
|
getProperty() |
特定のプロパティを検索し、プロパティの値を返します。 |
|
getPropertyNames() |
特定のプロパティまたはプロパティ・セットを検索し、プロパティの名前を返します。 |
|
containsProperty() |
指定されたプロパティ(propName)が存在するかどうかをチェックします。 |
|
setProperty() |
指定されたプロパティ(propName)の値を設定します。 |
|
removeProperty() |
指定されたプロパティ(propName)を削除します。 |
宣言
public java.lang.Object getProperty(java.lang.String propName)
説明
特定のプロパティを検索し、そのプロパティの値を返します。
リターン
propNameの値
宣言
public java.util.Iterator getPropertyNames()
説明
特定のプロパティまたはプロパティ・セットを検索し、名前を返します。
宣言
public boolean containsProperty(java.lang.String propName)
説明
特定のプロパティの有無をチェックします。
リターン
trueまたはfalseのいずれかのブール値
インタフェースIMessageContext
宣言
public interface IMessageContext extends IContext
説明
ステップで処理されるメッセージについてのコンテキスト情報を提供します。
すべてのスーパーインタフェース
IContext
インタフェースcom.cfluent.policysteps.sdk.IContextからの継承
containsProperty、getProperty、getPropertyNames、removeProperty、setProperty、setProperty
表2-3 IMessageContext()のstaticフィールド
| フィールド | 説明 |
|---|---|
|
STAGE_PREREQUEST |
リクエスト前処理ステージを示します。 |
|
STAGE_REQUEST |
リクエスト処理ステージを示します。 |
|
STAGE_RESPONSE |
レスポンス処理ステージを示します。 |
|
STAGE_POSTRESPONSE |
レスポンス後処理ステージを示します。 |
|
STAGE_SERVICE |
メッセージがサービス状態にあることを示します。 |
|
STAGE_SERVICE_DEFINITION |
サービスの定義を指定します。 |
|
STAGE_SERVICE_WSDL |
サービスのWSDLを指定します。 |
表2-4 IMessageContext()のメソッド
| メソッド | 説明 |
|---|---|
|
getGUID() |
グローバルな一意のIDを取得します。 |
|
getServiceID() |
メッセージが転送されるサービスを特定します。 |
|
getService URL() |
資格証明を指定してポストされる、リモート・ユーザーを取得します。 |
|
getRemoteUser() |
サービス・リクエスタのIDを取得します。 |
|
getRequestMessage() |
SOAPリクエストを取得します。 |
|
getResponseMessage() |
SOAPレスポンスを取得します。 |
|
setRequestMessage(*) |
リクエスト・メッセージを設定します。 |
|
setResponseMessage() |
レスポンス・メッセージを設定します。 |
|
getProcessingStage() |
処理ステージ情報を取得します。 |
|
setProcessingStage() |
処理ステージを設定します。 |
|
getInvocationStatus() |
起動ステータスを取得します。 |
|
setUserLocale() |
ユーザーのロケールを設定します。プロトコル・ハンドラは、このメソッドを使用してメッセージ・プロパティおよびメッセージ・ヘッダーでロケール情報を探します。ロケール情報が見つかった場合は、そのロケールが設定されます。ロケール情報が見つからなかった場合、ユーザーのロケールは製品のロケールにデフォルトで設定されます。 |
|
getUserLocale() |
ユーザーのロケールを取得します。ポリシー・ステップの実装コードでは、ユーザーのロケールを使用してSOAPフォルトをユーザー指定のロケールで提供します。 |
宣言
public java.lang.String getServiceID()
説明
メッセージが転送されるサービスを特定します。
リターン
Oracle WSMのサービス登録情報に基づいたサービスID
宣言
public java.lang.String getRemoteUser()
説明
サービス・リクエスタのIDを取得します。
リターン
サービス・リクエスタのID
宣言
public com.cfluent.ccore.message.SOAPMessage getRequestMessage()
説明
SOAPリクエストを取得します。
リターン
SOAPリクエスト・メッセージ
宣言
public com.cfluent.ccore.message.SOAPMessage getResponseMessage()
説明
SOAPレスポンスを取得します。
リターン
SOAPレスポンス・メッセージ
宣言
public void setRequestMessage(com.cfluent.ccore.message.SOAPMessage requestMessage)
説明
リクエスト・メッセージを設定します。
宣言
public void setResponseMessage(com.cfluent.ccore.message.SOAPMessage responseMessage)
説明
レスポンス・メッセージを設定します。
宣言
public class AgentContext
拡張
java.lang.Object
プロパティ
agentID、resolver、properties
説明
エージェントのコンテキスト情報を取得して使用するメソッドを提供します。
コンストラクタ
public AgentContext(java.lang.String agentId,
com.cfluent.common.resource.IResourceResolver resolver,
java.util.Map properties)
throws java.io.IOException
表2-5 AgentContextのstaticフィールド
| フィールド | 説明 |
|---|---|
|
SERVER_ID |
コンポーネントID。 |
|
LOG_LOGBUNDLES |
ログのバンドル。 |
|
LOG_LOGENABLED |
ロギングが有効であるかどうかを指定します。 |
|
COREMAN_ENABLED |
Oracle WSM Monitorが有効であるかどうかを指定します。 |
|
POLICYSERVER_ENDPOINT |
Oracle WSM Policy Serverのエンドポイントを指定します。 |
|
POLICYSERVER_ENABLED |
ポリシー・サーバーが有効であることを指定します。 |
|
POLICYPACKS_FILENAME |
ポリシー・パックのファイル名(内部コード構造のファイル名)。 |
表2-6 AgentContextのメソッド
| メソッド | 説明 |
|---|---|
|
getAgentID() |
エージェントID(string)を取得します。 |
|
getProperty() |
指定されたpropNameのプロパティ値を取得します。 |
|
getStringProperty() |
指定されたプロパティの値を取得します。プロパティが存在しない場合はNULLを返します。 |
|
getIntProperty() |
プロパティをinteger(プリミティブ)として取得します。 |
|
getResourceResolver() |
リソースに対するリゾルバを取得します。リゾルバは、リソースへの絶対パスを取得するために使用されます。 |
|
getAllProperties() |
すべてのプロパティをキー/値のペアとして取得します。 |
宣言
public static final java.lang.String COREMAN_ENABLED
説明
Oracle WSM Monitorが有効であることを指定するプロパティ。
宣言
public static final java.lang.String POLICYSERVER_ENDPOINT
説明
Oracle WSM Policy Serverのエンドポイントのプロパティ。
宣言
public java.lang.String getAgentID()
説明
エージェントIDを取得します。エージェントIDは、config.xmlファイルに構成され、初期化時にコンストラクタによってプロパティとしてロードされます。
リターン
エージェントID(string)。
宣言
public java.lang.Object getProperty(java.lang.String propName)
説明
指定されたpropNameのプロパティ値を取得します。
パラメータ
propName: 値を取得する必要があるプロパティの名前
リターン
指定されたプロパティの値。プロパティが存在しない場合はNULLを返します。
宣言
public java.lang.String getStringProperty(java.lang.String propName, java.lang.String defaultValue)
説明
プロパティ値をstringとして取得します。
パラメータ
propName: 値を取得する必要があるプロパティの名前
リターン
引数に指定されたプロパティの値のstring表現。プロパティが使用できない場合はNULLを返します。
宣言
public int getIntProperty(java.lang.String propName)
説明
プロパティをinteger(プリミティブ)として取得します。
パラメータ
propName: 値を取得する必要があるプロパティの名前
リターン
引数に指定されたプロパティ名のinteger(プリミティブ)値
宣言
public int getIntProperty(java.lang.String propName, java.lang.string defaultValue)
説明
引数に指定されたプロパティの値をフェッチします。
パラメータ
propName: 値を取得する必要があるプロパティの名前
defaultValue: プロパティを取得できない場合に返されるデフォルト値
リターン
引数に指定されたプロパティの値。プロパティが存在する場合は値が返されます。プロパティが使用できない場合は、引数に指定されたデフォルト値が返されます。
com.cfluent.policysteps.sdk.AbstractStep
宣言
public abstract class AbstractStep
拡張
java.lang.Object
実装
IStep
説明
IStepのデフォルトの実装。実装では、少なくともIStepのexecuteメソッドをオーバーライドする必要があります。
表2-7 AbstractStepのメソッド
| メソッド | 説明 |
|---|---|
|
createResult() |
Beanが作成された後またはBeanのプロパティが変更された後にコールされます。 |
|
setEnabled() |
trueの場合、ステップは有効です。 |
|
getEnabled() |
setEnabledの値を返します。ステップが有効な場合はtrue、それ以外の場合はfalseです。 |
|
setStepName() |
このステップの名前を設定します。 |
|
getStepName() |
ステップ名を取得します。 |
|
getAgentContext() |
インタフェースIStepのgetAgentContext。 |
|
setAgentContext() |
エージェント・コンテキストを設定します。 |
|
execute() |
このステップに対するFaultExecuteをスローします。ステップの実装では、このメソッドをオーバーライドして目的のタスクを実行します。 |
|
init() |
java.lang.IllegalStateExceptionをスローします。このメソッドは、Beanが作成された後またはBeanのプロパティが変更された後にコールされます。 |
|
getFaultCodes() |
このステップによってスローされるフォルト・コードを取得します。 |
|
setFaultCodes() |
このステップによってスローされるフォルト・コードを設定します。 |
|
destroy() |
ステップのライフサイクルを確実にクリーンな状態で終了できます。 |
|
generateFault() |
このステップに対するフォルトを生成します。 |
|
createResult() |
このステップに対する結果を作成します。 |
宣言
protected IResult createResult(int status)
パラメータ
int status
説明
このメソッドは、Beanが作成された後またはBeanのプロパティが変更された後にコールされます。
宣言
public final void setEnabled(boolean enabled)
説明
このステップを有効または無効にします。
パラメータ
boolean enabled
指定元
インタフェースIStepのsetEnabled
パラメータ
enabled: trueの場合、ステップは有効です。
宣言
public final boolean getEnabled()
説明
ステップが有効かどうかをチェックします。
指定元
インタフェースIStepのgetEnabled
リターン
trueまたはfalseのいずれかのブール値。ステップが有効な場合はtrueの値を返します。
宣言
public final void setStepName(java.lang.String stepName)
説明
このステップの名前を設定します。
指定元
インタフェースIStepのsetStepName
パラメータ
stepName: ステップの名前
宣言
public final java.lang.String getStepName()
説明
ステップ名を取得します。
指定元
インタフェースIStepのsetStepName
リターン
このステップの名前。
宣言
public final AgentContext getAgentContext()
説明
ステップのエージェント・コンテキストを取得します。
パラメータ
context
指定元
インタフェースIStepのgetAgentContext
宣言
public final void setAgentContext(AgentContext context)
説明
エージェント・コンテキストを設定します。
指定元
インタフェースIStepのsetAgentContext
宣言
public abstract IResult execute(IMessageContext messageContext)
説明
このステップに対するFaultExecuteをスローします。ステップの実装では、このメソッドをオーバーライドして目的のタスクを実行します。
指定元
インタフェースIStepのexecute
パラメータ
messageContext: リクエストおよびレスポンスを含むメッセージ・コンテキスト
リターン
実行結果により、IResultまたはFaultを返します。
宣言
public void init()
説明
java.lang.IllegalStateExceptionをスローします。このメソッドは、Beanが作成された後またはBeanのプロパティが変更された後にコールされます。
指定元
インタフェースIStepのinit
スロー
java.lang.IllegalStateException
関連項目
IManageable
宣言
public void destroy()
throws java.lang.IllegalStateException
説明
destroyメソッドを使用すると、ステップのライフサイクルを確実にクリーンな状態で終了できます。
指定元
インタフェースIStepのinit
宣言
void setFaultCoides(String[] faultCodes)
説明
このステップによってスローされるフォルト・コードを設定します。
指定元
インタフェースIStepのinit
パラメータ
faultCodes(String[]型): ステップによってスローされるフォルト・コード
宣言
public class Result()
拡張
java.lang.Object
実装
IResult
クラスjava.lang.Objectから継承されるメソッド
clone、equals、finalize、getClass、hashCode、notify、notifyAll
コンストラクタ
public Result()
インタフェースcom.cfluent.policysteps.sdk.IResultから継承されるフィールド
FAILED、SUCCEEDED、SUSPENDED
表2-9 Resultのメソッド
| メソッド | 説明 |
|---|---|
|
getStatus() |
実行ステータスを取得します。 |
|
setStatus() |
実行ステータスを設定します。 |
|
getFault() |
リクエストの実行が失敗した原因となるフォルトを返します。 |
|
setFault() |
このリクエストの実行が失敗した原因となるフォルトを設定します。このフォルトは、適用可能なすべてのフォルト・ハンドラが失敗した場合にフレームワークによって設定されます。ステップの実装では、generateFaultメソッドのみをコールする必要があります。 |
|
toString() |
String形式の結果。 |
宣言
public void setStatus(int status)
説明
実行ステータスを設定します。
指定元
インタフェースIResultのsetStatus
パラメータ
status: 実行ステータスを設定します。
宣言
public Fault getFault()
説明
リクエストの実行が失敗した原因となるフォルトです。このフォルトは、適用可能なすべてのフォルト・ハンドラが失敗した場合にフレームワークによって設定されます。
指定元
インタフェースIResultのgetFault
リターン
リクエストの失敗をもたらしたフォルトです。
宣言
public class InvocationStatus
拡張
java.lang.Object
実装
java.io.Serializable
クラスjava.lang.Objectからの継承
clone、equals、finalize、getClass、hashCode、notify、notifyAll
説明
このクラスは、ステップの実行ステータスをOracle WSM Monitorに送信します。Oracle WSM Monitorでは、この情報を使用して測定を解析します。
コンストラクタ
public InvocationStatus()
表2-10 InvocationStatusのフィールド
| フィールド | 説明 |
|---|---|
|
SUCCEEDED |
起動成功フラグ |
|
FAILED |
起動失敗フラグ |
|
FAILEDOVER |
フェイルオーバー済フラグ |
|
PENDING |
測定保留または実行保留 |
|
NA |
オブジェクト使用不可 |
表2-11 InvocationStatusのメソッド
| メソッド | 説明 |
|---|---|
|
getServiceName() |
起動されるサービスの名前を取得します。 |
|
setServiceName() |
サービスの名前を設定します。 |
|
getTime() |
時刻を取得します。 |
|
setTime() |
時刻を設定します。 |
|
getAuthenticationStatus() |
認証ステータスを取得します。 |
|
setAuthenticationStatus() |
認証ステータスを設定します。 |
|
getAuthorizationStatus() |
認可ステータスを取得します。 |
|
setAuthorizationStatus() |
認可ステータスを設定します。 |
|
getServiceStatus() |
サービスのステータスを取得します。 |
|
setServiceStatus() |
サービスのステータスを設定します。 |
|
getInvocationStatus() |
起動ステータスを取得します。 |
|
setInvocationStatus() |
起動ステータスを設定します。 |
|
getSize() |
サイズを取得します。 |
|
setSize() |
サイズを設定します。 |
|
getLatency() |
ポリシー・パイプラインの全体待機時間のデフォルト値を取得します。 |
|
setLatency() |
全体待機時間の値を設定します。 |
|
getServiceLatency() |
サービス待機時間の値(ミリ秒)を取得します。 |
|
setServiceLatency() |
サービス待機時間の値(ミリ秒)を設定します。 |
|
getFlowID() |
フローIDを取得します。 |
|
setFlowID() |
フローIDを設定します。 |
|
getMethod() |
メソッドを取得します。 |
|
setMethod() |
メソッドを設定します。 |
|
getCorrelationContext() |
相関を取得します。 |
|
setCorrelationContext() |
相関を設定します。 |
|
getMessageId() |
メッセージIDを取得します。 |
|
setMessageId() |
メッセージIDを設定します。 |
|
getErrorMessage() |
失敗のエラー・メッセージを取得します。 |
|
setErrorMessage() |
失敗のエラー・メッセージを設定します。 |
|
toString() |
オブジェクトのString表現。 |
宣言
public java.lang.String getServiceName()
説明
起動されるサービスの名前を取得します。
リターン
起動されるサービスの名前
宣言
public int getServiceLatency()
説明
サービスのみの待機時間を取得します。
リターン
サービス待機時間の値(ミリ秒)
関連項目
getLatency()
宣言
public void setFlowID(java.lang.String flowid)
説明
フローIDを設定します。
パラメータ
flowid(渡されたフローID)
宣言
public void setCorrelationContext(java.lang.String inCorrelationContext)
説明
相関を設定します。
パラメータ
inCorrelationContext