Java Code Examples for com.squareup.sqlbrite.BriteDatabase

The following examples show how to use com.squareup.sqlbrite.BriteDatabase. These examples are extracted from open source projects. You can vote up the ones you like or vote down the ones you don't like, and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example 1
Source Project: droidconat-2016   Source File: SessionsDao.java    License: Apache License 2.0 6 votes vote down vote up
public void toggleSelectedSessionState(com.nilhcem.droidconat.data.app.model.Session session, boolean insert) {
    Preconditions.checkNotOnMainThread();

    String slotTime = adapter.toText(session.getFromTime());
    BriteDatabase.Transaction transaction = database.newTransaction();
    try {
        database.delete(SelectedSession.TABLE, SelectedSession.SLOT_TIME + "=?", slotTime);
        if (insert) {
            database.insert(SelectedSession.TABLE, new SelectedSession.Builder().slotTime(slotTime).sessionId(session.getId()).build());
        }
        selectedSessionsMemory.toggleSessionState(session, insert);
        transaction.markSuccessful();
    } finally {
        transaction.end();
    }
}
 
Example 2
Source Project: sqlbrite-dao   Source File: DaoSqlBriteIntegrationTest.java    License: Apache License 2.0 6 votes vote down vote up
@Test public void runRawStatementQueryNoTablesSpecified() {
  BriteDatabase db = PowerMockito.mock(BriteDatabase.class);
  userDao.setSqlBriteDb(db);

  String arg1 = "arg1", arg2 = "arg2";
  String table = "Table";
  String sql = "SELECT * FROM " + table;
  List<String> argsList = Arrays.asList(arg1, arg2);
  Set<String> emptySet = Collections.emptySet();

  userDao.rawQuery(sql).args(arg1, arg2).run();

  ArgumentCaptor<String> varArgs = ArgumentCaptor.forClass(String.class);

  QueryObservable query = Mockito.verify(db, Mockito.times(1))
      .createQuery(Mockito.eq(emptySet), Mockito.eq(sql), varArgs.capture());

  Assert.assertEquals(argsList, varArgs.getAllValues());
}
 
Example 3
Source Project: sqlbrite-dao   Source File: DaoSqlBriteIntegrationTest.java    License: Apache License 2.0 6 votes vote down vote up
@Test public void runRawStatementQueryWithTables() {
  BriteDatabase db = PowerMockito.mock(BriteDatabase.class);
  userDao.setSqlBriteDb(db);

  String arg1 = "arg1", arg2 = "arg2";
  String table = "Table";
  String sql = "SELECT * FROM " + table;
  List<String> argsList = Arrays.asList(arg1, arg2);
  Set<String> tables = Collections.singleton(table);

  userDao.rawQueryOnManyTables(tables, sql).args(arg1, arg2).run();

  ArgumentCaptor<String> varArgs = ArgumentCaptor.forClass(String.class);

  QueryObservable query = Mockito.verify(db, Mockito.times(1))
      .createQuery(Mockito.eq(tables), Mockito.eq(sql), varArgs.capture());

  Assert.assertEquals(argsList, varArgs.getAllValues());
}
 
Example 4
Source Project: sqlbrite-dao   Source File: DaoSqlBriteIntegrationTest.java    License: Apache License 2.0 6 votes vote down vote up
@Test public void runRawStatementQueryWithTablesNoAutoUpdates() {
  BriteDatabase db = PowerMockito.mock(BriteDatabase.class);
  userDao.setSqlBriteDb(db);

  String arg1 = "arg1", arg2 = "arg2";
  String table = "Table";
  String sql = "SELECT * FROM " + table;
  List<String> argsList = Arrays.asList(arg1, arg2);
  Set<String> tables = Collections.singleton(table);
  Set<String> emptySet = Collections.emptySet();

  userDao.rawQueryOnManyTables(tables, sql).args(arg1, arg2).autoUpdates(false).run();

  ArgumentCaptor<String> varArgs = ArgumentCaptor.forClass(String.class);

  QueryObservable query = Mockito.verify(db, Mockito.times(1))
      .createQuery(Mockito.eq(emptySet), Mockito.eq(sql), varArgs.capture());

  Assert.assertEquals(argsList, varArgs.getAllValues());
}
 
