Sun N1 Service Provisioning System 5.2 XML スキーマリファレンスガイド

<uninstallSteps> 要素

<uninstallSteps> 要素は <uninstallList> 要素の子要素であり、コンポーネントをアンインストールするために実行される一連のステップを示します。<uninstall> ステップによってこのコンポーネントがアンインストールされる場合、この要素に挙げられるステップが順に実行されます。単純コンポーネントの <uninstallSteps> 要素は <undeployResource> ステップを含むことが許可されますが、これは必須ではありません。複合コンポーネントの <uninstallSteps> 要素には、参照先コンポーネントをアンインストールする 1 つ以上の <uninstall> ステップを含むことが許可されますが、これは必須ではありません。

<uninstallSteps> 要素の子は、オプションの <paramList> 要素から構成され、そのあとに本体が続きます。本体は、オプションの <dependantCleanup> ブロックに続く、オプションのローカル <varList> 要素から構成されます。このブロックの後ろには、ゼロ以上の「共有」または「コンポーネントアンインストールのみ」ステップがあります。アンインストールブロックが抽象と宣言されている場合、本体は含められません。

次の例に、サンプル <uninstallSteps> 要素の内容を示します。</paramList> 以降が本体を定義しています。

<uninstallSteps name="default">
  <paramList>
     <param name="param1"/>
   </paramList>
  <varList>
    <var name="var1" default="my var 1"/>
  </varList>
  <dependantCleanup>
    <uninstall blockName="default">
        <allDependants name="child2parent"/>
    </unisntall>
  </dependantCleanup>
  <undeployResource/>
</uninstallSteps>

デフォルトでは、派生コンポーネントはそのベースコンポーネントの、アクセス可能なすべてのアンインストールブロックを継承します。アンインストールブロックをオーバーライドするセマンティクスは、インストールブロックをオーバーライドするセマンティクスと同じです。

<uninstallSteps> 要素の属性

<uninstallSteps> 要素には次の属性があります。

<dependantCleanup> 要素

<dependantCleanup> 要素は <uninstallSteps> 要素の子要素です。<dependantCleanup> 要素は、呼び出し側コンポーネントに現在依存しているコンポーネントを削除するために実行される一連のステップを指定します。この要素に属性はなく、包含するアンインストールブロックのスコープ内で許可される任意の数のステップを含むことができます。

この要素を含めると、依存コンポーネントのチェックはブロックの内容の実行が完了するまで延期されます。ブロックの実行が完了したあとも依存コンポーネントが存在する場合は、アンインストールが失敗し、コンポーネントはインストールされたままとなります。依存コンポーネントが残っていない場合、アンインストールが継続されて残りのステップが行われます。

包含コンポーネントがターゲット設定可能である場合、ブロックを使用して、ホストを対象とする関連付けられたコンポーネントにインストールされたコンポーネントを削除できます。このブロックが完了したあとも、関連付けられているホスト上にインストール済みコンポーネントが残っている場合、アンインストールは失敗します。

アンインストールブロックに <dependantCleanup> ブロックを含めないと、依存コンポーネントが存在する場合、アンインストールブロックはただちに停止します。

<dependantCleanup> ブロックは、依存コンポーネントをまとめてアンインストールする目的で、<allDependants> ターゲッターと併用されることがよくあります。