in plugin/protocol/cloudevents/cloudevents.go [182:215]
func buildSimpleMessage(evt *v2.Event) (*grpc.SimpleMessageWrapper, error) {
ct, err := datacodec.Encode(context.TODO(), evt.DataContentType(), evt)
if err != nil {
return nil, err
}
hdr := &pb.RequestHeader{
Env: defaultIfNil("env", evt.Extensions()[grpc.ENV]),
Idc: defaultIfNil("idc", evt.Extensions()[grpc.IDC]),
Ip: defaultIfNil("127.0.0.1", evt.Extensions()[grpc.IP]),
Pid: defaultIfNil("123", evt.Extensions()[grpc.PID]),
Sys: defaultIfNil("sys123", evt.Extensions()[grpc.SYS]),
Username: defaultIfNil("user", evt.Extensions()[grpc.USERNAME]),
Password: defaultIfNil("pass", evt.Extensions()[grpc.PASSWD]),
Language: defaultIfNil("JAVA", evt.Extensions()[grpc.LANGUAGE]),
ProtocolType: defaultIfNil("protocol", evt.Extensions()[grpc.PROTOCOL_TYPE]),
ProtocolDesc: defaultIfNil("protocolDesc", evt.Extensions()[grpc.PROTOCOL_DESC]),
ProtocolVersion: defaultIfNil("1.0", evt.Extensions()[grpc.PROTOCOL_VERSION]),
}
msg := &pb.SimpleMessage{
Header: hdr,
Content: string(ct),
ProducerGroup: defaultIfNil("producerGroup", evt.Extensions()[grpc.PRODUCERGROUP]),
SeqNum: defaultIfNil("", evt.Extensions()[grpc.SEQ_NUM]),
UniqueId: defaultIfNil("", evt.Extensions()[grpc.UNIQUE_ID]),
Topic: evt.Subject(),
Ttl: defaultIfNil("3000", evt.Extensions()[grpc.TTL]),
Properties: map[string]string{grpc.CONTENT_TYPE: evt.DataContentType()},
}
for k, v := range evt.Extensions() {
msg.Properties[k] = defaultIfNil("", v)
}
return &grpc.SimpleMessageWrapper{SimpleMessage: msg}, nil
}