<extensionManifest><groupId>org.apache.nifi</groupId><artifactId>nifi-cassandra-nar</artifactId><version>1.28.0.250-eep-1001</version><parentNar><groupId>org.apache.nifi</groupId><artifactId>nifi-cassandra-services-api-nar</artifactId><version>1.28.0.250-eep-1001</version></parentNar><systemApiVersion>1.28.0.250-eep-1001</systemApiVersion><buildInfo><tag>nifi-1.28.0-RC1</tag><branch>UNKNOWN</branch><revision>bdae0d7</revision></buildInfo><extensions><extension><name>org.apache.nifi.processors.cassandra.PutCassandraQL</name><type>PROCESSOR</type><deprecationNotice><reason>DataStax 3 driver for Cassandra is no longer the current version and requires new components.</reason><alternatives></alternatives></deprecationNotice><description>Execute provided Cassandra Query Language (CQL) statement on a Cassandra 1.x, 2.x, or 3.0.x cluster. The content of an incoming FlowFile is expected to be the CQL command to execute. The CQL command may use the ? to escape parameters. In this case, the parameters to use must exist as FlowFile attributes with the naming convention cql.args.N.type and cql.args.N.value, where N is a positive integer. The cql.args.N.type is expected to be a lowercase string indicating the Cassandra type.</description><tags><tag>cassandra</tag><tag>cql</tag><tag>put</tag><tag>insert</tag><tag>update</tag><tag>set</tag></tags><properties><property><name>cassandra-connection-provider</name><displayName>Cassandra Connection Provider</displayName><description>Specifies the Cassandra connection providing controller service to be used to connect to Cassandra cluster.</description><controllerServiceDefinition><className>org.apache.nifi.cassandra.CassandraSessionProviderService</className><groupId>org.apache.nifi</groupId><artifactId>nifi-cassandra-services-api-nar</artifactId><version>1.28.0.250-eep-1001</version></controllerServiceDefinition><required>false</required><sensitive>false</sensitive><expressionLanguageSupported>false</expressionLanguageSupported><expressionLanguageScope>NONE</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property><property><name>Cassandra Contact Points</name><displayName>Cassandra Contact Points</displayName><description>Contact points are addresses of Cassandra nodes. The list of contact points should be comma-separated and in hostname:port format. Example node1:port,node2:port,.... The default client port for Cassandra is 9042, but the port(s) must be explicitly specified.</description><required>false</required><sensitive>false</sensitive><expressionLanguageSupported>true</expressionLanguageSupported><expressionLanguageScope>VARIABLE_REGISTRY</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property><property><name>Keyspace</name><displayName>Keyspace</displayName><description>The Cassandra Keyspace to connect to. If no keyspace is specified, the query will need to include the keyspace name before any table reference, in case of 'query' native processors or if the processor exposes the 'Table' property, the keyspace name has to be provided with the table name in the form of &lt;KEYSPACE&gt;.&lt;TABLE&gt;</description><required>false</required><sensitive>false</sensitive><expressionLanguageSupported>true</expressionLanguageSupported><expressionLanguageScope>VARIABLE_REGISTRY</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>1.28.0.250-eep-1001</version></controllerServiceDefinition><required>false</required><sensitive>false</sensitive><expressionLanguageSupported>false</expressionLanguageSupported><expressionLanguageScope>NONE</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property><property><name>Client Auth</name><displayName>Client Auth</displayName><description>Client authentication policy when connecting to secure (TLS/SSL) cluster. Possible values are REQUIRED, WANT, NONE. This property is only used when an SSL Context has been defined and enabled.</description><defaultValue>REQUIRED</defaultValue><allowableValues><allowableValue><displayName>WANT</displayName><value>WANT</value><description></description></allowableValue><allowableValue><displayName>REQUIRED</displayName><value>REQUIRED</value><description></description></allowableValue><allowableValue><displayName>NONE</displayName><value>NONE</value><description></description></allowableValue></allowableValues><required>false</required><sensitive>false</sensitive><expressionLanguageSupported>false</expressionLanguageSupported><expressionLanguageScope>NONE</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property><property><name>Username</name><displayName>Username</displayName><description>Username to access the Cassandra cluster</description><required>false</required><sensitive>false</sensitive><expressionLanguageSupported>true</expressionLanguageSupported><expressionLanguageScope>VARIABLE_REGISTRY</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property><property><name>Password</name><displayName>Password</displayName><description>Password to access the Cassandra cluster</description><required>false</required><sensitive>true</sensitive><expressionLanguageSupported>true</expressionLanguageSupported><expressionLanguageScope>VARIABLE_REGISTRY</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property><property><name>Consistency Level</name><displayName>Consistency Level</displayName><description>The strategy for how many replicas must respond before results are returned.</description><defaultValue>ONE</defaultValue><allowableValues><allowableValue><displayName>ANY</displayName><value>ANY</value><description></description></allowableValue><allowableValue><displayName>ONE</displayName><value>ONE</value><description></description></allowableValue><allowableValue><displayName>TWO</displayName><value>TWO</value><description></description></allowableValue><allowableValue><displayName>THREE</displayName><value>THREE</value><description></description></allowableValue><allowableValue><displayName>QUORUM</displayName><value>QUORUM</value><description></description></allowableValue><allowableValue><displayName>ALL</displayName><value>ALL</value><description></description></allowableValue><allowableValue><displayName>LOCAL_QUORUM</displayName><value>LOCAL_QUORUM</value><description></description></allowableValue><allowableValue><displayName>EACH_QUORUM</displayName><value>EACH_QUORUM</value><description></description></allowableValue><allowableValue><displayName>SERIAL</displayName><value>SERIAL</value><description></description></allowableValue><allowableValue><displayName>LOCAL_SERIAL</displayName><value>LOCAL_SERIAL</value><description></description></allowableValue><allowableValue><displayName>LOCAL_ONE</displayName><value>LOCAL_ONE</value><description></description></allowableValue></allowableValues><required>false</required><sensitive>false</sensitive><expressionLanguageSupported>false</expressionLanguageSupported><expressionLanguageScope>NONE</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property><property><name>Compression Type</name><displayName>Compression Type</displayName><description>Enable compression at transport-level requests and responses</description><defaultValue>NONE</defaultValue><allowableValues><allowableValue><displayName>NONE</displayName><value>NONE</value><description></description></allowableValue><allowableValue><displayName>SNAPPY</displayName><value>SNAPPY</value><description></description></allowableValue><allowableValue><displayName>LZ4</displayName><value>LZ4</value><description></description></allowableValue></allowableValues><required>false</required><sensitive>false</sensitive><expressionLanguageSupported>false</expressionLanguageSupported><expressionLanguageScope>NONE</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property><property><name>Character Set</name><displayName>Character Set</displayName><description>Specifies the character set of the record data.</description><defaultValue>UTF-8</defaultValue><required>true</required><sensitive>false</sensitive><expressionLanguageSupported>true</expressionLanguageSupported><expressionLanguageScope>FLOWFILE_ATTRIBUTES</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property><property><name>Max Wait Time</name><displayName>Max Wait Time</displayName><description>The maximum amount of time allowed for a running CQL select query. Must be of format &lt;duration&gt; &lt;TimeUnit&gt; where &lt;duration&gt; is a non-negative integer and TimeUnit is a supported Time Unit, such as: nanos, millis, secs, mins, hrs, days. A value of zero means there is no limit. </description><defaultValue>0 seconds</defaultValue><required>true</required><sensitive>false</sensitive><expressionLanguageSupported>true</expressionLanguageSupported><expressionLanguageScope>FLOWFILE_ATTRIBUTES</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property><property><name>putcql-stmt-cache-size</name><displayName>Statement Cache Size</displayName><description>The maximum number of CQL Prepared Statements to cache. This can improve performance if many incoming flow files have the same CQL statement with different values for the parameters. If this property is set to zero, the cache is effectively disabled.</description><defaultValue>0</defaultValue><required>true</required><sensitive>false</sensitive><expressionLanguageSupported>true</expressionLanguageSupported><expressionLanguageScope>VARIABLE_REGISTRY</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property></properties><relationships><relationship><name>retry</name><description>A FlowFile is transferred to this relationship if the operation cannot be completed but attempting it again may succeed.</description><autoTerminated>false</autoTerminated></relationship><relationship><name>success</name><description>A FlowFile is transferred to this relationship if the operation completed successfully.</description><autoTerminated>false</autoTerminated></relationship><relationship><name>failure</name><description>A FlowFile is transferred to this relationship if the operation failed.</description><autoTerminated>false</autoTerminated></relationship></relationships><readsAttributes><readsAttribute><name>cql.args.N.type</name><description>Incoming FlowFiles are expected to be parameterized CQL statements. The type of each parameter is specified as a lowercase string corresponding to the Cassandra data type (text, int, boolean, e.g.). In the case of collections, the primitive type(s) of the elements in the collection should be comma-delimited, follow the collection type, and be enclosed in angle brackets (&lt; and &gt;), for example set&lt;text&gt; or map&lt;timestamp, int&gt;.</description></readsAttribute><readsAttribute><name>cql.args.N.value</name><description>Incoming FlowFiles are expected to be parameterized CQL statements. The value of the parameters are specified as cql.args.1.value, cql.args.2.value, cql.args.3.value, and so on. The  type of the cql.args.1.value parameter is specified by the cql.args.1.type attribute.</description></readsAttribute></readsAttributes><writesAttributes></writesAttributes><supportsBatching>true</supportsBatching><eventDriven>true</eventDriven><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><extension><name>org.apache.nifi.processors.cassandra.PutCassandraRecord</name><type>PROCESSOR</type><deprecationNotice><reason>DataStax 3 driver for Cassandra is no longer the current version and requires new components.</reason><alternatives></alternatives></deprecationNotice><description>This is a record aware processor that reads the content of the incoming FlowFile as individual records using the configured 'Record Reader' and writes them to Apache Cassandra using native protocol version 3 or higher.</description><tags><tag>cassandra</tag><tag>cql</tag><tag>put</tag><tag>insert</tag><tag>update</tag><tag>set</tag><tag>record</tag></tags><properties><property><name>cassandra-connection-provider</name><displayName>Cassandra Connection Provider</displayName><description>Specifies the Cassandra connection providing controller service to be used to connect to Cassandra cluster.</description><controllerServiceDefinition><className>org.apache.nifi.cassandra.CassandraSessionProviderService</className><groupId>org.apache.nifi</groupId><artifactId>nifi-cassandra-services-api-nar</artifactId><version>1.28.0.250-eep-1001</version></controllerServiceDefinition><required>false</required><sensitive>false</sensitive><expressionLanguageSupported>false</expressionLanguageSupported><expressionLanguageScope>NONE</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property><property><name>Cassandra Contact Points</name><displayName>Cassandra Contact Points</displayName><description>Contact points are addresses of Cassandra nodes. The list of contact points should be comma-separated and in hostname:port format. Example node1:port,node2:port,.... The default client port for Cassandra is 9042, but the port(s) must be explicitly specified.</description><required>false</required><sensitive>false</sensitive><expressionLanguageSupported>true</expressionLanguageSupported><expressionLanguageScope>VARIABLE_REGISTRY</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property><property><name>Keyspace</name><displayName>Keyspace</displayName><description>The Cassandra Keyspace to connect to. If no keyspace is specified, the query will need to include the keyspace name before any table reference, in case of 'query' native processors or if the processor exposes the 'Table' property, the keyspace name has to be provided with the table name in the form of &lt;KEYSPACE&gt;.&lt;TABLE&gt;</description><required>false</required><sensitive>false</sensitive><expressionLanguageSupported>true</expressionLanguageSupported><expressionLanguageScope>VARIABLE_REGISTRY</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property><property><name>put-cassandra-record-table</name><displayName>Table name</displayName><description>The name of the Cassandra table to which the records have to be written.</description><required>true</required><sensitive>false</sensitive><expressionLanguageSupported>true</expressionLanguageSupported><expressionLanguageScope>FLOWFILE_ATTRIBUTES</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property><property><name>put-cassandra-record-statement-type</name><displayName>Statement Type</displayName><description>Specifies the type of CQL Statement to generate.</description><defaultValue>INSERT</defaultValue><allowableValues><allowableValue><displayName>UPDATE</displayName><value>UPDATE</value><description>Use an UPDATE statement.</description></allowableValue><allowableValue><displayName>INSERT</displayName><value>INSERT</value><description>Use an INSERT statement.</description></allowableValue><allowableValue><displayName>Use cql.statement.type Attribute</displayName><value>USE_ATTR</value><description>The value of the cql.statement.type Attribute will be used to determine which type of statement (UPDATE, INSERT) will be generated and executed</description></allowableValue></allowableValues><required>true</required><sensitive>false</sensitive><expressionLanguageSupported>false</expressionLanguageSupported><expressionLanguageScope>NONE</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property><property><name>put-cassandra-record-update-keys</name><displayName>Update Keys</displayName><description>A comma-separated list of column names that uniquely identifies a row in the database for UPDATE statements. If the Statement Type is UPDATE and this property is not set, the conversion to CQL will fail. This property is ignored if the Statement Type is not UPDATE.</description><required>false</required><sensitive>false</sensitive><expressionLanguageSupported>true</expressionLanguageSupported><expressionLanguageScope>FLOWFILE_ATTRIBUTES</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property><property><name>put-cassandra-record-update-method</name><displayName>Update Method</displayName><description>Specifies the method to use to SET the values. This property is used if the Statement Type is UPDATE and ignored otherwise.</description><defaultValue>SET</defaultValue><allowableValues><allowableValue><displayName>Increment</displayName><value>INCREMENT</value><description>Use an increment operation (+=) for the Update statement.</description></allowableValue><allowableValue><displayName>Decrement</displayName><value>DECREMENT</value><description>Use a decrement operation (-=) for the Update statement.</description></allowableValue><allowableValue><displayName>Set</displayName><value>SET</value><description>Use a set operation (=) for the Update statement.</description></allowableValue><allowableValue><displayName>Use cql.update.method Attribute</displayName><value>USE_ATTR</value><description>The value of the cql.update.method Attribute will be used to determine which operation (Set, Increment, Decrement) will be used to generate and execute the Update statement.</description></allowableValue></allowableValues><required>false</required><sensitive>false</sensitive><expressionLanguageSupported>false</expressionLanguageSupported><expressionLanguageScope>NONE</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property><property><name>Client Auth</name><displayName>Client Auth</displayName><description>Client authentication policy when connecting to secure (TLS/SSL) cluster. Possible values are REQUIRED, WANT, NONE. This property is only used when an SSL Context has been defined and enabled.</description><defaultValue>REQUIRED</defaultValue><allowableValues><allowableValue><displayName>WANT</displayName><value>WANT</value><description></description></allowableValue><allowableValue><displayName>REQUIRED</displayName><value>REQUIRED</value><description></description></allowableValue><allowableValue><displayName>NONE</displayName><value>NONE</value><description></description></allowableValue></allowableValues><required>false</required><sensitive>false</sensitive><expressionLanguageSupported>false</expressionLanguageSupported><expressionLanguageScope>NONE</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property><property><name>Username</name><displayName>Username</displayName><description>Username to access the Cassandra cluster</description><required>false</required><sensitive>false</sensitive><expressionLanguageSupported>true</expressionLanguageSupported><expressionLanguageScope>VARIABLE_REGISTRY</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property><property><name>Password</name><displayName>Password</displayName><description>Password to access the Cassandra cluster</description><required>false</required><sensitive>true</sensitive><expressionLanguageSupported>true</expressionLanguageSupported><expressionLanguageScope>VARIABLE_REGISTRY</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property><property><name>put-cassandra-record-reader</name><displayName>Record Reader</displayName><description>Specifies the type of Record Reader controller service to use for parsing the incoming data and determining the schema</description><controllerServiceDefinition><className>org.apache.nifi.serialization.RecordReaderFactory</className><groupId>org.apache.nifi</groupId><artifactId>nifi-standard-services-api-nar</artifactId><version>1.28.0.250-eep-1001</version></controllerServiceDefinition><required>true</required><sensitive>false</sensitive><expressionLanguageSupported>false</expressionLanguageSupported><expressionLanguageScope>NONE</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property><property><name>put-cassandra-record-batch-size</name><displayName>Batch size</displayName><description>Specifies the number of 'Insert statements' to be grouped together to execute as a batch (BatchStatement)</description><defaultValue>100</defaultValue><required>true</required><sensitive>false</sensitive><expressionLanguageSupported>true</expressionLanguageSupported><expressionLanguageScope>VARIABLE_REGISTRY</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property><property><name>Consistency Level</name><displayName>Consistency Level</displayName><description>The strategy for how many replicas must respond before results are returned.</description><defaultValue>SERIAL</defaultValue><allowableValues><allowableValue><displayName>SERIAL</displayName><value>SERIAL</value><description></description></allowableValue><allowableValue><displayName>LOCAL_SERIAL</displayName><value>LOCAL_SERIAL</value><description></description></allowableValue></allowableValues><required>false</required><sensitive>false</sensitive><expressionLanguageSupported>false</expressionLanguageSupported><expressionLanguageScope>NONE</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property><property><name>put-cassandra-record-batch-statement-type</name><displayName>Batch Statement Type</displayName><description>Specifies the type of 'Batch Statement' to be used.</description><defaultValue>LOGGED</defaultValue><allowableValues><allowableValue><displayName>LOGGED</displayName><value>LOGGED</value><description>Use a LOGGED batch statement</description></allowableValue><allowableValue><displayName>UNLOGGED</displayName><value>UNLOGGED</value><description>Use an UNLOGGED batch statement</description></allowableValue><allowableValue><displayName>COUNTER</displayName><value>COUNTER</value><description>Use a COUNTER batch statement</description></allowableValue><allowableValue><displayName>Use cql.batch.statement.type Attribute</displayName><value>USE_ATTR</value><description>The value of the cql.batch.statement.type Attribute will be used to determine which type of batch statement (LOGGED, UNLOGGED or COUNTER) will be used to generate and execute the Update statement.</description></allowableValue></allowableValues><required>false</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>1.28.0.250-eep-1001</version></controllerServiceDefinition><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>A FlowFile is transferred to this relationship if the operation completed successfully.</description><autoTerminated>false</autoTerminated></relationship><relationship><name>failure</name><description>A FlowFile is transferred to this relationship if the operation failed.</description><autoTerminated>false</autoTerminated></relationship></relationships><readsAttributes><readsAttribute><name>cql.statement.type</name><description>If 'Use cql.statement.type Attribute' is selected for the Statement Type property, the value of the cql.statement.type Attribute will be used to determine which type of statement (UPDATE, INSERT) will be generated and executed</description></readsAttribute><readsAttribute><name>cql.update.method</name><description>If 'Use cql.update.method Attribute' is selected for the Update Method property, the value of the cql.update.method Attribute will be used to determine which operation (Set, Increment, Decrement) will be used to generate and execute the Update statement. Ignored if the Statement Type property is not set to UPDATE</description></readsAttribute><readsAttribute><name>cql.batch.statement.type</name><description>If 'Use cql.batch.statement.type Attribute' is selected for the Batch Statement Type property, the value of the cql.batch.statement.type Attribute will be used to determine which type of batch statement (LOGGED, UNLOGGED, COUNTER) will be generated and executed</description></readsAttribute></readsAttributes><writesAttributes></writesAttributes><inputRequirement>INPUT_REQUIRED</inputRequirement></extension><extension><name>org.apache.nifi.processors.cassandra.QueryCassandra</name><type>PROCESSOR</type><deprecationNotice><reason>DataStax 3 driver for Cassandra is no longer the current version and requires new components.</reason><alternatives></alternatives></deprecationNotice><description>Execute provided Cassandra Query Language (CQL) select query on a Cassandra 1.x, 2.x, or 3.0.x cluster. Query result may be converted to Avro or JSON format. Streaming is used so arbitrarily large result sets are supported. This processor can be scheduled to run on a timer, or cron expression, using the standard scheduling methods, or it can be triggered by an incoming FlowFile. If it is triggered by an incoming FlowFile, then attributes of that FlowFile will be available when evaluating the select query. FlowFile attribute 'executecql.row.count' indicates how many rows were selected.</description><tags><tag>cassandra</tag><tag>cql</tag><tag>select</tag></tags><properties><property><name>cassandra-connection-provider</name><displayName>Cassandra Connection Provider</displayName><description>Specifies the Cassandra connection providing controller service to be used to connect to Cassandra cluster.</description><controllerServiceDefinition><className>org.apache.nifi.cassandra.CassandraSessionProviderService</className><groupId>org.apache.nifi</groupId><artifactId>nifi-cassandra-services-api-nar</artifactId><version>1.28.0.250-eep-1001</version></controllerServiceDefinition><required>false</required><sensitive>false</sensitive><expressionLanguageSupported>false</expressionLanguageSupported><expressionLanguageScope>NONE</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property><property><name>Cassandra Contact Points</name><displayName>Cassandra Contact Points</displayName><description>Contact points are addresses of Cassandra nodes. The list of contact points should be comma-separated and in hostname:port format. Example node1:port,node2:port,.... The default client port for Cassandra is 9042, but the port(s) must be explicitly specified.</description><required>false</required><sensitive>false</sensitive><expressionLanguageSupported>true</expressionLanguageSupported><expressionLanguageScope>VARIABLE_REGISTRY</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property><property><name>Keyspace</name><displayName>Keyspace</displayName><description>The Cassandra Keyspace to connect to. If no keyspace is specified, the query will need to include the keyspace name before any table reference, in case of 'query' native processors or if the processor exposes the 'Table' property, the keyspace name has to be provided with the table name in the form of &lt;KEYSPACE&gt;.&lt;TABLE&gt;</description><required>false</required><sensitive>false</sensitive><expressionLanguageSupported>true</expressionLanguageSupported><expressionLanguageScope>VARIABLE_REGISTRY</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>1.28.0.250-eep-1001</version></controllerServiceDefinition><required>false</required><sensitive>false</sensitive><expressionLanguageSupported>false</expressionLanguageSupported><expressionLanguageScope>NONE</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property><property><name>Client Auth</name><displayName>Client Auth</displayName><description>Client authentication policy when connecting to secure (TLS/SSL) cluster. Possible values are REQUIRED, WANT, NONE. This property is only used when an SSL Context has been defined and enabled.</description><defaultValue>REQUIRED</defaultValue><allowableValues><allowableValue><displayName>WANT</displayName><value>WANT</value><description></description></allowableValue><allowableValue><displayName>REQUIRED</displayName><value>REQUIRED</value><description></description></allowableValue><allowableValue><displayName>NONE</displayName><value>NONE</value><description></description></allowableValue></allowableValues><required>false</required><sensitive>false</sensitive><expressionLanguageSupported>false</expressionLanguageSupported><expressionLanguageScope>NONE</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property><property><name>Username</name><displayName>Username</displayName><description>Username to access the Cassandra cluster</description><required>false</required><sensitive>false</sensitive><expressionLanguageSupported>true</expressionLanguageSupported><expressionLanguageScope>VARIABLE_REGISTRY</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property><property><name>Password</name><displayName>Password</displayName><description>Password to access the Cassandra cluster</description><required>false</required><sensitive>true</sensitive><expressionLanguageSupported>true</expressionLanguageSupported><expressionLanguageScope>VARIABLE_REGISTRY</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property><property><name>Consistency Level</name><displayName>Consistency Level</displayName><description>The strategy for how many replicas must respond before results are returned.</description><defaultValue>ONE</defaultValue><allowableValues><allowableValue><displayName>ANY</displayName><value>ANY</value><description></description></allowableValue><allowableValue><displayName>ONE</displayName><value>ONE</value><description></description></allowableValue><allowableValue><displayName>TWO</displayName><value>TWO</value><description></description></allowableValue><allowableValue><displayName>THREE</displayName><value>THREE</value><description></description></allowableValue><allowableValue><displayName>QUORUM</displayName><value>QUORUM</value><description></description></allowableValue><allowableValue><displayName>ALL</displayName><value>ALL</value><description></description></allowableValue><allowableValue><displayName>LOCAL_QUORUM</displayName><value>LOCAL_QUORUM</value><description></description></allowableValue><allowableValue><displayName>EACH_QUORUM</displayName><value>EACH_QUORUM</value><description></description></allowableValue><allowableValue><displayName>SERIAL</displayName><value>SERIAL</value><description></description></allowableValue><allowableValue><displayName>LOCAL_SERIAL</displayName><value>LOCAL_SERIAL</value><description></description></allowableValue><allowableValue><displayName>LOCAL_ONE</displayName><value>LOCAL_ONE</value><description></description></allowableValue></allowableValues><required>false</required><sensitive>false</sensitive><expressionLanguageSupported>false</expressionLanguageSupported><expressionLanguageScope>NONE</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property><property><name>Compression Type</name><displayName>Compression Type</displayName><description>Enable compression at transport-level requests and responses</description><defaultValue>NONE</defaultValue><allowableValues><allowableValue><displayName>NONE</displayName><value>NONE</value><description></description></allowableValue><allowableValue><displayName>SNAPPY</displayName><value>SNAPPY</value><description></description></allowableValue><allowableValue><displayName>LZ4</displayName><value>LZ4</value><description></description></allowableValue></allowableValues><required>false</required><sensitive>false</sensitive><expressionLanguageSupported>false</expressionLanguageSupported><expressionLanguageScope>NONE</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property><property><name>Character Set</name><displayName>Character Set</displayName><description>Specifies the character set of the record data.</description><defaultValue>UTF-8</defaultValue><required>true</required><sensitive>false</sensitive><expressionLanguageSupported>true</expressionLanguageSupported><expressionLanguageScope>FLOWFILE_ATTRIBUTES</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property><property><name>CQL select query</name><displayName>CQL select query</displayName><description>CQL select query</description><required>true</required><sensitive>false</sensitive><expressionLanguageSupported>true</expressionLanguageSupported><expressionLanguageScope>FLOWFILE_ATTRIBUTES</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property><property><name>Max Wait Time</name><displayName>Max Wait Time</displayName><description>The maximum amount of time allowed for a running CQL select query. Must be of format &lt;duration&gt; &lt;TimeUnit&gt; where &lt;duration&gt; is a non-negative integer and TimeUnit is a supported Time Unit, such as: millis, secs, mins, hrs, days. A value of zero means there is no limit. </description><defaultValue>0 seconds</defaultValue><required>true</required><sensitive>false</sensitive><expressionLanguageSupported>true</expressionLanguageSupported><expressionLanguageScope>FLOWFILE_ATTRIBUTES</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property><property><name>Fetch size</name><displayName>Fetch size</displayName><description>The number of result rows to be fetched from the result set at a time. Zero is the default and means there is no limit.</description><defaultValue>0</defaultValue><required>true</required><sensitive>false</sensitive><expressionLanguageSupported>true</expressionLanguageSupported><expressionLanguageScope>VARIABLE_REGISTRY</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property><property><name>Max Rows Per Flow File</name><displayName>Max Rows Per Flow File</displayName><description>The maximum number of result rows that will be included in a single FlowFile. This will allow you to break up very large result sets into multiple FlowFiles. If the value specified is zero, then all rows are returned in a single FlowFile.</description><defaultValue>0</defaultValue><required>true</required><sensitive>false</sensitive><expressionLanguageSupported>true</expressionLanguageSupported><expressionLanguageScope>VARIABLE_REGISTRY</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property><property><name>qdbt-output-batch-size</name><displayName>Output Batch Size</displayName><description>The number of output FlowFiles to queue before committing the process session. When set to zero, the session will be committed when all result set rows have been processed and the output FlowFiles are ready for transfer to the downstream relationship. For large result sets, this can cause a large burst of FlowFiles to be transferred at the end of processor execution. If this property is set, then when the specified number of FlowFiles are ready for transfer, then the session will be committed, thus releasing the FlowFiles to the downstream relationship. NOTE: The maxvalue.* and fragment.count attributes will not be set on FlowFiles when this property is set.</description><defaultValue>0</defaultValue><required>true</required><sensitive>false</sensitive><expressionLanguageSupported>true</expressionLanguageSupported><expressionLanguageScope>VARIABLE_REGISTRY</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property><property><name>Output Format</name><displayName>Output Format</displayName><description>The format to which the result rows will be converted. If JSON is selected, the output will contain an object with field 'results' containing an array of result rows. Each row in the array is a map of the named column to its value. For example: { "results": [{"userid":1, "name":"Joe Smith"}]}</description><defaultValue>Avro</defaultValue><allowableValues><allowableValue><displayName>Avro</displayName><value>Avro</value><description></description></allowableValue><allowableValue><displayName>JSON</displayName><value>JSON</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>timestamp-format-pattern</name><displayName>Timestamp Format Pattern for JSON output</displayName><description>Pattern to use when converting timestamp fields to JSON. Note: the formatted timestamp will be in UTC timezone.</description><defaultValue>yyyy-MM-dd HH:mm:ssZ</defaultValue><required>true</required><sensitive>false</sensitive><expressionLanguageSupported>false</expressionLanguageSupported><expressionLanguageScope>NONE</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property></properties><relationships><relationship><name>retry</name><description>A FlowFile is transferred to this relationship if the operation cannot be completed but attempting it again may succeed.</description><autoTerminated>false</autoTerminated></relationship><relationship><name>success</name><description>A FlowFile is transferred to this relationship if the operation completed successfully.</description><autoTerminated>false</autoTerminated></relationship><relationship><name>failure</name><description>A FlowFile is transferred to this relationship if the operation failed.</description><autoTerminated>false</autoTerminated></relationship></relationships><writesAttributes><writesAttribute><name>executecql.row.count</name><description>The number of rows returned by the CQL query</description></writesAttribute><writesAttribute><name>fragment.identifier</name><description>If 'Max Rows Per Flow File' is set then all FlowFiles from the same query result set will have the same value for the fragment.identifier attribute. This can then be used to correlate the results.</description></writesAttribute><writesAttribute><name>fragment.count</name><description>If 'Max Rows Per Flow File' is set then this is the total number of  FlowFiles produced by a single ResultSet. This can be used in conjunction with the fragment.identifier attribute in order to know how many FlowFiles belonged to the same incoming ResultSet. If Output Batch Size is set, then this attribute will not be populated.</description></writesAttribute><writesAttribute><name>fragment.index</name><description>If 'Max Rows Per Flow File' is set then the position of this FlowFile in the list of outgoing FlowFiles that were all derived from the same result set FlowFile. This can be used in conjunction with the fragment.identifier attribute to know which FlowFiles originated from the same query result set and in what order  FlowFiles were produced</description></writesAttribute></writesAttributes><eventDriven>true</eventDriven><inputRequirement>INPUT_ALLOWED</inputRequirement></extension></extensions></extensionManifest>