Author: ruschein
Date: 2010-08-11 14:10:31 -0700 (Wed, 11 Aug 2010)
New Revision: 21336

Removed:
   
core3/work-tunable-props-impl/trunk/src/main/java/org/cytoscape/work/internal/props/FlexiblyBoundedPropHandler.java
Modified:
   
core3/work-tunable-props-impl/trunk/src/main/java/org/cytoscape/work/internal/props/AbstractPropHandler.java
   
core3/work-tunable-props-impl/trunk/src/main/java/org/cytoscape/work/internal/props/BooleanPropHandler.java
   
core3/work-tunable-props-impl/trunk/src/main/java/org/cytoscape/work/internal/props/BoundedPropHandler.java
   
core3/work-tunable-props-impl/trunk/src/main/java/org/cytoscape/work/internal/props/DoublePropHandler.java
   
core3/work-tunable-props-impl/trunk/src/main/java/org/cytoscape/work/internal/props/FilePropHandler.java
   
core3/work-tunable-props-impl/trunk/src/main/java/org/cytoscape/work/internal/props/FloatPropHandler.java
   
core3/work-tunable-props-impl/trunk/src/main/java/org/cytoscape/work/internal/props/InputStreamPropHandler.java
   
core3/work-tunable-props-impl/trunk/src/main/java/org/cytoscape/work/internal/props/IntPropHandler.java
   
core3/work-tunable-props-impl/trunk/src/main/java/org/cytoscape/work/internal/props/ListMultiplePropHandler.java
   
core3/work-tunable-props-impl/trunk/src/main/java/org/cytoscape/work/internal/props/ListSinglePropHandler.java
   
core3/work-tunable-props-impl/trunk/src/main/java/org/cytoscape/work/internal/props/LongPropHandler.java
   
core3/work-tunable-props-impl/trunk/src/main/java/org/cytoscape/work/internal/props/PropHandler.java
   
core3/work-tunable-props-impl/trunk/src/main/java/org/cytoscape/work/internal/props/PropHandlerFactory.java
   
core3/work-tunable-props-impl/trunk/src/main/java/org/cytoscape/work/internal/props/StringPropHandler.java
   
core3/work-tunable-props-impl/trunk/src/main/java/org/cytoscape/work/internal/props/URLPropHandler.java
Log:
Updated to track changes in work-api.

Modified: 
core3/work-tunable-props-impl/trunk/src/main/java/org/cytoscape/work/internal/props/AbstractPropHandler.java
===================================================================
--- 
core3/work-tunable-props-impl/trunk/src/main/java/org/cytoscape/work/internal/props/AbstractPropHandler.java
        2010-08-11 20:56:04 UTC (rev 21335)
+++ 
core3/work-tunable-props-impl/trunk/src/main/java/org/cytoscape/work/internal/props/AbstractPropHandler.java
        2010-08-11 21:10:31 UTC (rev 21336)
@@ -1,20 +1,26 @@
 package org.cytoscape.work.internal.props;
 
+
 import java.lang.reflect.Field;
+import java.lang.reflect.Method;
 import java.util.Properties;
 
-import org.cytoscape.work.AbstractHandler;
+import org.cytoscape.work.AbstractTunableHandler;
 import org.cytoscape.work.Tunable;
 
