此内容没有您所选择的语言版本。
Chapter 45. Protobuf Deserialize Action
Deserialize payload to Protobuf
45.1. Configuration Options
				The following table summarizes the configuration options available for the protobuf-deserialize-action Kamelet:
			
| Property | Name | Description | Type | Default | Example | 
|---|---|---|---|---|---|
| schema * | Schema | The Protobuf schema to use during serialization (as single-line) | string | 
								 | 
Fields marked with an asterisk (*) are mandatory.
45.2. Dependencies
				At runtime, the protobuf-deserialize-action Kamelet relies upon the presence of the following dependencies:
			
- github:openshift-integration.kamelet-catalog:camel-kamelets-utils:kamelet-catalog-1.6-SNAPSHOT
- camel:kamelet
- camel:core
- camel:jackson-protobuf
45.3. Usage
				This section describes how you can use the protobuf-deserialize-action.
			
45.3.1. Knative Action
					You can use the protobuf-deserialize-action Kamelet as an intermediate step in a Knative binding.
				
protobuf-deserialize-action-binding.yaml
45.3.1.1. Prerequisite
Make sure you have "Red Hat Integration - Camel K" installed into the OpenShift cluster you’re connected to.
45.3.1.2. Procedure for using the cluster CLI
- 
								Save the protobuf-deserialize-action-binding.yamlfile to your local drive, and then edit it as needed for your configuration.
- Run the action by using the following command: - oc apply -f protobuf-deserialize-action-binding.yaml - oc apply -f protobuf-deserialize-action-binding.yaml- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
45.3.1.3. Procedure for using the Kamel CLI
Configure and run the action by using the following command:
kamel bind --name protobuf-deserialize-action-binding timer-source?message='{"first":"John","last":"Doe"}' --step json-deserialize-action --step protobuf-serialize-action -p step-1.schema='message Person { required string first = 1; required string last = 2; }' --step protobuf-deserialize-action -p step-2.schema='message Person { required string first = 1; required string last = 2; }' channel:mychannel
kamel bind --name protobuf-deserialize-action-binding timer-source?message='{"first":"John","last":"Doe"}' --step json-deserialize-action --step protobuf-serialize-action -p step-1.schema='message Person { required string first = 1; required string last = 2; }' --step protobuf-deserialize-action -p step-2.schema='message Person { required string first = 1; required string last = 2; }' channel:mychannelThis command creates the KameletBinding in the current namespace on the cluster.
45.3.2. Kafka Action
					You can use the protobuf-deserialize-action Kamelet as an intermediate step in a Kafka binding.
				
protobuf-deserialize-action-binding.yaml
45.3.2.1. Prerequisites
						Ensure that you’ve installed the AMQ Streams operator in your OpenShift cluster and created a topic named my-topic in the current namespace. Make also sure you have "Red Hat Integration - Camel K" installed into the OpenShift cluster you’re connected to.
					
45.3.2.2. Procedure for using the cluster CLI
- 
								Save the protobuf-deserialize-action-binding.yamlfile to your local drive, and then edit it as needed for your configuration.
- Run the action by using the following command: - oc apply -f protobuf-deserialize-action-binding.yaml - oc apply -f protobuf-deserialize-action-binding.yaml- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
45.3.2.3. Procedure for using the Kamel CLI
Configure and run the action by using the following command:
kamel bind --name protobuf-deserialize-action-binding timer-source?message='{"first":"John","last":"Doe"}' --step json-deserialize-action --step protobuf-serialize-action -p step-1.schema='message Person { required string first = 1; required string last = 2; }' --step protobuf-deserialize-action -p step-2.schema='message Person { required string first = 1; required string last = 2; }' kafka.strimzi.io/v1beta1:KafkaTopic:my-topic
kamel bind --name protobuf-deserialize-action-binding timer-source?message='{"first":"John","last":"Doe"}' --step json-deserialize-action --step protobuf-serialize-action -p step-1.schema='message Person { required string first = 1; required string last = 2; }' --step protobuf-deserialize-action -p step-2.schema='message Person { required string first = 1; required string last = 2; }' kafka.strimzi.io/v1beta1:KafkaTopic:my-topicThis command creates the KameletBinding in the current namespace on the cluster.