def refresh()

in app/config/Switches.scala [63:79]


  def refresh(): Unit = {
    log.debug("Refreshing switches agent")

    try {
      val request = new GetObjectRequest(config.switchBucket, fileName)
      val result = s3Client.getObject(request)
      val source = Source.fromInputStream(result.getObjectContent).mkString
      val statesInS3 = Json.parse(source).as[Map[String, SwitchState]]

      atomicSwitchMap.set(statesInS3)
      result.close()
    }
    catch {
      case e: Exception =>
        log.error(s"Unable to get an updated version of switches.json from S3 ${config.switchBucket} $fileName. The switches map is likely to be stale. ", e)
    }
  }