/** * Save a pista into local database. * * @param pista The pista to be saved. * @return The saved pista or null if something goes wrong. */ public Pista save(Pista pista) { SQLiteDatabase db = dbHelper.getWritableDatabase(); try { if (pista.getUuid() == null) { pista.setUuid(UUID.randomUUID().toString()); pista.setRemote(false); insert(db, pista); } else { update(db, pista); } return getPista(pista.getUuid()); } catch (Exception ex) { Log.e(TAG, "Error saving pista.", ex); } finally { dbHelper.close(db); } return null; }
Pista getPista(Cursor cursor, boolean byColumnAlias) { Pista pista = new Pista(); pista.setUuid( readCursor( cursor, byColumnAlias ? Columns._UUID.getColumnAlias() : Columns._UUID.getColumnName(), String.class)); pista.setNome( readCursor( cursor, byColumnAlias ? Columns._NOME.getColumnAlias() : Columns._NOME.getColumnName(), String.class)); pista.setDescricao( readCursor( cursor, byColumnAlias ? Columns._DESCRICAO.getColumnAlias() : Columns._DESCRICAO.getColumnName(), String.class)); pista.setWebsite( readCursor( cursor, byColumnAlias ? Columns._WEBSITE.getColumnAlias() : Columns._WEBSITE.getColumnName(), String.class)); pista.setFacebook( readCursor( cursor, byColumnAlias ? Columns._FACEBOOK.getColumnAlias() : Columns._FACEBOOK.getColumnName(), String.class)); pista.setVideo( readCursor( cursor, byColumnAlias ? Columns._VIDEO.getColumnAlias() : Columns._VIDEO.getColumnName(), String.class)); pista.setFoto( readCursor( cursor, byColumnAlias ? Columns._FOTO.getColumnAlias() : Columns._FOTO.getColumnName(), String.class)); pista.setFundo( readCursor( cursor, byColumnAlias ? Columns._FUNDO.getColumnAlias() : Columns._FUNDO.getColumnName(), Boolean.class)); pista.setResponsavel( readCursor( cursor, byColumnAlias ? Columns._RESPONSAVEL_UUID.getColumnAlias() : Columns._RESPONSAVEL_UUID.getColumnName(), String.class)); pista.setRemote( readCursor( cursor, byColumnAlias ? Columns._REMOTE.getColumnAlias() : Columns._REMOTE.getColumnName(), Boolean.class)); pista.setChanged( readCursor( cursor, byColumnAlias ? Columns._CHANGED.getColumnAlias() : Columns._CHANGED.getColumnName(), Boolean.class)); return pista; }