Skip to content

Instantly share code, notes, and snippets.

@tomergoldst
Created January 23, 2021 16:32
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save tomergoldst/0079919d387efac9dbdbecbe1bc0a4ca to your computer and use it in GitHub Desktop.
Save tomergoldst/0079919d387efac9dbdbecbe1bc0a4ca to your computer and use it in GitHub Desktop.
fun setTimeToStartOfDay(calendar: Calendar): Calendar {
calendar.set(Calendar.HOUR_OF_DAY, 0)
calendar.set(Calendar.MINUTE, 0)
calendar.set(Calendar.SECOND, 0)
calendar.set(Calendar.MILLISECOND, 0)
return calendar
}
fun setTimeToEndOfDay(calendar: Calendar): Calendar {
calendar.set(Calendar.HOUR_OF_DAY, 23)
calendar.set(Calendar.MINUTE, 59)
calendar.set(Calendar.SECOND, 59)
calendar.set(Calendar.MILLISECOND, 999)
return calendar
}
fun setTimeTo(calendar: Calendar, hourOfDay: Int, minute: Int): Calendar {
calendar.set(Calendar.HOUR_OF_DAY, hourOfDay)
calendar.set(Calendar.MINUTE, minute)
calendar.set(Calendar.SECOND, 0)
calendar.set(Calendar.MILLISECOND, 0)
return calendar
}
fun setDateTo(calendar: Calendar, year: Int, month: Int, dayOfMonth: Int): Calendar {
calendar.set(Calendar.YEAR, year)
calendar.set(Calendar.MONTH, month - 1)
calendar.set(Calendar.DAY_OF_MONTH, dayOfMonth)
return calendar
}
fun zeroSecondsAndMs(calendar: Calendar): Calendar {
calendar.set(Calendar.SECOND, 0)
calendar.set(Calendar.MILLISECOND, 0)
return calendar
}
fun addMinutes(calendar: Calendar, minute: Int) {
calendar.add(Calendar.MINUTE, minute)
}
fun subtractMinutes(calendar: Calendar, minute: Int) {
calendar.add(Calendar.MINUTE, -minute)
}
fun isSameDay(c1: Calendar, c2: Calendar): Boolean {
return c1.get(Calendar.YEAR) == c2.get(Calendar.YEAR) && c1.get(Calendar.DAY_OF_YEAR) == c2.get(Calendar.DAY_OF_YEAR)
}
fun addDays(calendar: Calendar, days: Int) {
calendar.add(Calendar.DAY_OF_MONTH, days)
}
fun subtractDays(calendar: Calendar, days: Int) {
calendar.add(Calendar.DAY_OF_MONTH, -days)
}
fun newCalendarInstance(time: Long): Calendar {
val cal = Calendar.getInstance()
cal.timeInMillis = time
return cal
}
fun newCalendarInstance(date: Date): Calendar {
val cal = Calendar.getInstance()
cal.timeInMillis = date.time
return cal
}
fun newCalendarInstance(year: Int, month: Int, dayOfMonth: Int): Calendar {
val cal = Calendar.getInstance()
setTimeToStartOfDay(cal)
return setDateTo(cal, year, month, dayOfMonth)
}
fun newCalendarInstance(hourOfDay: Int, minute: Int): Calendar {
val cal = Calendar.getInstance()
return setTimeTo(cal, hourOfDay, minute)
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment