From 09aa6efc47d7afbec04c44248fa0cd8f2088a4bb Mon Sep 17 00:00:00 2001 From: Barpfotenbaer Date: Mon, 28 Sep 2020 13:50:34 +0200 Subject: [PATCH] GosmContainerBufferAdapter vorbereitet --- .../nhooyrioWebsocketAddons.go | 26 +++++++++++++------ 1 file changed, 18 insertions(+), 8 deletions(-) diff --git a/nhooyrioWebsocketAddons/nhooyrioWebsocketAddons.go b/nhooyrioWebsocketAddons/nhooyrioWebsocketAddons.go index c194be0..c39da08 100755 --- a/nhooyrioWebsocketAddons/nhooyrioWebsocketAddons.go +++ b/nhooyrioWebsocketAddons/nhooyrioWebsocketAddons.go @@ -8,23 +8,33 @@ import ( "nhooyr.io/websocket/wsjson" ) -type GosmContainerType struct { +type GosmContainerSection struct { TagID string `json:"tagid"` Attribute string `json:"attribute"` // might left empty Content string `json:"content"` } -type GosmContainer []GosmContainerType +type GosmContainer []GosmContainerSection -func (r *GosmContainer) Gosm2Buffer() (buffer GosmBuffer, err error) { - buffer, err = json.Marshal(*r) - return +type GosmBuffer []byte + +type GosmContainerAdapter interface { + revalue(...interface{}) (interface{}, error) + Convert() (GosmBuffer, error) } -type GosmBuffer []byte +type GosmBufferAdapter interface { + revalue(...interface{}) (interface{}, error) + Convert() (GosmContainer, error) +} + +func (r GosmContainer) Convert() (buffer GosmBuffer, err error) { + buffer, err = json.Marshal(r) + return +} -func (r *GosmBuffer) Buffer2Gosm() (gosm GosmContainer, err error) { - err = json.Unmarshal(*r, &gosm) +func (r GosmBuffer) Convert() (gosm GosmContainer, err error) { + err = json.Unmarshal(r, &gosm) return }