in riff-raff/app/controllers/api.scala [51:67]
def newKey(length: Int = 32): String = {
val rawData = new Array[Byte](length)
secureRandom.nextBytes(rawData)
rawData.map { byteData =>
val char = byteData & 63
char match {
case lower if lower < 26 => ('a' + lower).toChar
case upper if upper >= 26 && upper < 52 => ('A' + (upper - 26)).toChar
case numeral if numeral >= 52 && numeral < 62 =>
('0' + (numeral - 52)).toChar
case hyphen if hyphen == 62 => '-'
case underscore if underscore == 63 => '_'
case default =>
throw new IllegalStateException("byte value out of expected range")
}
}.mkString
}