private[this] def intToUtf8()

in finagle-memcached/src/main/scala/com/twitter/finagle/memcached/protocol/text/client/CommandToBuf.scala [32:80]


  private[this] def intToUtf8(i: Int): Buf =
    if (i == 0) ZeroBuf else Buf.Utf8(i.toString)

  def encode(message: Command): Buf = message match {
    case Add(key, flags, expiry, value) =>
      encodeCommandWithData(ADD, key, intToUtf8(flags), intToUtf8(expiry.inSeconds), value)
    case Set(key, flags, expiry, value) =>
      encodeCommandWithData(SET, key, intToUtf8(flags), intToUtf8(expiry.inSeconds), value)
    case Replace(key, flags, expiry, value) =>
      encodeCommandWithData(REPLACE, key, intToUtf8(flags), intToUtf8(expiry.inSeconds), value)
    case Append(key, flags, expiry, value) =>
      encodeCommandWithData(APPEND, key, intToUtf8(flags), intToUtf8(expiry.inSeconds), value)
    case Prepend(key, flags, expiry, value) =>
      encodeCommandWithData(PREPEND, key, intToUtf8(flags), intToUtf8(expiry.inSeconds), value)
    case Cas(key, flags, expiry, value, casUnique) =>
      encodeCommandWithData(
        CAS,
        key,
        intToUtf8(flags),
        intToUtf8(expiry.inSeconds),
        value,
        Some(casUnique)
      )
    case Upsert(key, flags, expiry, value, version) =>
      encodeCommandWithData(
        UPSERT,
        key,
        intToUtf8(flags),
        intToUtf8(expiry.inSeconds),
        value,
        Some(version)
      )
    case Get(keys) =>
      encodeCommand(GET +: keys)
    case Gets(keys) =>
      encodeCommand(GETS +: keys)
    case Getv(keys) =>
      encodeCommand(GETV +: keys)
    case Incr(key, amount) =>
      encodeCommand(Seq(INCR, key, Buf.Utf8(amount.toString)))
    case Decr(key, amount) =>
      encodeCommand(Seq(DECR, key, Buf.Utf8(amount.toString)))
    case Delete(key) =>
      encodeCommand(Seq(DELETE, key))
    case Stats(args) =>
      encodeCommand(STATS +: args)
    case Quit() =>
      encodeCommand(Seq(QUIT))
  }