nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-prot.../pom.xml

100 lines
4.0 KiB
XML
Raw Normal View History

2014-12-08 15:22:14 -05:00
<?xml version="1.0" encoding="UTF-8"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
2014-12-08 15:22:14 -05:00
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.apache.nifi</groupId>
<artifactId>nifi-framework</artifactId>
2023-02-09 17:32:53 -05:00
<version>2.0.0-SNAPSHOT</version>
2014-12-08 15:22:14 -05:00
</parent>
<artifactId>nifi-framework-cluster-protocol</artifactId>
2014-12-08 15:22:14 -05:00
<packaging>jar</packaging>
<description>The messaging protocol for clustered NiFi</description>
<dependencies>
<!-- application dependencies -->
<dependency>
<groupId>org.apache.nifi</groupId>
<artifactId>nifi-api</artifactId>
</dependency>
<dependency>
<groupId>org.apache.nifi</groupId>
<artifactId>nifi-properties</artifactId>
</dependency>
<dependency>
<groupId>org.apache.nifi</groupId>
<artifactId>nifi-logging-utils</artifactId>
2023-02-09 17:32:53 -05:00
<version>2.0.0-SNAPSHOT</version>
2014-12-08 15:22:14 -05:00
</dependency>
<dependency>
<groupId>org.apache.nifi</groupId>
<artifactId>nifi-socket-utils</artifactId>
2023-02-09 17:32:53 -05:00
<version>2.0.0-SNAPSHOT</version>
2014-12-08 15:22:14 -05:00
</dependency>
<dependency>
<groupId>org.apache.nifi</groupId>
<artifactId>nifi-framework-core-api</artifactId>
2014-12-08 15:22:14 -05:00
</dependency>
<dependency>
<groupId>org.apache.nifi</groupId>
<artifactId>nifi-security-utils</artifactId>
2023-02-09 17:32:53 -05:00
<version>2.0.0-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>org.apache.nifi</groupId>
<artifactId>nifi-xml-processing</artifactId>
2023-02-09 17:32:53 -05:00
<version>2.0.0-SNAPSHOT</version>
</dependency>
NIFI-9069 Changed framework dataflow serialization to support JSON - Changed framework so that it serializes the dataflow into a VersionedDataflow using JSON as well as XML, and prefers the JSON representation on load, if it's available. This also results in the need for the cluster protocol to exchange its representation of the dataflow to using JSON. Rather than re-implementing all of the complex logic of Flow Fingerprinting, updated to just inherit the cluster's flow. - Moved logic to synchronize Process Group with Versioned Process Group into a new ProcessGroupSynchronizer class instead of having all of the logic within StandardProcessGroup - Reworked versioned components to use an instance id. - Renamed StandardFlowSynchronizer to XmlFlowSynchronizer; introduced new StandardFlowSynchronizer that delegates to the appropriate (Xml or Versioned)FlowSynchronzer - Updated to allow import of VersionedProcessGroup even if not all bundles are available - will now use ghost components - Introduced a VersionedDataflow object to hold controller-level services, reporting tasks, parameter contexts, templates, etc. - Allow mutable requests to be made while nodes are disconnected. Also fixed issue in AbstractPolicyBasedAuthorizer that caused ClassNotFoundException / NoClassDefFoundError if the authorizations were changed and then a node attempts to rejoin the cluster. The Authorizer was attempting to use XmlUtils, which is in nifi-security-utils and so so by madking nifi-security-utils a provided dependency of nifi-framework-api, but this doesn't work, because nifi-framework-api is loaded by a higher-level classloader, so the classloader that loads AbstractPolicyBasedAuthorizer will never have the appropriate classloader to provide nifi-security-utils. Addressed this by copying the code for creating a safe document builder from XmlUtils to AbstractPolicyBasedAuthorizer. - Fixed bug that occurred when importing a Process Group that has 2 parameter contexts, one inheriting from another, where neither is pre-defined in the existing flow - Fixed bug that was encountered when Updating a Versioned Process Group where one version had a disabled processor and the other had the processor running. - Increased system-tests workflow timeout to 120 minutes - Added additional exception handling to system tests This closes #5514 Signed-off-by: David Handermann <exceptionfactory@apache.org>
2021-08-10 14:04:13 -04:00
2014-12-08 15:22:14 -05:00
<!-- spring dependencies -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-beans</artifactId>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
</dependency>
NIFI-9069 Changed framework dataflow serialization to support JSON - Changed framework so that it serializes the dataflow into a VersionedDataflow using JSON as well as XML, and prefers the JSON representation on load, if it's available. This also results in the need for the cluster protocol to exchange its representation of the dataflow to using JSON. Rather than re-implementing all of the complex logic of Flow Fingerprinting, updated to just inherit the cluster's flow. - Moved logic to synchronize Process Group with Versioned Process Group into a new ProcessGroupSynchronizer class instead of having all of the logic within StandardProcessGroup - Reworked versioned components to use an instance id. - Renamed StandardFlowSynchronizer to XmlFlowSynchronizer; introduced new StandardFlowSynchronizer that delegates to the appropriate (Xml or Versioned)FlowSynchronzer - Updated to allow import of VersionedProcessGroup even if not all bundles are available - will now use ghost components - Introduced a VersionedDataflow object to hold controller-level services, reporting tasks, parameter contexts, templates, etc. - Allow mutable requests to be made while nodes are disconnected. Also fixed issue in AbstractPolicyBasedAuthorizer that caused ClassNotFoundException / NoClassDefFoundError if the authorizations were changed and then a node attempts to rejoin the cluster. The Authorizer was attempting to use XmlUtils, which is in nifi-security-utils and so so by madking nifi-security-utils a provided dependency of nifi-framework-api, but this doesn't work, because nifi-framework-api is loaded by a higher-level classloader, so the classloader that loads AbstractPolicyBasedAuthorizer will never have the appropriate classloader to provide nifi-security-utils. Addressed this by copying the code for creating a safe document builder from XmlUtils to AbstractPolicyBasedAuthorizer. - Fixed bug that occurred when importing a Process Group that has 2 parameter contexts, one inheriting from another, where neither is pre-defined in the existing flow - Fixed bug that was encountered when Updating a Versioned Process Group where one version had a disabled processor and the other had the processor running. - Increased system-tests workflow timeout to 120 minutes - Added additional exception handling to system tests This closes #5514 Signed-off-by: David Handermann <exceptionfactory@apache.org>
2021-08-10 14:04:13 -04:00
<dependency>
<groupId>com.fasterxml.jackson.module</groupId>
<artifactId>jackson-module-jaxb-annotations</artifactId>
</dependency>
2014-12-08 15:22:14 -05:00
</dependencies>
NIFI-5176 NiFI builds on Java 11 Added "jigsaw" profile to multiple modules, which auto-activates when building with Java 11 and adds several dependencies: jaxb, activation, and annotation-api. Updated SslContextFactory to return tuple of socket factory with trust manager for issue with okhttp api changes in java 9+ Updated TestGet/PostHTTPGroovy to use default SSL context to get default cipher suites Updated StandardTemplateDAOSpec.groovy, was using a 37-character UUID, shortened to 36 characters. Multiple tests updated to specifically use TLSv1.2, since two-way TLSv1.3 for some component tests fail during the Java 11 build. Needs more investigation. Replaced GString with String concatenation for map key's value in ScriptedReportingTaskGroovyTest to avoid runtime error of casting GString to String when retrieved from a map that is storing the GString Removed nifi-toolkit-api plugin configuration of maven-compiler-plugin, it is inherited Resolved deprecation errors during Groovy compile for bouncycastle, Extension should be used in place of X509Extension Fixed JNAOverridingJUnitRunner's creation of the classpath for the custom classloader created to be able to mock jna classes Removed import of IOUtils (from the wrong package) from InferenceSchemaStrategy Updated maven-compiler-plugin version to 3.8.1 TLS (default in Java 11 is TLSv1.3) working for Site-to-Site client tests after upgrading JDK installation to JDK 11.0.3, httpclient5 5.0-beta4, and httpasyncclient 4.1.4 HttpNotificationService updated to find and use the first found X509TrustManager rather than casting directly from the array of TrustManagers returned from SslContextFactory Removed unnecessary throws declaration from getSslSocketFactory method Replaced DnsContextFactory.class.getName() with a string to avoid having to export/open the jdk.naming.dns module Updated TestGetIgniteCache and TestPutIgniteCache.java to skip tests on Java 11+ (via Assume), and noted the check should be removed once a version of Ignite is released that supports Java 11 Updated SpringContextProcessor to create proper ClassLoader and uses URLClassloader.getResource() instead of URLClassloader.findResource() in isConfigResolvable. Due to the application classloader no longer being a URLClassLoader in Java 9+, the URLClassLoader created in isConfigResolvable no longer has explicit access to the parent's resources as URLs. URLClassLoader.getResource() searches the parent classloaders, and must be used instead of URLClassLoader.findResource() which only searches the URLs in the URLClassLoader and does not search the parent classloaders. NIFI-5176 Moved exclusion of jdk.tools to the jigsaw profile in the POMs of nifi-hbase_1_1_2-client-service and nifi-hbase_2-client-service NIFI-5176 Updated site-to-site-client's POM to use properties to establish the correct httpclient dependency for when building with Java 11 This closes #3404.
2018-11-30 13:14:31 -05:00
<profiles>
<profile>
<!-- This profile, activating when compiling on Java versions above 1.8, provides configuration changes to
allow NiFi to be compiled on those JDKs. -->
<id>jigsaw</id>
<activation>
<jdk>(1.8,)</jdk>
</activation>
<dependencies>
<dependency>
<groupId>jakarta.xml.bind</groupId>
<artifactId>jakarta.xml.bind-api</artifactId>
NIFI-5176 NiFI builds on Java 11 Added "jigsaw" profile to multiple modules, which auto-activates when building with Java 11 and adds several dependencies: jaxb, activation, and annotation-api. Updated SslContextFactory to return tuple of socket factory with trust manager for issue with okhttp api changes in java 9+ Updated TestGet/PostHTTPGroovy to use default SSL context to get default cipher suites Updated StandardTemplateDAOSpec.groovy, was using a 37-character UUID, shortened to 36 characters. Multiple tests updated to specifically use TLSv1.2, since two-way TLSv1.3 for some component tests fail during the Java 11 build. Needs more investigation. Replaced GString with String concatenation for map key's value in ScriptedReportingTaskGroovyTest to avoid runtime error of casting GString to String when retrieved from a map that is storing the GString Removed nifi-toolkit-api plugin configuration of maven-compiler-plugin, it is inherited Resolved deprecation errors during Groovy compile for bouncycastle, Extension should be used in place of X509Extension Fixed JNAOverridingJUnitRunner's creation of the classpath for the custom classloader created to be able to mock jna classes Removed import of IOUtils (from the wrong package) from InferenceSchemaStrategy Updated maven-compiler-plugin version to 3.8.1 TLS (default in Java 11 is TLSv1.3) working for Site-to-Site client tests after upgrading JDK installation to JDK 11.0.3, httpclient5 5.0-beta4, and httpasyncclient 4.1.4 HttpNotificationService updated to find and use the first found X509TrustManager rather than casting directly from the array of TrustManagers returned from SslContextFactory Removed unnecessary throws declaration from getSslSocketFactory method Replaced DnsContextFactory.class.getName() with a string to avoid having to export/open the jdk.naming.dns module Updated TestGetIgniteCache and TestPutIgniteCache.java to skip tests on Java 11+ (via Assume), and noted the check should be removed once a version of Ignite is released that supports Java 11 Updated SpringContextProcessor to create proper ClassLoader and uses URLClassloader.getResource() instead of URLClassloader.findResource() in isConfigResolvable. Due to the application classloader no longer being a URLClassLoader in Java 9+, the URLClassLoader created in isConfigResolvable no longer has explicit access to the parent's resources as URLs. URLClassLoader.getResource() searches the parent classloaders, and must be used instead of URLClassLoader.findResource() which only searches the URLs in the URLClassLoader and does not search the parent classloaders. NIFI-5176 Moved exclusion of jdk.tools to the jigsaw profile in the POMs of nifi-hbase_1_1_2-client-service and nifi-hbase_2-client-service NIFI-5176 Updated site-to-site-client's POM to use properties to establish the correct httpclient dependency for when building with Java 11 This closes #3404.
2018-11-30 13:14:31 -05:00
</dependency>
<dependency>
<groupId>org.glassfish.jaxb</groupId>
<artifactId>jaxb-runtime</artifactId>
NIFI-5176 NiFI builds on Java 11 Added "jigsaw" profile to multiple modules, which auto-activates when building with Java 11 and adds several dependencies: jaxb, activation, and annotation-api. Updated SslContextFactory to return tuple of socket factory with trust manager for issue with okhttp api changes in java 9+ Updated TestGet/PostHTTPGroovy to use default SSL context to get default cipher suites Updated StandardTemplateDAOSpec.groovy, was using a 37-character UUID, shortened to 36 characters. Multiple tests updated to specifically use TLSv1.2, since two-way TLSv1.3 for some component tests fail during the Java 11 build. Needs more investigation. Replaced GString with String concatenation for map key's value in ScriptedReportingTaskGroovyTest to avoid runtime error of casting GString to String when retrieved from a map that is storing the GString Removed nifi-toolkit-api plugin configuration of maven-compiler-plugin, it is inherited Resolved deprecation errors during Groovy compile for bouncycastle, Extension should be used in place of X509Extension Fixed JNAOverridingJUnitRunner's creation of the classpath for the custom classloader created to be able to mock jna classes Removed import of IOUtils (from the wrong package) from InferenceSchemaStrategy Updated maven-compiler-plugin version to 3.8.1 TLS (default in Java 11 is TLSv1.3) working for Site-to-Site client tests after upgrading JDK installation to JDK 11.0.3, httpclient5 5.0-beta4, and httpasyncclient 4.1.4 HttpNotificationService updated to find and use the first found X509TrustManager rather than casting directly from the array of TrustManagers returned from SslContextFactory Removed unnecessary throws declaration from getSslSocketFactory method Replaced DnsContextFactory.class.getName() with a string to avoid having to export/open the jdk.naming.dns module Updated TestGetIgniteCache and TestPutIgniteCache.java to skip tests on Java 11+ (via Assume), and noted the check should be removed once a version of Ignite is released that supports Java 11 Updated SpringContextProcessor to create proper ClassLoader and uses URLClassloader.getResource() instead of URLClassloader.findResource() in isConfigResolvable. Due to the application classloader no longer being a URLClassLoader in Java 9+, the URLClassLoader created in isConfigResolvable no longer has explicit access to the parent's resources as URLs. URLClassLoader.getResource() searches the parent classloaders, and must be used instead of URLClassLoader.findResource() which only searches the URLs in the URLClassLoader and does not search the parent classloaders. NIFI-5176 Moved exclusion of jdk.tools to the jigsaw profile in the POMs of nifi-hbase_1_1_2-client-service and nifi-hbase_2-client-service NIFI-5176 Updated site-to-site-client's POM to use properties to establish the correct httpclient dependency for when building with Java 11 This closes #3404.
2018-11-30 13:14:31 -05:00
</dependency>
</dependencies>
</profile>
</profiles>
2014-12-08 15:22:14 -05:00
</project>