001 package org.nakedobjects.applib.events;
002
003 import org.nakedobjects.applib.Identifier;
004
005
006 /**
007 * Represents an access (reading) of a property.
008 *
009 * <p>
010 * Analogous to {@link PropertyModifyEvent}, however the {@link #getReason()} will always be <tt>null</tt>.
011 * (If access is not allowed then a {@link PropertyVisibilityEvent} would have been fired).
012 */
013 public class PropertyAccessEvent extends AccessEvent {
014
015 private static final long serialVersionUID = 1L;
016
017 public PropertyAccessEvent(final Object source, final Identifier propertyIdentifier, final Object value) {
018 super(source, propertyIdentifier);
019 this.value = value;
020 }
021
022 private final Object value;
023
024 public Object getValue() {
025 return value;
026 }
027
028 }