Sort incoming events by created-time. This might be very inefficient if the number of events in large.

This commit is contained in:
Robert C. Martin 2022-04-08 08:21:30 -05:00
parent 12262b0f79
commit 2addd2e5f7
2 changed files with 13 additions and 2 deletions

View File

@ -84,11 +84,22 @@
:sig sig
:tags (process-tags (get event "tags"))}))
(defn by-event-time [event-map id1 id2]
(let [event1 (get event-map id1)
event2 (get event-map id2)]
(< (get event1 :created-at)
(get event2 :created-at))))
(defn process-text-event [state event]
(let [event (translate-text-event event)
id (:id event)
state (assoc-in state [:application :text-event-map id] event)
state (update-in state [:application :chronological-text-events] conj id)
event-map (get-in state [:application :text-event-map] {})
events (get-in state [:application :chronological-text-events] [])
events (conj events id)
events (sort (partial by-event-time event-map) events)
state (assoc-in state [:application :chronological-text-events] events)
;state (update-in state [:application :chronological-text-events] conj id)
state (w/redraw-widget state [:application :header-window])
]
(process-references state event)))

View File

@ -116,7 +116,7 @@
(defn get-events [events]
(let [conn (connect-to-relay (get relays 0) events)
id "more-speech"
date (make-date "04/01/2022")
date (make-date "01/01/2022")
]
(prn date (format-time date))
(unsubscribe conn id)