From 0d1b0f4310505baeaa11d0710c933b845e45d546 Mon Sep 17 00:00:00 2001 From: Henrik Hautakoski Date: Mon, 24 Apr 2023 16:05:27 +0200 Subject: [PATCH] Adding api/message/codec_manager.go to manager message codecs. --- api/message/codec_manager.go | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) create mode 100644 api/message/codec_manager.go diff --git a/api/message/codec_manager.go b/api/message/codec_manager.go new file mode 100644 index 0000000..3104e0d --- /dev/null +++ b/api/message/codec_manager.go @@ -0,0 +1,18 @@ +package message + +import "fmt" + +var registry = map[string]Codec{} + +func RegisterCodec(name string, codec Codec) { + registry[name] = codec +} + +func GetCodec(name string) (Codec, error) { + var err error + codec, ok := registry[name] + if !ok { + err = fmt.Errorf("no codec registered with name '%s'", name) + } + return codec, err +}