1adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project/* 2adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * Licensed to the Apache Software Foundation (ASF) under one or more 3adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * contributor license agreements. See the NOTICE file distributed with 4adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * this work for additional information regarding copyright ownership. 5adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * The ASF licenses this file to You under the Apache License, Version 2.0 6adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * (the "License"); you may not use this file except in compliance with 7adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * the License. You may obtain a copy of the License at 8adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * 9adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * http://www.apache.org/licenses/LICENSE-2.0 10adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * 11adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * Unless required by applicable law or agreed to in writing, software 12adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * distributed under the License is distributed on an "AS IS" BASIS, 13adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * See the License for the specific language governing permissions and 15adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * limitations under the License. 16adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project */ 17adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 18adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Projectpackage java.beans; 19adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 20adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Projectimport java.util.EventObject; 21adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 22adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project/** 23adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * An event that indicates that a constraint or a boundary of a property has 24adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * changed. 25adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project */ 26adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Projectpublic class PropertyChangeEvent extends EventObject { 27adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 28adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project private static final long serialVersionUID = 7042693688939648123L; 29adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 30adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project String propertyName; 31adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 32adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project Object oldValue; 33adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 34adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project Object newValue; 35adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 36adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project Object propagationId; 37adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 38adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project /** 39adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * The constructor used to create a new {@code PropertyChangeEvent}. 40f33eae7e84eb6d3b0f4e86b59605bb3de73009f3Elliott Hughes * 41adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * @param source 42adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * the changed bean. 43adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * @param propertyName 44adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * the changed property, or <code>null</code> to indicate an 45adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * unspecified set of the properties has changed. 46adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * @param oldValue 47adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * the previous value of the property, or <code>null</code> if 48adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * the <code>propertyName</code> is <code>null</code> or the 49adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * previous value is unknown. 50adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * @param newValue 51adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * the new value of the property, or <code>null</code> if the 52adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * <code>propertyName</code> is <code>null</code> or the new 53adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * value is unknown. 54adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project */ 55adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project public PropertyChangeEvent(Object source, String propertyName, 56adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project Object oldValue, Object newValue) { 57adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project super(source); 58adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 59adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project this.propertyName = propertyName; 60adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project this.oldValue = oldValue; 61adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project this.newValue = newValue; 62adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 63adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 64adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project /** 65adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * Returns the name of the property that has changed. If an unspecified set 66adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * of properties has changed it returns null. 67f33eae7e84eb6d3b0f4e86b59605bb3de73009f3Elliott Hughes * 68adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * @return the name of the property that has changed, or null. 69adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project */ 70adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project public String getPropertyName() { 71adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project return propertyName; 72adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 73adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 74adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project /** 75adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * Sets the propagationId object. 76f33eae7e84eb6d3b0f4e86b59605bb3de73009f3Elliott Hughes * 77adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * @see #getPropagationId() 78adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project */ 79adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project public void setPropagationId(Object propagationId) { 80adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project this.propagationId = propagationId; 81adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 82adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 83adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project /** 84adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * Returns the propagationId object. This is reserved for future use. Beans 85adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * 1.0 demands that a listener receiving this property and then sending its 86adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * own PropertyChangeEvent sets the received propagationId on the new 87adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * PropertyChangeEvent's propagationId field. 88f33eae7e84eb6d3b0f4e86b59605bb3de73009f3Elliott Hughes * 89adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * @return the propagationId object. 90adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project */ 91adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project public Object getPropagationId() { 92adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project return propagationId; 93adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 94adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 95adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project /** 96adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * Returns the old value that the property had. If the old value is unknown 97adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * this method returns null. 98f33eae7e84eb6d3b0f4e86b59605bb3de73009f3Elliott Hughes * 99adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * @return the old property value or null. 100adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project */ 101adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project public Object getOldValue() { 102adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project return oldValue; 103adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 104adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 105adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project /** 106adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * Returns the new value that the property now has. If the new value is 107adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * unknown this method returns null. 108f33eae7e84eb6d3b0f4e86b59605bb3de73009f3Elliott Hughes * 109adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * @return the old property value or null. 110adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project */ 111adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project public Object getNewValue() { 112adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project return newValue; 113adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 114adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project} 115