<?xml version="1.0"?>
<!--
  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">
    <modelVersion>4.0.0</modelVersion>
    <parent>
        <groupId>org.apache.nifi</groupId>
        <artifactId>nifi-nar-bundles</artifactId>
        <version>1.19.1-SNAPSHOT</version>
    </parent>
    <packaging>pom</packaging>
    <artifactId>nifi-extension-utils</artifactId>
    <description>
        This module contains reusable utilities related to extensions that can be shared across NARs.
    </description>

    <modules>
        <module>nifi-bin-manager</module>
        <module>nifi-database-utils</module>
        <module>nifi-database-test-utils</module>
        <module>nifi-dbcp-base</module>
        <module>nifi-event-listen</module>
        <module>nifi-event-put</module>
        <module>nifi-event-transport</module>
        <module>nifi-hadoop-utils</module>
        <module>nifi-kerberos-test-utils</module>
        <module>nifi-listed-entity</module>
        <module>nifi-prometheus-utils</module>
        <module>nifi-put-pattern</module>
        <module>nifi-record-utils</module>
        <module>nifi-reporting-utils</module>
        <module>nifi-service-utils</module>
        <module>nifi-syslog-utils</module>
    </modules>
</project>
