changelog shortlog graph tags branches files raw help

Mercurial > core / changeset: service engine

changeset 555: b1e5975c9bbe
parent 554: 7845348eced6
child 556: a46d78266516
author: Richard Westhaver <ellis@rwest.io>
date: Fri, 19 Jul 2024 22:02:26 -0400
files: lisp/lib/net/srv.lisp skelfile
description: service engine
     1.1--- a/lisp/lib/net/srv.lisp	Thu Jul 18 22:09:56 2024 -0400
     1.2+++ b/lisp/lib/net/srv.lisp	Fri Jul 19 22:02:26 2024 -0400
     1.3@@ -125,12 +125,14 @@
     1.4 ;;; Router
     1.5 (defclass router () ())
     1.6 
     1.7-;;; Task Pool
     1.8-;; Automatic Multithreading support for service objects
     1.9-
    1.10+;;; Engine
    1.11+;; Multithreaded runtime for services
    1.12 (define-task-kernel service-task-kernel () ()
    1.13   "Default task kernel for service-based tasks.")
    1.14 
    1.15+(defclass service-engine ()
    1.16+  ((task-pool :type task-pool)))
    1.17+
    1.18 ;; supervisor, worker, task, kernel
    1.19 ;;; Service
    1.20 (defclass service (obj/id:id)
    1.21@@ -139,7 +141,7 @@
    1.22    ;; HACK 2024-07-18: will this only accept class names? are structures classes? (http-request, http-response)
    1.23    (request-class :type symbol)
    1.24    (response-class :type symbol)
    1.25-   (task-pool :type task-pool)
    1.26+   (engine :type service-engine)
    1.27    (read-timeout :type fixnum)
    1.28    (write-timeout :type fixnum)
    1.29    (connection-max :type fixnum)
     2.1--- a/skelfile	Thu Jul 18 22:09:56 2024 -0400
     2.2+++ b/skelfile	Fri Jul 19 22:02:26 2024 -0400
     2.3@@ -45,29 +45,29 @@
     2.4  (%stash () #$mkdir -pv .stash$#)
     2.5  (rdb (%stash) (with-sbcl (:noinform t :quit t)
     2.6                  (ql:quickload :bin/rdb)
     2.7-                 (asdf:make :bin/rdb)
     2.8-                 #0$mv lisp/bin/rdb .stash/$#))
     2.9+                 (asdf:make :bin/rdb))
    2.10+      #$mv lisp/bin/rdb .stash/rdb$#)
    2.11  (skel (%stash) (with-sbcl (:noinform t :quit t)
    2.12                   (ql:quickload :bin/skel)
    2.13-                  (asdf:make :bin/skel)
    2.14-                  #0$mv lisp/bin/skel .stash/$#))
    2.15+                  (asdf:make :bin/skel))
    2.16+       #$mv lisp/bin/skel .stash/skel$#)
    2.17  (skel-gui (%stash) (with-sbcl (:noinform t :quit t)
    2.18                       (push :tools *features*)
    2.19                       (ql:quickload :bin/skel)
    2.20-                      (asdf:make :bin/skel)
    2.21-                      #0$mv lisp/bin/skel .stash/$#))
    2.22+                      (asdf:make :bin/skel))
    2.23+           #$mv lisp/bin/skel .stash/skel$#)
    2.24  (organ (%stash) (with-sbcl (:noinform t :quit t)
    2.25                      (ql:quickload :bin/organ)
    2.26-                     (asdf:make :bin/organ)
    2.27-                   #0$mv lisp/bin/organ .stash/$#))
    2.28+                     (asdf:make :bin/organ))
    2.29+        #$mv lisp/bin/organ .stash/organ$#)
    2.30  (homer (%stash) (with-sbcl (:noinform t :quit t)
    2.31                    (ql:quickload :bin/homer)
    2.32-                   (asdf:make :bin/homer)
    2.33-                   #0$mv lisp/bin/homer .stash/$#))
    2.34+                   (asdf:make :bin/homer))
    2.35+        #$mv lisp/bin/homer .stash/homer$#)
    2.36  (packy (%stash) (with-sbcl (:noinform t :quit t)
    2.37                    (ql:quickload :bin/packy)
    2.38-                   (asdf:make :bin/packy)
    2.39-                   #0$mv lisp/bin/packy .stash/$#))
    2.40+                   (asdf:make :bin/packy))
    2.41+        #$mv lisp/bin/packy .stash/packy$#)
    2.42  (build (rdb skel organ homer packy))
    2.43  (compile () #$./x.lisp compile$#)
    2.44  (std () #$./x.lisp save std$#)