WEBCONTAINER_ELEMENT_STATUS¶
説明
ストアドプロシージャ WEBCONTAINER_ELEMENT_STATUS は、すべての Virtual DataPort データベースの Web サービス (SOAP および REST) に関する情報を返します。データベース、Web サービスのタイプ、サービスの名前でフィルタしたり、デプロイされているサービスのみを参照したりすることができます。
構文
WEBCONTAINER_ELEMENT_STATUS (
input_database_name : text
, <input_service>
, <input_service_type>
, input_service_name : text
, input_description : text
, input_modified : boolean
, input_deployed : boolean
)
<input_service> ::=
'webservice'
<input_service_type> ::=
'REST'
| 'SOAP'
| 'SOAP/REST'
すべてのパラメータはオプションです 。パラメータが null の場合、このプロシージャはそのパラメータでフィルタしません。
input_database_name: Web サービスの検索対象データベースの名前。nullの場合、すべてのデータベースでサービスを検索します。input_service: 検索するサービスのタイプ。値の大文字と小文字は区別されません。Web サービスを検索するには、
"webservice"と入力します。両方検索するには、
nullと入力します。
input_service_type: 検索するサービスのタイプ。REST Web サービスを検索するには、
"REST"と入力します。SOAP Web サービスを検索するには、
"SOAP"と入力します。Virtual DataPort 4.7 以前からインポートした Web サービスを検索するには、
"SOAP/REST"と入力します。
input_service_name: 指定した場合、このプロシージャはこの値が名前に 含まれている サービスを返します。パラメータinput_database_nameがnullの場合、このプロシージャは、現在接続しているデータベースだけではなく、すべてのデータベースのサービスのうちで、この名前と一致しているものを返します。input_description: 指定した場合、このプロシージャは、この値が説明に 含まれている サービスを返します。input_modified:trueの場合、デプロイされていて、デプロイ後に変更されたすべてのサービスを返します。falseの場合、デプロイされていて、その後変更されていないすべてのサービスを返します。input_deployed:trueの場合、デプロイされているすべてのサービスを返します。falseの場合、デプロイされていないサービスを返します。
このプロシージャは、Web サービスごとに以下のフィールドで構成される 1 つの行を返します。
database_name: Web サービスのデータベース。service: サービスのタイプ。想定される値は以下のとおりです。webservice
service_type: サービスのタイプ。想定される値は以下のとおりです。REST: REST Web サービス。SOAP: SOAP Web サービス。
service_name: Web サービスの名前。ws_description: 説明。deployed: サービスが Denodo の Web コンテナーにデプロイされている場合はtrue、そうでない場合はfalse。modified: サービスが Denodo の Web コンテナーにデプロイされてから変更されている場合はtrue、そうでない場合はfalse。ws_context: サービスがデプロイされる Denodo Web コンテナー内のコンテキスト。サービスが Denodo の Web コンテナーにデプロイされていない場合はnullです。ws_user: サービスがサーバーに接続してクエリを実行するために使用するアカウント。サービスが Denodo の Web コンテナーにデプロイされていない場合はnullです。
必要な権限
このプロシージャは、ユーザーが管理者であるデータベースに属している Web サービスに関する情報のみを返します。その意味は以下のとおりです。
ユーザーが管理者の場合、このプロシージャはすべての Web サービスに関する情報を返します。
このプロシージャは、ユーザーがローカル管理者であるデータベースの Web サービスに関する情報を返します。
このプロシージャは、「権限エラー」を返しません。たとえば、以下の例を考えてみます。
ユーザーがすべてのデータベースの Web サービスに関する情報をリクエストします。
サーバーには、
adminとtestingという 2 つのデータベースがあります。このユーザーは
testingデータベースのみのローカル管理者であり、adminデータベースの管理者ではありません。
このシナリオでは、このプロシージャは testing データベースの Web サービスに関する情報のみを返し、 admin データベースの Web サービスに関する情報は返しません。
例
例 1
test データベースのすべての REST Web サービスを取得する:
SELECT *
FROM WEBCONTAINER_ELEMENT_STATUS()
WHERE input_database_name = 'test'
AND input_service_type = 'REST'
例 2
デプロイされてから定義が変更されたすべてのデプロイ済み Web サービスを取得する:
SELECT *
FROM WEBCONTAINER_ELEMENT_STATUS()
WHERE input_deployed = true
AND input_modified = true;
この例では、デプロイされているサービスのみが変更済みとしてマークされるため、最後のパラメータ (deployed) を true に設定するのと null に設定するのは同じことです。
