diff --git a/akka-actor/src/main/scala/akka/dispatch/Mailbox.scala b/akka-actor/src/main/scala/akka/dispatch/Mailbox.scala index 46cdf0e5b5..8d9a553ffb 100644 --- a/akka-actor/src/main/scala/akka/dispatch/Mailbox.scala +++ b/akka-actor/src/main/scala/akka/dispatch/Mailbox.scala @@ -13,6 +13,7 @@ import scala.concurrent.util.Duration import scala.annotation.tailrec import scala.util.control.NonFatal import com.typesafe.config.Config +import scala.concurrent.util.FiniteDuration /** * INTERNAL API @@ -514,7 +515,7 @@ case class UnboundedMailbox() extends MailboxType { /** * BoundedMailbox is the default bounded MailboxType used by Akka Actors. */ -case class BoundedMailbox( final val capacity: Int, final val pushTimeOut: Duration) extends MailboxType { +case class BoundedMailbox( final val capacity: Int, final val pushTimeOut: FiniteDuration) extends MailboxType { def this(settings: ActorSystem.Settings, config: Config) = this(config.getInt("mailbox-capacity"), Duration(config.getNanoseconds("mailbox-push-timeout-time"), TimeUnit.NANOSECONDS)) @@ -573,7 +574,7 @@ case class UnboundedDequeBasedMailbox() extends MailboxType { /** * BoundedDequeBasedMailbox is an bounded MailboxType, backed by a Deque. */ -case class BoundedDequeBasedMailbox( final val capacity: Int, final val pushTimeOut: Duration) extends MailboxType { +case class BoundedDequeBasedMailbox( final val capacity: Int, final val pushTimeOut: FiniteDuration) extends MailboxType { def this(settings: ActorSystem.Settings, config: Config) = this(config.getInt("mailbox-capacity"), Duration(config.getNanoseconds("mailbox-push-timeout-time"), TimeUnit.NANOSECONDS)) diff --git a/akka-camel/src/main/scala/akka/camel/Camel.scala b/akka-camel/src/main/scala/akka/camel/Camel.scala index 7981d091bd..258c7ec2ad 100644 --- a/akka-camel/src/main/scala/akka/camel/Camel.scala +++ b/akka-camel/src/main/scala/akka/camel/Camel.scala @@ -10,6 +10,7 @@ import org.apache.camel.{ ProducerTemplate, CamelContext } import com.typesafe.config.Config import scala.concurrent.util.Duration import java.util.concurrent.TimeUnit._ +import scala.concurrent.util.FiniteDuration /** * Camel trait encapsulates the underlying camel machinery. @@ -47,14 +48,14 @@ class CamelSettings private[camel] (config: Config) { /** * Configured setting for how long the actor should wait for activation before it fails. */ - final val activationTimeout: Duration = Duration(config.getMilliseconds("akka.camel.consumer.activation-timeout"), MILLISECONDS) + final val activationTimeout: FiniteDuration = Duration(config.getMilliseconds("akka.camel.consumer.activation-timeout"), MILLISECONDS) /** * Configured setting, when endpoint is out-capable (can produce responses) replyTimeout is the maximum time * the endpoint can take to send the response before the message exchange fails. * This setting is used for out-capable, in-only, manually acknowledged communication. */ - final val replyTimeout: Duration = Duration(config.getMilliseconds("akka.camel.consumer.reply-timeout"), MILLISECONDS) + final val replyTimeout: FiniteDuration = Duration(config.getMilliseconds("akka.camel.consumer.reply-timeout"), MILLISECONDS) /** * Configured setting which determines whether one-way communications between an endpoint and this consumer actor diff --git a/akka-cluster/src/main/scala/akka/cluster/ClusterSettings.scala b/akka-cluster/src/main/scala/akka/cluster/ClusterSettings.scala index 544b48870a..e37d4abc72 100644 --- a/akka-cluster/src/main/scala/akka/cluster/ClusterSettings.scala +++ b/akka-cluster/src/main/scala/akka/cluster/ClusterSettings.scala @@ -11,6 +11,7 @@ import scala.collection.JavaConverters._ import akka.actor.Address import akka.actor.AddressFromURIString import akka.dispatch.Dispatchers +import scala.concurrent.util.FiniteDuration class ClusterSettings(val config: Config, val systemName: String) { import config._ @@ -18,31 +19,31 @@ class ClusterSettings(val config: Config, val systemName: String) { final val FailureDetectorThreshold = getDouble("akka.cluster.failure-detector.threshold") final val FailureDetectorMaxSampleSize = getInt("akka.cluster.failure-detector.max-sample-size") final val FailureDetectorImplementationClass = getString("akka.cluster.failure-detector.implementation-class") - final val FailureDetectorMinStdDeviation: Duration = + final val FailureDetectorMinStdDeviation: FiniteDuration = Duration(getMilliseconds("akka.cluster.failure-detector.min-std-deviation"), MILLISECONDS) - final val FailureDetectorAcceptableHeartbeatPause: Duration = + final val FailureDetectorAcceptableHeartbeatPause: FiniteDuration = Duration(getMilliseconds("akka.cluster.failure-detector.acceptable-heartbeat-pause"), MILLISECONDS) final val SeedNodes: IndexedSeq[Address] = getStringList("akka.cluster.seed-nodes").asScala.map { case AddressFromURIString(addr) ⇒ addr }.toIndexedSeq - final val SeedNodeTimeout: Duration = Duration(getMilliseconds("akka.cluster.seed-node-timeout"), MILLISECONDS) - final val PeriodicTasksInitialDelay: Duration = Duration(getMilliseconds("akka.cluster.periodic-tasks-initial-delay"), MILLISECONDS) - final val GossipInterval: Duration = Duration(getMilliseconds("akka.cluster.gossip-interval"), MILLISECONDS) - final val HeartbeatInterval: Duration = Duration(getMilliseconds("akka.cluster.heartbeat-interval"), MILLISECONDS) - final val LeaderActionsInterval: Duration = Duration(getMilliseconds("akka.cluster.leader-actions-interval"), MILLISECONDS) - final val UnreachableNodesReaperInterval: Duration = Duration(getMilliseconds("akka.cluster.unreachable-nodes-reaper-interval"), MILLISECONDS) - final val PublishStatsInterval: Duration = Duration(getMilliseconds("akka.cluster.publish-stats-interval"), MILLISECONDS) + final val SeedNodeTimeout: FiniteDuration = Duration(getMilliseconds("akka.cluster.seed-node-timeout"), MILLISECONDS) + final val PeriodicTasksInitialDelay: FiniteDuration = Duration(getMilliseconds("akka.cluster.periodic-tasks-initial-delay"), MILLISECONDS) + final val GossipInterval: FiniteDuration = Duration(getMilliseconds("akka.cluster.gossip-interval"), MILLISECONDS) + final val HeartbeatInterval: FiniteDuration = Duration(getMilliseconds("akka.cluster.heartbeat-interval"), MILLISECONDS) + final val LeaderActionsInterval: FiniteDuration = Duration(getMilliseconds("akka.cluster.leader-actions-interval"), MILLISECONDS) + final val UnreachableNodesReaperInterval: FiniteDuration = Duration(getMilliseconds("akka.cluster.unreachable-nodes-reaper-interval"), MILLISECONDS) + final val PublishStatsInterval: FiniteDuration = Duration(getMilliseconds("akka.cluster.publish-stats-interval"), MILLISECONDS) final val AutoJoin: Boolean = getBoolean("akka.cluster.auto-join") final val AutoDown: Boolean = getBoolean("akka.cluster.auto-down") - final val JoinTimeout: Duration = Duration(getMilliseconds("akka.cluster.join-timeout"), MILLISECONDS) + final val JoinTimeout: FiniteDuration = Duration(getMilliseconds("akka.cluster.join-timeout"), MILLISECONDS) final val UseDispatcher: String = getString("akka.cluster.use-dispatcher") match { case "" ⇒ Dispatchers.DefaultDispatcherId case id ⇒ id } final val GossipDifferentViewProbability: Double = getDouble("akka.cluster.gossip-different-view-probability") final val MaxGossipMergeRate: Double = getDouble("akka.cluster.max-gossip-merge-rate") - final val SchedulerTickDuration: Duration = Duration(getMilliseconds("akka.cluster.scheduler.tick-duration"), MILLISECONDS) + final val SchedulerTickDuration: FiniteDuration = Duration(getMilliseconds("akka.cluster.scheduler.tick-duration"), MILLISECONDS) final val SchedulerTicksPerWheel: Int = getInt("akka.cluster.scheduler.ticks-per-wheel") final val SendCircuitBreakerSettings: CircuitBreakerSettings = CircuitBreakerSettings( maxFailures = getInt("akka.cluster.send-circuit-breaker.max-failures"), @@ -50,4 +51,4 @@ class ClusterSettings(val config: Config, val systemName: String) { resetTimeout = Duration(getMilliseconds("akka.cluster.send-circuit-breaker.reset-timeout"), MILLISECONDS)) } -case class CircuitBreakerSettings(maxFailures: Int, callTimeout: Duration, resetTimeout: Duration) +case class CircuitBreakerSettings(maxFailures: Int, callTimeout: FiniteDuration, resetTimeout: FiniteDuration) diff --git a/akka-durable-mailboxes/akka-file-mailbox/src/main/scala/akka/actor/mailbox/FileBasedMailboxSettings.scala b/akka-durable-mailboxes/akka-file-mailbox/src/main/scala/akka/actor/mailbox/FileBasedMailboxSettings.scala index 47dc3d89bd..551a01ed00 100644 --- a/akka-durable-mailboxes/akka-file-mailbox/src/main/scala/akka/actor/mailbox/FileBasedMailboxSettings.scala +++ b/akka-durable-mailboxes/akka-file-mailbox/src/main/scala/akka/actor/mailbox/FileBasedMailboxSettings.scala @@ -7,6 +7,7 @@ import com.typesafe.config.Config import scala.concurrent.util.Duration import java.util.concurrent.TimeUnit.MILLISECONDS import akka.actor.ActorSystem +import scala.concurrent.util.FiniteDuration class FileBasedMailboxSettings(val systemSettings: ActorSystem.Settings, val userConfig: Config) extends DurableMailboxSettings { @@ -20,7 +21,7 @@ class FileBasedMailboxSettings(val systemSettings: ActorSystem.Settings, val use final val MaxItems: Int = getInt("max-items") final val MaxSize: Long = getBytes("max-size") final val MaxItemSize: Long = getBytes("max-item-size") - final val MaxAge: Duration = Duration(getMilliseconds("max-age"), MILLISECONDS) + final val MaxAge: FiniteDuration = Duration(getMilliseconds("max-age"), MILLISECONDS) final val MaxJournalSize: Long = getBytes("max-journal-size") final val MaxMemorySize: Long = getBytes("max-memory-size") final val MaxJournalOverflow: Int = getInt("max-journal-overflow") @@ -29,7 +30,7 @@ class FileBasedMailboxSettings(val systemSettings: ActorSystem.Settings, val use final val KeepJournal: Boolean = getBoolean("keep-journal") final val SyncJournal: Boolean = getBoolean("sync-journal") - final val CircuitBreakerMaxFailures = getInt("circuit-breaker.max-failures") - final val CircuitBreakerCallTimeout = Duration.fromNanos(getNanoseconds("circuit-breaker.call-timeout")) - final val CircuitBreakerResetTimeout = Duration.fromNanos(getNanoseconds("circuit-breaker.reset-timeout")) + final val CircuitBreakerMaxFailures: Int = getInt("circuit-breaker.max-failures") + final val CircuitBreakerCallTimeout: FiniteDuration = Duration.fromNanos(getNanoseconds("circuit-breaker.call-timeout")) + final val CircuitBreakerResetTimeout: FiniteDuration = Duration.fromNanos(getNanoseconds("circuit-breaker.reset-timeout")) } diff --git a/akka-remote/src/main/scala/akka/remote/netty/Settings.scala b/akka-remote/src/main/scala/akka/remote/netty/Settings.scala index 16df3c0c1c..4a874c5283 100644 --- a/akka-remote/src/main/scala/akka/remote/netty/Settings.scala +++ b/akka-remote/src/main/scala/akka/remote/netty/Settings.scala @@ -9,12 +9,13 @@ import java.util.concurrent.TimeUnit._ import java.net.InetAddress import akka.ConfigurationException import scala.collection.JavaConverters.iterableAsScalaIterableConverter +import scala.concurrent.util.FiniteDuration private[akka] class NettySettings(config: Config, val systemName: String) { import config._ - val BackoffTimeout: Duration = Duration(getMilliseconds("backoff-timeout"), MILLISECONDS) + val BackoffTimeout: FiniteDuration = Duration(getMilliseconds("backoff-timeout"), MILLISECONDS) val SecureCookie: Option[String] = getString("secure-cookie") match { case "" ⇒ None @@ -33,11 +34,11 @@ private[akka] class NettySettings(config: Config, val systemName: String) { case dispatcher ⇒ Some(dispatcher) } - val ReconnectionTimeWindow: Duration = Duration(getMilliseconds("reconnection-time-window"), MILLISECONDS) - val ReadTimeout: Duration = Duration(getMilliseconds("read-timeout"), MILLISECONDS) - val WriteTimeout: Duration = Duration(getMilliseconds("write-timeout"), MILLISECONDS) - val AllTimeout: Duration = Duration(getMilliseconds("all-timeout"), MILLISECONDS) - val ReconnectDelay: Duration = Duration(getMilliseconds("reconnect-delay"), MILLISECONDS) + val ReconnectionTimeWindow: FiniteDuration = Duration(getMilliseconds("reconnection-time-window"), MILLISECONDS) + val ReadTimeout: FiniteDuration = Duration(getMilliseconds("read-timeout"), MILLISECONDS) + val WriteTimeout: FiniteDuration = Duration(getMilliseconds("write-timeout"), MILLISECONDS) + val AllTimeout: FiniteDuration = Duration(getMilliseconds("all-timeout"), MILLISECONDS) + val ReconnectDelay: FiniteDuration = Duration(getMilliseconds("reconnect-delay"), MILLISECONDS) val MessageFrameSize: Int = getBytes("message-frame-size").toInt @@ -66,11 +67,11 @@ private[akka] class NettySettings(config: Config, val systemName: String) { @deprecated("WARNING: This should only be used by professionals.", "2.0") val PortSelector: Int = getInt("port") - val ConnectionTimeout: Duration = Duration(getMilliseconds("connection-timeout"), MILLISECONDS) + val ConnectionTimeout: FiniteDuration = Duration(getMilliseconds("connection-timeout"), MILLISECONDS) val Backlog: Int = getInt("backlog") - val ExecutionPoolKeepalive: Duration = Duration(getMilliseconds("execution-pool-keepalive"), MILLISECONDS) + val ExecutionPoolKeepalive: FiniteDuration = Duration(getMilliseconds("execution-pool-keepalive"), MILLISECONDS) val ExecutionPoolSize: Int = getInt("execution-pool-size") match { case sz if sz < 0 ⇒ throw new IllegalArgumentException("akka.remote.netty.execution-pool-size is less than 0") diff --git a/akka-testkit/src/main/scala/akka/testkit/TestKitExtension.scala b/akka-testkit/src/main/scala/akka/testkit/TestKitExtension.scala index 964641cf19..50dc392a09 100644 --- a/akka-testkit/src/main/scala/akka/testkit/TestKitExtension.scala +++ b/akka-testkit/src/main/scala/akka/testkit/TestKitExtension.scala @@ -8,6 +8,7 @@ import scala.concurrent.util.Duration import akka.util.Timeout import java.util.concurrent.TimeUnit.MILLISECONDS import akka.actor.{ ExtensionId, ActorSystem, Extension, ExtendedActorSystem } +import scala.concurrent.util.FiniteDuration object TestKitExtension extends ExtensionId[TestKitSettings] { override def get(system: ActorSystem): TestKitSettings = super.get(system) @@ -19,7 +20,7 @@ class TestKitSettings(val config: Config) extends Extension { import config._ val TestTimeFactor = getDouble("akka.test.timefactor") - val SingleExpectDefaultTimeout = Duration(getMilliseconds("akka.test.single-expect-default"), MILLISECONDS) - val TestEventFilterLeeway = Duration(getMilliseconds("akka.test.filter-leeway"), MILLISECONDS) - val DefaultTimeout = Timeout(Duration(getMilliseconds("akka.test.default-timeout"), MILLISECONDS)) + val SingleExpectDefaultTimeout: FiniteDuration = Duration(getMilliseconds("akka.test.single-expect-default"), MILLISECONDS) + val TestEventFilterLeeway: FiniteDuration = Duration(getMilliseconds("akka.test.filter-leeway"), MILLISECONDS) + val DefaultTimeout: Timeout = Timeout(Duration(getMilliseconds("akka.test.default-timeout"), MILLISECONDS)) } \ No newline at end of file diff --git a/akka-zeromq/src/main/scala/akka/zeromq/ZeroMQExtension.scala b/akka-zeromq/src/main/scala/akka/zeromq/ZeroMQExtension.scala index ed2cc2a596..32a3326076 100644 --- a/akka-zeromq/src/main/scala/akka/zeromq/ZeroMQExtension.scala +++ b/akka-zeromq/src/main/scala/akka/zeromq/ZeroMQExtension.scala @@ -12,6 +12,7 @@ import scala.concurrent.util.Duration import java.util.concurrent.TimeUnit import akka.util.Timeout import org.zeromq.ZMQException +import scala.concurrent.util.FiniteDuration /** * A Model to represent a version of the zeromq library @@ -42,7 +43,7 @@ object ZeroMQExtension extends ExtensionId[ZeroMQExtension] with ExtensionIdProv */ class ZeroMQExtension(system: ActorSystem) extends Extension { - val DefaultPollTimeout: Duration = Duration(system.settings.config.getMilliseconds("akka.zeromq.poll-timeout"), TimeUnit.MILLISECONDS) + val DefaultPollTimeout: FiniteDuration = Duration(system.settings.config.getMilliseconds("akka.zeromq.poll-timeout"), TimeUnit.MILLISECONDS) val NewSocketTimeout: Timeout = Timeout(Duration(system.settings.config.getMilliseconds("akka.zeromq.new-socket-timeout"), TimeUnit.MILLISECONDS)) val pollTimeUnit = if (version.major >= 3) TimeUnit.MILLISECONDS else TimeUnit.MICROSECONDS