<extensionManifest><groupId>org.apache.nifi</groupId><artifactId>nifi-amqp-nar</artifactId><version>2.0.0-M4</version><parentNar><groupId>org.apache.nifi</groupId><artifactId>nifi-standard-services-api-nar</artifactId><version>2.0.0-M4</version></parentNar><systemApiVersion>2.0.0-M4</systemApiVersion><buildInfo><tag>nifi-2.0.0-M4-RC1</tag><branch>UNKNOWN</branch><revision>19c5be0</revision></buildInfo><extensions><extension><name>org.apache.nifi.amqp.processors.ConsumeAMQP</name><type>PROCESSOR</type><description>Consumes AMQP Messages from an AMQP Broker using the AMQP 0.9.1 protocol. Each message that is received from the AMQP Broker will be emitted as its own FlowFile to the 'success' relationship.</description><tags><tag>amqp</tag><tag>rabbit</tag><tag>get</tag><tag>message</tag><tag>receive</tag><tag>consume</tag></tags><properties><property><name>Queue</name><displayName>Queue</displayName><description>The name of the existing AMQP Queue from which messages will be consumed. Usually pre-defined by AMQP administrator. </description><required>true</required><sensitive>false</sensitive><expressionLanguageSupported>false</expressionLanguageSupported><expressionLanguageScope>NONE</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property><property><name>auto.acknowledge</name><displayName>Auto-Acknowledge Messages</displayName><description> If false (Non-Auto-Acknowledge), the messages will be acknowledged by the processor after transferring the FlowFiles to success and committing the NiFi session. Non-Auto-Acknowledge mode provides 'at-least-once' delivery semantics. If true (Auto-Acknowledge), messages that are delivered to the AMQP Client will be auto-acknowledged by the AMQP Broker just after sending them out. This generally will provide better throughput but will also result in messages being lost upon restart/crash of the AMQP Broker, NiFi or the processor. Auto-Acknowledge mode provides 'at-most-once' delivery semantics and it is recommended only if loosing messages is acceptable.</description><defaultValue>false</defaultValue><allowableValues><allowableValue><displayName>true</displayName><value>true</value><description></description></allowableValue><allowableValue><displayName>false</displayName><value>false</value><description></description></allowableValue></allowableValues><required>true</required><sensitive>false</sensitive><expressionLanguageSupported>false</expressionLanguageSupported><expressionLanguageScope>NONE</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property><property><name>batch.size</name><displayName>Batch Size</displayName><description>The maximum number of messages that should be processed in a single session. Once this many messages have been received (or once no more messages are readily available), the messages received will be transferred to the 'success' relationship and the messages will be acknowledged to the AMQP Broker. Setting this value to a larger number could result in better performance, particularly for very small messages, but can also result in more messages being duplicated upon sudden restart of NiFi.</description><defaultValue>10</defaultValue><required>true</required><sensitive>false</sensitive><expressionLanguageSupported>false</expressionLanguageSupported><expressionLanguageScope>NONE</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property><property><name>prefetch.count</name><displayName>Prefetch Count</displayName><description>The maximum number of unacknowledged messages for the consumer. If consumer has this number of unacknowledged messages, AMQP broker will no longer send new messages until consumer acknowledges some of the messages already delivered to it.Allowed values: from 0 to 65535. 0 means no limit</description><defaultValue>0</defaultValue><required>true</required><sensitive>false</sensitive><expressionLanguageSupported>false</expressionLanguageSupported><expressionLanguageScope>NONE</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property><property><name>header.format</name><displayName>Header Output Format</displayName><description>Defines how to output headers from the received message</description><defaultValue>Comma-Separated String</defaultValue><allowableValues><allowableValue><displayName>Comma-Separated String</displayName><value>Comma-Separated String</value><description>Put all headers as a string with the specified separator in the attribute 'amqp$headers'.</description></allowableValue><allowableValue><displayName>JSON String</displayName><value>JSON String</value><description>Format all headers as JSON string and output in the attribute 'amqp$headers'. It will include keys with null value as well.</description></allowableValue><allowableValue><displayName>FlowFile Attributes</displayName><value>FlowFile Attributes</value><description>Put each header as attribute of the flow file with a prefix specified in the properties</description></allowableValue></allowableValues><required>true</required><sensitive>false</sensitive><expressionLanguageSupported>false</expressionLanguageSupported><expressionLanguageScope>NONE</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property><property><name>header.key.prefix</name><displayName>Header Key Prefix</displayName><description>Text to be prefixed to header keys as the are added to the FlowFile attributes. Processor will append '.' to the value of this property</description><defaultValue>consume.amqp</defaultValue><required>true</required><sensitive>false</sensitive><expressionLanguageSupported>false</expressionLanguageSupported><expressionLanguageScope>NONE</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic><dependencies><dependency><propertyName>header.format</propertyName><propertyDisplayName>Header Output Format</propertyDisplayName><dependentValues><dependentValue>FlowFile Attributes</dependentValue></dependentValues></dependency></dependencies></property><property><name>header.separator</name><displayName>Header Separator</displayName><description>The character that is used to separate key-value for header in String. The value must be only one character.</description><defaultValue>,</defaultValue><required>false</required><sensitive>false</sensitive><expressionLanguageSupported>false</expressionLanguageSupported><expressionLanguageScope>NONE</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic><dependencies><dependency><propertyName>header.format</propertyName><propertyDisplayName>Header Output Format</propertyDisplayName><dependentValues><dependentValue>Comma-Separated String</dependentValue></dependentValues></dependency></dependencies></property><property><name>remove.curly.braces</name><displayName>Remove Curly Braces</displayName><description>If true Remove Curly Braces, Curly Braces in the header will be automatically remove.</description><defaultValue>False</defaultValue><allowableValues><allowableValue><displayName>True</displayName><value>True</value><description></description></allowableValue><allowableValue><displayName>False</displayName><value>False</value><description></description></allowableValue></allowableValues><required>false</required><sensitive>false</sensitive><expressionLanguageSupported>false</expressionLanguageSupported><expressionLanguageScope>NONE</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic><dependencies><dependency><propertyName>header.format</propertyName><propertyDisplayName>Header Output Format</propertyDisplayName><dependentValues><dependentValue>Comma-Separated String</dependentValue></dependentValues></dependency></dependencies></property><property><name>Brokers</name><displayName>Brokers</displayName><description>A comma-separated list of known AMQP Brokers in the format &lt;host&gt;:&lt;port&gt; (e.g., localhost:5672). If this is set, Host Name and Port are ignored. Only include hosts from the same AMQP cluster.</description><required>false</required><sensitive>false</sensitive><expressionLanguageSupported>true</expressionLanguageSupported><expressionLanguageScope>ENVIRONMENT</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property><property><name>Host Name</name><displayName>Host Name</displayName><description>Network address of AMQP broker (e.g., localhost). If Brokers is set, then this property is ignored.</description><defaultValue>localhost</defaultValue><required>false</required><sensitive>false</sensitive><expressionLanguageSupported>true</expressionLanguageSupported><expressionLanguageScope>ENVIRONMENT</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property><property><name>Port</name><displayName>Port</displayName><description>Numeric value identifying Port of AMQP broker (e.g., 5671). If Brokers is set, then this property is ignored.</description><defaultValue>5672</defaultValue><required>false</required><sensitive>false</sensitive><expressionLanguageSupported>true</expressionLanguageSupported><expressionLanguageScope>ENVIRONMENT</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property><property><name>Virtual Host</name><displayName>Virtual Host</displayName><description>Virtual Host name which segregates AMQP system for enhanced security.</description><required>false</required><sensitive>false</sensitive><expressionLanguageSupported>true</expressionLanguageSupported><expressionLanguageScope>ENVIRONMENT</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property><property><name>User Name</name><displayName>User Name</displayName><description>User Name used for authentication and authorization.</description><required>false</required><sensitive>false</sensitive><expressionLanguageSupported>true</expressionLanguageSupported><expressionLanguageScope>ENVIRONMENT</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property><property><name>Password</name><displayName>Password</displayName><description>Password used for authentication and authorization.</description><required>false</required><sensitive>true</sensitive><expressionLanguageSupported>false</expressionLanguageSupported><expressionLanguageScope>NONE</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property><property><name>AMQP Version</name><displayName>AMQP Version</displayName><description>AMQP Version. Currently only supports AMQP v0.9.1.</description><defaultValue>0.9.1</defaultValue><allowableValues><allowableValue><displayName>0.9.1</displayName><value>0.9.1</value><description></description></allowableValue></allowableValues><required>true</required><sensitive>false</sensitive><expressionLanguageSupported>false</expressionLanguageSupported><expressionLanguageScope>NONE</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property><property><name>ssl-context-service</name><displayName>SSL Context Service</displayName><description>The SSL Context Service used to provide client certificate information for TLS/SSL connections.</description><controllerServiceDefinition><className>org.apache.nifi.ssl.SSLContextService</className><groupId>org.apache.nifi</groupId><artifactId>nifi-standard-services-api-nar</artifactId><version>2.0.0-M4</version></controllerServiceDefinition><required>false</required><sensitive>false</sensitive><expressionLanguageSupported>false</expressionLanguageSupported><expressionLanguageScope>NONE</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property><property><name>cert-authentication</name><displayName>Use Client Certificate Authentication</displayName><description>Authenticate using the SSL certificate rather than user name/password.</description><defaultValue>false</defaultValue><allowableValues><allowableValue><displayName>true</displayName><value>true</value><description></description></allowableValue><allowableValue><displayName>false</displayName><value>false</value><description></description></allowableValue></allowableValues><required>false</required><sensitive>false</sensitive><expressionLanguageSupported>false</expressionLanguageSupported><expressionLanguageScope>NONE</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property></properties><relationships><relationship><name>success</name><description>All FlowFiles that are received from the AMQP queue are routed to this relationship</description><autoTerminated>false</autoTerminated></relationship></relationships><writesAttributes><writesAttribute><name>amqp$appId</name><description>The App ID field from the AMQP Message</description></writesAttribute><writesAttribute><name>amqp$contentEncoding</name><description>The Content Encoding reported by the AMQP Message</description></writesAttribute><writesAttribute><name>amqp$contentType</name><description>The Content Type reported by the AMQP Message</description></writesAttribute><writesAttribute><name>amqp$headers</name><description>The headers present on the AMQP Message. Added only if processor is configured to output this attribute.</description></writesAttribute><writesAttribute><name>&lt;Header Key Prefix&gt;.&lt;attribute&gt;</name><description>Each message header will be inserted with this attribute name, if processor is configured to output headers as attribute</description></writesAttribute><writesAttribute><name>amqp$deliveryMode</name><description>The numeric indicator for the Message's Delivery Mode</description></writesAttribute><writesAttribute><name>amqp$priority</name><description>The Message priority</description></writesAttribute><writesAttribute><name>amqp$correlationId</name><description>The Message's Correlation ID</description></writesAttribute><writesAttribute><name>amqp$replyTo</name><description>The value of the Message's Reply-To field</description></writesAttribute><writesAttribute><name>amqp$expiration</name><description>The Message Expiration</description></writesAttribute><writesAttribute><name>amqp$messageId</name><description>The unique ID of the Message</description></writesAttribute><writesAttribute><name>amqp$timestamp</name><description>The timestamp of the Message, as the number of milliseconds since epoch</description></writesAttribute><writesAttribute><name>amqp$type</name><description>The type of message</description></writesAttribute><writesAttribute><name>amqp$userId</name><description>The ID of the user</description></writesAttribute><writesAttribute><name>amqp$clusterId</name><description>The ID of the AMQP Cluster</description></writesAttribute><writesAttribute><name>amqp$routingKey</name><description>The routingKey of the AMQP Message</description></writesAttribute><writesAttribute><name>amqp$exchange</name><description>The exchange from which AMQP Message was received</description></writesAttribute></writesAttributes><inputRequirement>INPUT_FORBIDDEN</inputRequirement></extension><extension><name>org.apache.nifi.amqp.processors.PublishAMQP</name><type>PROCESSOR</type><description>Creates an AMQP Message from the contents of a FlowFile and sends the message to an AMQP Exchange. In a typical AMQP exchange model, the message that is sent to the AMQP Exchange will be routed based on the 'Routing Key' to its final destination in the queue (the binding). If due to some misconfiguration the binding between the Exchange, Routing Key and Queue is not set up, the message will have no final destination and will return (i.e., the data will not make it to the queue). If that happens you will see a log in both app-log and bulletin stating to that effect, and the FlowFile will be routed to the 'failure' relationship.</description><tags><tag>amqp</tag><tag>rabbit</tag><tag>put</tag><tag>message</tag><tag>send</tag><tag>publish</tag></tags><properties><property><name>Exchange Name</name><displayName>Exchange Name</displayName><description>The name of the AMQP Exchange the messages will be sent to. Usually provided by the AMQP administrator (e.g., 'amq.direct'). It is an optional property. If kept empty the messages will be sent to a default AMQP exchange.</description><defaultValue></defaultValue><required>true</required><sensitive>false</sensitive><expressionLanguageSupported>true</expressionLanguageSupported><expressionLanguageScope>FLOWFILE_ATTRIBUTES</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property><property><name>Routing Key</name><displayName>Routing Key</displayName><description>The name of the Routing Key that will be used by AMQP to route messages from the exchange to a destination queue(s). Usually provided by the administrator (e.g., 'myKey')In the event when messages are sent to a default exchange this property corresponds to a destination queue name, otherwise a binding from the Exchange to a Queue via Routing Key must be set (usually by the AMQP administrator)</description><required>true</required><sensitive>false</sensitive><expressionLanguageSupported>true</expressionLanguageSupported><expressionLanguageScope>FLOWFILE_ATTRIBUTES</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property><property><name>header.separator</name><displayName>Header Separator</displayName><description>The character that is used to split key-value for headers. The value must only one character. Otherwise you will get an error message</description><defaultValue>,</defaultValue><required>false</required><sensitive>false</sensitive><expressionLanguageSupported>false</expressionLanguageSupported><expressionLanguageScope>NONE</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property><property><name>Brokers</name><displayName>Brokers</displayName><description>A comma-separated list of known AMQP Brokers in the format &lt;host&gt;:&lt;port&gt; (e.g., localhost:5672). If this is set, Host Name and Port are ignored. Only include hosts from the same AMQP cluster.</description><required>false</required><sensitive>false</sensitive><expressionLanguageSupported>true</expressionLanguageSupported><expressionLanguageScope>ENVIRONMENT</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property><property><name>Host Name</name><displayName>Host Name</displayName><description>Network address of AMQP broker (e.g., localhost). If Brokers is set, then this property is ignored.</description><defaultValue>localhost</defaultValue><required>false</required><sensitive>false</sensitive><expressionLanguageSupported>true</expressionLanguageSupported><expressionLanguageScope>ENVIRONMENT</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property><property><name>Port</name><displayName>Port</displayName><description>Numeric value identifying Port of AMQP broker (e.g., 5671). If Brokers is set, then this property is ignored.</description><defaultValue>5672</defaultValue><required>false</required><sensitive>false</sensitive><expressionLanguageSupported>true</expressionLanguageSupported><expressionLanguageScope>ENVIRONMENT</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property><property><name>Virtual Host</name><displayName>Virtual Host</displayName><description>Virtual Host name which segregates AMQP system for enhanced security.</description><required>false</required><sensitive>false</sensitive><expressionLanguageSupported>true</expressionLanguageSupported><expressionLanguageScope>ENVIRONMENT</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property><property><name>User Name</name><displayName>User Name</displayName><description>User Name used for authentication and authorization.</description><required>false</required><sensitive>false</sensitive><expressionLanguageSupported>true</expressionLanguageSupported><expressionLanguageScope>ENVIRONMENT</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property><property><name>Password</name><displayName>Password</displayName><description>Password used for authentication and authorization.</description><required>false</required><sensitive>true</sensitive><expressionLanguageSupported>false</expressionLanguageSupported><expressionLanguageScope>NONE</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property><property><name>AMQP Version</name><displayName>AMQP Version</displayName><description>AMQP Version. Currently only supports AMQP v0.9.1.</description><defaultValue>0.9.1</defaultValue><allowableValues><allowableValue><displayName>0.9.1</displayName><value>0.9.1</value><description></description></allowableValue></allowableValues><required>true</required><sensitive>false</sensitive><expressionLanguageSupported>false</expressionLanguageSupported><expressionLanguageScope>NONE</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property><property><name>ssl-context-service</name><displayName>SSL Context Service</displayName><description>The SSL Context Service used to provide client certificate information for TLS/SSL connections.</description><controllerServiceDefinition><className>org.apache.nifi.ssl.SSLContextService</className><groupId>org.apache.nifi</groupId><artifactId>nifi-standard-services-api-nar</artifactId><version>2.0.0-M4</version></controllerServiceDefinition><required>false</required><sensitive>false</sensitive><expressionLanguageSupported>false</expressionLanguageSupported><expressionLanguageScope>NONE</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property><property><name>cert-authentication</name><displayName>Use Client Certificate Authentication</displayName><description>Authenticate using the SSL certificate rather than user name/password.</description><defaultValue>false</defaultValue><allowableValues><allowableValue><displayName>true</displayName><value>true</value><description></description></allowableValue><allowableValue><displayName>false</displayName><value>false</value><description></description></allowableValue></allowableValues><required>false</required><sensitive>false</sensitive><expressionLanguageSupported>false</expressionLanguageSupported><expressionLanguageScope>NONE</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property></properties><relationships><relationship><name>success</name><description>All FlowFiles that are sent to the AMQP destination are routed to this relationship</description><autoTerminated>false</autoTerminated></relationship><relationship><name>failure</name><description>All FlowFiles that cannot be routed to the AMQP destination are routed to this relationship</description><autoTerminated>false</autoTerminated></relationship></relationships><readsAttributes><readsAttribute><name>amqp$appId</name><description>The App ID field to set on the AMQP Message</description></readsAttribute><readsAttribute><name>amqp$contentEncoding</name><description>The Content Encoding to set on the AMQP Message</description></readsAttribute><readsAttribute><name>amqp$contentType</name><description>The Content Type to set on the AMQP Message</description></readsAttribute><readsAttribute><name>amqp$headers</name><description>The headers to set on the AMQP Message</description></readsAttribute><readsAttribute><name>amqp$deliveryMode</name><description>The numeric indicator for the Message's Delivery Mode</description></readsAttribute><readsAttribute><name>amqp$priority</name><description>The Message priority</description></readsAttribute><readsAttribute><name>amqp$correlationId</name><description>The Message's Correlation ID</description></readsAttribute><readsAttribute><name>amqp$replyTo</name><description>The value of the Message's Reply-To field</description></readsAttribute><readsAttribute><name>amqp$expiration</name><description>The Message Expiration</description></readsAttribute><readsAttribute><name>amqp$messageId</name><description>The unique ID of the Message</description></readsAttribute><readsAttribute><name>amqp$timestamp</name><description>The timestamp of the Message, as the number of milliseconds since epoch</description></readsAttribute><readsAttribute><name>amqp$type</name><description>The type of message</description></readsAttribute><readsAttribute><name>amqp$userId</name><description>The ID of the user</description></readsAttribute><readsAttribute><name>amqp$clusterId</name><description>The ID of the AMQP Cluster</description></readsAttribute></readsAttributes><writesAttributes></writesAttributes><inputRequirement>INPUT_REQUIRED</inputRequirement><systemResourceConsiderations><systemResourceConsideration><resource>MEMORY</resource><description>An instance of this component can cause high usage of this system resource.  Multiple instances or high concurrency settings may result a degradation of performance.</description></systemResourceConsideration></systemResourceConsiderations></extension></extensions></extensionManifest>