Curl ORB性能検証ライブラリ

Curl ORB for Curl 0.6には、性能テストを行うためのライブラリが追加されています。

Curl ORB for Curlの中のパッケージ、 com.curlap.orb.clientがそれに該当します。

ここでは、パッケージの中の各クラスの概要についてご説明いたします。メソッド、コンストラクタ等はアクセス修飾詞がパッケージ、パブリックのみご紹介しています。

詳細につきましては、javadocをご参照ください。

クラスの紹介(概要)

ClientUtil
ORBへのリクエスト/レスポンスのインターフェースです。内部的にこのクラスを通じてHTTP通信を行います。

HTTPSessionClient
セッション単位でのORB呼び出し用のクラスです。

ApplicationContextClient
Spring等のDIコンテナとの連携用のクラスです。

ORBClientException
クライアント側の例外をハンドリングするクラスです。

ORBServerException
サーバ側の例外をハンドリングするクラスです。

ORBDefaultServerUrl
デフォルトのORB呼び出しのためのURLが記述されています。

デフォルトのORB用URL     :DEFAULT_SERVER_URL = “http://localhost:8080/curl-orb-server”
インスタンス作成用コンテキスト :NEW_INSTANCE_CONTEXT_NAME = “/new-instance”
メソッド呼び出し用コンテキスト  :INVOKE_HTTPSESSION_NAME = “/invoke-http-session”
DIコンテナ用コンテキスト      :INVOKE_APPLICATIONCONTEXT_NAME = “/invoke-application-context”
インスタンス廃棄用コンテキスト  :DESTROY_CONTEXT_NAME = “/destroy-instance”

クラスの紹介(詳細)

ClientUtilクラス(直接呼び出すことはありません)

パッケージ

com.curlap.orb.client

スーパークラス

なし

フィールド

HttpClient

コンストラクタ

ClientUtil()
ClientUtilクラスをインスタンス化します。

メソッド

requestToORB (管理するイベントを登録)
引数1(request:InstanceManagementRequest):リクエスト内容
引数2(uri:String):curl ORB サーバのURL
戻り値:Object リクエストに対してのレスポンス

HTTPSessionClientクラス

パッケージ

com.curlap.orb.client

スーパークラス

なし

フィールド

なし

コンストラクタ

HTTPSessionClient (指定したクラスをインスタンス化)
引数1(serverUrl:String):*オプション。ORBサーバのURLを指定。
デフォルトは“http://localhost:8080/curl-orb-server”
引数2(contextName:String) :*オプション。インスタンス作成用コンテキストを指定。
デフォルトは“/new-instance”
引数3(className:String) :*必須。インスタンス化したいクラス名
引数4(args:Object[]) :*必須。インスタンス化したいクラス必要な引数

呼び出し方
1.HttpSessionClient(java.lang.String className, java.lang.Object[] args)
2.HttpSessionClient(java.lang.String contextName, java.lang.String className, java.lang.Object[] args)
3.HttpSessionClient(java.lang.String serverUrl, java.lang.String contextName, java.lang.String className, java.lang.Object[] args)

メソッド

invokeMethod (インスタンス化したクラスのメソッドを呼び出す)
引数1(contextName:String):*オプション。インスタンス作成用コンテキストを指定。
デフォルトは“invoke-http-session”
引数2(methodName:String):*必須。呼び出したいメソッド名
引数3(args:Object[]):*必須。。呼び出すメソッドに必要な引数
引数4(boolean isStream):*オプション。trueに設定するとデータの返却がStream形式になります。
戻り値:Object リクエストしたメソッド対してのレスポンス

呼び出し方
1.invokeMethod(java.lang.String methodName, java.lang.Object[] args)
2.invokeMethod(java.lang.String methodName, java.lang.Object[] args, boolean isStream)
3.invokeMethod(java.lang.String contextName, java.lang.String methodName, java.lang.Object[] args)
4.invokeMethod(java.lang.String contextName, java.lang.String methodName, java.lang.Object[] args, boolean isStream)

destroy (インスタンス化したクラスの破棄)
引数1(contextName:String):*オプション。インスタンス作成用コンテキストを指定
デフォルトは“/destroy-instance”

呼び出し方
1.destroy(java.lang.String contextName)
2.destroy()

