diff options
Diffstat (limited to 'foo/bar/ComplexDao.java')
-rw-r--r-- | foo/bar/ComplexDao.java | 464 |
1 files changed, 50 insertions, 414 deletions
diff --git a/foo/bar/ComplexDao.java b/foo/bar/ComplexDao.java index dbb54fbc..89859e50 100644 --- a/foo/bar/ComplexDao.java +++ b/foo/bar/ComplexDao.java @@ -1,433 +1,69 @@ -package foo.bar; +/* + * Copyright (C) 2016 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ -import android.arch.lifecycle.ComputableLiveData; -import android.arch.lifecycle.LiveData; -import android.arch.persistence.room.InvalidationTracker.Observer; -import android.arch.persistence.room.RoomDatabase; -import android.arch.persistence.room.RoomSQLiteQuery; -import android.arch.persistence.room.util.StringUtil; -import android.database.Cursor; -import android.support.annotation.NonNull; -import java.lang.Integer; -import java.lang.Override; -import java.lang.String; -import java.lang.StringBuilder; -import java.util.ArrayList; +package foo.bar; +import android.arch.persistence.room.*; import java.util.List; -import java.util.Set; -import javax.annotation.Generated; - -@Generated("android.arch.persistence.room.RoomProcessor") -public class ComplexDao_Impl extends ComplexDao { - private final RoomDatabase __db; - - public ComplexDao_Impl(ComplexDatabase __db) { - super(__db); - this.__db = __db; - } - - @Override - public boolean transactionMethod(int i, String s, long l) { - __db.beginTransaction(); - try { - boolean _result = super.transactionMethod(i, s, l); - __db.setTransactionSuccessful(); - return _result; - } finally { - __db.endTransaction(); - } - } - - @Override - public List<ComplexDao.FullName> fullNames(int id) { - final String _sql = "SELECT name || lastName as fullName, uid as id FROM user where uid = ?"; - final RoomSQLiteQuery _statement = RoomSQLiteQuery.acquire(_sql, 1); - int _argIndex = 1; - _statement.bindLong(_argIndex, id); - final Cursor _cursor = __db.query(_statement); - try { - final int _cursorIndexOfFullName = _cursor.getColumnIndexOrThrow("fullName"); - final int _cursorIndexOfId = _cursor.getColumnIndexOrThrow("id"); - final List<ComplexDao.FullName> _result = new ArrayList<ComplexDao.FullName>(_cursor.getCount()); - while(_cursor.moveToNext()) { - final ComplexDao.FullName _item; - _item = new ComplexDao.FullName(); - _item.fullName = _cursor.getString(_cursorIndexOfFullName); - _item.id = _cursor.getInt(_cursorIndexOfId); - _result.add(_item); - } - return _result; - } finally { - _cursor.close(); - _statement.release(); - } +import android.arch.lifecycle.LiveData; +@Dao +abstract class ComplexDao { + static class FullName { + public int id; + public String fullName; } - @Override - public User getById(int id) { - final String _sql = "SELECT * FROM user where uid = ?"; - final RoomSQLiteQuery _statement = RoomSQLiteQuery.acquire(_sql, 1); - int _argIndex = 1; - _statement.bindLong(_argIndex, id); - final Cursor _cursor = __db.query(_statement); - try { - final int _cursorIndexOfUid = _cursor.getColumnIndexOrThrow("uid"); - final int _cursorIndexOfName = _cursor.getColumnIndexOrThrow("name"); - final int _cursorIndexOfLastName = _cursor.getColumnIndexOrThrow("lastName"); - final int _cursorIndexOfAge = _cursor.getColumnIndexOrThrow("ageColumn"); - final User _result; - if(_cursor.moveToFirst()) { - _result = new User(); - _result.uid = _cursor.getInt(_cursorIndexOfUid); - _result.name = _cursor.getString(_cursorIndexOfName); - final String _tmpLastName; - _tmpLastName = _cursor.getString(_cursorIndexOfLastName); - _result.setLastName(_tmpLastName); - _result.age = _cursor.getInt(_cursorIndexOfAge); - } else { - _result = null; - } - return _result; - } finally { - _cursor.close(); - _statement.release(); - } - } + private final ComplexDatabase mDb; - @Override - public User findByName(String name, String lastName) { - final String _sql = "SELECT * FROM user where name LIKE ? AND lastName LIKE ?"; - final RoomSQLiteQuery _statement = RoomSQLiteQuery.acquire(_sql, 2); - int _argIndex = 1; - if (name == null) { - _statement.bindNull(_argIndex); - } else { - _statement.bindString(_argIndex, name); - } - _argIndex = 2; - if (lastName == null) { - _statement.bindNull(_argIndex); - } else { - _statement.bindString(_argIndex, lastName); - } - final Cursor _cursor = __db.query(_statement); - try { - final int _cursorIndexOfUid = _cursor.getColumnIndexOrThrow("uid"); - final int _cursorIndexOfName = _cursor.getColumnIndexOrThrow("name"); - final int _cursorIndexOfLastName = _cursor.getColumnIndexOrThrow("lastName"); - final int _cursorIndexOfAge = _cursor.getColumnIndexOrThrow("ageColumn"); - final User _result; - if(_cursor.moveToFirst()) { - _result = new User(); - _result.uid = _cursor.getInt(_cursorIndexOfUid); - _result.name = _cursor.getString(_cursorIndexOfName); - final String _tmpLastName; - _tmpLastName = _cursor.getString(_cursorIndexOfLastName); - _result.setLastName(_tmpLastName); - _result.age = _cursor.getInt(_cursorIndexOfAge); - } else { - _result = null; - } - return _result; - } finally { - _cursor.close(); - _statement.release(); - } + public ComplexDao(ComplexDatabase db) { + mDb = db; } - @Override - public List<User> loadAllByIds(int... ids) { - StringBuilder _stringBuilder = StringUtil.newStringBuilder(); - _stringBuilder.append("SELECT * FROM user where uid IN ("); - final int _inputSize = ids.length; - StringUtil.appendPlaceholders(_stringBuilder, _inputSize); - _stringBuilder.append(")"); - final String _sql = _stringBuilder.toString(); - final int _argCount = 0 + _inputSize; - final RoomSQLiteQuery _statement = RoomSQLiteQuery.acquire(_sql, _argCount); - int _argIndex = 1; - for (int _item : ids) { - _statement.bindLong(_argIndex, _item); - _argIndex ++; - } - final Cursor _cursor = __db.query(_statement); - try { - final int _cursorIndexOfUid = _cursor.getColumnIndexOrThrow("uid"); - final int _cursorIndexOfName = _cursor.getColumnIndexOrThrow("name"); - final int _cursorIndexOfLastName = _cursor.getColumnIndexOrThrow("lastName"); - final int _cursorIndexOfAge = _cursor.getColumnIndexOrThrow("ageColumn"); - final List<User> _result = new ArrayList<User>(_cursor.getCount()); - while(_cursor.moveToNext()) { - final User _item_1; - _item_1 = new User(); - _item_1.uid = _cursor.getInt(_cursorIndexOfUid); - _item_1.name = _cursor.getString(_cursorIndexOfName); - final String _tmpLastName; - _tmpLastName = _cursor.getString(_cursorIndexOfLastName); - _item_1.setLastName(_tmpLastName); - _item_1.age = _cursor.getInt(_cursorIndexOfAge); - _result.add(_item_1); - } - return _result; - } finally { - _cursor.close(); - _statement.release(); - } + @Transaction + public boolean transactionMethod(int i, String s, long l) { + return true; } - @Override - int getAge(int id) { - final String _sql = "SELECT ageColumn FROM user where uid = ?"; - final RoomSQLiteQuery _statement = RoomSQLiteQuery.acquire(_sql, 1); - int _argIndex = 1; - _statement.bindLong(_argIndex, id); - final Cursor _cursor = __db.query(_statement); - try { - final int _result; - if(_cursor.moveToFirst()) { - _result = _cursor.getInt(0); - } else { - _result = 0; - } - return _result; - } finally { - _cursor.close(); - _statement.release(); - } - } + @Query("SELECT name || lastName as fullName, uid as id FROM user where uid = :id") + abstract public List<FullName> fullNames(int id); - @Override - public int[] getAllAges(int... ids) { - StringBuilder _stringBuilder = StringUtil.newStringBuilder(); - _stringBuilder.append("SELECT ageColumn FROM user where uid IN("); - final int _inputSize = ids.length; - StringUtil.appendPlaceholders(_stringBuilder, _inputSize); - _stringBuilder.append(")"); - final String _sql = _stringBuilder.toString(); - final int _argCount = 0 + _inputSize; - final RoomSQLiteQuery _statement = RoomSQLiteQuery.acquire(_sql, _argCount); - int _argIndex = 1; - for (int _item : ids) { - _statement.bindLong(_argIndex, _item); - _argIndex ++; - } - final Cursor _cursor = __db.query(_statement); - try { - final int[] _result = new int[_cursor.getCount()]; - int _index = 0; - while(_cursor.moveToNext()) { - final int _item_1; - _item_1 = _cursor.getInt(0); - _result[_index] = _item_1; - _index ++; - } - return _result; - } finally { - _cursor.close(); - _statement.release(); - } - } + @Query("SELECT * FROM user where uid = :id") + abstract public User getById(int id); - @Override - public List<Integer> getAllAgesAsList(List<Integer> ids) { - StringBuilder _stringBuilder = StringUtil.newStringBuilder(); - _stringBuilder.append("SELECT ageColumn FROM user where uid IN("); - final int _inputSize = ids.size(); - StringUtil.appendPlaceholders(_stringBuilder, _inputSize); - _stringBuilder.append(")"); - final String _sql = _stringBuilder.toString(); - final int _argCount = 0 + _inputSize; - final RoomSQLiteQuery _statement = RoomSQLiteQuery.acquire(_sql, _argCount); - int _argIndex = 1; - for (Integer _item : ids) { - if (_item == null) { - _statement.bindNull(_argIndex); - } else { - _statement.bindLong(_argIndex, _item); - } - _argIndex ++; - } - final Cursor _cursor = __db.query(_statement); - try { - final List<Integer> _result = new ArrayList<Integer>(_cursor.getCount()); - while(_cursor.moveToNext()) { - final Integer _item_1; - if (_cursor.isNull(0)) { - _item_1 = null; - } else { - _item_1 = _cursor.getInt(0); - } - _result.add(_item_1); - } - return _result; - } finally { - _cursor.close(); - _statement.release(); - } - } + @Query("SELECT * FROM user where name LIKE :name AND lastName LIKE :lastName") + abstract public User findByName(String name, String lastName); - @Override - public LiveData<User> getByIdLive(int id) { - final String _sql = "SELECT * FROM user where uid = ?"; - final RoomSQLiteQuery _statement = RoomSQLiteQuery.acquire(_sql, 1); - int _argIndex = 1; - _statement.bindLong(_argIndex, id); - return new ComputableLiveData<User>() { - private Observer _observer; + @Query("SELECT * FROM user where uid IN (:ids)") + abstract public List<User> loadAllByIds(int... ids); - @Override - protected User compute() { - if (_observer == null) { - _observer = new Observer("user") { - @Override - public void onInvalidated(@NonNull Set<String> tables) { - invalidate(); - } - }; - __db.getInvalidationTracker().addWeakObserver(_observer); - } - final Cursor _cursor = __db.query(_statement); - try { - final int _cursorIndexOfUid = _cursor.getColumnIndexOrThrow("uid"); - final int _cursorIndexOfName = _cursor.getColumnIndexOrThrow("name"); - final int _cursorIndexOfLastName = _cursor.getColumnIndexOrThrow("lastName"); - final int _cursorIndexOfAge = _cursor.getColumnIndexOrThrow("ageColumn"); - final User _result; - if(_cursor.moveToFirst()) { - _result = new User(); - _result.uid = _cursor.getInt(_cursorIndexOfUid); - _result.name = _cursor.getString(_cursorIndexOfName); - final String _tmpLastName; - _tmpLastName = _cursor.getString(_cursorIndexOfLastName); - _result.setLastName(_tmpLastName); - _result.age = _cursor.getInt(_cursorIndexOfAge); - } else { - _result = null; - } - return _result; - } finally { - _cursor.close(); - } - } + @Query("SELECT ageColumn FROM user where uid = :id") + abstract int getAge(int id); - @Override - protected void finalize() { - _statement.release(); - } - }.getLiveData(); - } + @Query("SELECT ageColumn FROM user where uid IN(:ids)") + abstract public int[] getAllAges(int... ids); - @Override - public LiveData<List<User>> loadUsersByIdsLive(int... ids) { - StringBuilder _stringBuilder = StringUtil.newStringBuilder(); - _stringBuilder.append("SELECT * FROM user where uid IN ("); - final int _inputSize = ids.length; - StringUtil.appendPlaceholders(_stringBuilder, _inputSize); - _stringBuilder.append(")"); - final String _sql = _stringBuilder.toString(); - final int _argCount = 0 + _inputSize; - final RoomSQLiteQuery _statement = RoomSQLiteQuery.acquire(_sql, _argCount); - int _argIndex = 1; - for (int _item : ids) { - _statement.bindLong(_argIndex, _item); - _argIndex ++; - } - return new ComputableLiveData<List<User>>() { - private Observer _observer; + @Query("SELECT ageColumn FROM user where uid IN(:ids)") + abstract public List<Integer> getAllAgesAsList(List<Integer> ids); - @Override - protected List<User> compute() { - if (_observer == null) { - _observer = new Observer("user") { - @Override - public void onInvalidated(@NonNull Set<String> tables) { - invalidate(); - } - }; - __db.getInvalidationTracker().addWeakObserver(_observer); - } - final Cursor _cursor = __db.query(_statement); - try { - final int _cursorIndexOfUid = _cursor.getColumnIndexOrThrow("uid"); - final int _cursorIndexOfName = _cursor.getColumnIndexOrThrow("name"); - final int _cursorIndexOfLastName = _cursor.getColumnIndexOrThrow("lastName"); - final int _cursorIndexOfAge = _cursor.getColumnIndexOrThrow("ageColumn"); - final List<User> _result = new ArrayList<User>(_cursor.getCount()); - while(_cursor.moveToNext()) { - final User _item_1; - _item_1 = new User(); - _item_1.uid = _cursor.getInt(_cursorIndexOfUid); - _item_1.name = _cursor.getString(_cursorIndexOfName); - final String _tmpLastName; - _tmpLastName = _cursor.getString(_cursorIndexOfLastName); - _item_1.setLastName(_tmpLastName); - _item_1.age = _cursor.getInt(_cursorIndexOfAge); - _result.add(_item_1); - } - return _result; - } finally { - _cursor.close(); - } - } + @Query("SELECT * FROM user where uid = :id") + abstract public LiveData<User> getByIdLive(int id); - @Override - protected void finalize() { - _statement.release(); - } - }.getLiveData(); - } + @Query("SELECT * FROM user where uid IN (:ids)") + abstract public LiveData<List<User>> loadUsersByIdsLive(int... ids); - @Override - public List<Integer> getAllAgesAsList(List<Integer> ids1, int[] ids2, int... ids3) { - StringBuilder _stringBuilder = StringUtil.newStringBuilder(); - _stringBuilder.append("SELECT ageColumn FROM user where uid IN("); - final int _inputSize = ids1.size(); - StringUtil.appendPlaceholders(_stringBuilder, _inputSize); - _stringBuilder.append(") OR uid IN ("); - final int _inputSize_1 = ids2.length; - StringUtil.appendPlaceholders(_stringBuilder, _inputSize_1); - _stringBuilder.append(") OR uid IN ("); - final int _inputSize_2 = ids3.length; - StringUtil.appendPlaceholders(_stringBuilder, _inputSize_2); - _stringBuilder.append(")"); - final String _sql = _stringBuilder.toString(); - final int _argCount = 0 + _inputSize + _inputSize_1 + _inputSize_2; - final RoomSQLiteQuery _statement = RoomSQLiteQuery.acquire(_sql, _argCount); - int _argIndex = 1; - for (Integer _item : ids1) { - if (_item == null) { - _statement.bindNull(_argIndex); - } else { - _statement.bindLong(_argIndex, _item); - } - _argIndex ++; - } - _argIndex = 1 + _inputSize; - for (int _item_1 : ids2) { - _statement.bindLong(_argIndex, _item_1); - _argIndex ++; - } - _argIndex = 1 + _inputSize + _inputSize_1; - for (int _item_2 : ids3) { - _statement.bindLong(_argIndex, _item_2); - _argIndex ++; - } - final Cursor _cursor = __db.query(_statement); - try { - final List<Integer> _result = new ArrayList<Integer>(_cursor.getCount()); - while(_cursor.moveToNext()) { - final Integer _item_3; - if (_cursor.isNull(0)) { - _item_3 = null; - } else { - _item_3 = _cursor.getInt(0); - } - _result.add(_item_3); - } - return _result; - } finally { - _cursor.close(); - _statement.release(); - } - } + @Query("SELECT ageColumn FROM user where uid IN(:ids1) OR uid IN (:ids2) OR uid IN (:ids3)") + abstract public List<Integer> getAllAgesAsList(List<Integer> ids1, + int[] ids2, int... ids3); } |