feat(backend): updated message protocol templates
This commit is contained in:
parent
14b0f78abc
commit
50d310ba2b
2 changed files with 18 additions and 10 deletions
|
|
@ -19,7 +19,7 @@ func SkipBytes(reader io.ReadSeeker) error {
|
|||
if err != nil {
|
||||
return err
|
||||
}
|
||||
_, err := reader.Seek(n, io.SeekCurrent);
|
||||
_, err = reader.Seek(int64(n), io.SeekCurrent)
|
||||
return err
|
||||
}
|
||||
|
||||
|
|
@ -29,13 +29,13 @@ func ReadData(reader io.Reader) ([]byte, error) {
|
|||
return nil, err
|
||||
}
|
||||
p := make([]byte, n)
|
||||
_, err := io.ReadFull(reader, p)
|
||||
_, err = io.ReadFull(reader, p)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return p, nil
|
||||
}
|
||||
|
||||
|
||||
func ReadUint(reader io.Reader) (uint64, error) {
|
||||
var x uint64
|
||||
var s uint
|
||||
|
|
|
|||
|
|
@ -6,16 +6,24 @@ import (
|
|||
"io"
|
||||
)
|
||||
|
||||
func ReadMessage(reader io.Reader) (Message, error) {
|
||||
<% $messages.each do |msg| %>
|
||||
func Decode<%= msg.name %>(reader io.Reader) (Message, error) {
|
||||
var err error = nil
|
||||
msg := &<%= msg.name %>{}
|
||||
<%= msg.attributes.map { |attr|
|
||||
" if msg.#{attr.name}, err = Read#{attr.type.to_s.pascal_case}(reader); err != nil {
|
||||
return nil, err
|
||||
}" }.join "\n" %>
|
||||
return msg, err
|
||||
}
|
||||
|
||||
<% end %>
|
||||
|
||||
func ReadMessage(t uint64, reader io.Reader) (Message, error) {
|
||||
switch t {
|
||||
<% $messages.each do |msg| %>
|
||||
case <%= msg.id %>:
|
||||
msg := &<%= msg.name %>{}
|
||||
<%= msg.attributes.map { |attr|
|
||||
" if msg.#{attr.name}, err = Read#{attr.type.to_s.pascal_case}(reader); err != nil {
|
||||
return nil, err
|
||||
}" }.join "\n" %>
|
||||
return msg, nil
|
||||
return Decode<%= msg.name %>(reader)
|
||||
<% end %>
|
||||
}
|
||||
return nil, fmt.Errorf("Unknown message code: %v", t)
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue