Merge branch 'develop' into releases/Release_2_11_Branch
[jalview.git] / src / jalview / schemabinding / version2 / descriptors / JalviewUserColoursDescriptor.java
index d65de13..459d645 100644 (file)
@@ -7,11 +7,13 @@
 
 package jalview.schemabinding.version2.descriptors;
 
+import jalview.schemabinding.version2.Colour;
+import jalview.schemabinding.version2.Filter;
+
 //---------------------------------/
 //- Imported classes and packages -/
 //---------------------------------/
 
-import jalview.schemabinding.version2.Colour;
 import jalview.schemabinding.version2.JalviewUserColours;
 
 /**
@@ -19,8 +21,8 @@ import jalview.schemabinding.version2.JalviewUserColours;
  * 
  * @version $Revision$ $Date$
  */
-public class JalviewUserColoursDescriptor extends
-        org.exolab.castor.xml.util.XMLClassDescriptorImpl
+public class JalviewUserColoursDescriptor
+        extends org.exolab.castor.xml.util.XMLClassDescriptorImpl
 {
 
   // --------------------------/
@@ -192,8 +194,8 @@ public class JalviewUserColoursDescriptor extends
       }
 
       @Override
-      public void resetValue(Object object) throws IllegalStateException,
-              IllegalArgumentException
+      public void resetValue(Object object)
+              throws IllegalStateException, IllegalArgumentException
       {
         try
         {
@@ -221,6 +223,64 @@ public class JalviewUserColoursDescriptor extends
     { // -- local scope
     }
     desc.setValidator(fieldValidator);
+    // -- _filterList
+    desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
+            Filter.class, "_filterList", "filter",
+            org.exolab.castor.xml.NodeType.Element);
+    handler = new org.exolab.castor.xml.XMLFieldHandler()
+    {
+      @Override
+      public java.lang.Object getValue(java.lang.Object object)
+              throws IllegalStateException
+      {
+        JalviewUserColours target = (JalviewUserColours) object;
+        return target.getFilter();
+      }
+
+      @Override
+      public void setValue(java.lang.Object object, java.lang.Object value)
+              throws IllegalStateException, IllegalArgumentException
+      {
+        try
+        {
+          JalviewUserColours target = (JalviewUserColours) object;
+          target.addFilter((Filter) value);
+        } catch (java.lang.Exception ex)
+        {
+          throw new IllegalStateException(ex.toString());
+        }
+      }
+
+      @Override
+      public void resetValue(Object object)
+              throws IllegalStateException, IllegalArgumentException
+      {
+        try
+        {
+          JalviewUserColours target = (JalviewUserColours) object;
+          target.removeAllFilter();
+        } catch (java.lang.Exception ex)
+        {
+          throw new IllegalStateException(ex.toString());
+        }
+      }
+
+      @Override
+      public java.lang.Object newInstance(java.lang.Object parent)
+      {
+        return new Filter();
+      }
+    };
+    desc.setHandler(handler);
+    desc.setMultivalued(true);
+    addFieldDescriptor(desc);
+
+    // -- validation code for: _filterList
+    fieldValidator = new org.exolab.castor.xml.FieldValidator();
+    fieldValidator.setMinOccurs(0);
+    { // -- local scope
+    }
+    desc.setValidator(fieldValidator);
   }
 
   // -----------/