<?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-nar-bundles</artifactId>
        <version>1.11.3-SNAPSHOT</version>
    </parent>
    <artifactId>nifi-standard-services</artifactId>
    <packaging>pom</packaging>
    <modules>
        <module>nifi-distributed-cache-client-service-api</module>
        <module>nifi-distributed-cache-services-bundle</module>
        <module>nifi-load-distribution-service-api</module>
        <module>nifi-http-context-map-api</module>
        <module>nifi-lookup-service-api</module>
        <module>nifi-lookup-services-bundle</module>
        <module>nifi-ssl-context-bundle</module>
        <module>nifi-ssl-context-service-api</module>
        <module>nifi-http-context-map-bundle</module>
        <module>nifi-standard-services-api-nar</module>
        <module>nifi-dbcp-service-api</module>
        <module>nifi-dbcp-service-bundle</module>
        <module>nifi-hbase-client-service-api</module>
        <module>nifi-hbase_1_1_2-client-service-bundle</module>
	<module>nifi-hbase_2-client-service-bundle</module>
        <module>nifi-schema-registry-service-api</module>
        <module>nifi-record-serialization-service-api</module>
        <module>nifi-record-serialization-services-bundle</module>
        <module>nifi-hwx-schema-registry-bundle</module>
        <module>nifi-kerberos-credentials-service-api</module>
        <module>nifi-kerberos-credentials-service-bundle</module>
        <module>nifi-proxy-configuration-api</module>
        <module>nifi-proxy-configuration-bundle</module>
        <module>nifi-rules-engine-service-api</module>
        <module>nifi-record-sink-api</module>
    </modules>
</project>
