r5233: *** empty log message ***
[cl-modlisp.git] / impl-lispworks.lisp
1 ;;; -*- Mode:Lisp; Syntax:Common-lisp; Package: modlisp; Base:10 -*-
2
3 (in-package #:modlisp)
4
5 (require "comm")
6
7 (defvar *processor*)
8 (let ((*processor* nil))
9   
10   (defun make-socket-server (name function port &key wait (format :text))
11     (setq *processor* function)
12     (values
13      (comm:start-up-server
14       :service port
15       :process-name name
16       :function 'socket-worker)
17      nil))
18
19   (defun socket-worker (socket)
20     (let ((stream (make-instance 'comm:socket-stream :socket socket
21                                  :direction :io
22                                  :element-type 'base-char)))
23       (mp:process-run-function
24      (next-worker-name) '()
25      'apache-command-issuer stream *processor*))))