invokeStaticMethod (staticメソッドを呼び出す)
引数1(
serverUrl:String): *オプション。ORBサーバのURLを指定。
デフォルトは”http://localhost:8080/curl-orb-server”
引数2(contextName:String):*オプション。インスタンス作成用コンテキストを指定。
デフォルトは“invoke-http-session”
引数3(className:String):*必須。呼び出したいクラス名。
引数3(methodName:String):*必須。呼び出したいメソッド名。
引数4(args:Object[]):*必須。呼び出すメソッドに必要な引数。
引数5(boolean isStream):*オプション。trueに設定するとデータの返却がStream形式になります。
戻り値:Object リクエストしたメソッド対してのレスポンス

呼び出し方
1.invokeStaticMethod(java.lang.String className, java.lang.String methodName, java.lang.Object[] args)
2.invokeStaticMethod(java.lang.String className, java.lang.String methodName, java.lang.Object[] args, boolean isStream)
3.invokeStaticMethod(java.lang.String contextName, java.lang.String className, java.lang.String methodName, java.lang.Object[] args)
4.invokeStaticMethod(java.lang.String contextName, java.lang.String className, java.lang.String methodName, java.lang.Object[] args, boolean isStream)
5.invokeStaticMethod(java.lang.String serverUrl, java.lang.String contextName, java.lang.String className, java.lang.String methodName, java.lang.Object[] args)
6.invokeStaticMethod(java.lang.String serverUrl, java.lang.String contextName, java.lang.String className, java.lang.String methodName, java.lang.Object[] args, boolean isStream)

ApplicationContextClientクラス

パッケージ

com.curlap.orb.client

スーパークラス

なし

フィールド

なし

コンストラクタ

ApplicationContextClient:(ORBサーバのURLを指定)
引数1(serverUrl:String):*オプション。ORBサーバのURLを指定。
デフォルトは“http://localhost:8080/curl-orb-server”

呼び出し方
1.ApplicationContextClient(java.lang.String serverUrl)
2.ApplicationContextClient()

メソッド

invokeMethod(メソッドの呼び出し)
引数1(contextName:String):*オプション。インスタンス作成用コンテキストを指定。
デフォルトは“/invoke-application-context”
引数2(componentName:String):*必須。呼び出したいコンポーネント名。
引数3(methodName:String):*必須。呼び出したいメソッド名。
引数4(args:Object[]):*必須。呼び出したいメソッドに必要な引数。
引数5(boolean isStream):*オプション。trueに設定するとデータの返却がStream形式になります。
戻り値:Object リクエストに対してのレスポンス

呼び出し方
1.invokeMethod(java.lang.String componentName, java.lang.String methodName, java.lang.Object[] args)
2.invokeMethod(java.lang.String componentName, java.lang.String methodName, java.lang.Object[] args, boolean isStream)
3.invokeMethod(java.lang.String contextName, java.lang.String componentName, java.lang.String methodName, java.lang.Object[] args)
4.invokeMethod(java.lang.String contextName, java.lang.String componentName, java.lang.String methodName, java.lang.Object[] args, boolean isStream)

ORBClientException

パッケージ

com.curlap.orb.client

スーパークラス

Exception

フィールド

なし

コンストラクタ

ORBClientException:(クライアント側でのスローできる例外を定義します)
ORBClientException()

例外を新たに構築します。

呼び出し方
1.ORBClientException()
2.ORBClientException(java.lang.String message)
3.ORBClientException(java.lang.String message, java.lang.Throwable rootCause)
4.ORBClientException(java.lang.Throwable rootCause)

ORBServerException

パッケージ

com.curlap.orb.client

スーパークラス

Exception

フィールド

なし

コンストラクタ

ApplicationContextClient:(ORBサーバのURLを指定)
ORBServerException()

例外を新たに構築します

呼び出し方
1.ORBServerException()
2.ORBServerException(ExceptionContent exceptionContent)
3.ORBServerException(java.lang.String message)
4.ORBServerException(java.lang.String message, java.lang.Throwable rootCause)
5.ORBServerException(java.lang.Throwable rootCause)

メソッド

getExceptionContent(例外の返却)

呼び出し方
getExceptionContent()