19 lines
536 B
Kotlin
19 lines
536 B
Kotlin
package moe.kageru.kodeshare
|
|
|
|
import moe.kageru.kodeshare.persistence.PasteDao
|
|
import org.joda.time.DateTime
|
|
|
|
data class Paste(val content: String, val created: DateTime, val uri: String) {
|
|
companion object {
|
|
private val alphabet = ('a'..'z') + ('A'..'Z') + ('0'..'9')
|
|
|
|
tailrec fun randomUri(): String {
|
|
val uri = List(6) { alphabet.random() }.joinToString("")
|
|
if (PasteDao.selectByUri(uri) == null) {
|
|
return uri
|
|
}
|
|
return randomUri()
|
|
}
|
|
}
|
|
}
|