|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object javax.swing.AbstractAction com.gargoylesoftware.base.gui.ReflectedAction
A swing "action" that uses reflection to find and invoke a given target method.
ReflectedAction is a Swing "action" that uses reflection to call a specific target method when the action is fired. Actions are often implemented using inner classes which can be very inefficient in terms of performance and deployment size. This action is a tiny bit slower when it is actually fired but is smaller and generally faster otherwise due to the fact that those inner classes are no longer needed.
Action searchAction = new ReflectedAction(this, "performSearch");
Field Summary |
Fields inherited from class javax.swing.AbstractAction |
changeSupport, enabled |
Fields inherited from interface javax.swing.Action |
ACCELERATOR_KEY, ACTION_COMMAND_KEY, DEFAULT, LONG_DESCRIPTION, MNEMONIC_KEY, NAME, SHORT_DESCRIPTION, SMALL_ICON |
Constructor Summary | |
ReflectedAction(Object object,
String methodName)
Create a reflected action with an object and the name of the method that will be invoked on that object when the action is fired. |
Method Summary | |
void |
actionPerformed(ActionEvent event)
The action has been fired so now we use reflection to invoke the method that was specified previously. |
protected void |
assertNotNull(String fieldName,
Object object)
Throw an exception if the specified object is null |
protected void |
exceptionThrown(Exception exception)
Callback that will be invoked if an exception is thrown during the reflected method call. |
Methods inherited from class javax.swing.AbstractAction |
addPropertyChangeListener, clone, firePropertyChange, getKeys, getPropertyChangeListeners, getValue, isEnabled, putValue, removePropertyChangeListener, setEnabled |
Methods inherited from class java.lang.Object |
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
public ReflectedAction(Object object, String methodName) throws IllegalArgumentException
object
- The object upon which we will invoke a method when
the action is firedmethodName
- The name of the method that we will invoke. This method
must take either no parameters or one parameter which is an ActionEvent.
IllegalArgumentException
- if there are no matching methods.Method Detail |
public void actionPerformed(ActionEvent event)
event
- The ActionEventprotected void exceptionThrown(Exception exception)
Override this to provide custom error handling. Default behaviour is to print a stack trace.
exception
- The exceptionprotected final void assertNotNull(String fieldName, Object object)
fieldName
- The name of the paremeter we are checkingobject
- The value of the parameter we are checking
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |