2024-07-24 20:37:55 +00:00
|
|
|
package kinds
|
|
|
|
|
|
|
|
import (
|
|
|
|
"context"
|
|
|
|
"fmt"
|
2024-07-27 14:06:34 +00:00
|
|
|
"grain/relay/handlers/response"
|
2024-07-24 20:37:55 +00:00
|
|
|
relay "grain/relay/types"
|
|
|
|
|
|
|
|
"go.mongodb.org/mongo-driver/mongo"
|
2024-07-27 14:06:34 +00:00
|
|
|
"golang.org/x/net/websocket"
|
2024-07-24 20:37:55 +00:00
|
|
|
)
|
|
|
|
|
2024-07-27 14:06:34 +00:00
|
|
|
func HandleRegularKind(ctx context.Context, evt relay.Event, collection *mongo.Collection, ws *websocket.Conn) error {
|
2024-07-24 20:37:55 +00:00
|
|
|
_, err := collection.InsertOne(ctx, evt)
|
|
|
|
if err != nil {
|
2024-07-27 14:06:34 +00:00
|
|
|
response.SendOK(ws, evt.ID, false, "error: could not connect to the database")
|
2024-07-24 20:37:55 +00:00
|
|
|
return fmt.Errorf("error inserting event kind %d into MongoDB: %v", evt.Kind, err)
|
|
|
|
}
|
|
|
|
|
|
|
|
fmt.Printf("Inserted event kind %d into MongoDB: %s\n", evt.Kind, evt.ID)
|
2024-07-27 14:06:34 +00:00
|
|
|
response.SendOK(ws, evt.ID, true, "")
|
2024-07-24 20:37:55 +00:00
|
|
|
return nil
|
2024-07-27 14:06:34 +00:00
|
|
|
}
|