Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
  /*
   * $Id: ActionSource.java,v 1.16 2007/04/27 22:00:03 ofung Exp $
   */
  
  /*
   * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
   * 
   * Copyright 1997-2007 Sun Microsystems, Inc. All rights reserved.
   * 
  * The contents of this file are subject to the terms of either the GNU
  * General Public License Version 2 only ("GPL") or the Common Development
  * and Distribution License("CDDL") (collectively, the "License").  You
  * may not use this file except in compliance with the License. You can obtain
  * a copy of the License at https://glassfish.dev.java.net/public/CDDL+GPL.html
  * or glassfish/bootstrap/legal/LICENSE.txt.  See the License for the specific
  * language governing permissions and limitations under the License.
  * 
  * When distributing the software, include this License Header Notice in each
  * file and include the License file at glassfish/bootstrap/legal/LICENSE.txt.
  * Sun designates this particular file as subject to the "Classpath" exception
  * as provided by Sun in the GPL Version 2 section of the License file that
  * accompanied this code.  If applicable, add the following below the License
  * Header, with the fields enclosed by brackets [] replaced by your own
  * identifying information: "Portions Copyrighted [year]
  * [name of copyright owner]"
  * 
  * Contributor(s):
  * 
  * If you wish your version of this file to be governed by only the CDDL or
  * only the GPL Version 2, indicate your decision by adding "[Contributor]
  * elects to include this software in this distribution under the [CDDL or GPL
  * Version 2] license."  If you don't indicate a single choice of license, a
  * recipient has the option to distribute your version of this file under
  * either the CDDL, the GPL Version 2 or to extend the choice of license to
  * its licensees as provided above.  However, if you add GPL Version 2 code
  * and therefore, elected the GPL Version 2 license, then the option applies
  * only if the new code is made subject to such option by the copyright
  * holder.
  */
 
 package javax.faces.component;
 
 

ActionSource is an interface that may be implemented by any concrete UIComponent that wishes to be a source of javax.faces.event.ActionEvents, including the ability to invoke application actions via the default javax.faces.event.ActionListener mechanism.

 
 
 public interface ActionSource {
 
 
     // -------------------------------------------------------------- Properties
 

    

If the implementing class also implements ActionSource2, the implementation of this method must call through to ActionSource2.getActionExpression() and examine the result. If the result came from a previous call to setAction(javax.faces.el.MethodBinding), extract the MethodBinding from it and return it. Otherwise, wrap the returned javax.el.MethodExpression in a MethodBinding implementation, and return it.

If the implementing class does not implement ActionSource2, return the javax.faces.el.MethodBindingpointing at the application action to be invoked, if this UIComponent is activated by the user, during the Apply Request Values or Invoke Application phase of the request processing lifecycle, depending on the value of the immediate property.

Deprecated:
This has been replaced by ActionSource2.getActionExpression().
 
     public MethodBinding getAction();

    

If the implementing class also implements ActionSource2, the implementation of this method must wrap the argument action in a class that implements javax.el.MethodExpression and call through to ActionSource2.setActionExpression(javax.el.MethodExpression), passing the wrapped action.

If the implementing class does not implement ActionSource2, set the javax.faces.el.MethodBinding pointing at the appication action to be invoked, if this UIComponent is activated by the user, during the Apply Request Values or Invoke Application phase of the request processing lifecycle, depending on the value of the immediate property.

Any method referenced by such an expression must be public, with a return type of String, and accept no parameters.

Deprecated:
This has been replaced by ActionSource2.setActionExpression(javax.el.MethodExpression).
Parameters:
action The new MethodBinding expression
    public void setAction(MethodBinding action);


    

If setActionListener(javax.faces.el.MethodBinding) was not previously called for this instance, this method must return null. If it was called, this method must return the exact MethodBinding instance that was passed to setActionListener(javax.faces.el.MethodBinding).

The method to be invoked, if this UIComponent is activated by the user, will be called during the Apply Request Values or Invoke Application phase of the request processing lifecycle, depending upon the value of the immediate property.

Deprecated:
Use getActionListeners() instead.
    public MethodBinding getActionListener();


    

Wrap the argument actionListener in an implementation of javax.faces.event.ActionListener and store it in the internal data structure that backs the getActionListeners() method, taking care to over-write any instance that was stored by a previous call to setActionListener.

Any method referenced by such an expression must be public, with a return type of void, and accept a single parameter of type ActionEvent.

Deprecated:
This has been replaced by addActionListener(javax.faces.event.ActionListener).
Parameters:
actionListener The new method binding expression
    public void setActionListener(MethodBinding actionListener);

    

Return a flag indicating that the default javax.faces.event.ActionListener provided by the JavaServer Faces implementation should be executed immediately (that is, during Apply Request Values phase of the request processing lifecycle), rather than waiting until the Invoke Application phase. The default value for this property must be false.

    public boolean isImmediate();


    

Set the "immediate execution" flag for this UIComponent.

Parameters:
immediate The new immediate execution flag
    public void setImmediate(boolean immediate);
    // -------------------------------------------------- Event Listener Methods


    

Add a new javax.faces.event.ActionListener to the set of listeners interested in being notified when javax.faces.event.ActionEvents occur.

Parameters:
listener The javax.faces.event.ActionListener to be added
Throws:
java.lang.NullPointerException if listener is null
    public void addActionListener(ActionListener listener);


    

Return the set of registered javax.faces.event.ActionListeners for this ActionSource instance. If there are no registered listeners, a zero-length array is returned.

    public abstract ActionListener[] getActionListeners();


    

Remove an existing javax.faces.event.ActionListener (if any) from the set of listeners interested in being notified when javax.faces.event.ActionEvents occur.

Parameters:
listener The javax.faces.event.ActionListener to be removed
Throws:
java.lang.NullPointerException if listener is null
    public void removeActionListener(ActionListener listener);
New to GrepCode? Check out our FAQ X