Splitting removal and expiration for sanity
Some checks failed
Build Pogdark API / Build Pogdark API (push) Has been cancelled
Some checks failed
Build Pogdark API / Build Pogdark API (push) Has been cancelled
This commit is contained in:
parent
4fe9e5639e
commit
ac243eef2e
24
main.go
24
main.go
@ -176,8 +176,24 @@ func broadcastAllRecords(s *Server) {
|
||||
}
|
||||
}
|
||||
|
||||
func broadcastRemovedRecords(s *Server, expired string) {
|
||||
var message Message = Message{Id: expired, Name: "", Image: "", Status: "expired", Timestamp: ""}
|
||||
func broadcastRemovedRecords(s *Server, message Message) {
|
||||
var msgJSON, err = json.Marshal(message)
|
||||
if err != nil {
|
||||
log.Println("Error marshalling json:", err)
|
||||
return
|
||||
}
|
||||
fmt.Printf("Broadcasting removal: %s,%s,%s,%s to %d clients\n", message.Id, message.Status, message.Name, message.Timestamp, len(s.clients))
|
||||
|
||||
for client := range s.clients {
|
||||
if err := client.conn.WriteMessage(websocket.TextMessage, msgJSON); err != nil {
|
||||
log.Println("Failed to broadcast update:", err)
|
||||
return
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
func broadcastExpiredRecords(s *Server, removed string) {
|
||||
var message = Message{Id: removed, Name: "", Image: "", Status: "removed", Timestamp: ""}
|
||||
var msgJSON, err = json.Marshal(message)
|
||||
if err != nil {
|
||||
log.Println("Error marshalling json:", err)
|
||||
@ -225,7 +241,7 @@ func (s *Server) listenForExpirationEvents() {
|
||||
expiredID := msg.Payload
|
||||
fmt.Println(expiredID)
|
||||
// Broadcast expiration event
|
||||
broadcastRemovedRecords(s, expiredID)
|
||||
broadcastExpiredRecords(s, expiredID)
|
||||
fmt.Printf("Done Broadcasting Expiration\n")
|
||||
}
|
||||
}
|
||||
@ -319,7 +335,7 @@ func setState(w http.ResponseWriter, r *http.Request, s *Server) {
|
||||
http.Error(w, "Failed to delete key from Redis", http.StatusInternalServerError)
|
||||
return
|
||||
}
|
||||
broadcastRemovedRecords(s, message.Id)
|
||||
broadcastRemovedRecords(s, message)
|
||||
w.WriteHeader(http.StatusOK)
|
||||
return
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user