Documentation ¶
Index ¶
- func RavenABuilder(messageID procs.MessageID, errID int32, header, request proto.Message, ...) (output any, err error)
- func RavenQBuilder(messageID procs.MessageID, header, request proto.Message) (output any, err error)
- func RavenTestErrID(input any, expected int32) bool
- func RavenTestHeader(input any, expected proto.Message) bool
- func RavenTestMessageID(input any, expected procs.MessageID) bool
- func RavenTestRequest(input any, expected proto.Message) bool
- func RavenTestRespond(input any, expected ...proto.Message) bool
- func RavenTestRespondLength(input any, expected int) bool
- func RavenTestRespondType(input any, expected ...proto.Message) bool
- type RavenAData
- type RavenQData
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func RavenABuilder ¶
func RavenABuilder(messageID procs.MessageID, errID int32, header, request proto.Message, respond ...proto.Message) (output any, err error)
RavenABuilder 建立RavenA訊息
func RavenQBuilder ¶
func RavenQBuilder(messageID procs.MessageID, header, request proto.Message) (output any, err error)
RavenQBuilder 建立RavenQ訊息
func RavenTestErrID ¶
RavenTestErrID 測試錯誤編號是否相符; input必須是msgs.ProtoMsg並且內存msgs.RavenAData, 並且錯誤編號與expected相符才會傳回true, 否則為false
func RavenTestHeader ¶
RavenTestHeader 測試標頭資料是否相符; input必須是msgs.ProtoMsg並且內存msgs.RavenQ或是msgs.RavenAData, 並且標頭資料與expected相符才會傳回true, 否則為false
func RavenTestMessageID ¶
RavenTestMessageID 測試訊息編號是否相符; input必須是msgs.ProtoMsg並且訊息編號與expected相符才會傳回true, 否則為false
func RavenTestRequest ¶
RavenTestRequest 測試要求資料是否相符; input必須是msgs.ProtoMsg並且內存msgs.RavenQ或是msgs.RavenAData, 並且要求資料與expected相符才會傳回true, 否則為false
func RavenTestRespond ¶
RavenTestRespond 測試回應列表資料是否相符; input必須是msgs.ProtoMsg並且內存msgs.RavenAData, 並且expected列表的每一項元素都有與之相符的回應資料才會傳回true, 否則為false; 但是這並不代表expected列表與回應列表完全一致, 例如有只出現於回應列表, 但不在expected列表中的資料, 就無法通過此函式檢測出來
func RavenTestRespondLength ¶
RavenTestRespondLength 測試回應列表長度是否相符; input必須是msgs.ProtoMsg並且內存msgs.RavenAData, 並且回應列表長度必須相符才會傳回true, 否則為false
Types ¶
type RavenAData ¶
type RavenAData[H, Q any] struct { MessageID procs.MessageID // 訊息編號 ErrID int32 // 錯誤編號 Header *H // 標頭資料 Request *Q // 要求資料 Respond []proto.Message // 回應列表 }
RavenAData RavenA資料
func RavenAParser ¶
func RavenAParser[H, Q any](input any) (output *RavenAData[H, Q], err error)
RavenAParser 解析RavenA訊息
func (*RavenAData[H, Q]) GetRespond ¶
func (this *RavenAData[H, Q]) GetRespond(type_ proto.Message) proto.Message
GetRespond 取得回應列表中首個符合指定類型的資料
func (*RavenAData[H, Q]) GetRespondAt ¶
func (this *RavenAData[H, Q]) GetRespondAt(index int) proto.Message
GetRespondAt 取得回應列表中指定位置的資料
type RavenQData ¶
type RavenQData[H, Q any] struct { MessageID procs.MessageID // 訊息編號 Header *H // 標頭資料 Request *Q // 要求資料 }
RavenQData RavenQ資料
func RavenQParser ¶
func RavenQParser[H, Q any](input any) (output *RavenQData[H, Q], err error)
RavenQParser 解析RavenQ訊息