Cleanup PropertyChangeEvent stuff

Use java.beans.PropertyChangeEvent instead of own implementation. This removes some classes from
SC and removes ambiguities with respect to PropertyChangeEvent handling.
Rename SC's own PropertyVetoException to ConfigPropertyVetoException to show the difference
in usage and implementation. ConfigPropertyVetoException is a subclass of Runtime exception
(intentionally) to simplify handling.
cusax-fix
Werner Dittmann 16 years ago
parent ad827e67f6
commit 73cf690b04

@ -7,10 +7,9 @@
package net.java.sip.communicator.impl.configuration;
import java.util.*;
import java.beans.*;
import net.java.sip.communicator.service.configuration.*;
import net.java.sip.communicator.service.configuration.event.*;
import net.java.sip.communicator.util.*;
/**
* This is a utility class that can be used by objects that support constrained
@ -245,8 +244,8 @@ public synchronized void removeVetoableChangeListener(
* change to be rolled back.
*/
public void fireVetoableChange(String propertyName,
Object oldValue, Object newValue) throws
PropertyVetoException
Object oldValue, Object newValue)
//throws PropertyVetoException
{
if (vetoableChangeListeners == null && vetoableChangeChildren == null)
{
@ -255,7 +254,7 @@ public void fireVetoableChange(String propertyName,
PropertyChangeEvent evt = new PropertyChangeEvent(source,
propertyName, oldValue, newValue);
fireVetoableChange(evt);
fireVetoableChange(evt);
}
/**
@ -269,8 +268,8 @@ public void fireVetoableChange(String propertyName,
* @exception PropertyVetoException if at least one of the recipients has
* vetoed the change.
*/
public void fireVetoableChange(PropertyChangeEvent evt) throws
PropertyVetoException
public void fireVetoableChange(PropertyChangeEvent evt)
// throws PropertyVetoException
{
Object oldValue = evt.getOldValue();
@ -304,7 +303,11 @@ public void fireVetoableChange(PropertyChangeEvent evt) throws
{
VetoableChangeListener target = targets[i];
// don't catch the exception - let it bounce to the caller.
target.vetoableChange(evt);
try {
target.vetoableChange(evt);
} catch (PropertyVetoException e) {
throw new ConfigPropertyVetoExceoption(e.getLocalizedMessage(), evt);
}
}
}

@ -8,10 +8,10 @@
import java.io.*;
import java.util.*;
import java.beans.*;
import net.java.sip.communicator.impl.configuration.xml.*;
import net.java.sip.communicator.service.configuration.*;
import net.java.sip.communicator.service.configuration.event.*;
import net.java.sip.communicator.service.fileaccess.*;
import net.java.sip.communicator.util.*;
import net.java.sip.communicator.util.xml.*;
@ -78,7 +78,7 @@ public class ConfigurationServiceImpl
* at least one propertychange listener.
*/
public void setProperty(String propertyName, Object property)
throws PropertyVetoException
// throws PropertyVetoException
{
setProperty(propertyName, property, false);
}
@ -104,7 +104,7 @@ public void setProperty(String propertyName, Object property)
*/
public void setProperty(String propertyName, Object property,
boolean isSystem)
throws PropertyVetoException
// throws PropertyVetoException
{
Object oldValue = getProperty(propertyName);
@ -144,7 +144,7 @@ public void setProperty(String propertyName, Object property,
* to the disk.
*/
public void setProperties(Map<String, Object> properties)
throws PropertyVetoException
// throws PropertyVetoException
{
//first check whether the changes are ok with everyone
Map<String, Object> oldValues
@ -254,7 +254,7 @@ private void doSetProperty(
* at least one propertychange listener.
*/
public void removeProperty(String propertyName)
throws PropertyVetoException
// throws PropertyVetoException
{
List<String> childPropertyNames =
getPropertyNamesByPrefix(propertyName, false);

@ -10,6 +10,7 @@
import java.awt.event.*;
import java.util.*;
import java.util.List;
import java.beans.*;
import javax.swing.*;

@ -7,12 +7,12 @@
package net.java.sip.communicator.impl.gui.main.call;
import javax.swing.*;
import java.beans.*;
import net.java.sip.communicator.impl.gui.*;
import net.java.sip.communicator.impl.gui.utils.*;
import net.java.sip.communicator.service.protocol.*;
import net.java.sip.communicator.service.protocol.event.*;
import net.java.sip.communicator.util.*;
/**
* The <tt>CallPeerAdapter</tt> is an adapter that implements all common

@ -9,6 +9,7 @@
import java.awt.*;
import java.awt.event.*;
import java.util.*;
import java.beans.*;
import javax.swing.*;

@ -8,6 +8,7 @@
import java.awt.*;
import java.awt.event.*;
import java.beans.*;
import javax.swing.*;
@ -16,7 +17,6 @@
import net.java.sip.communicator.impl.gui.utils.*;
import net.java.sip.communicator.service.protocol.*;
import net.java.sip.communicator.service.protocol.event.*;
import net.java.sip.communicator.util.*;
import net.java.sip.communicator.util.swing.*;
/**

@ -7,10 +7,10 @@
package net.java.sip.communicator.impl.gui.main.call.conference;
import java.awt.*;
import java.beans.*;
import net.java.sip.communicator.impl.gui.*;
import net.java.sip.communicator.service.protocol.*;
import net.java.sip.communicator.util.*;
/**
* The <tt>ConferenceMemberPanel</tt> renders <tt>ConferenceMember</tt> details.

@ -7,13 +7,13 @@
package net.java.sip.communicator.impl.gui.utils;
import java.util.*;
import java.beans.*;
import org.osgi.framework.*;
import net.java.sip.communicator.impl.gui.*;
import net.java.sip.communicator.service.configuration.*;
import net.java.sip.communicator.service.protocol.*;
import net.java.sip.communicator.util.*;
/**
*

@ -14,6 +14,7 @@
import java.text.*;
import java.util.*;
import java.util.List;
import java.beans.*;
import javax.media.*;
import javax.media.control.*;

@ -10,6 +10,7 @@
import java.io.*;
import java.net.*;
import java.util.*;
import java.beans.*;
import javax.media.*;
import javax.media.control.*;

@ -8,11 +8,11 @@
import java.net.*;
import java.util.*;
import java.beans.*;
import net.java.sip.communicator.impl.media.*;
import net.java.sip.communicator.impl.media.device.*;
import net.java.sip.communicator.service.audionotifier.*;
import net.java.sip.communicator.util.*;
/**
* The implementation of the AudioNotifierService.

@ -8,6 +8,7 @@
import java.io.*;
import java.util.*;
import java.beans.*;
import org.osgi.framework.*;

@ -9,6 +9,7 @@
import java.io.*;
import java.net.*;
import java.util.*;
import java.beans.*;
import javax.media.*;
import javax.media.control.*;

@ -9,6 +9,7 @@
import java.io.*;
import java.net.*;
import java.util.*;
import java.beans.*;
import javax.media.*;
import javax.media.protocol.*;

@ -8,11 +8,11 @@
import java.net.*;
import java.util.*;
import java.beans.*;
import net.java.sip.communicator.impl.neomedia.*;
import net.java.sip.communicator.impl.neomedia.device.*;
import net.java.sip.communicator.service.audionotifier.*;
import net.java.sip.communicator.util.*;
/**
* The implementation of the AudioNotifierService.

@ -9,9 +9,9 @@
import java.io.*;
import java.net.*;
import java.util.*;
import java.beans.*;
import net.java.sip.communicator.service.configuration.*;
import net.java.sip.communicator.service.configuration.event.*;
import net.java.sip.communicator.service.netaddr.*;
import net.java.sip.communicator.util.*;
import net.java.stun4j.*;

@ -9,6 +9,7 @@
import java.awt.Component;
import java.net.*;
import java.util.*;
import java.beans.*;
import java.awt.Dimension; /* disambiguates java.awt.List and java.util.List */

@ -9,6 +9,7 @@
import java.net.*;
import java.text.*;
import java.util.*;
import java.beans.*;
import javax.sip.*;
import javax.sip.address.*;

@ -7,6 +7,7 @@
package net.java.sip.communicator.impl.protocol.sip;
import java.util.*;
import java.beans.*;
import javax.sip.*;
import javax.sip.address.*;

@ -9,6 +9,7 @@
import java.io.*;
import java.text.*;
import java.util.*;
import java.beans.*;
import javax.sip.*;
import javax.sip.address.*;

@ -7,10 +7,10 @@
package net.java.sip.communicator.impl.protocol.sip;
import java.awt.*;
import java.beans.*;
import net.java.sip.communicator.service.protocol.*;
import net.java.sip.communicator.service.protocol.event.*;
import net.java.sip.communicator.util.*;
/**
* Implements <tt>OperationSetVideoTelephony</tt> in order to give access to

@ -6,7 +6,7 @@
*/
package net.java.sip.communicator.service.configuration;
import net.java.sip.communicator.util.*;
import java.beans.*;
/**
* A PropertyVetoException is thrown when a proposed change to a
@ -14,7 +14,7 @@
*
* @author Emil Ivov
*/
public class PropertyVetoException
public class ConfigPropertyVetoExceoption
extends RuntimeException
{
/**
@ -30,7 +30,7 @@ public class PropertyVetoException
* @param message Descriptive message
* @param evt A PropertyChangeEvent describing the vetoed change.
*/
public PropertyVetoException(String message, PropertyChangeEvent evt)
public ConfigPropertyVetoExceoption(String message, PropertyChangeEvent evt)
{
super(message);

@ -8,9 +8,8 @@
import java.io.*;
import java.util.*;
import java.beans.*;
import net.java.sip.communicator.service.configuration.event.*;
import net.java.sip.communicator.util.*;
import net.java.sip.communicator.util.xml.*;
/**
@ -55,11 +54,11 @@ public interface ConfigurationService
* <p>
* @param propertyName the name of the property to change.
* @param property the new value of the specified property.
* @throws PropertyVetoException in case the changed has been refused by
* @throws ConfigPropertyVetoExceoption in case the changed has been refused by
* at least one propertychange listener.
*/
public void setProperty(String propertyName, Object property)
throws PropertyVetoException;
public void setProperty(String propertyName, Object property);
// throws PropertyVetoException;
/**
* Sets the property with the specified name to the specified. Calling
@ -75,13 +74,13 @@ public void setProperty(String propertyName, Object property)
* @param isSystem specifies whether or not the property being is a System
* property and should be resolved against the system
* property set
* @throws PropertyVetoException in case the changed has been refused by
* @throws ConfigPropertyVetoExceoption in case the changed has been refused by
* at least one propertychange listener.
*/
public void setProperty(String propertyName,
Object property,
boolean isSystem)
throws PropertyVetoException;
boolean isSystem);
// throws PropertyVetoException;
/**
* Sets a set of specific properties to specific values as a batch operation
@ -98,13 +97,13 @@ public void setProperty(String propertyName,
* @param properties
* a <code>Map</code> of property names to their new values to be
* set
* @throws PropertyVetoException
* @throws ConfigPropertyVetoExceoption
* if a change in at least one of the properties has been
* refused by at least one of the
* <code>VetoableChangeListener</code>s
*/
public void setProperties(Map<String, Object> properties)
throws PropertyVetoException;
public void setProperties(Map<String, Object> properties);
// throws PropertyVetoException;
/**
* Returns the value of the property with the specified name or null if no
@ -123,11 +122,11 @@ public void setProperties(Map<String, Object> properties)
* All properties with prefix propertyName will also be removed.
* <p>
* @param propertyName the name of the property to change.
* @throws PropertyVetoException in case the changed has been refused by
* @throws ConfigPropertyVetoExceoption in case the changed has been refused by
* at least one propertychange listener.
*/
public void removeProperty(String propertyName)
throws PropertyVetoException;
public void removeProperty(String propertyName);
// throws PropertyVetoException;
/**
* Returns a <tt>java.util.List</tt> of <tt>String</tt>s containing the

@ -1,46 +0,0 @@
/*
* SIP Communicator, the OpenSource Java VoIP and Instant Messaging client.
*
* Distributable under LGPL license.
* See terms of license at gnu.org.
*/
package net.java.sip.communicator.service.configuration.event;
import java.util.*;
import net.java.sip.communicator.service.configuration.*;
import net.java.sip.communicator.util.*;
/**
* A VetoableChange event gets fired whenever a property is about to change.
* One can register a VetoableChangeListener with the ConfigurationService so as
* to be notified in advance of any property updates. The purpose of a
* VetoableChaneListener is that it allows registered instances to veto or in
* other words cancel events by throwing a PropertyVetoException. In case
* none of the registered listeners has thrown an exception, the property is
* changed and a propertyChange event is dispatched to all registered
* PropertyChangeListener-s
*
* @author Emil Ivov
*/
public interface VetoableChangeListener
extends EventListener
{
/**
* This method gets called when a constrained property is about to change.
* Note that the method only warns about the change and in case none of
* the interested listeners vetos it (i.e. no PropertyVetoException
* is thrown) the propertyChange method will be called next to indicate
* that the change has taken place. In case you don't want to be notified
* for pending changes over constrained properties you should provide
* an empty implementation of the method.
*
* @param evt a <tt>PropertyChangeEvent</tt> object describing the
* event source and the property that has changed.
* @exception PropertyVetoException if the recipient wishes the property
* change to be rolled back.
*/
void vetoableChange(PropertyChangeEvent evt)
throws PropertyVetoException;
}

@ -9,11 +9,11 @@
import java.awt.*;
import java.net.*;
import java.text.*;
import java.beans.*;
import net.java.sip.communicator.service.media.event.*;
import net.java.sip.communicator.service.protocol.*;
import net.java.sip.communicator.service.protocol.event.*;
import net.java.sip.communicator.util.*;
/**
* A CallSession contains parameters associated with a particular Call such as

@ -6,7 +6,8 @@
*/
package net.java.sip.communicator.service.neomedia;
import net.java.sip.communicator.util.*;
import java.beans.*;
/**
* Abstract base implementation of <tt>MediaStream</tt> to ease the

@ -8,10 +8,10 @@
import java.net.*;
import java.util.*;
import java.beans.*;
import net.java.sip.communicator.service.neomedia.device.*;
import net.java.sip.communicator.service.neomedia.format.*;
import net.java.sip.communicator.util.*;
/**
* The <tt>MediaStream</tt> class represents a (generally) bidirectional RTP

@ -7,9 +7,9 @@
package net.java.sip.communicator.service.protocol;
import java.net.*;
import java.beans.*;
import net.java.sip.communicator.service.protocol.event.*;
import net.java.sip.communicator.util.*;
/**
* The CallPeer is an interface that represents peers in a call.

@ -6,7 +6,8 @@
*/
package net.java.sip.communicator.service.protocol;
import net.java.sip.communicator.util.*;
import java.beans.*;
/**
* Represents a member and its details in a telephony conference managed by a

@ -7,9 +7,9 @@
package net.java.sip.communicator.service.protocol;
import java.awt.*;
import java.beans.*;
import net.java.sip.communicator.service.protocol.event.*;
import net.java.sip.communicator.util.*;
/**
* Represents an <tt>OperationSet</tt> giving access to video-specific

@ -1,111 +0,0 @@
/*
* SIP Communicator, the OpenSource Java VoIP and Instant Messaging client.
*
* Distributable under LGPL license.
* See terms of license at gnu.org.
*/
package net.java.sip.communicator.util;
import java.util.*;
/**
* A "ConfigurationChange" event gets delivered whenever a someone changes a
* configuration property. A ConfigurationEvent object is sent as an argument to
* the ConfigurationChangeListener methods.
* <P>
* Normally ConfigurationChangeEvents are accompanied by the name and the old
* and new values of the changed property. If the new value is a primitive type
* (such as int or boolean) it must be wrapped as the corresponding java.lang.*
* Object type (such as Integer or Boolean).
* <P>
* Null values may be provided for the old and the new values if their true
* values are not known.
* <P>
* An event source may send a null object as the name to indicate that an
* arbitrary set of if its properties have changed. In this case the old and new
* values should also be null.
* <P>
* In the case where the event reflects the change of a constrained property, it
* will first be dispatched to all propertyWillChange methods and only in case
* that none of them has objected (no ChangeVetoException has been thrown) the
* propertyChange method is called.
*
* @author Emil Ivov
*/
public class PropertyChangeEvent
extends EventObject
{
/**
* name of the property that changed. May be null, if not known.
*
* @serial
*/
private final String propertyName;
/**
* New value for property. May be null if not known.
*
* @serial
*/
private final Object newValue;
/**
* Previous value for property. May be null if not known.
*
* @serial
*/
private final Object oldValue;
/**
* Constructs a new <tt>PropertyChangeEvent</tt>.
*
* @param source The bean that fired the event.
* @param propertyName The programmatic name of the property that was
* changed.
* @param oldValue The old value of the property.
* @param newValue The new value of the property.
*/
public PropertyChangeEvent(Object source, String propertyName,
Object oldValue, Object newValue)
{
super(source);
this.propertyName = propertyName;
this.newValue = newValue;
this.oldValue = oldValue;
}
/**
* Gets the programmatic name of the property that was changed.
*
* @return The programmatic name of the property that was changed. May be
* null if multiple properties have changed.
*/
public String getPropertyName()
{
return propertyName;
}
/**
* Sets the new value for the property, expressed as an Object.
*
* @return The new value for the property, expressed as an Object. May be
* null if multiple properties have changed.
*/
public Object getNewValue()
{
return newValue;
}
/**
* Gets the old value for the property, expressed as an Object.
*
* @return The old value for the property, expressed as an Object. May be
* null if multiple properties have changed.
*/
public Object getOldValue()
{
return oldValue;
}
}

@ -1,28 +0,0 @@
/*
* SIP Communicator, the OpenSource Java VoIP and Instant Messaging client.
*
* Distributable under LGPL license.
* See terms of license at gnu.org.
*/
package net.java.sip.communicator.util;
import java.util.*;
/**
* A "ConfigurationChange" event gets fired whenever a configuration property
* changes. Depending on whether the property was constrained or not, the
* propertyChange or vetoableChange methods get called.
*
* @author Emil Ivov
*/
public interface PropertyChangeListener
extends EventListener
{
/**
* This method gets called when a bound property is changed.
*
* @param evt A PropertyChangeEvent object describing the event source and
* the property that has changed.
*/
void propertyChange(PropertyChangeEvent evt);
}

@ -7,6 +7,7 @@
package net.java.sip.communicator.util;
import java.util.*;
import java.beans.*;
/**
* Represents a source of <tt>PropertyChangeEvent</tt>s which notifies

@ -1,93 +0,0 @@
/*
* SIP Communicator, the OpenSource Java VoIP and Instant Messaging client.
*
* Distributable under LGPL license.
* See terms of license at gnu.org.
*/
package net.java.sip.communicator.util;
/**
* Represents a mechanism to easily add to a specific <tt>Object</tt> by means
* of composition support for firing <tt>PropertyChangeEvent</tt>s to
* <tt>PropertyChangeListener</tt>s.
*
* @author Lubomir Marinov
*/
public class PropertyChangeSupport
extends PropertyChangeNotifier
{
/**
* The <tt>Object</tt> to be reported as the source of the
* <tt>PropertyChangeEvent</tt>s fired by this instance.
*/
private final Object source;
/**
* Initializes a new <tt>PropertyChangeSupport</tt> which is to fire
* <tt>PropertyChangeEvent</tt>s and to report their source as a specific
* <tt>Object</tt>
*
* @param source the <tt>Object</tt> to be reported as the source of the
* <tt>PropertyChangeEvent</tt>s fired by the new instance
*/
public PropertyChangeSupport(Object source)
{
this.source = source;
}
/**
* Fires a new <tt>PropertyChangeEvent</tt> to the
* <tt>PropertyChangeListener</tt>s registered with this
* <tt>PropertyChangeSupport</tt> in order to notify about a change in the
* value of a specific property which had its old value modified to a
* specific new value.
*
* @param property the name of the property of this
* <tt>PropertyChangeSupport</tt> which had its value changed
* @param oldValue the value of the property with the specified name before
* the change
* @param newValue the value of the property with the specified name after
* the change
* @see PropertyChangeNotifier#firePropertyChange(String, Object, Object)
*/
@Override
public void firePropertyChange(
String property,
Object oldValue,
Object newValue)
{
super.firePropertyChange(property, oldValue, newValue);
}
/**
* Gets the <tt>Object</tt> to be reported as the source of a new
* <tt>PropertyChangeEvent</tt> which is to notify the
* <tt>PropertyChangeListener</tt>s registered with this
* <tt>PropertyChangeSupport</tt> about the change in the value of a
* property with a specific name from a specific old value to a specific new
* value.
*
* @param property the name of the property which had its value changed from
* the specified old value to the specified new value
* @param oldValue the value of the property with the specified name before
* the change
* @param newValue the value of the property with the specified name after
* the change
* @return the <tt>Object</tt> to be reported as the source of the new
* <tt>PropertyChangeEvent</tt> which is to notify the
* <tt>PropertyChangeListener</tt>s registered with this
* <tt>PropertyChangeSupport</tt> about the change in the value of the
* property with the specified name from the specified old value to the
* specified new value
* @see PropertyChangeNotifier#getPropertyChangeSource(String, Object, Object)
*/
@Override
protected Object getPropertyChangeSource(
String property,
Object oldValue,
Object newValue)
{
return source;
}
}

@ -205,7 +205,7 @@ private void saveSizeAndLocation()
{
SIPCommFrame.saveSizeAndLocation(this);
}
catch (PropertyVetoException e1)
catch (ConfigPropertyVetoExceoption e1)
{
logger.error("The proposed property change "
+ "represents an unacceptable value");

@ -11,7 +11,7 @@
import java.awt.image.*;
import java.net.*;
import java.util.*;
import java.beans.*;
import javax.swing.*;
import net.java.sip.communicator.service.configuration.*;
@ -192,7 +192,7 @@ private void saveSizeAndLocation()
{
saveSizeAndLocation(this);
}
catch (PropertyVetoException e)
catch (ConfigPropertyVetoExceoption e)
{
logger
.error(
@ -212,7 +212,7 @@ private void saveSizeAndLocation()
* <tt>PropertyVetoListener</tt>s.
*/
static void saveSizeAndLocation(Component component)
throws PropertyVetoException
throws ConfigPropertyVetoExceoption
{
Map<String, Object> props = new HashMap<String, Object>();
String className

@ -7,11 +7,10 @@
package net.java.sip.communicator.slick.configuration;
import java.util.*;
import java.beans.*;
import junit.framework.*;
import net.java.sip.communicator.service.configuration.*;
import net.java.sip.communicator.service.configuration.event.*;
import net.java.sip.communicator.util.*;
import org.osgi.framework.*;
@ -299,7 +298,7 @@ public void testMulticastEventNotification()
{
configurationService.setProperty(propertyName, propertyValue);
}
catch (PropertyVetoException ex)
catch (ConfigPropertyVetoExceoption ex)
{
fail("A PropertyVetoException came from nowhere. Exc="
+ ex.getMessage());
@ -324,7 +323,7 @@ public void testMulticastEventNotification()
{
configurationService.setProperty(propertyName, propertyNewValue);
}
catch (PropertyVetoException ex)
catch (ConfigPropertyVetoExceoption ex)
{
fail("A PropertyVetoException came from nowhere. Exc="
+ ex.getMessage());
@ -349,7 +348,7 @@ public void testMulticastEventNotification()
{
configurationService.setProperty(propertyName, propertyValue);
}
catch (PropertyVetoException ex)
catch (ConfigPropertyVetoExceoption ex)
{
fail("A PropertyVetoException came from nowhere. Exc="
+ ex.getMessage());
@ -376,7 +375,7 @@ public void testMulticastEventNotificationToVetoableListeners()
{
configurationService.setProperty(propertyName, propertyValue);
}
catch (PropertyVetoException ex)
catch (ConfigPropertyVetoExceoption ex)
{
fail("A PropertyVetoException came from nowhere. Exc="
+ ex.getMessage());
@ -400,7 +399,7 @@ public void testMulticastEventNotificationToVetoableListeners()
{
configurationService.setProperty(propertyName, propertyNewValue);
}
catch (PropertyVetoException ex)
catch (ConfigPropertyVetoExceoption ex)
{
fail("A PropertyVetoException came from nowhere. Exc="
+ ex.getMessage());
@ -426,7 +425,7 @@ public void testMulticastEventNotificationToVetoableListeners()
{
configurationService.setProperty(propertyName, propertyValue);
}
catch (PropertyVetoException ex)
catch (ConfigPropertyVetoExceoption ex)
{
fail("A PropertyVetoException came from nowhere. Exc="
+ ex.getMessage());
@ -446,12 +445,12 @@ public void testVetos()
configurationService.addVetoableChangeListener(rudeVetoListener);
configurationService.addPropertyChangeListener(pListener);
PropertyVetoException exception = null;
ConfigPropertyVetoExceoption exception = null;
try
{
configurationService.setProperty(propertyName, propertyValue);
}
catch (PropertyVetoException ex)
catch (ConfigPropertyVetoExceoption ex)
{
exception = ex;
}
@ -488,7 +487,7 @@ public void vetoableChange(PropertyChangeEvent event)
{
configurationService.setProperty(propertyName, propertyNewValue);
}
catch (PropertyVetoException ex1)
catch (ConfigPropertyVetoExceoption ex1)
{
ex1.printStackTrace();
fail("unexpected veto exception. message:" + ex1.getMessage());

Loading…
Cancel
Save