-
Notifications
You must be signed in to change notification settings - Fork 0
Builder
Stefania Bezerra da Silva edited this page May 13, 2017
·
1 revision
| Data | Versão | Descrição | Autor |
|---|---|---|---|
| 11/05/2017 | 1.0 | Criação do documento | Stefania Bezerra |
| 11/05/2017 | 1.0 | Inserção do código | Stefania Bezerra |
public class Exam extends Event{
private Float grade;
private String contentExam;
public Exam(Integer eventId, Date dateEvent, Date startTime,
Date endTime, String localEvent, Integer disciplineClassId,
Float grade, String contentExam){
super(eventId, dateEvent, startTime, endTime, localEvent, disciplineClassId);
setGrade(grade);
setContentExam(contentExam);
}
public float getGrade() {
return this.grade;
}
public void setGrade(float grade) {
this.grade = grade;
}
public void setContentExam(String contentExam){
this.contentExam = contentExam;
}
public String getContentExam (){
return this.contentExam;
}
public static class Builder{
private Integer eventId;
private Date dateEvent;
private Date startTime;
private Date endTime;
private String localEvent;
private Integer disciplineClassId;
private Float grade;
private String contentExam;
public Builder setEventId(int eventId){
this.eventId = eventId;
return this;
}
public Builder setDateEvent(Date dateEvent){
this.dateEvent = dateEvent;
return this;
}
public Builder setStartTime(Date startTime){
this.startTime = startTime;
return this;
}
public Builder setEndTime(Date endTime){
this.endTime = endTime;
return this;
}
public Builder setLocalEvent(String localEvent){
this.localEvent = localEvent;
return this;
}
public Builder setDisciplineClassId(int disciplineClassId){
this.disciplineClassId = disciplineClassId;
return this;
}
public Builder setGrade(Float grade){
this.grade = grade;
return this;
}
public Builder setContentExam(String contentExam){
this.contentExam = contentExam;
return this;
}
public Exam createExam(){
return new Exam(eventId, dateEvent, startTime, endTime, localEvent,
disciplineClassId, grade, contentExam);
}
}O padrão chamando a DAO
public class ExamDAO extends GenericDBDAO{
private static final String WHERE_ID_EQUALS = DataBaseHelper.EXAM_ID_COLUMN + " =?";
private DisciplineDAO disciplineDAO;
private DisciplineClassDAO disciplineClassDAO;
public ExamDAO (Context context) {
super(context);
disciplineDAO = new DisciplineDAO(context);
disciplineClassDAO = new DisciplineClassDAO(context);
}
public ArrayList<Exam> getAllExams (Integer disciplineClassId) {
ArrayList<Exam> exams = new ArrayList<>();
String sql = "SELECT * FROM " + DataBaseHelper.EXAM_TABLE +
" WHERE " + DataBaseHelper.EXAM_DISCIPLINECLASSID_COLUMN + " = ?";
Cursor cursor = database.rawQuery(sql, new String[] {disciplineClassId+""});
while(cursor.moveToNext()){
Exam.Builder builder = new Exam.Builder();
Exam exam = builder.setEventId(cursor.getInt(0))
.setDateEvent(new Date(cursor.getLong(2)))
.setStartTime(new Date(cursor.getLong(3)))
.setEndTime(new Date(cursor.getLong(4)))
.setLocalEvent(cursor.getString(5))
.setDisciplineClassId(cursor.getInt(1))
.setGrade(cursor.getFloat(6))
.setContentExam(cursor.getString(7))
.createExam();
exams.add(exam);
}
cursor.close();
return exams;
}
public Exam getExam (Integer examId){
Exam exam = null;
String sql = "SELECT * FROM " + DataBaseHelper.EXAM_TABLE +
" WHERE " + DataBaseHelper.EXAM_ID_COLUMN + " = ?";
Cursor cursor = database.rawQuery(sql, new String[] { examId + "" });
if(cursor.moveToNext()) {
Exam.Builder builder = new Exam.Builder();
exam = builder.setEventId(cursor.getInt(0))
.setDateEvent(new Date(cursor.getLong(2)))
.setStartTime(new Date(cursor.getLong(3)))
.setEndTime(new Date(cursor.getLong(4)))
.setLocalEvent(cursor.getString(5))
.setDisciplineClassId(cursor.getInt(1))
.setGrade(cursor.getFloat(6))
.setContentExam(cursor.getString(7))
.createExam();
}
cursor.close();
return exam;
}
public long saveExam (Exam exam){
ContentValues values = new ContentValues();
values.put(DataBaseHelper.EXAM_DISCIPLINECLASSID_COLUMN, exam.getDisciplineClassId());
values.put(DataBaseHelper.EXAM_DATEEVENT_COLUMN, exam.getDateEvent().toString());
values.put(DataBaseHelper.EXAM_STARTTIME_COLUMN, exam.getDateEvent().toString());
values.put(DataBaseHelper.EXAM_ENDTIME_COLUMN, exam.getEndTime().toString());
values.put(DataBaseHelper.EXAM_LOCALEVENT_COLUMN, exam.getLocalEvent());
values.put(DataBaseHelper.EXAM_GRADE_COLUMN, exam.getGrade());
values.put(DataBaseHelper.EXAM_CONTENT_COLUMN, exam.getContentExam());
return database.insert(DataBaseHelper.EXAM_TABLE, null, values);
}
public long updateExam (Exam exam){
ContentValues values = new ContentValues();
values.put(DataBaseHelper.EXAM_ID_COLUMN, exam.getDisciplineClassId());
values.put(DataBaseHelper.EXAM_DISCIPLINECLASSID_COLUMN, exam.getDisciplineClassId());
values.put(DataBaseHelper.EXAM_DATEEVENT_COLUMN, exam.getDateEvent().toString());
values.put(DataBaseHelper.EXAM_STARTTIME_COLUMN, exam.getDateEvent().toString());
values.put(DataBaseHelper.EXAM_ENDTIME_COLUMN, exam.getEndTime().toString());
values.put(DataBaseHelper.EXAM_LOCALEVENT_COLUMN, exam.getLocalEvent());
values.put(DataBaseHelper.EXAM_GRADE_COLUMN, exam.getGrade());
values.put(DataBaseHelper.EXAM_CONTENT_COLUMN, exam.getContentExam());
long result = database.update(DataBaseHelper.EXAM_TABLE, values,
WHERE_ID_EQUALS,
new String[] { String.valueOf(exam.getEventId())});
Log.d("Update Result:", "=" + result);
return result;
}
public int deleteExam (Exam exam) {
return database.delete(DataBaseHelper.EXAM_TABLE, WHERE_ID_EQUALS,
new String[] { exam.getEventId() + "" });
}
}Processo
Requisitos
Análise e Design
Padrão de Projeto
Gerenciamento do Projeto