Home » Mojarra-2.0.1 » javax » faces » event » [javadoc | source]

    1   /*
    2    * $Id: ValueChangeEvent.java,v 1.9 2007/04/27 22:00:09 ofung Exp $
    3    */
    4   
    5   /*
    6    * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
    7    * 
    8    * Copyright 1997-2007 Sun Microsystems, Inc. All rights reserved.
    9    * 
   10    * The contents of this file are subject to the terms of either the GNU
   11    * General Public License Version 2 only ("GPL") or the Common Development
   12    * and Distribution License("CDDL") (collectively, the "License").  You
   13    * may not use this file except in compliance with the License. You can obtain
   14    * a copy of the License at https://glassfish.dev.java.net/public/CDDL+GPL.html
   15    * or glassfish/bootstrap/legal/LICENSE.txt.  See the License for the specific
   16    * language governing permissions and limitations under the License.
   17    * 
   18    * When distributing the software, include this License Header Notice in each
   19    * file and include the License file at glassfish/bootstrap/legal/LICENSE.txt.
   20    * Sun designates this particular file as subject to the "Classpath" exception
   21    * as provided by Sun in the GPL Version 2 section of the License file that
   22    * accompanied this code.  If applicable, add the following below the License
   23    * Header, with the fields enclosed by brackets [] replaced by your own
   24    * identifying information: "Portions Copyrighted [year]
   25    * [name of copyright owner]"
   26    * 
   27    * Contributor(s):
   28    * 
   29    * If you wish your version of this file to be governed by only the CDDL or
   30    * only the GPL Version 2, indicate your decision by adding "[Contributor]
   31    * elects to include this software in this distribution under the [CDDL or GPL
   32    * Version 2] license."  If you don't indicate a single choice of license, a
   33    * recipient has the option to distribute your version of this file under
   34    * either the CDDL, the GPL Version 2 or to extend the choice of license to
   35    * its licensees as provided above.  However, if you add GPL Version 2 code
   36    * and therefore, elected the GPL Version 2 license, then the option applies
   37    * only if the new code is made subject to such option by the copyright
   38    * holder.
   39    */
   40   
   41   package javax.faces.event;
   42   
   43   
   44   import javax.faces.component.UIComponent;
   45   
   46   
   47   /**
   48    * <p>A {@link ValueChangeEvent} is a notification that the local value of
   49    * the source component has been change as a result of user interface
   50    * activity.  It is not fired unless validation of the new value was
   51    * completed successfully.</p>
   52    */
   53   
   54   public class ValueChangeEvent extends FacesEvent {
   55   
   56   
   57       // ------------------------------------------------------------ Constructors
   58   
   59   
   60       /**
   61        * <p>Construct a new event object from the specified source component,
   62        * old value, and new value.</p>
   63        *
   64        * <p>The default {@link PhaseId} for this event is {@link
   65        * PhaseId#ANY_PHASE}.</p>
   66        *
   67        * @param component Source {@link UIComponent} for this event
   68        * @param oldValue The previous local value of this {@link UIComponent}
   69        * @param newValue The new local value of thie {@link UIComponent}
   70        *
   71        * @throws IllegalArgumentException if <code>component</code> is
   72        *  <code>null</code>
   73        */
   74       public ValueChangeEvent(UIComponent component,
   75                                Object oldValue, Object newValue) {
   76   
   77           super(component);
   78           this.oldValue = oldValue;
   79           this.newValue = newValue;
   80       }
   81   
   82   
   83       // -------------------------------------------------------------- Properties
   84   
   85   
   86       /**
   87        * <p>The previous local value of the source {@link UIComponent}.</p>
   88        */
   89       private Object oldValue = null;
   90   
   91   
   92       /**
   93        * <p>Return the previous local value of the source {@link UIComponent}.
   94        * </p>
   95        */
   96       public Object getOldValue() {
   97   
   98           return (this.oldValue);
   99   
  100       }
  101   
  102   
  103       /**
  104        * <p>The current local value of the source {@link UIComponent}.</p>
  105        */
  106       private Object newValue = null;
  107   
  108   
  109       /**
  110        * <p>Return the current local value of the source {@link UIComponent}.
  111        * </p>
  112        */
  113       public Object getNewValue() {
  114   
  115           return (this.newValue);
  116   
  117       }
  118   
  119   
  120       // ------------------------------------------------- Event Broadcast Methods
  121   
  122   
  123       public boolean isAppropriateListener(FacesListener listener) {
  124   
  125           return (listener instanceof ValueChangeListener);
  126   
  127       }
  128   
  129       /**
  130        * @throws AbortProcessingException {@inheritDoc}
  131        */ 
  132       public void processListener(FacesListener listener) {
  133   
  134           ((ValueChangeListener) listener).processValueChange(this);
  135   
  136       }
  137   
  138   
  139   }

Home » Mojarra-2.0.1 » javax » faces » event » [javadoc | source]