アプリケーションプログラミングインターフェイスガイド> Webサービスオペレーション> オペレーションリファレンス> introspectResourcesTask
 
introspectResourcesTask
データソースをイントロスペクトするサーバータスクを作成します。
イントロスペクションは、データソース内のネイティブリソースを分析し、それらを表すTDV内にリソースを作成するプロセスです。イントロスペクション計画は、正確にイントロスペクトする必要があるものの詳細を提供します。これには、追加、更新、または削除されるリソースが含まれます。以前にイントロスペクトされたすべてのリソースを更新するかどうか。個々のリソースのイントロスペクション属性。およびその他のオプション。
個々のリソースのイントロスペクション属性は、特定のリソースのイントロスペクション属性のいずれかが変更された場合にのみ提供する必要があります。それ以外の場合は、以前に使用された属性(使用可能な場合)またはデフォルトを使用できます。
イントロスペクションプランには、イントロスペクションプランエントリのリストが含まれています。エントリごとに、以下を指定する必要があります。
resourceId:イントロスペクトされるリソースのパス、タイプ、およびサブタイプ。リソースパスはデータソースからの相対パスです。たとえば、空のパスはデータソース自体を識別します。
action:
ADD_OR_UPDATE:リソースがまだ存在しない場合は、リソースが追加されます。それ以外の場合は更新されます。
REMOVE:リソースが存在する場合は削除されます。
データソースは削除できません。 destroyResourceを使用してデータソースを削除します。
ADD_OR_UPDATE_RECURSIVELY:サポートされていません。
attributes:イントロスペクション中に適用するイントロスペクション固有の属性のリスト。特定の属性が指定されていない場合は、前のイントロスペクションで使用された属性が使用されます。リソースが以前にイントロスペクトされていない場合は、その属性のデフォルト値が使用されます。
プランのfailFastオプションがTRUEの場合、最初のエラーが発生したときにイントロスペクションは失敗します。それ以外の場合、計画は最善の努力として完了するまで実行されます。デフォルトはFALSEです。
プランのcommOnFailureオプションがTRUEの場合、イントロスペクションは可能な限りコミットします。 fastFailもTRUEの場合、その時点までに正常にイントロスペクトされたリソースのみがコミットされます。デフォルトはFALSEです。
プランのautoRollbackオプションがTRUEの場合、イントロスペクションタスクはコミットされるのではなくロールバックされます。これは、すべてのコミットオプションに優先します。これにより、リソースイントロスペクションのドライランを実行できます。 autoRollbackがTRUEの場合、introspectResourcesResultを使用できます。 autoRollbackがFALSEまたは設定解除されている場合、イントロスペクションは自動的にロールバックされません。
プランのscanForNewResourcesToAutoAddオプションがTRUEの場合、イントロスペクションタスクは、データソースに新しく追加されたネイティブリソースをスキャンします。新しく追加されたリソースが見つかり、その親コンテナーにautoAddChildrenイントロスペクション属性が設定されている場合、その子は自動的にイントロスペクトされます。
このオペレーションは、introspectResourcesResultを使用して結果を取得するために使用できる、またはcancelServerTaskを使用してキャンセルできるtaskIdを返します。
このオペレーションは、totalResultsエレメントで追加、削除、または更新されたリソースの数を返します。 totalResultsエレメントは、完全な合計がわかるまで存在しません。この数が不明であるか、部分的な結果しか利用できない場合、このエレメントは空です。
このオペレーションを呼び出すTDVセッションがタスクが完了する前に閉じた場合、タスクは完了するまで実行を続けます。ただし、taskIdはcancelServerTaskでのみ使用できます。 introspectDataSourceResultと一緒に使用することはできません。
イントロスペクションタスクは、サーバー上の独立したバックグラウンドトランザクション内で実行されます。 introspectResourceResultまたはcancelServerTaskを呼び出すために、明示的なトランザクション内でintrospectResourcesTaskを呼び出す必要はありません。このバックグラウンドトランザクションは、完了するまでサーバーの再起動後も存続します。
ロケーション
/services/webservices/system/admin/resource/operations/
リクエストエレメント
path:データソースへのパス。
plan:イントロスペクション計画。実行するリソースの詳細を示します。 イントロスペクションプランエレメントを参照してください。
runInBackgroundTransaction
attributes(オプション。上記の計画の属性リストおよびサブエレメントと同じ)。 属性エレメントも参照してください。
応答エレメント
taskId:作業を実行するサーバータスクのID。
totalResults(オプション):わかっている場合は、結果セットの合計サイズ。それ以外の場合、このエレメントは存在しません。
completed:ブール値。タスクが完了するまで実行されたかどうか。
エラー解析
DataSourceError:データソース接続を確立できない場合、またはデータソース要求がエラーを返した場合。
IllegalArgument:パス、プラン、または属性の形式が正しくない場合。
IllegalState:データソースが無効になっている場合。
NotFound:指定されたパスでデータソースリソースが見つからない場合。
セキュリティ:ユーザーがパス内の最後のアイテム以外のすべてのアイテムに対する読み取りアクセス権を持っていない場合。
セキュリティ:ユーザーがパスの最後のアイテムに対する書き込みアクセス権を持っていない場合。
セキュリティ:ユーザーがACCESS_TOOLS権限を持っていない場合。