Example 5
Source Project: sqlbrite-dao   Source File: DaoSqlBriteIntegrationTest.java    License: Apache License 2.0 6 votes vote down vote up
@Test public void runRawStatementQueryWithSingleTable() {
  BriteDatabase db = PowerMockito.mock(BriteDatabase.class);
  userDao.setSqlBriteDb(db);

  String arg1 = "arg1", arg2 = "arg2";
  String table = "Table";
  String sql = "SELECT * FROM " + table;
  List<String> argsList = Arrays.asList(arg1, arg2);
  Set<String> tables = Collections.singleton(table);

  userDao.rawQuery(table, sql).args(arg1, arg2).run();

  ArgumentCaptor<String> varArgs = ArgumentCaptor.forClass(String.class);

  QueryObservable query = Mockito.verify(db, Mockito.times(1))
      .createQuery(Mockito.eq(tables), Mockito.eq(sql), varArgs.capture());

  Assert.assertEquals(argsList, varArgs.getAllValues());
}
 
Example 6
Source Project: sqlbrite-dao   Source File: DaoSqlBriteIntegrationTest.java    License: Apache License 2.0 6 votes vote down vote up
@Test public void runRawStatementQueryWithSingleTableNoAutoUpdates() {
  BriteDatabase db = PowerMockito.mock(BriteDatabase.class);
  userDao.setSqlBriteDb(db);

  String arg1 = "arg1", arg2 = "arg2";
  String table = "Table";
  String sql = "SELECT * FROM " + table;
  List<String> argsList = Arrays.asList(arg1, arg2);
  Set<String> emptySet = Collections.emptySet();

  userDao.rawQuery(table, sql).args(arg1, arg2).autoUpdates(false).run();

  ArgumentCaptor<String> varArgs = ArgumentCaptor.forClass(String.class);

  QueryObservable query = Mockito.verify(db, Mockito.times(1))
      .createQuery(Mockito.eq(emptySet), Mockito.eq(sql), varArgs.capture());

  Assert.assertEquals(argsList, varArgs.getAllValues());
}
 
Example 7
Source Project: Fishing   Source File: PlaceModel.java    License: GNU General Public License v3.0 6 votes vote down vote up
public Observable<List<PlaceBrief>> syncPlace(){
    return ServiceClient.getService().syncPlace(JUtils.getSharedPreference().getString(PLACE_LAST_SYNC_TIME, "0"))
            .doOnCompleted(() -> JUtils.getSharedPreference().edit().putString(PLACE_LAST_SYNC_TIME, System.currentTimeMillis() / 1000 + "").apply())
            .doOnNext(placeBriefs -> {
                BriteDatabase.Transaction transaction = mDbBrite.newTransaction();
                for (PlaceBrief placeBrief : placeBriefs) {
                    try {
                        mDbBrite.insert(PlaceDBTable.TABLE_NAME, PlaceDBTable.getInstance().to(placeBrief));
                        JUtils.Log("DB", "inserted:" + placeBrief.getName());
                    } catch (Exception e) {
                        JUtils.Log("DB", "inserted ERROR:" + e.getLocalizedMessage());
                        try {
                            mDbBrite.update(PlaceDBTable.TABLE_NAME, PlaceDBTable.getInstance().to(placeBrief), PlaceDBTable.COLUMN_ID + "=" + placeBrief.getId());
                            JUtils.Log("DB", "updated" + placeBrief.getName());
                        } catch (Exception e1) {
                            JUtils.Log("DB", "updated ERROR:" + e1.getLocalizedMessage());
                        }
                    }
                }
                transaction.markSuccessful();
                transaction.end();
            });
}
 
Example 8
Source Project: ribot-app-android   Source File: DatabaseHelper.java    License: Apache License 2.0 6 votes vote down vote up
/**
 * Remove all the data from all the tables in the database.
 */
