From d7a4f25842554c77e3251571b8b129b0add4f8ee Mon Sep 17 00:00:00 2001 From: Chris Rebert Date: Sat, 25 Apr 2015 13:30:55 -0700 Subject: RetryWire => RetryCarefulWire --- src/main/scala/com/getbootstrap/no_carrier/Main.scala | 3 ++- .../scala/com/getbootstrap/no_carrier/github/Credentials.scala | 2 +- src/main/scala/com/getbootstrap/no_carrier/http/SuperWire.scala | 9 ++++----- 3 files changed, 7 insertions(+), 7 deletions(-) (limited to 'src') diff --git a/src/main/scala/com/getbootstrap/no_carrier/Main.scala b/src/main/scala/com/getbootstrap/no_carrier/Main.scala index e804ef3..095ced4 100644 --- a/src/main/scala/com/getbootstrap/no_carrier/Main.scala +++ b/src/main/scala/com/getbootstrap/no_carrier/Main.scala @@ -22,10 +22,11 @@ object Main extends App with StrictLogging { val enabled = false implicit val clock = Clock.systemUTC implicit val userAgent = new UserAgent("NoCarrier/0.1 (https://github.com/twbs/no-carrier)") + val rateLimitThreshold = 10 val arguments = (args.toSeq match { case Seq(username, password, RepositoryId(repoId), NonEmptyStr(label), IntFromStr(PositiveInt(dayCount))) => { Some(Arguments( - Credentials(username = username, password = password).github, + Credentials(username = username, password = password).github(rateLimitThreshold), repoId = repoId, label = label, timeout = java.time.Duration.ofDays(dayCount) diff --git a/src/main/scala/com/getbootstrap/no_carrier/github/Credentials.scala b/src/main/scala/com/getbootstrap/no_carrier/github/Credentials.scala index 1579aa3..01502f0 100644 --- a/src/main/scala/com/getbootstrap/no_carrier/github/Credentials.scala +++ b/src/main/scala/com/getbootstrap/no_carrier/github/Credentials.scala @@ -5,5 +5,5 @@ import com.getbootstrap.no_carrier.http.{UserAgent, SuperWire} case class Credentials(username: String, password: String) { private def basicGithub: Github = new RtGithub(username, password) - def github(implicit userAgent: UserAgent): Github = new RtGithub(basicGithub.entry.through(classOf[SuperWire], userAgent)) + def github(threshold: Int)(implicit userAgent: UserAgent): Github = new RtGithub(basicGithub.entry.through(classOf[SuperWire], userAgent, new Integer(threshold))) } diff --git a/src/main/scala/com/getbootstrap/no_carrier/http/SuperWire.scala b/src/main/scala/com/getbootstrap/no_carrier/http/SuperWire.scala index 28effd7..00ac8ca 100644 --- a/src/main/scala/com/getbootstrap/no_carrier/http/SuperWire.scala +++ b/src/main/scala/com/getbootstrap/no_carrier/http/SuperWire.scala @@ -3,12 +3,11 @@ package com.getbootstrap.no_carrier.http import java.util.{Collection=>JavaCollection} import java.util.Map.{Entry=>MapEntry} import java.io.InputStream -import com.jcabi.http._ -import com.jcabi.http.wire.RetryWire +import com.jcabi.github.wire.RetryCarefulWire +import com.jcabi.http.{Wire,Request,Response} -case class SuperWire(private val wire: Wire, userAgent: UserAgent) extends Wire { - // FIXME: use RetryCarefulWire once it's available - private val wrappedWire = UserAgentWire(wire = new RetryWire(wire), userAgent = userAgent) +case class SuperWire(private val wire: Wire, userAgent: UserAgent, threshold: Int) extends Wire { + private val wrappedWire = UserAgentWire(wire = new RetryCarefulWire(wire, threshold), userAgent = userAgent) @Override def send( -- cgit v1.2.3