Skip to content

Commit 7a3b5d6

Browse files
committed
fixup! m2 init
1 parent 34df40d commit 7a3b5d6

File tree

2 files changed

+71
-93
lines changed

2 files changed

+71
-93
lines changed

src/s_exp/mina.clj

Lines changed: 7 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -15,18 +15,6 @@
1515
(WebServerConfig/builder)
1616
options))
1717

18-
;; (clojure.reflect/reflect (WebServerConfig/builder))
19-
20-
;; (import 'io.helidon.config.Config)
21-
22-
;; (clojure.reflect/reflect (io.helidon.config.Config/builder))
23-
24-
;; (let [c (io.helidon.config.Config/create)
25-
;; b (WebServerConfig/builder)
26-
;; p (.buildPrototype (.config b (.get c "server")))]
27-
;; (clojure.reflect/reflect p)
28-
;; (.writeQueueLength p))
29-
3018
(defn start!
3119
"Starts a new server.
3220
@@ -52,13 +40,13 @@
5240
(.stop server))
5341

5442
;; (def r {:status 200})
55-
;; ;; (def h (fn [req]
56-
;; ;; (prn (counted? (:headers req)))
57-
;; ;; r))
58-
;; ;; (def h (fn [_]
59-
;; ;; ;; (prn :aasdf ((:headers _) "accept"))
60-
;; ;; ;; (prn (:headers _))
61-
;; ;; r))
43+
;; (def h (fn [req]
44+
;; (prn (counted? (:headers req)))
45+
;; r))
46+
;; (def h (fn [_]
47+
;; ;; (prn :aasdf ((:headers _) "accept"))
48+
;; ;; (prn (:headers _))
49+
;; r))
6250
;; (def s (start!
6351
;; r
6452
;; {:host "0.0.0.0" :port 8080 :default-socket {:write-queue-length 10240}}))

src/s_exp/mina/options.clj

Lines changed: 64 additions & 74 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,10 @@
11
(ns s-exp.mina.options
22
(:import (io.helidon.common.socket SocketOptions$Builder)
3-
(io.helidon.webserver ;; ListenerConfiguration$Builder
4-
ServerListener
5-
WebServerConfig$Builder)
3+
(io.helidon.common.tls TlsConfig)
4+
(io.helidon.webserver ListenerConfig$Builder
5+
WebServerConfig$Builder)
66
(java.time Duration)))
77

8-
;; (ServerListener/config)
9-
108
(set! *warn-on-reflection* true)
119
(defmulti set-server-option! (fn [_builder k _v _options] k))
1210

@@ -16,80 +14,72 @@
1614
(defmethod set-server-option! :host
1715
[^WebServerConfig$Builder builder _ host _]
1816
(.host builder host))
19-
;; io.helidon.webserver.WebServerConfig$BuilderBaseio.helidon.webserver.WebServerConfig$BuilderBase
17+
2018
(defmethod set-server-option! :port
2119
[^WebServerConfig$Builder builder _ port _]
2220
(.port builder (int port)))
2321

24-
#_(defn- set-connection-options!
25-
[^SocketOptions$Builder socket-options-builder
26-
{:keys [socket-receive-buffer-size socket-send-buffer-size
27-
socket-reuse-address socket-keep-alive tcp-no-delay
28-
read-timeout connect-timeout]}]
29-
(when socket-receive-buffer-size
30-
(.socketReceiveBufferSize socket-options-builder
31-
(int socket-receive-buffer-size)))
32-
33-
(when socket-send-buffer-size
34-
(.socketSendBufferSize socket-options-builder
35-
(int socket-send-buffer-size)))
36-
37-
(when socket-reuse-address
38-
(.socketReuseAddress socket-options-builder
39-
(boolean socket-reuse-address)))
40-
41-
(when socket-keep-alive
42-
(.socketKeepAlive socket-options-builder
43-
(boolean socket-keep-alive)))
44-
(when tcp-no-delay
45-
(.tcpNoDelay socket-options-builder
46-
(boolean tcp-no-delay)))
47-
48-
(when read-timeout
49-
(.readTimeout socket-options-builder
50-
(Duration/ofMillis read-timeout)))
51-
(when connect-timeout
52-
(.connectTimeout socket-options-builder
53-
(Duration/ofMillis connect-timeout))))
54-
55-
#_(defn- set-listener-configuration!
56-
[^ListenerConfiguration$Builder listener-configuration-builder
57-
{:keys [write-queue-length backlog max-payload-size receive-buffer-size
58-
connection-options]}]
59-
(when backlog
60-
(.backlog listener-configuration-builder
61-
(int backlog)))
62-
63-
(when max-payload-size
64-
(.maxPayloadSize listener-configuration-builder
65-
(long max-payload-size)))
66-
67-
(when write-queue-length
68-
(.writeQueueLength listener-configuration-builder
69-
(int write-queue-length)))
70-
71-
(when receive-buffer-size
72-
(.receiveBufferSize listener-configuration-builder
73-
(int receive-buffer-size)))
74-
75-
#_(when (seq connection-options)
76-
(.connectionOptions listener-configuration-builder
77-
(reify java.util.function.Consumer
78-
(accept [_ socket-options-builder]
79-
(set-connection-options! socket-options-builder
80-
connection-options))))))
81-
82-
#_(defmethod set-server-option! :default-socket
83-
[^WebServerConfig$Builder builder _ default-socket _]
84-
(doto builder
85-
(.defaultSocket
86-
(reify java.util.function.Consumer
87-
(accept [_ listener-configuration-builder]
88-
(set-listener-configuration! listener-configuration-builder
89-
default-socket))))))
22+
(defmethod set-server-option! :backlog
23+
[^WebServerConfig$Builder builder _ backlog _]
24+
(.backlog builder (int backlog)))
25+
26+
(defmethod set-server-option! :backlog
27+
[^WebServerConfig$Builder builder _ backlog _]
28+
(.backlog builder (int backlog)))
29+
30+
(defmethod set-server-option! :max-payload-size
31+
[^WebServerConfig$Builder builder _ max-payload-size _]
32+
(.maxPayloadSize builder (long max-payload-size)))
33+
34+
(defmethod set-server-option! :write-queue-length
35+
[^WebServerConfig$Builder builder _ write-queue-length _]
36+
(.writeQueueLength builder (long write-queue-length)))
37+
38+
(defmethod set-server-option! :receive-buffer-size
39+
[^WebServerConfig$Builder builder _ receive-buffer-size _]
40+
(.receiveBufferSize builder (int receive-buffer-size)))
41+
42+
(defn- set-connection-options!
43+
[^SocketOptions$Builder socket-options-builder
44+
{:keys [socket-receive-buffer-size socket-send-buffer-size
45+
socket-reuse-address socket-keep-alive tcp-no-delay
46+
read-timeout connect-timeout]}]
47+
(when socket-receive-buffer-size
48+
(.socketReceiveBufferSize socket-options-builder
49+
(int socket-receive-buffer-size)))
50+
51+
(when socket-send-buffer-size
52+
(.socketSendBufferSize socket-options-builder
53+
(int socket-send-buffer-size)))
54+
55+
(when socket-reuse-address
56+
(.socketReuseAddress socket-options-builder
57+
(boolean socket-reuse-address)))
58+
59+
(when socket-keep-alive
60+
(.socketKeepAlive socket-options-builder
61+
(boolean socket-keep-alive)))
62+
(when tcp-no-delay
63+
(.tcpNoDelay socket-options-builder
64+
(boolean tcp-no-delay)))
65+
66+
(when read-timeout
67+
(.readTimeout socket-options-builder
68+
(Duration/ofMillis read-timeout)))
69+
(when connect-timeout
70+
(.connectTimeout socket-options-builder
71+
(Duration/ofMillis connect-timeout))))
72+
73+
(defmethod set-server-option! :connection-options
74+
[^WebServerConfig$Builder builder _ connection-options _]
75+
(.connectionOptions builder
76+
(reify java.util.function.Consumer
77+
(accept [_ socket-options-builder]
78+
(set-connection-options! socket-options-builder
79+
connection-options)))))
9080

9181
(defmethod set-server-option! :tls
92-
[^WebServerConfig$Builder builder _ tls _]
93-
(doto builder (.tls tls)))
82+
[^WebServerConfig$Builder builder _ ^TlsConfig tls-config _]
83+
(doto builder (.tls tls-config)))
9484

9585

0 commit comments

Comments
 (0)