added implementation for MemStoreProvider (PolicyStore methods)
[aquarium] / src / main / scala / gr / grnet / aquarium / logic / accounting / dsl / Timeslot.scala
index 8168faf..1948d54 100644 (file)
@@ -73,6 +73,10 @@ final case class Timeslot(from: Date, to: Date) extends Ordered[Timeslot] {
    */
   def contains(t: Timeslot) : Boolean = this.start <= t.start && this.end >= t.end
 
+  def weakIncludes(t: Date) : Boolean = start < t.getTime &&  t.getTime < end
+  def weakOverlaps(t: Timeslot) : Boolean =
+    contains(t) || t.contains(this) || this.weakIncludes(t.from) || this.weakIncludes(t.to)
+
 
   def containsTimeInMillis(millis: Long) =  start <= millis && millis <= end
 
@@ -80,7 +84,7 @@ final case class Timeslot(from: Date, to: Date) extends Ordered[Timeslot] {
   /**
    * Check whether this timeslot contains the provided time instant.
    */
-  private[dsl] def includes(t: Date) : Boolean = start <= t.getTime &&  t.getTime <= end
+  def includes(t: Date) : Boolean = start <= t.getTime &&  t.getTime <= end
 
 
   /**