codec: add NewFrame helper

Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
This commit is contained in:
Василий Толстов 2021-11-19 09:22:13 +03:00
parent 55d8a9ee20
commit d29363b78d

View File

@ -5,29 +5,40 @@ type Frame struct {
Data []byte Data []byte
} }
// NewFrame returns new frame with data
func NewFrame(data []byte) *Frame {
return &Frame{Data: data}
}
// MarshalJSON returns frame data
func (m *Frame) MarshalJSON() ([]byte, error) { func (m *Frame) MarshalJSON() ([]byte, error) {
return m.Data, nil return m.Marshal()
} }
// UnmarshalJSON set frame data
func (m *Frame) UnmarshalJSON(data []byte) error { func (m *Frame) UnmarshalJSON(data []byte) error {
m.Data = data return m.Unmarshal(data)
return nil
} }
// ProtoMessage noop func
func (m *Frame) ProtoMessage() {} func (m *Frame) ProtoMessage() {}
// Reset resets frame
func (m *Frame) Reset() { func (m *Frame) Reset() {
*m = Frame{} *m = Frame{}
} }
// String returns frame as string
func (m *Frame) String() string { func (m *Frame) String() string {
return string(m.Data) return string(m.Data)
} }
// Marshal returns frame data
func (m *Frame) Marshal() ([]byte, error) { func (m *Frame) Marshal() ([]byte, error) {
return m.Data, nil return m.Data, nil
} }
// Unmarshal set frame data
func (m *Frame) Unmarshal(data []byte) error { func (m *Frame) Unmarshal(data []byte) error {
m.Data = data m.Data = data
return nil return nil