Make Condition and Conditions Serializable so that they may work with multiple-worker builds.

Patch by: bobv
Review by: kprobst (TBR)

git-svn-id: https://google-web-toolkit.googlecode.com/svn/trunk@5974 8db76d5a-ed1c-0410-87a9-c151d255dfc7
diff --git a/dev/core/src/com/google/gwt/dev/cfg/Condition.java b/dev/core/src/com/google/gwt/dev/cfg/Condition.java
index 0ff89e7..3839abb 100644
--- a/dev/core/src/com/google/gwt/dev/cfg/Condition.java
+++ b/dev/core/src/com/google/gwt/dev/cfg/Condition.java
@@ -21,12 +21,13 @@
 import com.google.gwt.core.ext.typeinfo.TypeOracle;
 import com.google.gwt.dev.util.collect.Sets;
 
+import java.io.Serializable;
 import java.util.Set;
 
 /**
  * Abstract base class for various kinds of deferred binding conditions.
  */
-public abstract class Condition {
+public abstract class Condition implements Serializable {
   /**
    * Returns the set of property names that the Condition requires in order to
    * be evaluated.
diff --git a/dev/core/src/com/google/gwt/dev/cfg/Conditions.java b/dev/core/src/com/google/gwt/dev/cfg/Conditions.java
index 8993fae..d5c5810 100644
--- a/dev/core/src/com/google/gwt/dev/cfg/Conditions.java
+++ b/dev/core/src/com/google/gwt/dev/cfg/Conditions.java
@@ -15,22 +15,24 @@
  */
 package com.google.gwt.dev.cfg;
 
-import java.util.ArrayList;
+import com.google.gwt.dev.util.collect.Lists;
+
+import java.io.Serializable;
 import java.util.Iterator;
 import java.util.List;
 
 /**
  * A typed collection of {@link Condition} objects.
  */
-public class Conditions {
+public class Conditions implements Serializable {
 
-  private final List<Condition> list = new ArrayList<Condition>();
+  private List<Condition> list = Lists.create();
 
   /**
    * Appends a condition.
    */
   public void add(Condition condition) {
-    list.add(condition);
+    list = Lists.add(list, condition);
   }
 
   public Iterator<Condition> iterator() {