public Observable<Void> clearTables() {
    return Observable.create(new Observable.OnSubscribe<Void>() {
        @Override
        public void call(Subscriber<? super Void> subscriber) {
            BriteDatabase.Transaction transaction = mDb.newTransaction();
            try {
                Cursor cursor = mDb.query("SELECT name FROM sqlite_master WHERE type='table'");
                while (cursor.moveToNext()) {
                    mDb.delete(cursor.getString(cursor.getColumnIndex("name")), null);
                }
                cursor.close();
                transaction.markSuccessful();
                subscriber.onCompleted();
            } finally {
                transaction.end();
            }
        }
    });
}
 
Example 9
Source Project: ribot-app-android   Source File: DatabaseHelper.java    License: Apache License 2.0 6 votes vote down vote up
public Observable<Void> setRegisteredBeacons(final List<RegisteredBeacon> beacons) {
    return Observable.create(new Observable.OnSubscribe<Void>() {
        @Override
        public void call(Subscriber<? super Void> subscriber) {
            BriteDatabase.Transaction transaction = mDb.newTransaction();
            try {
                mDb.delete(Db.BeaconTable.TABLE_NAME, null);
                for (RegisteredBeacon beacon : beacons) {
                    mDb.insert(Db.BeaconTable.TABLE_NAME,
                            Db.BeaconTable.toContentValues(beacon));
                }
                transaction.markSuccessful();
                subscriber.onCompleted();
            } finally {
                transaction.end();
            }
        }
    });
}
 
Example 10
Source Project: StatusSaver-for-Whatsapp   Source File: DatabaseHelper.java    License: Apache License 2.0 5 votes vote down vote up
public void additem(SampleModel item) {
    BriteDatabase.Transaction transaction = mDb.newTransaction();

    try {
        long result = mDb.insert(Db.TheSampleTable.TABLE_NAME,
                Db.TheSampleTable.toContentValues(item));
        if (result <0) Log.e(TAG, "addItem: Error inserting to table " + Db.TheSampleTable.TABLE_NAME);
        transaction.markSuccessful();
    } finally {
        transaction.end();
    }
}
 
Example 11
Source Project: droidconat-2016   Source File: SpeakersDao.java    License: Apache License 2.0 5 votes vote down vote up
public void saveSpeakers(List<com.nilhcem.droidconat.data.app.model.Speaker> toSave) {
    Preconditions.checkNotOnMainThread();

    BriteDatabase.Transaction transaction = database.newTransaction();
    try {
        database.delete(Speaker.TABLE, null);
        for (com.nilhcem.droidconat.data.app.model.Speaker speaker : toSave) {
            database.insert(Speaker.TABLE, Speaker.createContentValues(dbMapper.fromAppSpeaker(speaker)));
        }
        transaction.markSuccessful();
    } finally {
        transaction.end();
    }
}
 
Example 12
Source Project: droidconat-2016   Source File: SessionsDao.java    License: Apache License 2.0 5 votes vote down vote up
@Inject
public SessionsDao(BriteDatabase database, DbMapper dbMapper, SpeakersDao speakersDao, LocalDateTimeAdapter adapter, SelectedSessionsMemory selectedSessionsMemory) {
    this.database = database;
    this.dbMapper = dbMapper;
    this.speakersDao = speakersDao;
    this.adapter = adapter;
    this.selectedSessionsMemory = selectedSessionsMemory;
}
 
Example 13
Source Project: droidconat-2016   Source File: SessionsDao.java    License: Apache License 2.0 5 votes vote down vote up
public void saveSessions(List<com.nilhcem.droidconat.data.app.model.Session> toSave) {
    Preconditions.checkNotOnMainThread();

    BriteDatabase.Transaction transaction = database.newTransaction();
    try {
        database.delete(Session.TABLE, null);
        for (com.nilhcem.droidconat.data.app.model.Session session : toSave) {
            database.insert(Session.TABLE, Session.createContentValues(dbMapper.fromAppSession(session)));
        }
        transaction.markSuccessful();
    } finally {
        transaction.end();
    }
}
 
Example 14
Source Project: TodoFluxArchitecture   Source File: StorageModule.java    License: Apache License 2.0 5 votes vote down vote up
/**
 * 提供BriteDatabase注入.
 *
 * @return BriteDatabase
 */