-public abstract class AbstractPropHandler extends AbstractHandler implements 
PropHandler {
 
+public abstract class AbstractPropHandler extends AbstractTunableHandler 
implements PropHandler {
        protected String propKey;
 
-       public AbstractPropHandler(Field f, Object o, Tunable t) {
-               super(f,o,t);
-               String n = f.getDeclaringClass().toString();
-               propKey = n.substring( n.lastIndexOf(".") + 1) + "." + 
f.getName();     
+       public AbstractPropHandler(final Field field, final Object instance, 
final Tunable tunable) {
+               super(field, instance, tunable);
+               propKey = getQualifiedName();
        }
+
+       public AbstractPropHandler(final Method getter, final Method setter, 
final Object instance, final Tunable tunable) {
+               super(getter, setter, instance, tunable);
+               propKey = getQualifiedName();
+       }
        
        public abstract Properties getProps();
        public abstract void setProps(Properties p);

Modified: 
core3/work-tunable-props-impl/trunk/src/main/java/org/cytoscape/work/internal/props/BooleanPropHandler.java
===================================================================
--- 
core3/work-tunable-props-impl/trunk/src/main/java/org/cytoscape/work/internal/props/BooleanPropHandler.java
 2010-08-11 20:56:04 UTC (rev 21335)
+++ 
core3/work-tunable-props-impl/trunk/src/main/java/org/cytoscape/work/internal/props/BooleanPropHandler.java
 2010-08-11 21:10:31 UTC (rev 21336)
@@ -1,33 +1,41 @@
 package org.cytoscape.work.internal.props;
 
+
 import java.lang.reflect.Field;
+import java.lang.reflect.Method;
 import java.util.Properties;
 
 import org.cytoscape.work.Tunable;
 
+
 public class BooleanPropHandler extends AbstractPropHandler{
+       public BooleanPropHandler(final Field field, final Object instance, 
final Tunable tunable) {
+               super(field, instance, tunable);
+       }
        
-       public BooleanPropHandler(Field f, Object o, Tunable t) {
-               super(f,o,t);
+       public BooleanPropHandler(final Method getter, final Method setter, 
final Object instance, final Tunable tunable) {
+               super(getter, setter, instance, tunable);
        }
 
-       
        public Properties getProps(){
                Properties p = new Properties();
-               try{
-                       p.setProperty(propKey,f.get(o).toString());
-               }catch(Exception e){e.printStackTrace();}
+               try {
+                       p.setProperty(propKey, getValue().toString());
+               } catch(final Exception e) {
+                       e.printStackTrace();
+               }
                return p;
        }
-       
-       
+
        public void setProps(Properties p){
-               try{
-                       if(p.containsKey(propKey)){
-                               String val = p.getProperty(propKey).toString();
-                               if(val != null) f.set(o, 
Boolean.valueOf(Boolean.parseBoolean(val)));
+               try {
+                       if (p.containsKey(propKey)) {
+                               final String val = 
p.getProperty(propKey).toString();
+                               if (val != null)
+                                       setValue(Boolean.valueOf(val));
                        }
-               }catch(Exception e){e.printStackTrace();}
+               } catch(final Exception e) {
+                       e.printStackTrace();
+               }
        }
-
 }

Modified: 
core3/work-tunable-props-impl/trunk/src/main/java/org/cytoscape/work/internal/props/BoundedPropHandler.java
===================================================================
--- 
core3/work-tunable-props-impl/trunk/src/main/java/org/cytoscape/work/internal/props/BoundedPropHandler.java
 2010-08-11 20:56:04 UTC (rev 21335)
+++ 
core3/work-tunable-props-impl/trunk/src/main/java/org/cytoscape/work/internal/props/BoundedPropHandler.java
 2010-08-11 21:10:31 UTC (rev 21336)
@@ -1,6 +1,8 @@
 package org.cytoscape.work.internal.props;
 
+
 import java.lang.reflect.Field;
+import java.lang.reflect.Method;
 import java.util.Properties;
 
 import org.cytoscape.work.Tunable;
@@ -8,29 +10,36 @@
 
 
 public class BoundedPropHandler<T extends AbstractBounded<?>> extends 
AbstractPropHandler {
-       
-       public BoundedPropHandler(Field f, Object o, Tunable t){
-               super(f,o,t);
+       public BoundedPropHandler(final Field field, final Object instance, 
final Tunable tunable) {
+               super(field, instance, tunable);
        }
 
+       public BoundedPropHandler(final Method getter, final Method setter, 
final Object instance, final Tunable tunable) {
+               super(getter, setter, instance, tunable);
+       }
+
        public Properties getProps() {
                Properties p = new Properties();
                try {
-                       p.setProperty(propKey, 
((T)f.get(o)).getValue().toString());
-        }catch(IllegalAccessException iae) {iae.printStackTrace();}
+                       p.setProperty(propKey, 
((T)getValue()).getValue().toString());
+        } catch(final Exception e) {
+                       e.printStackTrace();
+               }
                return p;
        }
 
-       public void setProps(Properties p) {
-               try{
-                       if(p.containsKey(propKey)){
-                               T bo = (T) f.get(o);
+       public void setProps(final Properties p) {
+               try {
+                       if (p.containsKey(propKey)){
+                               T bo = (T)getValue();
                                String val = p.getProperty(propKey).toString();
-                               if(val != null) {
+                               if (val != null) {
                                        bo.setValue(val);
-                                       f.set(o, bo);
+                                       setValue(bo);
                                }
                        }
-               }catch(Exception e){e.printStackTrace();}
-       }       
+               } catch(final Exception e) {
+                       e.printStackTrace();
+               }
+       }
 }
\ No newline at end of file

Modified: 
core3/work-tunable-props-impl/trunk/src/main/java/org/cytoscape/work/internal/props/DoublePropHandler.java
===================================================================
--- 
core3/work-tunable-props-impl/trunk/src/main/java/org/cytoscape/work/internal/props/DoublePropHandler.java
  2010-08-11 20:56:04 UTC (rev 21335)
+++ 
core3/work-tunable-props-impl/trunk/src/main/java/org/cytoscape/work/internal/props/DoublePropHandler.java
  2010-08-11 21:10:31 UTC (rev 21336)
@@ -1,33 +1,41 @@
 package org.cytoscape.work.internal.props;
 
+
 import java.lang.reflect.Field;
+import java.lang.reflect.Method;
 import java.util.Properties;
 
 import org.cytoscape.work.Tunable;
 
 
 public class DoublePropHandler extends AbstractPropHandler {
-       
-       public DoublePropHandler(Field f, Object o, Tunable t) {
-               super(f,o,t);
+       public DoublePropHandler(final Field field, final Object instance, 
final Tunable tunable) {
+               super(field, instance, tunable);
        }
 
-       
+       public DoublePropHandler(final Method getter, final Method setter, 
final Object instance, final Tunable tunable) {
+               super(getter, setter, instance, tunable);
+       }
+
        public Properties getProps() {
-               Properties p = new Properties();
+               final Properties p = new Properties();
                try {
-                       p.setProperty(propKey,f.get(o).toString());
-               } catch (IllegalAccessException iae) {iae.printStackTrace();}
+                       p.setProperty(propKey, getValue().toString());
+               } catch (final Exception e) {
+                       e.printStackTrace();
+               }
                return p;
        }
-       
-       
-       public void setProps(Properties p) {
+
+       public void setProps(final Properties p) {
                try {
                        if (p.containsKey(propKey)) {
-                               String val = p.getProperty(propKey).toString();
-                               if (val != null)f.setDouble(o, 
Double.valueOf(Double.parseDouble(val)));
+                               final String val = 
p.getProperty(propKey).toString();
+                               if (val != null)
+                                       setValue(Double.valueOf(val));
                        }
-               } catch (IllegalAccessException iae) {iae.printStackTrace();}
+               } catch (final Exception e) {
+                       e.printStackTrace();
+               }
        }
 }

Modified: 
core3/work-tunable-props-impl/trunk/src/main/java/org/cytoscape/work/internal/props/FilePropHandler.java
===================================================================
--- 
core3/work-tunable-props-impl/trunk/src/main/java/org/cytoscape/work/internal/props/FilePropHandler.java
    2010-08-11 20:56:04 UTC (rev 21335)
+++ 
core3/work-tunable-props-impl/trunk/src/main/java/org/cytoscape/work/internal/props/FilePropHandler.java
    2010-08-11 21:10:31 UTC (rev 21336)
@@ -1,32 +1,41 @@
 package org.cytoscape.work.internal.props;
 
+
 import java.lang.reflect.Field;
+import java.lang.reflect.Method;
 import java.util.Properties;
 import java.io.File;
 import org.cytoscape.work.Tunable;
 
 
 public class FilePropHandler extends AbstractPropHandler {
+       public FilePropHandler(final Field field, final Object instance, final 
Tunable tunable) {
+               super(field, instance, tunable);
+       }
 
-       public FilePropHandler(Field f, Object o, Tunable t) {
-               super(f,o,t);
+       public FilePropHandler(final Method getter, final Method setter, final 
Object instance, final Tunable tunable) {
+               super(getter, setter, instance, tunable);
        }
 
        public Properties getProps() {
                Properties p = new Properties();
                try{
-                       
p.setProperty(propKey,((File)f.get(o)).getPath().toString());
-               }catch(Exception e){e.printStackTrace();}
+                       p.setProperty(propKey, 
((File)getValue()).getPath().toString());
+               } catch(final Exception e) {
+                       e.printStackTrace();
+               }
                return p;
        }
-               
+
        public void setProps(Properties p) {
                try {
-                       if ( p.containsKey( propKey ) ) {
+                       if (p.containsKey(propKey )) {
                                String val = p.getProperty(propKey);
-                               if ( val != null )
-                                       f.set(o, new File(val.toString()));     
+                               if (val != null)
+                                       setValue(new File(val.toString()));
                        }
-        } catch (IllegalAccessException iae) {iae.printStackTrace();}
+               } catch (final Exception e) {
+                       e.printStackTrace();
+               }
        }
 }

Deleted: 
core3/work-tunable-props-impl/trunk/src/main/java/org/cytoscape/work/internal/props/FlexiblyBoundedPropHandler.java
===================================================================
--- 
core3/work-tunable-props-impl/trunk/src/main/java/org/cytoscape/work/internal/props/FlexiblyBoundedPropHandler.java
 2010-08-11 20:56:04 UTC (rev 21335)
+++ 
core3/work-tunable-props-impl/trunk/src/main/java/org/cytoscape/work/internal/props/FlexiblyBoundedPropHandler.java
 2010-08-11 21:10:31 UTC (rev 21336)
@@ -1,42 +0,0 @@
-package org.cytoscape.work.internal.props;
-
-import java.lang.reflect.Field;
-import java.util.Properties;
-
-import org.cytoscape.work.Tunable;
-import org.cytoscape.work.util.AbstractFlexiblyBounded;
-
-
-
-public class FlexiblyBoundedPropHandler<T extends AbstractFlexiblyBounded<?>> 
extends AbstractPropHandler {
-       
-       public FlexiblyBoundedPropHandler(Field f, Object o, Tunable t){
-               super(f,o,t);
-       }
-
-       public Properties getProps() {
-               Properties p = new Properties();
-               try {
-                       T bo = (T)f.get(o);
-                       p.put(propKey, new 
String(bo.getLowerBound()+","+bo.getValue()+","+bo.getUpperBound()+","+bo.isLowerBoundStrict()+","+bo.isUpperBoundStrict()));
-        }catch(IllegalAccessException iae) {iae.printStackTrace();}
-               return p;
-       }
-
-       public void setProps(Properties p) {
-               try{
-                       if(p.containsKey(propKey)){
-                               T bo = (T)f.get(o);
-                               String[] vals = 
p.getProperty(propKey).split(",");
-                               if(vals != null){
-                                       bo.setLowerBound(vals[0]);
-                                       bo.setValue(vals[1]);
-                                       bo.setUpperBound(vals[2]);
-                                       
bo.setLowerBoundStrict(Boolean.getBoolean(vals[3]));
-                                       
bo.setUpperBoundStrict(Boolean.getBoolean(vals[4]));
-                               }
-                               if(bo != null) f.set(o, bo);
-                       }
-               }catch(Exception e){e.printStackTrace();}
-       }       
-}
\ No newline at end of file

Modified: 
core3/work-tunable-props-impl/trunk/src/main/java/org/cytoscape/work/internal/props/FloatPropHandler.java
===================================================================
--- 
core3/work-tunable-props-impl/trunk/src/main/java/org/cytoscape/work/internal/props/FloatPropHandler.java
   2010-08-11 20:56:04 UTC (rev 21335)
+++ 
core3/work-tunable-props-impl/trunk/src/main/java/org/cytoscape/work/internal/props/FloatPropHandler.java
   2010-08-11 21:10:31 UTC (rev 21336)
@@ -1,34 +1,41 @@
 package org.cytoscape.work.internal.props;
 
+
 import java.lang.reflect.Field;
+import java.lang.reflect.Method;
 import java.util.Properties;
 
 import org.cytoscape.work.Tunable;
 
 
 public class FloatPropHandler extends AbstractPropHandler {
+       public FloatPropHandler(final Field field, final Object instance, final 
Tunable tunable) {
+               super(field, instance, tunable);
+       }
        
-       public FloatPropHandler(Field f, Object o, Tunable t) {
-               super(f,o,t);
+       public FloatPropHandler(final Method getter, final Method setter, final 
Object instance, final Tunable tunable) {
+               super(getter, setter, instance, tunable);
        }
-
        
        public Properties getProps() {
                Properties p = new Properties();
                try {
-                       p.setProperty(propKey,f.get(o).toString());
-               } catch (IllegalAccessException iae) {iae.printStackTrace();}
+                       p.setProperty(propKey, getValue().toString());
+               } catch (final Exception e) {
+                       e.printStackTrace();
+               }
                return p;
        }
        
-       
        public void setProps(Properties p) {
                try {
                        if (p.containsKey(propKey)) {
-                               String val = p.getProperty(propKey).toString();
+                               final String val = 
p.getProperty(propKey).toString();
                                if (val != null)
-                                       f.setFloat(o, 
Float.valueOf(Float.parseFloat(val)));
+                                       setValue(Float.valueOf(val));
                        }
-               } catch (IllegalAccessException iae) {iae.printStackTrace();}
+               } catch (final Exception e) {
+                       e.printStackTrace();
+               }
        }
 }

Modified: 
core3/work-tunable-props-impl/trunk/src/main/java/org/cytoscape/work/internal/props/InputStreamPropHandler.java
===================================================================
--- 
core3/work-tunable-props-impl/trunk/src/main/java/org/cytoscape/work/internal/props/InputStreamPropHandler.java
     2010-08-11 20:56:04 UTC (rev 21335)
+++ 
core3/work-tunable-props-impl/trunk/src/main/java/org/cytoscape/work/internal/props/InputStreamPropHandler.java
     2010-08-11 21:10:31 UTC (rev 21336)
@@ -1,6 +1,8 @@
 package org.cytoscape.work.internal.props;
 
+
 import java.lang.reflect.Field;
+import java.lang.reflect.Method;
 import java.util.Properties;
 import java.io.InputStream;
 
@@ -8,27 +10,33 @@
 
 
 public class InputStreamPropHandler extends AbstractPropHandler {
-       
-       public InputStreamPropHandler(Field f, Object o, Tunable t) {
-               super(f,o,t);
+       public InputStreamPropHandler(final Field field, final Object instance, 
final Tunable tunable) {
+               super(field, instance, tunable);
        }
 
-       
+       public InputStreamPropHandler(final Method getter, final Method setter, 
final Object instance, final Tunable tunable) {
+               super(getter, setter, instance, tunable);
+       }
+
        public Properties getProps() {
                Properties p = new Properties();
-               try{
-                       p.setProperty(propKey, 
((InputStream)f.get(o)).toString());
-               }catch(Exception e){e.printStackTrace();}
+               try {
+                       p.setProperty(propKey, 
((InputStream)getValue()).toString());
+               } catch(Exception e){
+                       e.printStackTrace();
+               }
                return p;
        }
 
        public void setProps(Properties p) {
                try {
-                       if ( p.containsKey(propKey) ) {
+                       if (p.containsKey(propKey)) {
                                String val = p.getProperty(propKey);
                                if ( val != null )
-                                       f.set(o, val);
+                                       setValue(val);
                        }
-        } catch (IllegalAccessException iae) {iae.printStackTrace();}
+               } catch (final Exception e) {
+                       e.printStackTrace();
+               }
        }
 }

Modified: 
core3/work-tunable-props-impl/trunk/src/main/java/org/cytoscape/work/internal/props/IntPropHandler.java
===================================================================
--- 
core3/work-tunable-props-impl/trunk/src/main/java/org/cytoscape/work/internal/props/IntPropHandler.java
     2010-08-11 20:56:04 UTC (rev 21335)
+++ 
core3/work-tunable-props-impl/trunk/src/main/java/org/cytoscape/work/internal/props/IntPropHandler.java
     2010-08-11 21:10:31 UTC (rev 21336)
@@ -1,31 +1,41 @@
 package org.cytoscape.work.internal.props;
 
+
 import java.lang.reflect.Field;
+import java.lang.reflect.Method;
 import java.util.Properties;
 
 import org.cytoscape.work.Tunable;
 
-public class IntPropHandler extends AbstractPropHandler{
-       
-       public IntPropHandler(Field f, Object o, Tunable t){
-               super(f,o,t);
+
+public class IntPropHandler extends AbstractPropHandler {
+       public IntPropHandler(final Field field, final Object instance, final 
Tunable tunable) {
+               super(field, instance, tunable);
        }
 
-       
+       public IntPropHandler(final Method getter, final Method setter, final 
Object instance, final Tunable tunable) {
+               super(getter, setter, instance, tunable);
+       }
+
        public Properties getProps() {
                Properties p = new Properties();
                try {
-                       p.setProperty(propKey,f.get(o).toString());
-               } catch (IllegalAccessException iae) {iae.printStackTrace();}
+                       p.setProperty(propKey, getValue().toString());
+               } catch (final Exception e) {
+                       e.printStackTrace();
+               }
                return p;
        }
-       
+
        public void setProps(Properties p) {
                try {
                        if (p.containsKey(propKey)) {
-                               String val = p.getProperty(propKey).toString();
-                               if (val != null)f.setInt(o, 
Integer.valueOf(Integer.parseInt(val)));
+                               final String val = 
p.getProperty(propKey).toString();
+                               if (val != null)
+                                       setValue(Integer.valueOf(val));
                        }
-               } catch (IllegalAccessException iae) {iae.printStackTrace();}
+               } catch (final Exception e) {
+                       e.printStackTrace();
+               }
        }
 }

Modified: 
core3/work-tunable-props-impl/trunk/src/main/java/org/cytoscape/work/internal/props/ListMultiplePropHandler.java
===================================================================
--- 
core3/work-tunable-props-impl/trunk/src/main/java/org/cytoscape/work/internal/props/ListMultiplePropHandler.java
    2010-08-11 20:56:04 UTC (rev 21335)
+++ 
core3/work-tunable-props-impl/trunk/src/main/java/org/cytoscape/work/internal/props/ListMultiplePropHandler.java
    2010-08-11 21:10:31 UTC (rev 21336)
@@ -1,6 +1,8 @@
 package org.cytoscape.work.internal.props;
 
+
 import java.lang.reflect.Field;
+import java.lang.reflect.Method;
 import java.util.*;
 
 import org.cytoscape.work.Tunable;
@@ -8,32 +10,37 @@
 
 
 public class ListMultiplePropHandler<T> extends AbstractPropHandler {
+       public ListMultiplePropHandler(final Field field, final Object 
instance, final Tunable tunable) {
+               super(field, instance, tunable);
+       }
 
-       public ListMultiplePropHandler(Field f, Object o, Tunable t) {
-               super(f,o,t);
+       public ListMultiplePropHandler(final Method getter, final Method 
setter, final Object instance, final Tunable tunable) {
+               super(getter, setter, instance, tunable);
        }
 
-       
        public Properties getProps() {
                Properties p = new Properties();
                try{
-                       
p.setProperty(propKey,((ListMultipleSelection<T>)f.get(o)).getSelectedValues().toString());
-               }catch (Exception e){e.printStackTrace();}              
+                       p.setProperty(propKey, 
((ListMultipleSelection<T>)getValue()).getSelectedValues().toString());
+               } catch (final Exception e) {
+                       e.printStackTrace();
+               }
                return p;
        }
-       
 
        public void setProps(Properties p) {
-               try{
-                       if(p.containsKey(propKey)){
-                               ListMultipleSelection<T> lms = 
(ListMultipleSelection<T>) f.get(o);
+               try {
+                       if (p.containsKey(propKey)) {
+                               final ListMultipleSelection<T> lms = 
(ListMultipleSelection<T>)getValue();
                                T[] tab = 
(T[])p.getProperty(propKey).split(",");
-                               if(tab != null){
+                               if (tab != null) {
                                        
lms.setSelectedValues(Arrays.asList(tab));
-                                       f.set(o, lms);
+                                       setValue(lms);
                                }
                        }
-               }catch(Exception e){e.printStackTrace();}
+               } catch(final Exception e) {
+                       e.printStackTrace();
+               }
        }
 }
-       
+

Modified: 
core3/work-tunable-props-impl/trunk/src/main/java/org/cytoscape/work/internal/props/ListSinglePropHandler.java
===================================================================
--- 
core3/work-tunable-props-impl/trunk/src/main/java/org/cytoscape/work/internal/props/ListSinglePropHandler.java
      2010-08-11 20:56:04 UTC (rev 21335)
+++ 
core3/work-tunable-props-impl/trunk/src/main/java/org/cytoscape/work/internal/props/ListSinglePropHandler.java
      2010-08-11 21:10:31 UTC (rev 21336)
@@ -1,36 +1,45 @@
 package org.cytoscape.work.internal.props;
 
+
 import java.lang.reflect.Field;
+import java.lang.reflect.Method;
 import java.util.*;
 
 import org.cytoscape.work.Tunable;
 import org.cytoscape.work.util.ListSingleSelection;
 
+
 public class ListSinglePropHandler<T> extends AbstractPropHandler {
-       
-       public ListSinglePropHandler(Field f, Object o, Tunable t) {
-               super(f,o,t);
+       public ListSinglePropHandler(final Field field, final Object instance, 
final Tunable tunable) {
+               super(field, instance, tunable);
        }
-       
+
+       public ListSinglePropHandler(final Method getter, final Method setter, 
final Object instance, final Tunable tunable) {
+               super(getter, setter, instance, tunable);
+       }
+
        public Properties getProps() {
                Properties p = new Properties();
-               try{
-                       
p.setProperty(propKey,((ListSingleSelection<T>)f.get(o)).getSelectedValue().toString());
-               }catch(Exception e){e.printStackTrace();}
+               try {
+                       p.setProperty(propKey, 
((ListSingleSelection<T>)getValue()).getSelectedValue().toString());
+               } catch(final Exception e) {
+                       e.printStackTrace();
+               }
                return p;
        }
-       
-       
+
        public void setProps(Properties p) {
-               try{
-                       if(p.containsKey(propKey)){
-                               ListSingleSelection<T> lss = 
(ListSingleSelection<T>) f.get(o);
-                               T val = (T) p.getProperty(propKey).toString();
-                               if(val != null) {
+               try {
+                       if (p.containsKey(propKey)) {
+                               final ListSingleSelection<T> lss = 
(ListSingleSelection<T>)getValue();
+                               final T val = 
(T)p.getProperty(propKey).toString(); //FIXME!
+                               if (val != null) {
                                        lss.setSelectedValue(val);
-                                       f.set(o, lss);
+                                       setValue(lss);
                                }
                        }
-               }catch(Exception e){e.printStackTrace();}
+               } catch(final Exception e) {
+                       e.printStackTrace();
+               }
        }
 }

Modified: 
core3/work-tunable-props-impl/trunk/src/main/java/org/cytoscape/work/internal/props/LongPropHandler.java
===================================================================
--- 
core3/work-tunable-props-impl/trunk/src/main/java/org/cytoscape/work/internal/props/LongPropHandler.java
    2010-08-11 20:56:04 UTC (rev 21335)
+++ 
core3/work-tunable-props-impl/trunk/src/main/java/org/cytoscape/work/internal/props/LongPropHandler.java
    2010-08-11 21:10:31 UTC (rev 21336)
@@ -1,33 +1,41 @@
 package org.cytoscape.work.internal.props;
 
+
 import java.lang.reflect.Field;
+import java.lang.reflect.Method;
 import java.util.Properties;
 
 import org.cytoscape.work.Tunable;
 
 
 public class LongPropHandler extends AbstractPropHandler {
-       
-       public LongPropHandler(Field f, Object o, Tunable t) {
-               super(f,o,t);
+       public LongPropHandler(final Field field, final Object instance, final 
Tunable tunable) {
+               super(field, instance, tunable);
        }
-       
+
+       public LongPropHandler(final Method getter, final Method setter, final 
Object instance, final Tunable tunable) {
+               super(getter, setter, instance, tunable);
+       }
+
        public Properties getProps() {
                Properties p = new Properties();
                try {
-                       p.setProperty(propKey,f.get(o).toString());
-               } catch (IllegalAccessException iae) {iae.printStackTrace();}
+                       p.setProperty(propKey, getValue().toString());
+               } catch (final Exception e) {
+                       e.printStackTrace();
+               }
                return p;
        }
-       
-       
+
        public void setProps(Properties p) {
                try {
                        if (p.containsKey(propKey)) {
-                               String val = p.getProperty(propKey).toString();
+                               final String val = 
p.getProperty(propKey).toString();
                                if (val != null)
-                                       f.setLong(o, 
Long.valueOf(Long.parseLong(val)));
+                                       setValue(Long.valueOf(val));
                        }
-               } catch (IllegalAccessException iae) {iae.printStackTrace();}
+               } catch (final Exception e) {
+                       e.printStackTrace();
+               }
        }
 }

Modified: 
core3/work-tunable-props-impl/trunk/src/main/java/org/cytoscape/work/internal/props/PropHandler.java
===================================================================
--- 
core3/work-tunable-props-impl/trunk/src/main/java/org/cytoscape/work/internal/props/PropHandler.java
        2010-08-11 20:56:04 UTC (rev 21335)
+++ 
core3/work-tunable-props-impl/trunk/src/main/java/org/cytoscape/work/internal/props/PropHandler.java
        2010-08-11 21:10:31 UTC (rev 21336)
@@ -1,10 +1,12 @@
 package org.cytoscape.work.internal.props;
 
+
 import java.util.Properties;
 
-import org.cytoscape.work.Handler;
+import org.cytoscape.work.TunableHandler;
 
-public interface PropHandler extends Handler {
+
+public interface PropHandler extends TunableHandler {
        public void setProps(Properties p);
        public Properties getProps();
 }

Modified: 
core3/work-tunable-props-impl/trunk/src/main/java/org/cytoscape/work/internal/props/PropHandlerFactory.java
===================================================================
--- 
core3/work-tunable-props-impl/trunk/src/main/java/org/cytoscape/work/internal/props/PropHandlerFactory.java
 2010-08-11 20:56:04 UTC (rev 21335)
+++ 
core3/work-tunable-props-impl/trunk/src/main/java/org/cytoscape/work/internal/props/PropHandlerFactory.java
 2010-08-11 21:10:31 UTC (rev 21336)
@@ -11,62 +11,71 @@
 
 
 public class PropHandlerFactory implements HandlerFactory<PropHandler> {
+       public PropHandler getHandler(final Field field, final Object instance, 
final Tunable tunable) {
+               final Class<?> type = field.getType();
 
-       public PropHandler getHandler(Field f, Object o, Tunable t) {
-               
-               Class<?> type = f.getType();
-               
-               if(type == Boolean.class || type == boolean.class)
-                       return new BooleanPropHandler(f,o,t);
+               if (type == Boolean.class || type == boolean.class)
+                       return new BooleanPropHandler(field, instance, tunable);
                else if (type == String.class)
-                       return new StringPropHandler(f, o, t);
-
+                       return new StringPropHandler(field, instance, tunable);
                else if ((type == int.class || type == Integer.class))
-                       return new IntPropHandler(f, o, t);
+                       return new IntPropHandler(field, instance, tunable);
                else if ((type == float.class || type == Float.class))
-                       return new FloatPropHandler(f, o, t);
+                       return new FloatPropHandler(field, instance, tunable);
                else if ((type == long.class || type == Long.class))
-                       return new LongPropHandler(f, o, t);
-               else if(type == Double.class || type == double.class)
-                       return new DoublePropHandler(f,o,t);
-               
-               else if(type == BoundedDouble.class)
-                       return new BoundedPropHandler<BoundedDouble>(f,o,t);
-               else if(type == BoundedInteger.class)
-                       return new BoundedPropHandler<BoundedInteger>(f,o,t);
-               else if(type == BoundedLong.class)
-                       return new BoundedPropHandler<BoundedLong>(f,o,t);
-               else if(type == BoundedFloat.class)
-                       return new BoundedPropHandler<BoundedFloat>(f,o,t);
-
-               else if(type == FlexiblyBoundedDouble.class)
-                       return new 
FlexiblyBoundedPropHandler<FlexiblyBoundedDouble>(f,o,t);
-               else if(type == FlexiblyBoundedInteger.class)
-                       return new 
FlexiblyBoundedPropHandler<FlexiblyBoundedInteger>(f,o,t);
-               else if(type == FlexiblyBoundedLong.class)
-                       return new 
FlexiblyBoundedPropHandler<FlexiblyBoundedLong>(f,o,t);
-               else if(type == FlexiblyBoundedFloat.class)
-                       return new 
FlexiblyBoundedPropHandler<FlexiblyBoundedFloat>(f,o,t);
-               
-               
+                       return new LongPropHandler(field, instance, tunable);
+               else if (type == Double.class || type == double.class)
+                       return new DoublePropHandler(field, instance, tunable);
+               else if (type == BoundedDouble.class)
+                       return new BoundedPropHandler<BoundedDouble>(field, 
instance, tunable);
+               else if (type == BoundedInteger.class)
+                       return new BoundedPropHandler<BoundedInteger>(field, 
instance, tunable);
+               else if (type == BoundedLong.class)
+                       return new BoundedPropHandler<BoundedLong>(field, 
instance, tunable);
+               else if (type == BoundedFloat.class)
+                       return new BoundedPropHandler<BoundedFloat>(field, 
instance, tunable);
                else if (type == ListSingleSelection.class)
-                       return new ListSinglePropHandler<Object>(f,o,t);
+                       return new ListSinglePropHandler<Object>(field, 
instance, tunable);
                else if (type == ListMultipleSelection.class)
-                       return new ListMultiplePropHandler<Object>(f,o,t);
-               
+                       return new ListMultiplePropHandler<Object>(field, 
instance, tunable);
                else if (type == File.class)
-                       return new FilePropHandler(f,o,t);
-               else if(type == URL.class)
-                       return new URLPropHandler(f,o,t);
+                       return new FilePropHandler(field, instance, tunable);
+               else if (type == URL.class)
+                       return new URLPropHandler(field, instance, tunable);
                return null;
        }
 
-       public PropHandler getHandler(Method m, Object o, Tunable t) {
+       public PropHandler getHandler(final Method getter, final Method setter, 
final Object instance, final Tunable tunable) {
+               final Class<?> type = getter.getReturnType();
+
+               if (type == Boolean.class || type == boolean.class)
+                       return new BooleanPropHandler(getter, setter, instance, 
tunable);
+               else if (type == String.class)
+                       return new StringPropHandler(getter, setter, instance, 
tunable);
+               else if ((type == int.class || type == Integer.class))
+                       return new IntPropHandler(getter, setter, instance, 
tunable);
+               else if ((type == float.class || type == Float.class))
+                       return new FloatPropHandler(getter, setter, instance, 
tunable);
+               else if ((type == long.class || type == Long.class))
+                       return new LongPropHandler(getter, setter, instance, 
tunable);
+               else if (type == Double.class || type == double.class)
+                       return new DoublePropHandler(getter, setter, instance, 
tunable);
+               else if (type == BoundedDouble.class)
+                       return new BoundedPropHandler<BoundedDouble>(getter, 
setter, instance, tunable);
+               else if (type == BoundedInteger.class)
+                       return new BoundedPropHandler<BoundedInteger>(getter, 
setter, instance, tunable);
+               else if (type == BoundedLong.class)
+                       return new BoundedPropHandler<BoundedLong>(getter, 
setter, instance, tunable);
+               else if (type == BoundedFloat.class)
+                       return new BoundedPropHandler<BoundedFloat>(getter, 
setter, instance, tunable);
+               else if (type == ListSingleSelection.class)
+                       return new ListSinglePropHandler<Object>(getter, 
setter, instance, tunable);
+               else if (type == ListMultipleSelection.class)
+                       return new ListMultiplePropHandler<Object>(getter, 
setter, instance, tunable);
+               else if (type == File.class)
+                       return new FilePropHandler(getter, setter, instance, 
tunable);
+               else if (type == URL.class)
+                       return new URLPropHandler(getter, setter, instance, 
tunable);
                return null;
        }
-       
-       public PropHandler getHandler(Method gmethod,Method smethod,Object 
o,Tunable tg, Tunable ts){
-               return null;
-       }
-
 }

Modified: 
core3/work-tunable-props-impl/trunk/src/main/java/org/cytoscape/work/internal/props/StringPropHandler.java
===================================================================
--- 
core3/work-tunable-props-impl/trunk/src/main/java/org/cytoscape/work/internal/props/StringPropHandler.java
  2010-08-11 20:56:04 UTC (rev 21335)
+++ 
core3/work-tunable-props-impl/trunk/src/main/java/org/cytoscape/work/internal/props/StringPropHandler.java
  2010-08-11 21:10:31 UTC (rev 21336)
@@ -1,5 +1,6 @@
 package org.cytoscape.work.internal.props;
 
+
 import java.lang.reflect.*;
 import java.util.*;
 
@@ -7,27 +8,33 @@
 
 
 public class StringPropHandler extends AbstractPropHandler {
+       public StringPropHandler(final Field field, final Object instance, 
final Tunable tunable) {
+               super(field, instance, tunable);
+       }
 
-       public StringPropHandler(Field f, Object o, Tunable t) {
-               super(f,o,t);
+       public StringPropHandler(final Method getter, final Method setter, 
final Object instance, final Tunable tunable) {
+               super(getter, setter, instance, tunable);
        }
 
        public Properties getProps() {
                Properties p = new Properties();
                try {
-                       p.setProperty( propKey,f.get(o).toString());
-        }catch(IllegalAccessException iae) {iae.printStackTrace();}
+                       p.setProperty(propKey, getValue().toString());
+               } catch(final Exception e) {
+                       e.printStackTrace();
+               }
                return p;
        }
 
-       
        public void setProps(Properties p) {
                try {
-                       if ( p.containsKey( propKey ) ) {
-                               String val = p.getProperty(propKey).toString();
-                               if ( val != null )
-                                       f.set(o, val);
+                       if (p.containsKey(propKey)) {
+                               final String val = 
p.getProperty(propKey).toString();
+                               if (val != null)
+                                       setValue(val);
                        }
-           }catch(IllegalAccessException iae) {iae.printStackTrace();}
+               } catch(final Exception e) {
+                       e.printStackTrace();
+               }
        }
 }

Modified: 
core3/work-tunable-props-impl/trunk/src/main/java/org/cytoscape/work/internal/props/URLPropHandler.java
===================================================================
--- 
core3/work-tunable-props-impl/trunk/src/main/java/org/cytoscape/work/internal/props/URLPropHandler.java
     2010-08-11 20:56:04 UTC (rev 21335)
+++ 
core3/work-tunable-props-impl/trunk/src/main/java/org/cytoscape/work/internal/props/URLPropHandler.java
     2010-08-11 21:10:31 UTC (rev 21336)
@@ -1,5 +1,6 @@
 package org.cytoscape.work.internal.props;
 
+
 import java.lang.reflect.*;
 import java.net.MalformedURLException;
 import java.net.URL;
@@ -7,33 +8,41 @@
 
 import org.cytoscape.work.Tunable;
 
+
 public class URLPropHandler extends AbstractPropHandler {
+       public URLPropHandler(final Field field, final Object instance, final 
Tunable tunable) {
+               super(field, instance, tunable);
+       }
 
-       public URLPropHandler(Field f, Object o, Tunable t) {
-               super(f,o,t);
+       public URLPropHandler(final Method getter, final Method setter, final 
Object instance, final Tunable tunable) {
+               super(getter, setter, instance, tunable);
        }
 
        public Properties getProps() {
                Properties p = new Properties();
-               try{
-                       p.setProperty(propKey, f.get(o).toString());
-               }catch(IllegalAccessException iae){iae.printStackTrace();}
+               try {
+                       p.setProperty(propKey, getValue().toString());
+               } catch(final Exception e) {
+                       e.printStackTrace();
+               }
                return p;
        }
-       
-       
+
        public void setProps(Properties p) {
                try {
-                       if ( p.containsKey( propKey ) ) {
-                               URL url = (URL)f.get(o);
-                               String val = p.getProperty(propKey);
-                               if ( val != null ){
+                       if (p.containsKey(propKey)) {
+                               final String val = p.getProperty(propKey);
+                               if (val != null) {
                                        try {
-                                               url = new URL(val);
-                                               f.set(o, url);
-                                       } catch (MalformedURLException 
mue){mue.printStackTrace();}
+                                               URL url = new URL(val);
+                                               setValue(url);
+                                       } catch (final Exception e) {
+                                               e.printStackTrace();
+                                       }
                                }
                        }
-        } catch (IllegalAccessException iae) {iae.printStackTrace();}
+               } catch (Exception e) {
+                       e.printStackTrace();
+               }
        }
 }

-- 
You received this message because you are subscribed to the Google Groups 
"cytoscape-cvs" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/cytoscape-cvs?hl=en.

Reply via email to