// Path: core/src/main/java/com/baoyz/airdata/AbstractDatabase.java
// public abstract class AbstractDatabase {
// 
//     AirDatabaseHelper mDatabaseHelper;
//     private Context mContext;
// 
//     public AbstractDatabase(Context context) {
//         if (!(context instanceof Application)) {
//             // TODO throw exception
//         }
//         mContext = context;
//         mDatabaseHelper = new AirDatabaseHelperImpl(mContext, this);
//     }
// 
//     public SQLiteDatabase getDatabase() {
//         return mDatabaseHelper.getDatabase();
//     }
// 
//     public String getName() {
//         return null;
//     }
// 
//     public int getVersion() {
//         return 1;
//     }
// 
//     public <T> List<T> query(Class<T> clazz) {
//         return mDatabaseHelper.queryAll(clazz);
//     }
// 
//     public long save(Object obj) {
//         return mDatabaseHelper.save(obj);
//     }
// 
//     public long delete(Object obj) {
//         return mDatabaseHelper.delete(obj);
//     }
// 
//     public long update(Object obj) {
//         return mDatabaseHelper.update(obj);
//     }
// 
//     public void beginTransaction(){
//         mDatabaseHelper.getDatabase().beginTransaction();
//     }
// 
//     public void endTransaction(){
//         mDatabaseHelper.getDatabase().endTransaction();
//     }
// 
//     public void setTransactionSuccessful(){
//         mDatabaseHelper.getDatabase().setTransactionSuccessful();
//     }
// 
//     public AirDatabaseHelper getDatabaseHelper() {
//         return mDatabaseHelper;
//     }
// }
// 
// Path: core/src/main/java/com/baoyz/airdata/AirDatabaseHelper.java
// public interface AirDatabaseHelper {
// 
//     long save(Object obj);
// 
//     int delete(Object obj);
// 
//     int update(Object obj);
// 
//     <T> int update(Class<T> clazz, ContentValuesWrapper valuesWrapper, String where, String[] whereArgs);
// 
//     <T> int delete(Class<T> clazz, String where, String[] whereArgs);
// 
//     <T> List<T> queryAll(Class<T> clazz);
// 
//     <T> List<T> query(Class<T> clazz, boolean distinct, String[] columns,
//                       String selection, String[] selectionArgs, String groupBy,
//                       String having, String orderBy, String limit);
// 
//     <T> Cursor rawQuery(Class<T> clazz, boolean distinct, String[] columns,
//                       String selection, String[] selectionArgs, String groupBy,
//                       String having, String orderBy, String limit);
// 
//     void destory();
// 
//     SQLiteDatabase getDatabase();
// }
// 
// Path: core/src/main/java/com/baoyz/airdata/ContentValuesWrapper.java
// public class ContentValuesWrapper {
// 
//     private ContentValues values;
// 
//     public static ContentValuesWrapper wrap(ContentValues values) {
//         ContentValuesWrapper wrapper = new ContentValuesWrapper();
//         wrapper.values = values;
//         return wrapper;
//     }
// 
//     public void put(String key, Boolean value) {
//         values.put(key, value);
//     }
// 
//     public void put(String key, Byte value) {
//         values.put(key, value);
//     }
// 
//     public void put(String key, Short value) {
//         values.put(key, value);
//     }
// 
//     public void put(String key, Integer value) {
//         values.put(key, value);
//     }
// 
//     public void put(String key, Long value) {
//         values.put(key, value);
//     }
// 
//     public void put(String key, Double value) {
//         values.put(key, value);
//     }
// 
//     public void put(String key, Float value) {
//         values.put(key, value);
//     }
// 
//     public void put(String key, String value) {
//         values.put(key, value);
//     }
// 
//     public void put(String key, byte[] value) {
//         values.put(key, value);
//     }
// 
//     public void put(String key, Byte[] value) {
//         if (value == null) {
//             values.putNull(key);
//             return;
//         }
//         byte[] bytes = new byte[value.length];
//         System.arraycopy(value, 0, bytes, 0, bytes.length);
//         put(key, bytes);
//     }
// 
//     public void put(String key, char value) {
//         values.put(key, (int) value);
//     }
// 
//     public void put(String key, Character value) {
//         if (value == null) {
//             values.putNull(key);
//             return;
//         }
//         put(key, (char) value);
//     }
// 
//     public void put(String key, Date value) {
//         if (value == null) {
//             values.putNull(key);
//             return;
//         }
//         values.put(key, value.getTime());
//     }
// 
//     public ContentValues getValues() {
//         return values;
//     }
// }


