1 package club.wpia.gigi.util;
3 import java.util.Calendar;
5 import java.util.GregorianCalendar;
6 import java.util.TimeZone;
8 public class CalendarUtil {
10 public static boolean isDateValid(int year, int month, int day) {
12 Calendar c = GregorianCalendar.getInstance();
13 c.set(year, month - 1, day);
14 return c.get(Calendar.YEAR) == year && c.get(Calendar.MONTH) == month - 1 && c.get(Calendar.DATE) == day;
22 public static boolean isDateValid(String date) {
23 int year = Integer.parseInt(date.substring(0, 4));
24 int month = Integer.parseInt(date.substring(4, 6));
25 int day = Integer.parseInt(date.substring(6, 8));
26 return isDateValid(year, month, day);
29 public static boolean isOfAge(DayDate dob, int age) {
30 return isYearsInFuture(dob.start(), age);
33 public static boolean isYearsInFuture(Date dt, int age) {
34 Calendar c = Calendar.getInstance();
36 c.add(Calendar.YEAR, age);
38 return System.currentTimeMillis() >= c.getTime().getTime();
41 public static DayDate getDateFromComponents(int year, int month, int day) {
42 Calendar cal = Calendar.getInstance();
43 cal.setTimeZone(TimeZone.getTimeZone("UTC"));
44 cal.setTimeInMillis(0);
45 cal.set(year, month - 1, day, 0, 0, 0);
46 Date dob = cal.getTime();
47 return new DayDate(dob.getTime());
50 public static Date timeDifferenceDays(int days) {
51 Calendar c = Calendar.getInstance();
52 c.setTimeInMillis(System.currentTimeMillis());
53 c.add(Calendar.DAY_OF_MONTH, days);