def invert()

in bijection-core/src/main/scala/com/twitter/bijection/JavaSerializationInjection.scala [50:63]


  def invert(bytes: Array[Byte]) = {
    val bis = new ByteArrayInputStream(bytes)
    val inOpt = Try(new ObjectInputStream(bis))
    try {
      inOpt
        .map { in => klass.cast(in.readObject) }
        .recoverWith(InversionFailure.partialFailure(bytes))
    } catch {
      case t: Throwable => Failure(InversionFailure(bytes, t))
    } finally {
      bis.close
      inOpt.map { _.close }
    }
  }