forage-catalog
Used in:
components
- OverviewOverview
- VersionsVersions
- DependentsDependents
- DependenciesDependencies
<dependency>
<groupId>io.kaoto.forage</groupId>
<artifactId>forage-catalog</artifactId>
<version>1.5.0</version>
</dependency><?xml version="1.0" encoding="UTF-8"?>
<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 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>io.kaoto.forage</groupId>
<artifactId>forage</artifactId>
<version>1.5.0</version>
</parent>
<artifactId>forage-catalog</artifactId>
<packaging>jar</packaging>
<name>Forage :: Catalog</name>
<description>Generated catalog of all Forage components</description>
<dependencies>
<!-- Catalog model - required for JSON schema generation -->
<dependency>
<groupId>io.kaoto.forage</groupId>
<artifactId>forage-catalog-model</artifactId>
<version>${project.version}</version>
</dependency>
<!--
All dependencies below are optional: they are needed at build time
by the forage-maven-catalog-plugin to scan annotations and generate
the catalog JSON, but consumers of this artifact only need the
generated JSON files (plus forage-catalog-model for deserialization).
-->
<!-- Forage modules with ForageBean annotations - required for complete catalog generation -->
<dependency>
<groupId>io.kaoto.forage</groupId>
<artifactId>forage-agent-factories</artifactId>
<version>${project.version}</version>
<optional>true</optional>
</dependency>
<dependency>
<groupId>io.kaoto.forage</groupId>
<artifactId>forage-agent</artifactId>
<version>${project.version}</version>
<optional>true</optional>
</dependency>
<dependency>
<groupId>io.kaoto.forage</groupId>
<artifactId>forage-quarkus-agent-deployment</artifactId>
<version>${project.version}</version>
<optional>true</optional>
<exclusions>
<exclusion>
<groupId>org.apache.camel.quarkus</groupId>
<artifactId>camel-quarkus-core-deployment</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>io.kaoto.forage</groupId>
<artifactId>forage-agent-starter</artifactId>
<version>${project.version}</version>
<optional>true</optional>
</dependency>
<!-- Vector Database Modules -->
<dependency>
<groupId>io.kaoto.forage</groupId>
<artifactId>forage-vectordb-infinispan</artifactId>
<version>${project.version}</version>
<optional>true</optional>
</dependency>
<dependency>
<groupId>io.kaoto.forage</groupId>
<artifactId>forage-vectordb-mariadb</artifactId>
<version>${project.version}</version>
<optional>true</optional>
</dependency>
<dependency>
<groupId>io.kaoto.forage</groupId>
<artifactId>forage-vectordb-default</artifactId>
<version>${project.version}</version>
<optional>true</optional>
</dependency>
<dependency>
<groupId>io.kaoto.forage</groupId>
<artifactId>forage-vectordb-chroma</artifactId>
<version>${project.version}</version>
<optional>true</optional>
</dependency>
<dependency>
<groupId>io.kaoto.forage</groupId>
<artifactId>forage-vectordb-redis</artifactId>
<version>${project.version}</version>
<optional>true</optional>
</dependency>
<dependency>
<groupId>io.kaoto.forage</groupId>
<artifactId>forage-vectordb-pgvector</artifactId>
<version>${project.version}</version>
<optional>true</optional>
</dependency>
<dependency>
<groupId>io.kaoto.forage</groupId>
<artifactId>forage-vectordb-milvus</artifactId>
<version>${project.version}</version>
<optional>true</optional>
</dependency>
<dependency>
<groupId>io.kaoto.forage</groupId>
<artifactId>forage-vectordb-weaviate</artifactId>
<version>${project.version}</version>
<optional>true</optional>
</dependency>
<dependency>
<groupId>io.kaoto.forage</groupId>
<artifactId>forage-vectordb-qdrant</artifactId>
<version>${project.version}</version>
<optional>true</optional>
</dependency>
<dependency>
<groupId>io.kaoto.forage</groupId>
<artifactId>forage-vectordb-pinecone</artifactId>
<version>${project.version}</version>
<optional>true</optional>
</dependency>
<dependency>
<groupId>io.kaoto.forage</groupId>
<artifactId>forage-vectordb-neo4j</artifactId>
<version>${project.version}</version>
<optional>true</optional>
</dependency>
<!-- Chat Memory Modules -->
<dependency>
<groupId>io.kaoto.forage</groupId>
<artifactId>forage-memory-infinispan</artifactId>
<version>${project.version}</version>
<optional>true</optional>
</dependency>
<dependency>
<groupId>io.kaoto.forage</groupId>
<artifactId>forage-memory-redis</artifactId>
<version>${project.version}</version>
<optional>true</optional>
</dependency>
<dependency>
<groupId>io.kaoto.forage</groupId>
<artifactId>forage-memory-message-window</artifactId>
<version>${project.version}</version>
<optional>true</optional>
</dependency>
<!-- Guardrail Modules -->
<dependency>
<groupId>io.kaoto.forage</groupId>
<artifactId>forage-guardrails-input</artifactId>
<version>${project.version}</version>
<optional>true</optional>
</dependency>
<dependency>
<groupId>io.kaoto.forage</groupId>
<artifactId>forage-guardrails-output</artifactId>
<version>${project.version}</version>
<optional>true</optional>
</dependency>
<!-- AI Model Modules -->
<dependency>
<groupId>io.kaoto.forage</groupId>
<artifactId>forage-model-azure-openai</artifactId>
<version>${project.version}</version>
<optional>true</optional>
</dependency>
<dependency>
<groupId>io.kaoto.forage</groupId>
<artifactId>forage-model-open-ai</artifactId>
<version>${project.version}</version>
<optional>true</optional>
</dependency>
<dependency>
<groupId>io.kaoto.forage</groupId>
<artifactId>forage-model-ollama</artifactId>
<version>${project.version}</version>
<optional>true</optional>
</dependency>
<dependency>
<groupId>io.kaoto.forage</groupId>
<artifactId>forage-model-google-gemini</artifactId>
<version>${project.version}</version>
<optional>true</optional>
</dependency>
<dependency>
<groupId>io.kaoto.forage</groupId>
<artifactId>forage-model-anthropic</artifactId>
<version>${project.version}</version>
<optional>true</optional>
</dependency>
<dependency>
<groupId>io.kaoto.forage</groupId>
<artifactId>forage-model-bedrock</artifactId>
<version>${project.version}</version>
<optional>true</optional>
</dependency>
<dependency>
<groupId>io.kaoto.forage</groupId>
<artifactId>forage-model-dashscope</artifactId>
<version>${project.version}</version>
<optional>true</optional>
</dependency>
<dependency>
<groupId>io.kaoto.forage</groupId>
<artifactId>forage-model-hugging-face</artifactId>
<version>${project.version}</version>
<optional>true</optional>
</dependency>
<dependency>
<groupId>io.kaoto.forage</groupId>
<artifactId>forage-model-local-ai</artifactId>
<version>${project.version}</version>
<optional>true</optional>
</dependency>
<dependency>
<groupId>io.kaoto.forage</groupId>
<artifactId>forage-model-mistral-ai</artifactId>
<version>${project.version}</version>
<optional>true</optional>
</dependency>
<dependency>
<groupId>io.kaoto.forage</groupId>
<artifactId>forage-model-watsonx-ai</artifactId>
<version>${project.version}</version>
<optional>true</optional>
</dependency>
<!-- Embedding Model Modules -->
<dependency>
<groupId>io.kaoto.forage</groupId>
<artifactId>forage-model-embeddings-ollama</artifactId>
<version>${project.version}</version>
<optional>true</optional>
</dependency>
<!-- RAG Modules -->
<dependency>
<groupId>io.kaoto.forage</groupId>
<artifactId>forage-default-retrieval-augmentor</artifactId>
<version>${project.version}</version>
<optional>true</optional>
</dependency>
<!-- In-Memory Vector Store -->
<dependency>
<groupId>io.kaoto.forage</groupId>
<artifactId>forage-in-memory-store</artifactId>
<version>${project.version}</version>
<optional>true</optional>
</dependency>
<!-- JDBC modules -->
<dependency>
<groupId>io.kaoto.forage</groupId>
<artifactId>forage-jdbc-common</artifactId>
<version>${project.version}</version>
<optional>true</optional>
</dependency>
<dependency>
<groupId>io.kaoto.forage</groupId>
<artifactId>forage-jdbc</artifactId>
<version>${project.version}</version>
<optional>true</optional>
</dependency>
<dependency>
<groupId>io.kaoto.forage</groupId>
<artifactId>forage-jdbc-starter</artifactId>
<version>${project.version}</version>
<optional>true</optional>
</dependency>
<dependency>
<groupId>io.kaoto.forage</groupId>
<artifactId>forage-quarkus-jdbc-deployment</artifactId>
<version>${project.version}</version>
<optional>true</optional>
<exclusions>
<exclusion>
<groupId>org.apache.camel.quarkus</groupId>
<artifactId>camel-quarkus-core-deployment</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>io.kaoto.forage</groupId>
<artifactId>forage-jdbc-postgresql</artifactId>
<version>${project.version}</version>
<optional>true</optional>
</dependency>
<dependency>
<groupId>io.kaoto.forage</groupId>
<artifactId>forage-jdbc-db2</artifactId>
<version>${project.version}</version>
<optional>true</optional>
</dependency>
<dependency>
<groupId>io.kaoto.forage</groupId>
<artifactId>forage-jdbc-h2</artifactId>
<version>${project.version}</version>
<optional>true</optional>
</dependency>
<dependency>
<groupId>io.kaoto.forage</groupId>
<artifactId>forage-jdbc-hsqldb</artifactId>
<version>${project.version}</version>
<optional>true</optional>
</dependency>
<dependency>
<groupId>io.kaoto.forage</groupId>
<artifactId>forage-jdbc-mariadb</artifactId>
<version>${project.version}</version>
<optional>true</optional>
</dependency>
<dependency>
<groupId>io.kaoto.forage</groupId>
<artifactId>forage-jdbc-mssql</artifactId>
<version>${project.version}</version>
<optional>true</optional>
</dependency>
<dependency>
<groupId>io.kaoto.forage</groupId>
<artifactId>forage-jdbc-mysql</artifactId>
<version>${project.version}</version>
<optional>true</optional>
</dependency>
<dependency>
<groupId>io.kaoto.forage</groupId>
<artifactId>forage-jdbc-oracle</artifactId>
<version>${project.version}</version>
<optional>true</optional>
</dependency>
<dependency>
<groupId>io.kaoto.forage</groupId>
<artifactId>forage-jms</artifactId>
<version>${project.version}</version>
<optional>true</optional>
</dependency>
<dependency>
<groupId>io.kaoto.forage</groupId>
<artifactId>forage-jms-artemis</artifactId>
<version>${project.version}</version>
<optional>true</optional>
</dependency>
<dependency>
<groupId>io.kaoto.forage</groupId>
<artifactId>forage-jms-common</artifactId>
<version>${project.version}</version>
<optional>true</optional>
</dependency>
<dependency>
<groupId>io.kaoto.forage</groupId>
<artifactId>forage-jms-ibmmq</artifactId>
<version>${project.version}</version>
<optional>true</optional>
</dependency>
<dependency>
<groupId>io.kaoto.forage</groupId>
<artifactId>forage-jms-starter</artifactId>
<version>${project.version}</version>
<optional>true</optional>
</dependency>
<dependency>
<groupId>io.kaoto.forage</groupId>
<artifactId>forage-quarkus-jms-deployment</artifactId>
<version>${project.version}</version>
<optional>true</optional>
<exclusions>
<exclusion>
<groupId>org.apache.camel.quarkus</groupId>
<artifactId>camel-quarkus-core-deployment</artifactId>
</exclusion>
</exclusions>
</dependency>
<!-- CXF Modules -->
<dependency>
<groupId>io.kaoto.forage</groupId>
<artifactId>forage-cxf</artifactId>
<version>${project.version}</version>
<optional>true</optional>
</dependency>
<dependency>
<groupId>io.kaoto.forage</groupId>
<artifactId>forage-cxf-soap</artifactId>
<version>${project.version}</version>
<optional>true</optional>
</dependency>
<dependency>
<groupId>io.kaoto.forage</groupId>
<artifactId>forage-cxf-starter</artifactId>
<version>${project.version}</version>
<optional>true</optional>
</dependency>
<dependency>
<groupId>io.kaoto.forage</groupId>
<artifactId>forage-quarkus-cxf-deployment</artifactId>
<version>${project.version}</version>
<optional>true</optional>
<exclusions>
<exclusion>
<groupId>org.apache.camel.quarkus</groupId>
<artifactId>camel-quarkus-core-deployment</artifactId>
</exclusion>
</exclusions>
</dependency>
<!-- Messaging Modules -->
<dependency>
<groupId>io.kaoto.forage</groupId>
<artifactId>forage-spring-rabbitmq</artifactId>
<version>${project.version}</version>
<optional>true</optional>
</dependency>
<dependency>
<groupId>io.kaoto.forage</groupId>
<artifactId>forage-spring-rabbitmq-starter</artifactId>
<version>${project.version}</version>
<optional>true</optional>
</dependency>
<dependency>
<groupId>io.kaoto.forage</groupId>
<artifactId>forage-quarkus-spring-rabbitmq-deployment</artifactId>
<version>${project.version}</version>
<optional>true</optional>
<exclusions>
<exclusion>
<groupId>org.apache.camel.quarkus</groupId>
<artifactId>camel-quarkus-core-deployment</artifactId>
</exclusion>
</exclusions>
</dependency>
<!-- Cloud Modules -->
<dependency>
<groupId>io.kaoto.forage</groupId>
<artifactId>forage-azure-eventhubs</artifactId>
<version>${project.version}</version>
<optional>true</optional>
</dependency>
<!-- Vert.x Modules -->
<dependency>
<groupId>io.kaoto.forage</groupId>
<artifactId>forage-vertx</artifactId>
<version>${project.version}</version>
<optional>true</optional>
</dependency>
<!-- Security Policy Modules -->
<dependency>
<groupId>io.kaoto.forage</groupId>
<artifactId>forage-security-shiro</artifactId>
<version>${project.version}</version>
<optional>true</optional>
</dependency>
<dependency>
<groupId>io.kaoto.forage</groupId>
<artifactId>forage-security-spring</artifactId>
<version>${project.version}</version>
<optional>true</optional>
</dependency>
<dependency>
<groupId>io.kaoto.forage</groupId>
<artifactId>forage-security-keycloak</artifactId>
<version>${project.version}</version>
<optional>true</optional>
</dependency>
<!-- Route Policy Modules -->
<dependency>
<groupId>io.kaoto.forage</groupId>
<artifactId>forage-policy-factory</artifactId>
<version>${project.version}</version>
<optional>true</optional>
</dependency>
<dependency>
<groupId>io.kaoto.forage</groupId>
<artifactId>forage-policy-flip</artifactId>
<version>${project.version}</version>
<optional>true</optional>
</dependency>
<dependency>
<groupId>io.kaoto.forage</groupId>
<artifactId>forage-policy-schedule</artifactId>
<version>${project.version}</version>
<optional>true</optional>
</dependency>
</dependencies>
<build>
<plugins>
<!-- Forage Maven Catalog Plugin -->
<plugin>
<groupId>io.kaoto.forage</groupId>
<artifactId>forage-maven-catalog-plugin</artifactId>
<version>${project.version}</version>
<configuration>
<outputDirectory>${project.build.directory}/generated-catalog</outputDirectory>
<format>all</format>
</configuration>
<executions>
<execution>
<id>generate-catalog</id>
<goals>
<goal>generate-catalog</goal>
</goals>
<phase>process-classes</phase>
</execution>
</executions>
</plugin>
<!-- JSON Schema Generator Plugin -->
<plugin>
<groupId>com.github.victools</groupId>
<artifactId>jsonschema-maven-plugin</artifactId>
<version>${jsonschema-maven-plugin.version}</version>
<executions>
<execution>
<id>generate-schema</id>
<phase>process-classes</phase>
<goals>
<goal>generate</goal>
</goals>
<configuration>
<classNames>
<className>io.kaoto.forage.catalog.model.ForageCatalog</className>
</classNames>
<schemaFileName>forage-catalog.schema.json</schemaFileName>
</configuration>
</execution>
<execution>
<id>generate-configuration-schema</id>
<phase>process-classes</phase>
<goals>
<goal>generate</goal>
</goals>
<configuration>
<classNames>
<className>io.kaoto.forage.catalog.model.ForageConfigurationCatalog</className>
</classNames>
<schemaFileName>forage-configuration-catalog.schema.json</schemaFileName>
</configuration>
</execution>
</executions>
<configuration>
<classpath>WITH_COMPILE_DEPENDENCIES</classpath>
<schemaFilePath>${project.build.directory}/generated-catalog</schemaFilePath>
<schemaVersion>DRAFT_2020_12</schemaVersion>
<options>
<preset>PLAIN_JSON</preset>
<enabled>
<option>DEFINITIONS_FOR_ALL_OBJECTS</option>
<option>EXTRA_OPEN_API_FORMAT_VALUES</option>
</enabled>
</options>
<modules>
<module>
<name>Jackson</name>
<options>
<option>RESPECT_JSONPROPERTY_ORDER</option>
<option>RESPECT_JSONPROPERTY_REQUIRED</option>
</options>
</module>
</modules>
</configuration>
</plugin>
<!-- Copy generated catalog files to resources -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-resources-plugin</artifactId>
<version>${maven-resources-plugin.version}</version>
<executions>
<execution>
<id>copy-catalog-to-resources</id>
<phase>prepare-package</phase>
<goals>
<goal>copy-resources</goal>
</goals>
<configuration>
<outputDirectory>${project.build.outputDirectory}/catalog</outputDirectory>
<resources>
<resource>
<directory>${project.build.directory}/generated-catalog</directory>
<includes>
<include>**/*</include>
</includes>
</resource>
</resources>
</configuration>
</execution>
</executions>
</plugin>
<!-- Attach catalog files as additional artifacts -->
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
<version>${build-helper-maven-plugin.version}</version>
<executions>
<execution>
<id>attach-catalog-json</id>
<phase>package</phase>
<goals>
<goal>attach-artifact</goal>
</goals>
<configuration>
<artifacts>
<artifact>
<file>${project.build.directory}/generated-catalog/forage-catalog.json</file>
<type>json</type>
<classifier>catalog</classifier>
</artifact>
<artifact>
<file>${project.build.directory}/generated-catalog/forage-configuration-catalog.json</file>
<type>json</type>
<classifier>configuration-catalog</classifier>
</artifact>
</artifacts>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>