package com.example.cuida.data.dao; import android.database.Cursor; import androidx.annotation.NonNull; import androidx.room.EntityDeletionOrUpdateAdapter; import androidx.room.EntityInsertionAdapter; import androidx.room.RoomDatabase; import androidx.room.RoomSQLiteQuery; import androidx.room.SharedSQLiteStatement; import androidx.room.util.CursorUtil; import androidx.room.util.DBUtil; import androidx.sqlite.db.SupportSQLiteStatement; import com.example.cuida.data.model.User; import java.lang.Class; import java.lang.Override; import java.lang.String; import java.lang.SuppressWarnings; import java.util.Collections; import java.util.List; @SuppressWarnings({"unchecked", "deprecation"}) public final class UserDao_Impl implements UserDao { private final RoomDatabase __db; private final EntityInsertionAdapter __insertionAdapterOfUser; private final EntityDeletionOrUpdateAdapter __updateAdapterOfUser; private final SharedSQLiteStatement __preparedStmtOfDeleteAll; public UserDao_Impl(@NonNull final RoomDatabase __db) { this.__db = __db; this.__insertionAdapterOfUser = new EntityInsertionAdapter(__db) { @Override @NonNull protected String createQuery() { return "INSERT OR REPLACE INTO `users` (`uid`,`name`,`email`,`password`,`age`,`utenteNumber`,`profilePictureUri`) VALUES (nullif(?, 0),?,?,?,?,?,?)"; } @Override protected void bind(@NonNull final SupportSQLiteStatement statement, final User entity) { statement.bindLong(1, entity.uid); if (entity.name == null) { statement.bindNull(2); } else { statement.bindString(2, entity.name); } if (entity.email == null) { statement.bindNull(3); } else { statement.bindString(3, entity.email); } if (entity.password == null) { statement.bindNull(4); } else { statement.bindString(4, entity.password); } statement.bindLong(5, entity.age); if (entity.utenteNumber == null) { statement.bindNull(6); } else { statement.bindString(6, entity.utenteNumber); } if (entity.profilePictureUri == null) { statement.bindNull(7); } else { statement.bindString(7, entity.profilePictureUri); } } }; this.__updateAdapterOfUser = new EntityDeletionOrUpdateAdapter(__db) { @Override @NonNull protected String createQuery() { return "UPDATE OR ABORT `users` SET `uid` = ?,`name` = ?,`email` = ?,`password` = ?,`age` = ?,`utenteNumber` = ?,`profilePictureUri` = ? WHERE `uid` = ?"; } @Override protected void bind(@NonNull final SupportSQLiteStatement statement, final User entity) { statement.bindLong(1, entity.uid); if (entity.name == null) { statement.bindNull(2); } else { statement.bindString(2, entity.name); } if (entity.email == null) { statement.bindNull(3); } else { statement.bindString(3, entity.email); } if (entity.password == null) { statement.bindNull(4); } else { statement.bindString(4, entity.password); } statement.bindLong(5, entity.age); if (entity.utenteNumber == null) { statement.bindNull(6); } else { statement.bindString(6, entity.utenteNumber); } if (entity.profilePictureUri == null) { statement.bindNull(7); } else { statement.bindString(7, entity.profilePictureUri); } statement.bindLong(8, entity.uid); } }; this.__preparedStmtOfDeleteAll = new SharedSQLiteStatement(__db) { @Override @NonNull public String createQuery() { final String _query = "delete from users"; return _query; } }; } @Override public void insert(final User user) { __db.assertNotSuspendingTransaction(); __db.beginTransaction(); try { __insertionAdapterOfUser.insert(user); __db.setTransactionSuccessful(); } finally { __db.endTransaction(); } } @Override public void update(final User user) { __db.assertNotSuspendingTransaction(); __db.beginTransaction(); try { __updateAdapterOfUser.handle(user); __db.setTransactionSuccessful(); } finally { __db.endTransaction(); } } @Override public void deleteAll() { __db.assertNotSuspendingTransaction(); final SupportSQLiteStatement _stmt = __preparedStmtOfDeleteAll.acquire(); try { __db.beginTransaction(); try { _stmt.executeUpdateDelete(); __db.setTransactionSuccessful(); } finally { __db.endTransaction(); } } finally { __preparedStmtOfDeleteAll.release(_stmt); } } @Override public User login(final String email, final String password) { final String _sql = "SELECT * FROM users WHERE email = ? AND password = ? LIMIT 1"; final RoomSQLiteQuery _statement = RoomSQLiteQuery.acquire(_sql, 2); int _argIndex = 1; if (email == null) { _statement.bindNull(_argIndex); } else { _statement.bindString(_argIndex, email); } _argIndex = 2; if (password == null) { _statement.bindNull(_argIndex); } else { _statement.bindString(_argIndex, password); } __db.assertNotSuspendingTransaction(); final Cursor _cursor = DBUtil.query(__db, _statement, false, null); try { final int _cursorIndexOfUid = CursorUtil.getColumnIndexOrThrow(_cursor, "uid"); final int _cursorIndexOfName = CursorUtil.getColumnIndexOrThrow(_cursor, "name"); final int _cursorIndexOfEmail = CursorUtil.getColumnIndexOrThrow(_cursor, "email"); final int _cursorIndexOfPassword = CursorUtil.getColumnIndexOrThrow(_cursor, "password"); final int _cursorIndexOfAge = CursorUtil.getColumnIndexOrThrow(_cursor, "age"); final int _cursorIndexOfUtenteNumber = CursorUtil.getColumnIndexOrThrow(_cursor, "utenteNumber"); final int _cursorIndexOfProfilePictureUri = CursorUtil.getColumnIndexOrThrow(_cursor, "profilePictureUri"); final User _result; if (_cursor.moveToFirst()) { final String _tmpName; if (_cursor.isNull(_cursorIndexOfName)) { _tmpName = null; } else { _tmpName = _cursor.getString(_cursorIndexOfName); } final String _tmpEmail; if (_cursor.isNull(_cursorIndexOfEmail)) { _tmpEmail = null; } else { _tmpEmail = _cursor.getString(_cursorIndexOfEmail); } final String _tmpPassword; if (_cursor.isNull(_cursorIndexOfPassword)) { _tmpPassword = null; } else { _tmpPassword = _cursor.getString(_cursorIndexOfPassword); } final int _tmpAge; _tmpAge = _cursor.getInt(_cursorIndexOfAge); final String _tmpUtenteNumber; if (_cursor.isNull(_cursorIndexOfUtenteNumber)) { _tmpUtenteNumber = null; } else { _tmpUtenteNumber = _cursor.getString(_cursorIndexOfUtenteNumber); } _result = new User(_tmpName,_tmpEmail,_tmpPassword,_tmpAge,_tmpUtenteNumber); _result.uid = _cursor.getInt(_cursorIndexOfUid); if (_cursor.isNull(_cursorIndexOfProfilePictureUri)) { _result.profilePictureUri = null; } else { _result.profilePictureUri = _cursor.getString(_cursorIndexOfProfilePictureUri); } } else { _result = null; } return _result; } finally { _cursor.close(); _statement.release(); } } @Override public User checkUser(final String email) { final String _sql = "SELECT * FROM users WHERE email = ? LIMIT 1"; final RoomSQLiteQuery _statement = RoomSQLiteQuery.acquire(_sql, 1); int _argIndex = 1; if (email == null) { _statement.bindNull(_argIndex); } else { _statement.bindString(_argIndex, email); } __db.assertNotSuspendingTransaction(); final Cursor _cursor = DBUtil.query(__db, _statement, false, null); try { final int _cursorIndexOfUid = CursorUtil.getColumnIndexOrThrow(_cursor, "uid"); final int _cursorIndexOfName = CursorUtil.getColumnIndexOrThrow(_cursor, "name"); final int _cursorIndexOfEmail = CursorUtil.getColumnIndexOrThrow(_cursor, "email"); final int _cursorIndexOfPassword = CursorUtil.getColumnIndexOrThrow(_cursor, "password"); final int _cursorIndexOfAge = CursorUtil.getColumnIndexOrThrow(_cursor, "age"); final int _cursorIndexOfUtenteNumber = CursorUtil.getColumnIndexOrThrow(_cursor, "utenteNumber"); final int _cursorIndexOfProfilePictureUri = CursorUtil.getColumnIndexOrThrow(_cursor, "profilePictureUri"); final User _result; if (_cursor.moveToFirst()) { final String _tmpName; if (_cursor.isNull(_cursorIndexOfName)) { _tmpName = null; } else { _tmpName = _cursor.getString(_cursorIndexOfName); } final String _tmpEmail; if (_cursor.isNull(_cursorIndexOfEmail)) { _tmpEmail = null; } else { _tmpEmail = _cursor.getString(_cursorIndexOfEmail); } final String _tmpPassword; if (_cursor.isNull(_cursorIndexOfPassword)) { _tmpPassword = null; } else { _tmpPassword = _cursor.getString(_cursorIndexOfPassword); } final int _tmpAge; _tmpAge = _cursor.getInt(_cursorIndexOfAge); final String _tmpUtenteNumber; if (_cursor.isNull(_cursorIndexOfUtenteNumber)) { _tmpUtenteNumber = null; } else { _tmpUtenteNumber = _cursor.getString(_cursorIndexOfUtenteNumber); } _result = new User(_tmpName,_tmpEmail,_tmpPassword,_tmpAge,_tmpUtenteNumber); _result.uid = _cursor.getInt(_cursorIndexOfUid); if (_cursor.isNull(_cursorIndexOfProfilePictureUri)) { _result.profilePictureUri = null; } else { _result.profilePictureUri = _cursor.getString(_cursorIndexOfProfilePictureUri); } } else { _result = null; } return _result; } finally { _cursor.close(); _statement.release(); } } @NonNull public static List> getRequiredConverters() { return Collections.emptyList(); } }