NodeChangeEvent.java |
1 /* 2 * %W% %E% 3 * 4 * Copyright (c) 2006, Oracle and/or its affiliates. All rights reserved. 5 * ORACLE PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. 6 */ 7 8 package java.util.prefs; 9 10 import java.io.NotSerializableException; 11 12 /** 13 * An event emitted by a <tt>Preferences</tt> node to indicate that 14 * a child of that node has been added or removed.<p> 15 * 16 * Note, that although NodeChangeEvent inherits Serializable interface from 17 * java.util.EventObject, it is not intended to be Serializable. Appropriate 18 * serialization methods are implemented to throw NotSerializableException. 19 * 20 * @author Josh Bloch 21 * @version $I$, $G$ 22 * @see Preferences 23 * @see NodeChangeListener 24 * @see PreferenceChangeEvent 25 * @since 1.4 26 * @serial exclude 27 */ 28 29 public class NodeChangeEvent extends java.util.EventObject { 30 /** 31 * The node that was added or removed. 32 * 33 * @serial 34 */ 35 private Preferences child; 36 37 /** 38 * Constructs a new <code>NodeChangeEvent</code> instance. 39 * 40 * @param parent The parent of the node that was added or removed. 41 * @param child The node that was added or removed. 42 */ 43 public NodeChangeEvent(Preferences parent, Preferences child) { 44 super(parent); 45 this.child = child; 46 } 47 48 /** 49 * Returns the parent of the node that was added or removed. 50 * 51 * @return The parent Preferences node whose child was added or removed 52 */ 53 public Preferences getParent() { 54 return (Preferences) getSource(); 55 } 56 57 /** 58 * Returns the node that was added or removed. 59 * 60 * @return The node that was added or removed. 61 */ 62 public Preferences getChild() { 63 return child; 64 } 65 66 /** 67 * Throws NotSerializableException, since NodeChangeEvent objects are not 68 * intended to be serializable. 69 */ 70 private void writeObject(java.io.ObjectOutputStream out) 71 throws NotSerializableException { 72 throw new NotSerializableException("Not serializable."); 73 } 74 75 /** 76 * Throws NotSerializableException, since NodeChangeEvent objects are not 77 * intended to be serializable. 78 */ 79 private void readObject(java.io.ObjectInputStream in) 80 throws NotSerializableException { 81 throw new NotSerializableException("Not serializable."); 82 } 83 84 // Defined so that this class isn't flagged as a potential problem when 85 // searches for missing serialVersionUID fields are done. 86 private static final long serialVersionUID = 8068949086596572957L; 87 } 88 89