package probe;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.LinkedList;
import java.util.List;
import java.util.Map;
public class App {
final static SimpleDateFormat sdf = new SimpleDateFormat("dd-MM-yyyy");
public static void main(String[] args)
throws ParseException, IllegalAccessException
{
Student s1 = new Student(31531, sdf.parse("05-6-1994"), "Jose Cocacola", null);
Map<String, Object> s1fields = Binder.getFieldsValues(s1);
StudentDto s2 = Binder.bindTo(StudentDto.class, s1fields);
assert s2.id == s1.id;
assert s2.name.equals(s1.name);
assert s2.birthDate == null;
}
}
class StudentDto {
int id;
String birthDate;
String name;
}
class Grade {
}
class Course {
}
class Student {
final int id;
final Date birthDate;
final List<Grade> grades;
final String name;
final Course course;
public Student(int id, Date birthDate, String name, Course course) {
this.id = id;
this.birthDate = birthDate;
this.name = name;
this.course = course;
this.grades = new LinkedList<>();
}
}