// Path: app/src/main/java/org/pquery/util/Assert.java
// public class Assert {
// 
//     public static void assertNotNull(Object a) {
//         if (a == null) {
//             throw new IllegalArgumentException("null reference");
//         }
//     }
// 
//     public static void assertEquals(int a, int b) {
//         if (a != b) {
//             throw new IllegalArgumentException("not equal");
//         }
//     }
// 
//     public static void fail() {
//         throw new IllegalArgumentException("fail");
//     }
// 
//     public static void assertTrue(boolean a) {
//         if (!a) {
//             throw new IllegalArgumentException("not true");
//         }
//     }
// 
//     public static void assertFalse(boolean a) {
//         if (a) {
//             throw new IllegalArgumentException("true");
//         }
//     }
// 
//     public static void assertNull(Object a) {
//         if (a != null) {
//             throw new IllegalArgumentException("not null");
//         }
//     }
// }
// 
// Path: app/src/main/java/org/pquery/util/MyColors.java
// public class MyColors {
//     public static String LIME = "#00FF00";
//     public static String MEGENTA = "#FF00FF";
// }


import android.content.res.Resources;
import com.google.android.gms.common.internal.Asserts;
import org.pquery.R;
import org.pquery.util.Assert;
import org.pquery.util.MyColors;
import java.util.Iterator;
import java.util.LinkedList;
package org.pquery.filter;





/**
 * Represents a list of CacheTypes
 * Used as a creation filter
 */
public class CacheTypeList implements Iterable<CacheType> {

    /**
     * wrapped list
     */
    private LinkedList<CacheType> inner = new LinkedList<CacheType>();

    public CacheTypeList() {
    }


    /**
     * Construct from a string of comma separated string
     * Used to retrieve from preferences
     */
    public CacheTypeList(String s) {
        Asserts.checkNotNull(s);

        String[] cacheList = s.split(",");

        for (String cache : cacheList) {
            if (cache.length() > 0)
                inner.add(CacheType.valueOf(cache));
        }

        if (inner.size() == 0) {
            setAll();
        }
    }

    /**
     * Create list from an array
     * Expect array to contain a boolean for each CacheType
     */
    public CacheTypeList(boolean[] selection) {

// Path: app/src/main/java/org/pquery/util/Assert.java
// public class Assert {
// 
//     public static void assertNotNull(Object a) {
//         if (a == null) {
//             throw new IllegalArgumentException("null reference");
//         }
//     }
// 
//     public static void assertEquals(int a, int b) {
//         if (a != b) {
//             throw new IllegalArgumentException("not equal");
//         }
//     }
// 
//     public static void fail() {
//         throw new IllegalArgumentException("fail");
//     }
// 
//     public static void assertTrue(boolean a) {
//         if (!a) {
//             throw new IllegalArgumentException("not true");
//         }
//     }
// 
//     public static void assertFalse(boolean a) {
//         if (a) {
//             throw new IllegalArgumentException("true");
//         }
//     }
// 
//     public static void assertNull(Object a) {
//         if (a != null) {
//             throw new IllegalArgumentException("not null");
//         }
//     }
// }
// 
// Path: app/src/main/java/org/pquery/util/MyColors.java
// public class MyColors {
//     public static String LIME = "#00FF00";
//     public static String MEGENTA = "#FF00FF";
// }


// Path: app/src/main/java/org/pquery/filter/CacheTypeList.java
import android.content.res.Resources;
import com.google.android.gms.common.internal.Asserts;
import org.pquery.R;
import org.pquery.util.Assert;
import org.pquery.util.MyColors;
import java.util.Iterator;
import java.util.LinkedList;

package org.pquery.filter;





/**
 * Represents a list of CacheTypes
 * Used as a creation filter
 */
public class CacheTypeList implements Iterable<CacheType> {

    /**
     * wrapped list
     */
    private LinkedList<CacheType> inner = new LinkedList<CacheType>();

    public CacheTypeList() {
    }


    /**
     * Construct from a string of comma separated string
     * Used to retrieve from preferences
     */
    public CacheTypeList(String s) {
        Asserts.checkNotNull(s);

        String[] cacheList = s.split(",");

        for (String cache : cacheList) {
            if (cache.length() > 0)
                inner.add(CacheType.valueOf(cache));
        }

        if (inner.size() == 0) {
            setAll();
        }
    }

    /**
     * Create list from an array
     * Expect array to contain a boolean for each CacheType
     */
    public CacheTypeList(boolean[] selection) {

        Assert.assertEquals(CacheType.values().length, selection.length);