25 lines
828 B
Kotlin
25 lines
828 B
Kotlin
package commands
|
|
|
|
import models.HumanBeing
|
|
import network.Response
|
|
|
|
/**
|
|
* Базовый интерфейс команды.
|
|
*
|
|
* Теперь execute() возвращает String — результат для отправки клиенту.
|
|
* Зависимость от IOManager полностью убрана из команд.
|
|
*/
|
|
interface Command {
|
|
val name: String
|
|
val description: String
|
|
val type : CommandType
|
|
val args : List<CommandArgType>
|
|
|
|
/**
|
|
* @param args строковые аргументы (UUID и т.п.)
|
|
* @param humanBeing объект из запроса — только для add/update/add_if_max/add_if_min
|
|
* @return строка-результат для клиента
|
|
*/
|
|
fun execute(args: List<String>, humanBeing: HumanBeing? = null): Response
|
|
}
|