You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@labs.apache.org by si...@apache.org on 2008/10/20 12:27:51 UTC
svn commit: r706200 -
/labs/magma/trunk/foundation-beans/src/main/java/org/apache/magma/beans/BeanHandler.java
Author: simoneg
Date: Mon Oct 20 03:27:50 2008
New Revision: 706200
URL: http://svn.apache.org/viewvc?rev=706200&view=rev
Log:
Slight optimization on check for changes
Modified:
labs/magma/trunk/foundation-beans/src/main/java/org/apache/magma/beans/BeanHandler.java
Modified: labs/magma/trunk/foundation-beans/src/main/java/org/apache/magma/beans/BeanHandler.java
URL: http://svn.apache.org/viewvc/labs/magma/trunk/foundation-beans/src/main/java/org/apache/magma/beans/BeanHandler.java?rev=706200&r1=706199&r2=706200&view=diff
==============================================================================
--- labs/magma/trunk/foundation-beans/src/main/java/org/apache/magma/beans/BeanHandler.java (original)
+++ labs/magma/trunk/foundation-beans/src/main/java/org/apache/magma/beans/BeanHandler.java Mon Oct 20 03:27:50 2008
@@ -20,6 +20,8 @@
import org.apache.magma.basics.MagmaException;
import java.util.HashMap;
+import java.util.HashSet;
+import java.util.Iterator;
import java.util.Map;
import java.util.Set;
@@ -31,7 +33,7 @@
private BeanData data;
private Map<String, Object> values = new HashMap<String, Object>();
- private Map<String, Boolean> changed = new HashMap<String, Boolean>();
+ private Set<String> changed = new HashSet<String>();
public BeanHandler(MagmaBeanSupport bean) {
@@ -50,7 +52,7 @@
}
}
values.put(field, value);
- changed.put(field, true);
+ changed.add(field);
}
public Object getValue(String field) {
@@ -79,13 +81,13 @@
}
public void commit() {
- Set<String> names = data.getPropertyNames();
- for (String name : names) {
+ for (Iterator<String> iterator = changed.iterator(); iterator.hasNext();) {
+ String name = iterator.next();
PropertyInfo property = data.getProperty(name);
if (property.isWriteable()) {
try {
PropertyUtils.setProperty(bean, name, values.get(name));
- this.changed.remove(name);
+ iterator.remove();
} catch (Exception e) {
throw new MagmaException(e, "Error while setting property {0} on {1}", name, bean.getClass().getName());
}
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@labs.apache.org
For additional commands, e-mail: commits-help@labs.apache.org