List of usage examples for com.jgoodies.binding.beans Model getPropertyChangeListeners
@Override public final synchronized PropertyChangeListener[] getPropertyChangeListeners()
From source file:de.dan_nrw.binding.SetterAspect.java
License:Open Source License
@AfterReturning("setterPointcut()") public void afterReturingSetter(final JoinPoint joinPoint) { MethodSignature methodSignature = (MethodSignature) joinPoint.getSignature(); Method method = null;//www . j a v a 2 s .c o m try { method = joinPoint.getTarget().getClass().getMethod(methodSignature.getName().replace("set", "get")); } catch (NoSuchMethodException ex) { // if no getter exists, there must be no update return; } if (method.getParameterTypes().length > 0) { // if getter expects arguments, method should abort return; } Matcher matcher = SETTER_PATTERN.matcher(methodSignature.getName()); matcher.find(); String propertyName = (matcher.group(1).toLowerCase() + matcher.group(2)); try { // getting new value Model model = (Model) joinPoint.getTarget(); Object newValue = method.invoke(model); for (PropertyChangeListener listener : model.getPropertyChangeListeners()) { PropertyChangeEvent evt = new PropertyChangeEvent(model, propertyName, "", newValue); listener.propertyChange(evt); } } catch (InvocationTargetException ex) { ex.printStackTrace(System.err); return; } catch (IllegalArgumentException ex) { ex.printStackTrace(System.err); return; } catch (IllegalAccessException ex) { ex.printStackTrace(System.err); return; } }
From source file:org.gitools.utils.events.EventUtils.java
License:Open Source License
public static void removeListeners(Model model) { PropertyChangeListener[] listeners = model.getPropertyChangeListeners(); for (PropertyChangeListener listener : listeners) { model.removePropertyChangeListener(listener); }/*from w ww . j av a 2 s . c o m*/ }
From source file:org.gitools.utils.events.EventUtils.java
License:Open Source License
public static void moveListeners(Model from, Model to) { removeListeners(to);//from w ww . j av a2 s.c o m for (PropertyChangeListener listener : from.getPropertyChangeListeners()) { to.addPropertyChangeListener(listener); } removeListeners(from); }