def get()

in searchbird/src/main/scala/com/twitter/searchbird/Index.scala [65:82]


  def get(key: String) = try {
    println("GET", key)
    val queries = indices.map { idx =>
      idx.get(key) map { r => Some(r) } handle { case e => None }
    }

    Future.collect(queries) flatMap { results =>
      println("got results", results.mkString(","))
      results.find { _.isDefined } map { _.get } match {
        case Some(v) => Future.value(v)
        case None => Future.exception(new SearchbirdException("No such key"))
      }
    }
  } catch {
    case e => 
      println("got exc", e)
      throw e
  }