;;; -*- Mode: Lisp; Syntax: ANSI-Common-Lisp; Base: 10 -*- (declaim (optimize (speed 0) (safety 3) (debug 3))) (in-package :snow) (defclass git-update-service (rest-service) () (:documentation "")) (defun git-update-json () (with-noauth (instance git-update-service) t)) (defclass git-update/view-service (git-update-service) ((form :initarg :form :initform nil :accessor form) (location-p :initform nil)) (:documentation "")) (defun git-update-view-json () (with-noauth (instance git-update/view-service) (setf (form instance) (make-form "git-update-form" nil t `((:label "Update Git Checkouts" :field-type "button" :onclick "on_git_update_view_clicked()")))))) (defclass git-update/results-service (git-update-service) ((stdout :initarg :stdout :initform nil :accessor stdout) (location-p :initform nil)) (:documentation "")) (defun git-update-results-json () (with-noauth (instance git-update/results-service) (cl-fad:with-output-to-temporary-file (f :template "/tmp/snow/temp-%") (update-git (make-instance 'git-update :stdout (pathname f))) (setf (stdout instance) (uiop:native-namestring (pathname f))))))