<extensionManifest><groupId>org.apache.nifi</groupId><artifactId>nifi-snowflake-services-nar</artifactId><version>2.0.0</version><parentNar><groupId>org.apache.nifi</groupId><artifactId>nifi-snowflake-services-api-nar</artifactId><version>2.0.0</version></parentNar><systemApiVersion>2.0.0</systemApiVersion><buildInfo><tag>HEAD</tag><branch>UNKNOWN</branch><revision>2f13b60</revision></buildInfo><extensions><extension><name>org.apache.nifi.snowflake.service.SnowflakeComputingConnectionPool</name><type>CONTROLLER_SERVICE</type><description>Provides Snowflake Connection Pooling Service. Connections can be asked from pool and returned after usage.</description><tags><tag>snowflake</tag><tag>dbcp</tag><tag>jdbc</tag><tag>database</tag><tag>connection</tag><tag>pooling</tag><tag>store</tag></tags><properties><property><name>connection-url-format</name><displayName>Connection URL Format</displayName><description>The format of the connection URL.</description><defaultValue>full-url</defaultValue><allowableValues><allowableValue><displayName>Full URL</displayName><value>full-url</value><description>Provide connection URL in a single property</description></allowableValue><allowableValue><displayName>Account Name</displayName><value>account-name</value><description>Provide a Snowflake Account Name</description></allowableValue><allowableValue><displayName>Account Locator</displayName><value>account-locator</value><description>Provide a Snowflake Account Locator</description></allowableValue></allowableValues><required>true</required><sensitive>false</sensitive><expressionLanguageSupported>false</expressionLanguageSupported><expressionLanguageScope>NONE</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property><property><name>Database Connection URL</name><displayName>Snowflake URL</displayName><description>Example connection string: jdbc:snowflake://[account].[region].snowflakecomputing.com/?[connection_params] The connection parameters can include db=DATABASE_NAME to avoid using qualified table names such as DATABASE_NAME.PUBLIC.TABLE_NAME</description><required>true</required><sensitive>false</sensitive><expressionLanguageSupported>true</expressionLanguageSupported><expressionLanguageScope>ENVIRONMENT</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic><dependencies><dependency><propertyName>connection-url-format</propertyName><propertyDisplayName>Connection URL Format</propertyDisplayName><dependentValues><dependentValue>full-url</dependentValue></dependentValues></dependency></dependencies></property><property><name>account-locator</name><displayName>Account Locator</displayName><description>Snowflake account locator to use for connection.</description><required>true</required><sensitive>false</sensitive><expressionLanguageSupported>true</expressionLanguageSupported><expressionLanguageScope>ENVIRONMENT</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic><dependencies><dependency><propertyName>connection-url-format</propertyName><propertyDisplayName>Connection URL Format</propertyDisplayName><dependentValues><dependentValue>account-locator</dependentValue></dependentValues></dependency></dependencies></property><property><name>cloud-region</name><displayName>Cloud Region</displayName><description>Snowflake cloud region to use for connection.</description><required>true</required><sensitive>false</sensitive><expressionLanguageSupported>true</expressionLanguageSupported><expressionLanguageScope>ENVIRONMENT</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic><dependencies><dependency><propertyName>connection-url-format</propertyName><propertyDisplayName>Connection URL Format</propertyDisplayName><dependentValues><dependentValue>account-locator</dependentValue></dependentValues></dependency></dependencies></property><property><name>cloud-type</name><displayName>Cloud Type</displayName><description>Snowflake cloud type to use for connection.</description><required>false</required><sensitive>false</sensitive><expressionLanguageSupported>true</expressionLanguageSupported><expressionLanguageScope>ENVIRONMENT</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic><dependencies><dependency><propertyName>connection-url-format</propertyName><propertyDisplayName>Connection URL Format</propertyDisplayName><dependentValues><dependentValue>account-locator</dependentValue></dependentValues></dependency></dependencies></property><property><name>organization-name</name><displayName>Organization Name</displayName><description>Snowflake organization name to use for connection.</description><required>true</required><sensitive>false</sensitive><expressionLanguageSupported>true</expressionLanguageSupported><expressionLanguageScope>ENVIRONMENT</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic><dependencies><dependency><propertyName>connection-url-format</propertyName><propertyDisplayName>Connection URL Format</propertyDisplayName><dependentValues><dependentValue>account-name</dependentValue></dependentValues></dependency></dependencies></property><property><name>account-name</name><displayName>Account Name</displayName><description>Snowflake account name to use for connection.</description><required>true</required><sensitive>false</sensitive><expressionLanguageSupported>true</expressionLanguageSupported><expressionLanguageScope>ENVIRONMENT</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic><dependencies><dependency><propertyName>connection-url-format</propertyName><propertyDisplayName>Connection URL Format</propertyDisplayName><dependentValues><dependentValue>account-name</dependentValue></dependentValues></dependency></dependencies></property><property><name>Database User</name><displayName>Username</displayName><description>The Snowflake user name.</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>The password for the Snowflake user.</description><required>false</required><sensitive>true</sensitive><expressionLanguageSupported>true</expressionLanguageSupported><expressionLanguageScope>ENVIRONMENT</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property><property><name>database</name><displayName>Database</displayName><description>The database to use by default. The same as passing 'db=DATABASE_NAME' to the connection string.</description><required>false</required><sensitive>false</sensitive><expressionLanguageSupported>true</expressionLanguageSupported><expressionLanguageScope>ENVIRONMENT</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property><property><name>schema</name><displayName>Schema</displayName><description>The schema to use by default. The same as passing 'schema=SCHEMA' to the connection string.</description><required>false</required><sensitive>false</sensitive><expressionLanguageSupported>true</expressionLanguageSupported><expressionLanguageScope>ENVIRONMENT</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property><property><name>warehouse</name><displayName>Warehouse</displayName><description>The warehouse to use by default. The same as passing 'warehouse=WAREHOUSE' to the connection string.</description><required>false</required><sensitive>false</sensitive><expressionLanguageSupported>true</expressionLanguageSupported><expressionLanguageScope>ENVIRONMENT</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property><property><name>proxy-configuration-service</name><displayName>Proxy Configuration Service</displayName><description>Specifies the Proxy Configuration Controller Service to proxy network requests.</description><controllerServiceDefinition><className>org.apache.nifi.proxy.ProxyConfigurationService</className><groupId>org.apache.nifi</groupId><artifactId>nifi-standard-services-api-nar</artifactId><version>2.0.0</version></controllerServiceDefinition><required>false</required><sensitive>false</sensitive><expressionLanguageSupported>false</expressionLanguageSupported><expressionLanguageScope>NONE</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property><property><name>Validation-query</name><displayName>Validation query</displayName><description>Validation query used to validate connections before returning them. When connection is invalid, it gets dropped and new valid connection will be returned. Note!! Using validation might have some performance penalty.</description><required>false</required><sensitive>false</sensitive><expressionLanguageSupported>true</expressionLanguageSupported><expressionLanguageScope>ENVIRONMENT</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 that the pool will wait (when there are no available connections)  for a connection to be returned before failing, or -1 to wait indefinitely. </description><defaultValue>500 millis</defaultValue><required>true</required><sensitive>false</sensitive><expressionLanguageSupported>true</expressionLanguageSupported><expressionLanguageScope>ENVIRONMENT</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property><property><name>Max Total Connections</name><displayName>Max Total Connections</displayName><description>The maximum number of active connections that can be allocated from this pool at the same time,  or negative for no limit.</description><defaultValue>8</defaultValue><required>true</required><sensitive>false</sensitive><expressionLanguageSupported>true</expressionLanguageSupported><expressionLanguageScope>ENVIRONMENT</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property><property><name>dbcp-min-idle-conns</name><displayName>Minimum Idle Connections</displayName><description>The minimum number of connections that can remain idle in the pool without extra ones being created. Set to or zero to allow no idle connections.</description><defaultValue>0</defaultValue><required>false</required><sensitive>false</sensitive><expressionLanguageSupported>true</expressionLanguageSupported><expressionLanguageScope>ENVIRONMENT</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property><property><name>dbcp-max-idle-conns</name><displayName>Max Idle Connections</displayName><description>The maximum number of connections that can remain idle in the pool without extra ones being released. Set to any negative value to allow unlimited idle connections.</description><defaultValue>8</defaultValue><required>false</required><sensitive>false</sensitive><expressionLanguageSupported>true</expressionLanguageSupported><expressionLanguageScope>ENVIRONMENT</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property><property><name>dbcp-max-conn-lifetime</name><displayName>Max Connection Lifetime</displayName><description>The maximum lifetime of a connection. After this time is exceeded the connection will fail the next activation, passivation or validation test. A value of zero or less means the connection has an infinite lifetime.</description><defaultValue>-1</defaultValue><required>false</required><sensitive>false</sensitive><expressionLanguageSupported>true</expressionLanguageSupported><expressionLanguageScope>ENVIRONMENT</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property><property><name>dbcp-time-between-eviction-runs</name><displayName>Time Between Eviction Runs</displayName><description>The time period to sleep between runs of the idle connection evictor thread. When non-positive, no idle connection evictor thread will be run.</description><defaultValue>-1</defaultValue><required>false</required><sensitive>false</sensitive><expressionLanguageSupported>true</expressionLanguageSupported><expressionLanguageScope>ENVIRONMENT</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property><property><name>dbcp-min-evictable-idle-time</name><displayName>Minimum Evictable Idle Time</displayName><description>The minimum amount of time a connection may sit idle in the pool before it is eligible for eviction.</description><defaultValue>30 mins</defaultValue><required>false</required><sensitive>false</sensitive><expressionLanguageSupported>true</expressionLanguageSupported><expressionLanguageScope>ENVIRONMENT</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property><property><name>dbcp-soft-min-evictable-idle-time</name><displayName>Soft Minimum Evictable Idle Time</displayName><description>The minimum amount of time a connection may sit idle in the pool before it is eligible for eviction by the idle connection evictor, with the extra condition that at least a minimum number of idle connections remain in the pool. When the not-soft version of this option is set to a positive value, it is examined first by the idle connection evictor: when idle connections are visited by the evictor, idle time is first compared against it (without considering the number of idle connections in the pool) and then against this soft option, including the minimum idle connections constraint.</description><defaultValue>-1</defaultValue><required>false</required><sensitive>false</sensitive><expressionLanguageSupported>true</expressionLanguageSupported><expressionLanguageScope>ENVIRONMENT</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property></properties><dynamicProperties><dynamicProperty><name>JDBC property name</name><value>Snowflake JDBC property value</value><description>Snowflake JDBC driver property name and value applied to JDBC connections.</description><expressionLanguageScope>ENVIRONMENT</expressionLanguageScope></dynamicProperty></dynamicProperties><supportsSensitiveDynamicProperties>true</supportsSensitiveDynamicProperties><providedServiceAPIs><providedServiceAPI><className>org.apache.nifi.dbcp.DBCPService</className><groupId>org.apache.nifi</groupId><artifactId>nifi-standard-services-api-nar</artifactId><version>2.0.0</version></providedServiceAPI><providedServiceAPI><className>org.apache.nifi.processors.snowflake.SnowflakeConnectionProviderService</className><groupId>org.apache.nifi</groupId><artifactId>nifi-snowflake-services-api-nar</artifactId><version>2.0.0</version></providedServiceAPI></providedServiceAPIs></extension><extension><name>org.apache.nifi.snowflake.service.StandardSnowflakeIngestManagerProviderService</name><type>CONTROLLER_SERVICE</type><description>Provides a Snowflake Ingest Manager for Snowflake pipe processors</description><tags><tag>snowflake</tag><tag>jdbc</tag><tag>database</tag><tag>connection</tag></tags><properties><property><name>account-identifier-format</name><displayName>Account Identifier Format</displayName><description>The format of the account identifier.</description><defaultValue>account-name</defaultValue><allowableValues><allowableValue><displayName>Full URL</displayName><value>full-url</value><description>Provide an account identifier in a single property</description></allowableValue><allowableValue><displayName>Account Name</displayName><value>account-name</value><description>Provide a Snowflake Account Name</description></allowableValue><allowableValue><displayName>Account Locator</displayName><value>account-locator</value><description>Provide a Snowflake Account Locator</description></allowableValue></allowableValues><required>true</required><sensitive>false</sensitive><expressionLanguageSupported>false</expressionLanguageSupported><expressionLanguageScope>NONE</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property><property><name>host-url</name><displayName>Snowflake URL</displayName><description>Example host url: [account-locator].[cloud-region].[cloud].snowflakecomputing.com</description><required>true</required><sensitive>false</sensitive><expressionLanguageSupported>true</expressionLanguageSupported><expressionLanguageScope>ENVIRONMENT</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic><dependencies><dependency><propertyName>account-identifier-format</propertyName><propertyDisplayName>Account Identifier Format</propertyDisplayName><dependentValues><dependentValue>full-url</dependentValue></dependentValues></dependency></dependencies></property><property><name>account-locator</name><displayName>Account Locator</displayName><description>Snowflake account locator to use for connection.</description><required>true</required><sensitive>false</sensitive><expressionLanguageSupported>true</expressionLanguageSupported><expressionLanguageScope>ENVIRONMENT</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic><dependencies><dependency><propertyName>account-identifier-format</propertyName><propertyDisplayName>Account Identifier Format</propertyDisplayName><dependentValues><dependentValue>account-locator</dependentValue></dependentValues></dependency></dependencies></property><property><name>cloud-region</name><displayName>Cloud Region</displayName><description>Snowflake cloud region to use for connection.</description><required>true</required><sensitive>false</sensitive><expressionLanguageSupported>true</expressionLanguageSupported><expressionLanguageScope>ENVIRONMENT</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic><dependencies><dependency><propertyName>account-identifier-format</propertyName><propertyDisplayName>Account Identifier Format</propertyDisplayName><dependentValues><dependentValue>account-locator</dependentValue></dependentValues></dependency></dependencies></property><property><name>cloud-type</name><displayName>Cloud Type</displayName><description>Snowflake cloud type to use for connection.</description><required>false</required><sensitive>false</sensitive><expressionLanguageSupported>true</expressionLanguageSupported><expressionLanguageScope>ENVIRONMENT</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic><dependencies><dependency><propertyName>account-identifier-format</propertyName><propertyDisplayName>Account Identifier Format</propertyDisplayName><dependentValues><dependentValue>account-locator</dependentValue></dependentValues></dependency></dependencies></property><property><name>organization-name</name><displayName>Organization Name</displayName><description>Snowflake organization name to use for connection.</description><required>true</required><sensitive>false</sensitive><expressionLanguageSupported>true</expressionLanguageSupported><expressionLanguageScope>ENVIRONMENT</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic><dependencies><dependency><propertyName>account-identifier-format</propertyName><propertyDisplayName>Account Identifier Format</propertyDisplayName><dependentValues><dependentValue>account-name</dependentValue></dependentValues></dependency></dependencies></property><property><name>account-name</name><displayName>Account Name</displayName><description>Snowflake account name to use for connection.</description><required>true</required><sensitive>false</sensitive><expressionLanguageSupported>true</expressionLanguageSupported><expressionLanguageScope>ENVIRONMENT</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic><dependencies><dependency><propertyName>account-identifier-format</propertyName><propertyDisplayName>Account Identifier Format</propertyDisplayName><dependentValues><dependentValue>account-name</dependentValue></dependentValues></dependency></dependencies></property><property><name>user-name</name><displayName>User Name</displayName><description>The Snowflake user name.</description><required>true</required><sensitive>false</sensitive><expressionLanguageSupported>true</expressionLanguageSupported><expressionLanguageScope>ENVIRONMENT</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property><property><name>private-key-service</name><displayName>Private Key Service</displayName><description>Specifies the Controller Service that will provide the private key. The public key needs to be added to the user account in the Snowflake account beforehand.</description><controllerServiceDefinition><className>org.apache.nifi.key.service.api.PrivateKeyService</className><groupId>org.apache.nifi</groupId><artifactId>nifi-standard-services-api-nar</artifactId><version>2.0.0</version></controllerServiceDefinition><required>true</required><sensitive>false</sensitive><expressionLanguageSupported>false</expressionLanguageSupported><expressionLanguageScope>NONE</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property><property><name>database</name><displayName>Database</displayName><description>The database to use by default. The same as passing 'db=DATABASE_NAME' to the connection string.</description><required>true</required><sensitive>false</sensitive><expressionLanguageSupported>true</expressionLanguageSupported><expressionLanguageScope>ENVIRONMENT</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property><property><name>schema</name><displayName>Schema</displayName><description>The schema to use by default. The same as passing 'schema=SCHEMA' to the connection string.</description><required>true</required><sensitive>false</sensitive><expressionLanguageSupported>true</expressionLanguageSupported><expressionLanguageScope>ENVIRONMENT</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property><property><name>pipe</name><displayName>Pipe</displayName><description>The Snowflake pipe to ingest from.</description><required>true</required><sensitive>false</sensitive><expressionLanguageSupported>true</expressionLanguageSupported><expressionLanguageScope>ENVIRONMENT</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property></properties><providedServiceAPIs><providedServiceAPI><className>org.apache.nifi.processors.snowflake.SnowflakeIngestManagerProviderService</className><groupId>org.apache.nifi</groupId><artifactId>nifi-snowflake-services-api-nar</artifactId><version>2.0.0</version></providedServiceAPI></providedServiceAPIs></extension></extensions></extensionManifest>