@Provides
BriteDatabase briteDatabase() {
    SqlBrite sqlBrite = SqlBrite.create(message -> LogTool.debug("Database", message));

    SQLiteOpenHelper sqLiteOpenHelper = new DatabaseOpenHelper(application, userId);
    BriteDatabase db = sqlBrite.wrapDatabaseHelper(sqLiteOpenHelper);
    db.setLoggingEnabled(BuildConfig.DEBUG);
    return db;
}
 
Example 15
Source Project: TodoFluxArchitecture   Source File: TodoActionCreator.java    License: Apache License 2.0 5 votes vote down vote up
/**
 * 构造TodoActionCreator.
 *
 * @param actionDispatcher actionDispatcher
 * @param briteDatabase    database
 */
@Inject
public TodoActionCreator(@Named("actionDispatcher") Dispatcher actionDispatcher, BriteDatabase briteDatabase) {
    LogTool.debug("构造 TodoActionCreator");
    this.actionDispatcher = actionDispatcher;
    this.database = briteDatabase;
}
 
Example 16
Source Project: android   Source File: ElifutDataStore.java    License: Apache License 2.0 5 votes vote down vote up
public void create(List<? extends Persistable> persistables) {
  BriteDatabase.Transaction transaction = db.newTransaction();
  try {
    for (Persistable persistable : persistables) {
      create(persistable);
    }
    transaction.markSuccessful();
  } finally {
    transaction.end();
  }
}
 
Example 17
Source Project: StatusSaver-for-Whatsapp   Source File: DatabaseHelper.java    License: Apache License 2.0 4 votes vote down vote up
public BriteDatabase getBriteDb() {
    return mDb;
}
 
Example 18
Source Project: droidconat-2016   Source File: SpeakersDao.java    License: Apache License 2.0 4 votes vote down vote up
@Inject
public SpeakersDao(BriteDatabase database, DbMapper dbMapper, AppMapper appMapper) {
    this.database = database;
    this.dbMapper = dbMapper;
    this.appMapper = appMapper;
}
 
Example 19
Source Project: droidconat-2016   Source File: DatabaseModule.java    License: Apache License 2.0 4 votes vote down vote up
@Provides @Singleton BriteDatabase provideBriteDatabase(SqlBrite sqlBrite, SQLiteOpenHelper helper) {
    return sqlBrite.wrapDatabaseHelper(helper, Schedulers.immediate());
}
 
Example 20
Source Project: FriendlyDemo   Source File: ApplicationModule.java    License: Apache License 2.0 4 votes vote down vote up
@Provides
@NonNull
@Singleton
public BriteDatabase provideDatabase(SqlBrite sqlBrite, Database helper) {
    return sqlBrite.wrapDatabaseHelper(helper, Schedulers.io());
}
 
Example 21
Source Project: ribot-app-android   Source File: DatabaseHelper.java    License: Apache License 2.0 4 votes vote down vote up
public BriteDatabase getBriteDb() {
    return mDb;
}
 
Example 22
Source Project: TodoFluxArchitecture   Source File: StorageComponent.java    License: Apache License 2.0 2 votes vote down vote up
/**
 * 获得数据库.
 *
 * @return BriteDatabase
 */
BriteDatabase briteDatabase();
 
Example 23
Source Project: sqlbrite-dao   Source File: Dao.java    License: Apache License 2.0 2 votes vote down vote up
/**
 * Set the {@link SQLiteOpenHelper}. This method will be called from the
 * {@link DaoManager} to inject the {@link SQLiteOpenHelper}.
 * <p>
 * You should not call this method directly. Let the {@link DaoManager} do
 * this, because it knows the right moment to invoke this method.
 * </p>
 *
 * @param db the database
 */
void setSqlBriteDb(BriteDatabase db) {
  this.db = db;
}
 
Example 24
Source Project: sqlbrite-dao   Source File: DaoManager.java    License: Apache License 2.0 2 votes vote down vote up
/**
 * Get the underlying {@link BriteDatabase} instance
 *
 * @return The database
 */
public BriteDatabase getDatabase() {
  return db;
}