KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > enhydra > apache > xerces > dom > events > MutationEventImpl


1 /*
2  * The Apache Software License, Version 1.1
3  *
4  *
5  * Copyright (c) 1999 The Apache Software Foundation. All rights
6  * reserved.
7  *
8  * Redistribution and use in source and binary forms, with or without
9  * modification, are permitted provided that the following conditions
10  * are met:
11  *
12  * 1. Redistributions of source code must retain the above copyright
13  * notice, this list of conditions and the following disclaimer.
14  *
15  * 2. Redistributions in binary form must reproduce the above copyright
16  * notice, this list of conditions and the following disclaimer in
17  * the documentation and/or other materials provided with the
18  * distribution.
19  *
20  * 3. The end-user documentation included with the redistribution,
21  * if any, must include the following acknowledgment:
22  * "This product includes software developed by the
23  * Apache Software Foundation (http://www.apache.org/)."
24  * Alternately, this acknowledgment may appear in the software itself,
25  * if and wherever such third-party acknowledgments normally appear.
26  *
27  * 4. The names "Xerces" and "Apache Software Foundation" must
28  * not be used to endorse or promote products derived from this
29  * software without prior written permission. For written
30  * permission, please contact apache@apache.org.
31  *
32  * 5. Products derived from this software may not be called "Apache",
33  * nor may "Apache" appear in their name, without prior written
34  * permission of the Apache Software Foundation.
35  *
36  * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
37  * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
38  * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
39  * DISCLAIMED. IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR
40  * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
41  * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
42  * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
43  * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
44  * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
45  * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
46  * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
47  * SUCH DAMAGE.
48  * ====================================================================
49  *
50  * This software consists of voluntary contributions made by many
51  * individuals on behalf of the Apache Software Foundation and was
52  * originally based on software copyright (c) 1999, International
53  * Business Machines, Inc., http://www.apache.org. For more
54  * information on the Apache Software Foundation, please see
55  * <http://www.apache.org/>.
56  */

57 package org.enhydra.apache.xerces.dom.events;
58
59 import org.w3c.dom.Node JavaDoc;
60 import org.w3c.dom.events.MutationEvent JavaDoc;
61
62 public class MutationEventImpl
63 extends org.enhydra.apache.xerces.dom.events.EventImpl
64 implements MutationEvent JavaDoc
65 {
66     Node JavaDoc relatedNode=null;
67     String JavaDoc prevValue=null,newValue=null,attrName=null;
68     // REVISIT: The DOM Level 2 PR has a bug: the init method should let this
69
// attribute be specified. Since it doesn't we have to give write access.
70
public short attrChange;
71     
72     // NON-DOM CONSTANTS: Storage efficiency, avoid risk of typos.
73
public static final String JavaDoc DOM_SUBTREE_MODIFIED = "DOMSubtreeModified";
74     public static final String JavaDoc DOM_NODE_INSERTED = "DOMNodeInserted";
75     public static final String JavaDoc DOM_NODE_REMOVED = "DOMNodeRemoved";
76     public static final String JavaDoc DOM_NODE_REMOVED_FROM_DOCUMENT = "DOMNodeRemovedFromDocument";
77     public static final String JavaDoc DOM_NODE_INSERTED_INTO_DOCUMENT = "DOMNodeInsertedIntoDocument";
78     public static final String JavaDoc DOM_ATTR_MODIFIED = "DOMAttrModified";
79     public static final String JavaDoc DOM_CHARACTER_DATA_MODIFIED = "DOMCharacterDataModified";
80
81     /** @return the name of the Attr which
82         changed, for DOMAttrModified events.
83         Undefined for others.
84         */

85     public String JavaDoc getAttrName()
86     {
87         return attrName;
88     }
89
90     /**
91      * <code>attrChange</code> indicates the type of change which triggered
92      * the DOMAttrModified event. The values can be <code>MODIFICATION</code>
93      * , <code>ADDITION</code>, or <code>REMOVAL</code>.
94      */

95     public short getAttrChange()
96     {
97         return attrChange;
98     }
99
100     /** @return the new string value of the Attr for DOMAttrModified events, or
101         of the CharacterData node for DOMCharDataModifed events.
102         Undefined for others.
103         */

104     public String JavaDoc getNewValue()
105     {
106         return newValue;
107     }
108
109     /** @return the previous string value of the Attr for DOMAttrModified events, or
110         of the CharacterData node for DOMCharDataModifed events.
111         Undefined for others.
112         */

113     public String JavaDoc getPrevValue()
114     {
115         return prevValue;
116     }
117
118     /** @return a Node related to this event, other than the target that the
119         node was dispatched to. For DOMNodeRemoved, it is the node which
120         was removed.
121         No other uses are currently defined.
122         */

123     public Node JavaDoc getRelatedNode()
124     {
125         return relatedNode;
126     }
127
128     /** Initialize a mutation event, or overwrite the event's current
129         settings with new values of the parameters.
130         */

131     public void initMutationEvent(String JavaDoc typeArg, boolean canBubbleArg,
132         boolean cancelableArg, Node JavaDoc relatedNodeArg, String JavaDoc prevValueArg,
133         String JavaDoc newValueArg, String JavaDoc attrNameArg, short attrChangeArg)
134     {
135         relatedNode=relatedNodeArg;
136         prevValue=prevValueArg;
137         newValue=newValueArg;
138         attrName=attrNameArg;
139         attrChange=attrChangeArg;
140         super.initEvent(typeArg,canBubbleArg,cancelableArg);
141     }
142
143 }
144
Popular Tags