From 3fa1c902c1049f56b30092cf6de28c4d358cf434 Mon Sep 17 00:00:00 2001 From: Kyren223 Date: Fri, 29 Nov 2024 23:24:06 +0200 Subject: Implemented network positions per user on client and server --- internal/server/server.go | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) (limited to 'internal/server/server.go') diff --git a/internal/server/server.go b/internal/server/server.go index 474be10..2ca0c2a 100644 --- a/internal/server/server.go +++ b/internal/server/server.go @@ -311,16 +311,27 @@ func processRequest(ctx context.Context, sess *session.Session, request packet.P // TODO: add a way to measure the time each request/response took and log it // Potentially even separate time for code vs DB operations + var response packet.Payload switch request := request.(type) { case *packet.CreateNetwork: - return timeout(20*time.Millisecond, api.CreateNetwork, ctx, sess, request) + response = timeout(20*time.Millisecond, api.CreateNetwork, ctx, sess, request) + case *packet.SwapUserNetworks: + response = timeout(5*time.Millisecond, api.SwapUserNetworks, ctx, sess, request) + case *packet.SendMessage: - return timeout(20*time.Millisecond, api.SendMessage, ctx, sess, request) + response = timeout(20*time.Millisecond, api.SendMessage, ctx, sess, request) case *packet.RequestMessages: - return timeout(50*time.Millisecond, api.RequestMessages, ctx, sess, request) + response = timeout(50*time.Millisecond, api.RequestMessages, ctx, sess, request) + default: - return &packet.Error{Error: "use of disallowed packet type for request"} + response = &packet.Error{Error: "use of disallowed packet type for request"} } + + if response, ok := response.(*packet.Error); ok { + response.PktType = request.Type() + } + + return response } func timeout[T packet.Payload]( -- cgit v1.3.1