265.7. Java DSL
您可以使用 create ProtobufDataFormat 实例并将它传递到 Camel DataFormat marshal 和 unmarshal API。
ProtobufDataFormat format = new ProtobufDataFormat(Person.getDefaultInstance()); from("direct:in").marshal(format); from("direct:back").unmarshal(format).to("mock:reverse");
或者,使用 DSL protobuf ()传递 unmarshal default 实例或默认实例类名称,如下所示。
// You don't need to specify the default instance for protobuf marshaling from("direct:marshal").marshal().protobuf(); from("direct:unmarshalA").unmarshal() .protobuf("org.apache.camel.dataformat.protobuf.generated.AddressBookProtos$Person") .to("mock:reverse"); from("direct:unmarshalB").unmarshal().protobuf(Person.getDefaultInstance()).to("mock:reverse");