<?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">
    <modelVersion>4.0.0</modelVersion>
    <parent>
        <groupId>org.apache.nifi</groupId>
        <artifactId>nifi</artifactId>
        <version>1.13.1</version>
    </parent>
    <groupId>org.apache.nifi</groupId>
    <artifactId>nifi-commons</artifactId>
    <packaging>pom</packaging>
    <modules>
        <module>nifi-data-provenance-utils</module>
        <module>nifi-expression-language</module>
        <module>nifi-flowfile-packager</module>
        <module>nifi-hl7-query-language</module>
        <module>nifi-json-utils</module>
        <module>nifi-logging-utils</module>
        <module>nifi-metrics</module>
        <module>nifi-parameter</module>
        <module>nifi-properties</module>
        <module>nifi-record</module>
        <module>nifi-record-path</module>
        <module>nifi-rocksdb-utils</module>
        <module>nifi-schema-utils</module>
        <module>nifi-security-utils-api</module>
        <module>nifi-security-utils</module>
        <module>nifi-site-to-site-client</module>
        <module>nifi-socket-utils</module>
        <module>nifi-utils</module>
        <module>nifi-uuid5</module>
        <module>nifi-web-utils</module>
        <module>nifi-write-ahead-log</module>
    </modules>
</project>
