diff options
author | Chris Rebert <code@rebertia.com> | 2015-04-14 12:39:33 +0300 |
---|---|---|
committer | Chris Rebert <code@rebertia.com> | 2015-04-14 12:39:33 +0300 |
commit | 6d8dd815d0a40e894310abe56ee82fc72dcd4be6 (patch) | |
tree | ddf9211e75e7ecefae88bfac7ddb64b4729203f9 /src | |
parent | 603cd34bccfc72466820389c8a1d04b13f9f7c39 (diff) |
optimize by applying limit before performing projection
Diffstat (limited to 'src')
-rw-r--r-- | src/main/scala/com/getbootstrap/no_carrier/github/FancyIssue.scala | 4 | ||||
-rw-r--r-- | src/main/scala/com/getbootstrap/no_carrier/github/util/package.scala | 2 |
2 files changed, 3 insertions, 3 deletions
diff --git a/src/main/scala/com/getbootstrap/no_carrier/github/FancyIssue.scala b/src/main/scala/com/getbootstrap/no_carrier/github/FancyIssue.scala index b04cce0..83fbcb3 100644 --- a/src/main/scala/com/getbootstrap/no_carrier/github/FancyIssue.scala +++ b/src/main/scala/com/getbootstrap/no_carrier/github/FancyIssue.scala @@ -8,8 +8,8 @@ import InstantOrdering._ class FancyIssue(val issue: Issue, val label: String, val timeout: Duration)(implicit clock: Clock) { lazy val lastLabelledAt: Instant = issue.lastLabelledWithAt(label).get - lazy val lastCommentedOnAt: Option[Instant] = issue.smartComments.map{ _.createdAt.toInstant }.lastOption - lazy val lastClosedAt: Option[Instant] = issue.smartEvents.filter{ _.isClosed }.map{ _.createdAt.toInstant }.lastOption + lazy val lastCommentedOnAt: Option[Instant] = issue.smartComments.lastOption.map{ _.createdAt.toInstant } + lazy val lastClosedAt: Option[Instant] = issue.smartEvents.filter{ _.isClosed }.lastOption.map{ _.createdAt.toInstant } lazy val hasSubsequentComment: Boolean = lastCommentedOnAt match { case None => false case Some(commentedAt) => lastLabelledAt < commentedAt diff --git a/src/main/scala/com/getbootstrap/no_carrier/github/util/package.scala b/src/main/scala/com/getbootstrap/no_carrier/github/util/package.scala index 1e16d26..3012bf8 100644 --- a/src/main/scala/com/getbootstrap/no_carrier/github/util/package.scala +++ b/src/main/scala/com/getbootstrap/no_carrier/github/util/package.scala @@ -28,7 +28,7 @@ package object util { def lastLabelledWithAt(label: String): Option[Instant] = { val labellings = issue.smartEvents.filter{ event => event.isLabeled && event.label == Some(label) } - labellings.map{ _.createdAt.toInstant }.lastOption + labellings.lastOption.map{ _.createdAt.toInstant } } } |