Skip to content

Commit

Permalink
Fixed missing import and added convenience method Maintenance.fromTime
Browse files Browse the repository at this point in the history
  • Loading branch information
darkfrog26 committed Mar 22, 2022
1 parent 29ccfd3 commit 5ca1d79
Showing 1 changed file with 21 additions and 0 deletions.
Original file line number Diff line number Diff line change
@@ -1,7 +1,9 @@
package com.outr.arango.maintenance

import cats.effect.IO
import cats.effect.unsafe.implicits.global

import java.util.{Calendar, TimeZone}
import scala.concurrent.duration._

object Maintenance {
Expand Down Expand Up @@ -53,4 +55,23 @@ object Maintenance {

task
}

def fromTime(hour: Int,
minute: Int = 0,
second: Int = 0,
millisecond: Int = 0,
rollToNextDay: Boolean = true,
timeZone: TimeZone = TimeZone.getDefault): FiniteDuration = {
val c = Calendar.getInstance(timeZone)
c.set(Calendar.HOUR_OF_DAY, hour)
c.set(Calendar.MINUTE, minute)
c.set(Calendar.SECOND, second)
c.set(Calendar.MILLISECOND, millisecond)
val l = c.getTimeInMillis - System.currentTimeMillis()
if (l <= 0 && rollToNextDay) {
(l + 24.hours.toMillis).millis
} else {
l.millis
}
}
}

0 comments on commit 5ca1d79

Please sign in to comment.