1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158
| package gisclace.quizz.adapter.business;
import android.content.ContentValues;
import android.content.Context;
import android.database.Cursor;
import gisclace.quizz.adapter.Course;
import java.util.ArrayList;
import java.util.List;
public class CourseRepository extends Repository<Course> {
public CourseRepository(Context context) {
sqLiteOpenHelper = new CourseOpenHelper(context, null);
}
/**
* Suppression d'un produit
*
* @param id
*/
public void DeleteProduit(int id) {
maBDD.delete(CourseOpenHelper.COURSE_TABLE_NAME,
CourseOpenHelper.COLUMN_ID + "=?",
new String[] { String.valueOf(id) });
}
/**
* R�cup�ration de la liste de tous les produits
*/
@Override
public List<Course> GetAll() {
// R�cup�ration de la liste des courses
Cursor cursor = maBDD.query(CourseOpenHelper.COURSE_TABLE_NAME,
new String[] { CourseOpenHelper.COLUMN_ID,
CourseOpenHelper.COLUMN_PRODUIT,
CourseOpenHelper.COLUMN_QUANTITE,
CourseOpenHelper.COLUMN_ACHETE
}, null, null, null,
null, null);
return ConvertCursorToListObject(cursor);
}
/**
* Retourne un seul produit
*/
@Override
public Course GetById(int id) {
Cursor cursor = maBDD.query(CourseOpenHelper.COURSE_TABLE_NAME,
new String[] { CourseOpenHelper.COLUMN_ID,
CourseOpenHelper.COLUMN_PRODUIT,
CourseOpenHelper.COLUMN_QUANTITE,
CourseOpenHelper.COLUMN_ACHETE
},
CourseOpenHelper.COLUMN_ID + "=?",
new String[] { String.valueOf(id) }, null, null, null);
return ConvertCursorToObject(cursor);
}
/**
* Enregistre en produit dans la base
*/
@Override
public void Save(Course entite) {
ContentValues contentValues = new ContentValues();
contentValues.put(CourseOpenHelper.COLUMN_PRODUIT, entite.getProduit());
contentValues.put(CourseOpenHelper.COLUMN_QUANTITE,
entite.getQuantite());
contentValues.put(CourseOpenHelper.COLUMN_ACHETE, entite.isAchete());
maBDD.insert(CourseOpenHelper.COURSE_TABLE_NAME, null, contentValues);
}
/**
* Met � jour un produit
*/
@Override
public void Update(Course entite) {
ContentValues contentValues = new ContentValues();
contentValues.put(CourseOpenHelper.COLUMN_PRODUIT, entite.getProduit());
contentValues.put(CourseOpenHelper.COLUMN_QUANTITE,
entite.getQuantite());
contentValues.put(CourseOpenHelper.COLUMN_ACHETE, entite.isAchete());
maBDD.update(CourseOpenHelper.COURSE_TABLE_NAME, contentValues,
CourseOpenHelper.COLUMN_ID + "=?",
new String[] { String.valueOf(entite.getId()) });
}
/**
* Supprime un produit
*/
@Override
public void Delete(int id) {
maBDD.delete(CourseOpenHelper.COURSE_TABLE_NAME,
CourseOpenHelper.COLUMN_ID + "=?",
new String[] { String.valueOf(id) });
}
/**
* Converti un curseur en une liste de produits
*/
@Override
public List<Course> ConvertCursorToListObject(Cursor c) {
List<Course> liste = new ArrayList<Course>();
// Si la liste est vide
if (c.getCount() == 0)
return liste;
// position sur le premeir item
c.moveToFirst();
// Pour chaque item
do {
Course course = ConvertCursorToObject(c);
liste.add(course);
} while (c.moveToNext());
// Fermeture du curseur
c.close();
return liste;
}
/**
* M�thode utilis�e par ConvertCursorToObject et ConvertCursorToListObject
*/
@Override
public Course ConvertCursorToObject(Cursor c) {
Course course = new Course(
c.getString(CourseOpenHelper.NUM_COLUMN_PRODUIT),
c.getString(CourseOpenHelper.NUM_COLUMN_QUANTITE));
course.setId(c.getInt(CourseOpenHelper.NUM_COLUMN_ID));
course.setAchete((c.getInt(CourseOpenHelper.NUM_COLUMN_ACHETE) != 0));
return course;
}
/**
* Converti un curseur en un produit
*/
@Override
public Course ConvertCursorToOneObject(Cursor c) {
c.moveToFirst();
Course course = ConvertCursorToObject(c);
c.close();
return course;
}
} |
Partager