共通 DOM API

org.w3c.dom
インタフェース UserDataHandler


public interface UserDataHandler

Node.setUserData() を使ってノードのキーにオブジェクトを関連付けると、アプリケーションは、オブジェクトが関連付けられているノードを複製、インポート、または名前変更するときに呼び出されるハンドラを提供できます。アプリケーションは、このハンドラを使って、DOM ノードに関連付けるデータの種々の動作を実装できます。このインタフェースはそのハンドラを定義します。

「Document Object Model (DOM) Level 3 Core Specification」も参照してください。

導入されたバージョン:
DOM Level 3

フィールドの概要
static short NODE_ADOPTED
          ノードは Document.adoptNode() を使って採用されます。
static short NODE_CLONED
          ノードは Node.cloneNode() を使って複製されます。
static short NODE_DELETED
          ノードは削除されます。
static short NODE_IMPORTED
          ノードは Document.importNode() を使ってインポートされます。
static short NODE_RENAMED
          ノードの名前は Document.renameNode() を使って変更されます。
 
メソッドの概要
 void handle(short operation, String key, Object data, Node src, Node dst)
          このメソッドは、このハンドラが登録されたノードがインポートまたは複製されるたびに呼び出されます。
 

フィールドの詳細

NODE_CLONED

static final short NODE_CLONED
ノードは Node.cloneNode() を使って複製されます。

関連項目:
定数フィールド値

NODE_IMPORTED

static final short NODE_IMPORTED
ノードは Document.importNode() を使ってインポートされます。

関連項目:
定数フィールド値

NODE_DELETED

static final short NODE_DELETED
ノードは削除されます。

注: オブジェクトが実際に削除される時期を、実装が制御することができない Java のような特定の環境では、この値はサポートされない、もしくは信頼性がない場合があります。

関連項目:
定数フィールド値

NODE_RENAMED

static final short NODE_RENAMED
ノードの名前は Document.renameNode() を使って変更されます。

関連項目:
定数フィールド値

NODE_ADOPTED

static final short NODE_ADOPTED
ノードは Document.adoptNode() を使って採用されます。

関連項目:
定数フィールド値
メソッドの詳細

handle

void handle(short operation,
            String key,
            Object data,
            Node src,
            Node dst)
このメソッドは、このハンドラが登録されたノードがインポートまたは複製されるたびに呼び出されます。
DOM アプリケーションは、UserDataHandler で例外を発生してはなりません。ハンドラから例外をスローした場合の影響は、DOM 実装に依存します。

パラメータ:
operation - ノードで実行されている操作の型を指定する
key - このハンドラが呼び出されるキーを指定する
data - このハンドラが呼び出されるデータを指定する
src - コピー、採用、インポート、名前変更しているノードを指定する。ノードが削除されている場合は null
dst - 新規に作成されたノードを指定する (存在する場合)、または null

共通 DOM API

バグや機能要求の報告
Java は、米国およびその他の国における米国 Sun Microsystems, Inc. の商標もしくは登録商標です。
Copyright 2004 Sun Microsystems, Inc. 4150 Network Circle
Santa Clara, California, 95054, U.S.A. All Rights Reserved.