import android.content.ContentValues;
import com.baoyz.airdata.AbstractDatabase;
import com.baoyz.airdata.AirDatabaseHelper;
import com.baoyz.airdata.ContentValuesWrapper;
        return this;
    }

    public Update set(String name, Boolean value) {
        values.put(name, value);
        return this;
    }

    public Update set(String name, Byte value) {
        values.put(name, value);
        return this;
    }

    public Update set(String name, Short value) {
        values.put(name, value);
        return this;
    }

    public Update set(String name, Integer value) {
        values.put(name, value);
        return this;
    }

    public Update set(String name, Long value) {
        values.put(name, value);
        return this;
    }

    public Update set(String name, Double value) {
        values.put(name, value);
// Path: core/src/main/java/com/baoyz/airdata/AbstractDatabase.java
// public abstract class AbstractDatabase {
// 
//     AirDatabaseHelper mDatabaseHelper;
//     private Context mContext;
// 
//     public AbstractDatabase(Context context) {
//         if (!(context instanceof Application)) {
//             // TODO throw exception
//         }
//         mContext = context;
//         mDatabaseHelper = new AirDatabaseHelperImpl(mContext, this);
//     }
// 
//     public SQLiteDatabase getDatabase() {
//         return mDatabaseHelper.getDatabase();
//     }
// 
//     public String getName() {
//         return null;
//     }
// 
//     public int getVersion() {
//         return 1;
//     }
// 
//     public <T> List<T> query(Class<T> clazz) {
//         return mDatabaseHelper.queryAll(clazz);
//     }
// 
//     public long save(Object obj) {
//         return mDatabaseHelper.save(obj);
//     }
// 
//     public long delete(Object obj) {
//         return mDatabaseHelper.delete(obj);
//     }
// 
//     public long update(Object obj) {
//         return mDatabaseHelper.update(obj);
//     }
// 
//     public void beginTransaction(){
//         mDatabaseHelper.getDatabase().beginTransaction();
//     }
// 
//     public void endTransaction(){
//         mDatabaseHelper.getDatabase().endTransaction();
//     }
// 
//     public void setTransactionSuccessful(){
//         mDatabaseHelper.getDatabase().setTransactionSuccessful();
//     }
// 
//     public AirDatabaseHelper getDatabaseHelper() {
//         return mDatabaseHelper;
//     }
// }
// 
// Path: core/src/main/java/com/baoyz/airdata/AirDatabaseHelper.java
// public interface AirDatabaseHelper {
// 
//     long save(Object obj);
// 
//     int delete(Object obj);
// 
//     int update(Object obj);
// 
//     <T> int update(Class<T> clazz, ContentValuesWrapper valuesWrapper, String where, String[] whereArgs);
// 
//     <T> int delete(Class<T> clazz, String where, String[] whereArgs);
// 
//     <T> List<T> queryAll(Class<T> clazz);
// 
//     <T> List<T> query(Class<T> clazz, boolean distinct, String[] columns,
//                       String selection, String[] selectionArgs, String groupBy,
//                       String having, String orderBy, String limit);
// 
//     <T> Cursor rawQuery(Class<T> clazz, boolean distinct, String[] columns,
//                       String selection, String[] selectionArgs, String groupBy,
//                       String having, String orderBy, String limit);
// 
//     void destory();
// 
//     SQLiteDatabase getDatabase();
// }
// 
// Path: core/src/main/java/com/baoyz/airdata/ContentValuesWrapper.java
// public class ContentValuesWrapper {
// 
//     private ContentValues values;
// 
//     public static ContentValuesWrapper wrap(ContentValues values) {
//         ContentValuesWrapper wrapper = new ContentValuesWrapper();
//         wrapper.values = values;
//         return wrapper;
//     }
// 
//     public void put(String key, Boolean value) {
//         values.put(key, value);
//     }
// 
//     public void put(String key, Byte value) {
//         values.put(key, value);
//     }
// 
//     public void put(String key, Short value) {
//         values.put(key, value);
//     }
// 
//     public void put(String key, Integer value) {
//         values.put(key, value);
//     }
// 
//     public void put(String key, Long value) {
//         values.put(key, value);
//     }
// 
//     public void put(String key, Double value) {
//         values.put(key, value);
//     }
// 
//     public void put(String key, Float value) {
//         values.put(key, value);
//     }
// 
//     public void put(String key, String value) {
//         values.put(key, value);
//     }
// 
//     public void put(String key, byte[] value) {
//         values.put(key, value);
//     }
// 
//     public void put(String key, Byte[] value) {
//         if (value == null) {
//             values.putNull(key);
//             return;
//         }
//         byte[] bytes = new byte[value.length];
//         System.arraycopy(value, 0, bytes, 0, bytes.length);
//         put(key, bytes);
//     }
// 
//     public void put(String key, char value) {
//         values.put(key, (int) value);
//     }
// 
//     public void put(String key, Character value) {
//         if (value == null) {
//             values.putNull(key);
//             return;
//         }
//         put(key, (char) value);
//     }
// 
//     public void put(String key, Date value) {
//         if (value == null) {
//             values.putNull(key);
//             return;
//         }
//         values.put(key, value.getTime());
//     }
// 
//     public ContentValues getValues() {
//         return values;
//     }
// }


// Path: core/src/main/java/com/baoyz/airdata/crud/Update.java
import android.content.ContentValues;
import com.baoyz.airdata.AbstractDatabase;
import com.baoyz.airdata.AirDatabaseHelper;
import com.baoyz.airdata.ContentValuesWrapper;

        return this;
    }

    public Update set(String name, Boolean value) {
        values.put(name, value);
        return this;
    }

    public Update set(String name, Byte value) {
        values.put(name, value);
        return this;
    }

    public Update set(String name, Short value) {
        values.put(name, value);
        return this;
    }

    public Update set(String name, Integer value) {
        values.put(name, value);
        return this;
    }

    public Update set(String name, Long value) {
        values.put(name, value);
        return this;
    }

    public Update set(String name, Double value) {
        values.put(name, value);
        return this;