+(defmethod send-next-line ((c connection))
+ (send-message-one c (locked-queue:dequeue (send-queue c))))
+
+(defmethod handle-prompt ((m play-mode) message)
+ (let* ((c (connection m)))
+ (with-input-from-string (s message)
+ (let* ((minutes (read s)) ;;FIXME DANGEROUS
+ (btus (read s)))
+ (empire-web:prompt (session c)
+ (format nil "[~a,~a]: " minutes btus))))
+ (send-next-line c)))
+
+(defmethod handle-ignore ((m init-mode) message)
+ (declare (ignorable message))
+ t)
+
+(defparameter *line-type-dispatch*
+ (list `(,+C_DATA+ . handle-data)
+ `(,+C_INIT+ . handle-init)
+ `(,+C_EXIT+ . handle-exit)
+ `(,+C_FLUSH+ . handle-flush)
+ `(,+C_BADCMD+ . handle-simple-message)
+ `(,+C_FLASH+ . handle-simple-message)
+ `(,+C_CMDOK+ . handle-ignore)
+ `(,+C_PROMPT+ . handle-prompt)))