EncodeMessage encodes the given message to the byte representation needed by the Decode function. Each message's Encode function will often include additional information that the Decode function does not expect, hence it is removed in this function.
(message pgproto3.Message)
| 24 | // Encode function will often include additional information that the Decode function does not expect, hence it is |
| 25 | // removed in this function. |
| 26 | func EncodeMessage(message pgproto3.Message) ([]byte, error) { |
| 27 | switch message := message.(type) { |
| 28 | case *pgproto3.AuthenticationCleartextPassword: |
| 29 | data, err := message.Encode(nil) |
| 30 | return data[5:], err |
| 31 | case *pgproto3.AuthenticationGSS: |
| 32 | data, err := message.Encode(nil) |
| 33 | return data[5:], err |
| 34 | case *pgproto3.AuthenticationGSSContinue: |
| 35 | data, err := message.Encode(nil) |
| 36 | return data[5:], err |
| 37 | case *pgproto3.AuthenticationMD5Password: |
| 38 | data, err := message.Encode(nil) |
| 39 | return data[5:], err |
| 40 | case *pgproto3.AuthenticationOk: |
| 41 | data, err := message.Encode(nil) |
| 42 | return data[5:], err |
| 43 | case *pgproto3.AuthenticationSASL: |
| 44 | data, err := message.Encode(nil) |
| 45 | return data[5:], err |
| 46 | case *pgproto3.AuthenticationSASLContinue: |
| 47 | data, err := message.Encode(nil) |
| 48 | return data[5:], err |
| 49 | case *pgproto3.AuthenticationSASLFinal: |
| 50 | data, err := message.Encode(nil) |
| 51 | return data[5:], err |
| 52 | case *pgproto3.BackendKeyData: |
| 53 | data, err := message.Encode(nil) |
| 54 | return data[5:], err |
| 55 | case *pgproto3.Bind: |
| 56 | data, err := message.Encode(nil) |
| 57 | return data[5:], err |
| 58 | case *pgproto3.BindComplete: |
| 59 | return nil, nil |
| 60 | case *pgproto3.CancelRequest: |
| 61 | data, err := message.Encode(nil) |
| 62 | return data[4:], err |
| 63 | case *pgproto3.Close: |
| 64 | data, err := message.Encode(nil) |
| 65 | return data[5:], err |
| 66 | case *pgproto3.CloseComplete: |
| 67 | return nil, nil |
| 68 | case *pgproto3.CommandComplete: |
| 69 | data, err := message.Encode(nil) |
| 70 | return data[5:], err |
| 71 | case *pgproto3.CopyBothResponse: |
| 72 | data, err := message.Encode(nil) |
| 73 | return data[5:], err |
| 74 | case *pgproto3.CopyData: |
| 75 | data, err := message.Encode(nil) |
| 76 | return data[5:], err |
| 77 | case *pgproto3.CopyDone: |
| 78 | return nil, nil |
| 79 | case *pgproto3.CopyFail: |
| 80 | data, err := message.Encode(nil) |
| 81 | return data[5:], err |
| 82 | case *pgproto3.CopyInResponse: |
| 83 | data, err := message.Encode(nil) |
no test coverage detected