From 9ce4e1f4e92f1168115fce11b80045e2c58c5261 Mon Sep 17 00:00:00 2001 From: liquidz Date: Thu, 22 Feb 2024 00:29:05 +0900 Subject: [PATCH] fix: Fix http server to store its port in session storage --- src/elin/component/server/http.clj | 12 +++++------- src/elin/constant/server.clj | 5 ++++- src/elin/system.clj | 2 +- 3 files changed, 10 insertions(+), 9 deletions(-) diff --git a/src/elin/component/server/http.clj b/src/elin/component/server/http.clj index 87834069..fe5645d8 100644 --- a/src/elin/component/server/http.clj +++ b/src/elin/component/server/http.clj @@ -1,12 +1,11 @@ (ns elin.component.server.http (:require [cheshire.core :as json] - [clojure.core.async :as async] [clojure.java.io :as io] [com.stuartsierra.component :as component] [elin.constant.server :as e.c.server] - [elin.function.vim :as e.f.vim] [elin.protocol.rpc :as e.p.rpc] + [elin.protocol.storage :as e.p.storage] [org.httpkit.server :as h.server]) (:import (java.net @@ -52,14 +51,13 @@ m)) (defrecord HttpServer - [lazy-host handler host port stop-server] + [session-storage handler host port stop-server] component/Lifecycle (start [this] (let [port' (get-empty-port)] - (async/go - (e.f.vim/set-variable! lazy-host - e.c.server/http-server-port-variable - port')) + (e.p.storage/set session-storage + e.c.server/http-server-port-key + port') (assoc this :port port' :stop-server (h.server/run-server diff --git a/src/elin/constant/server.clj b/src/elin/constant/server.clj index 29e69183..fda9e45c 100644 --- a/src/elin/constant/server.clj +++ b/src/elin/constant/server.clj @@ -1,4 +1,7 @@ (ns elin.constant.server) +(def http-server-port-key + ::http-server-port-key) + (def http-server-port-variable - "g:elin_http_server_port") + "elin_http_server_port") diff --git a/src/elin/system.clj b/src/elin/system.clj index f950f1b3..78b0daad 100644 --- a/src/elin/system.clj +++ b/src/elin/system.clj @@ -53,7 +53,7 @@ :http-server (component/using (e.c.s.http/new-http-server config) [:handler - :lazy-host]) + :session-storage]) :server (component/using (e.c.server/new-server config)