46.2. 生成的 API 子项目

概述

假设您生成了一个新的 Maven 项目(如 第 46.1 节 “使用 Maven Archetype 生成代码” 所述),您现在可以查找 Maven 子项目,以便在 camel-api- example/camel-api-example-api-example-api 项目目录中打包 Java API。在本节中,我们将仔细查看生成的示例代码并描述它的工作原理。

Sample Java API

生成的示例代码包含示例 Java API,示例 API 组件基于这个示例。示例 Java API相对简单,仅包含两个 Hello World 类: ExampleJavadocHelloExampleFileHello

示例JavadocHello 类

例 46.1 “示例JavadocHello 类” 显示示例 Java API 中的 ExampleJavadocHello 类。根据类的名称,特定的类用于显示如何提供 Javadoc 映射元数据。

例 46.1. 示例JavadocHello 类

// Java
package org.jboss.fuse.example.api;

/**
 * Sample API used by Example Component whose method signatures are read from Javadoc.
 */
public class ExampleJavadocHello {

    public String sayHi() {
        return "Hello!";
    }

    public String greetMe(String name) {
        return "Hello " + name;
    }

    public String greetUs(String name1, String name2) {
            return "Hello " + name1 + ", " + name2;
    }
}

ExampleFileHello class

例 46.2 “ExampleFileHello class” 显示示例 Java API 中的 ExampleFileHello 类。根据类的名称,使用这个特定类来显示如何从签名文件中提供映射元数据。

例 46.2. ExampleFileHello class

// Java
package org.jboss.fuse.example.api;

/**
 * Sample API used by Example Component whose method signatures are read from File.
 */
public class ExampleFileHello {

    public String sayHi() {
        return "Hello!";
    }

    public String greetMe(String name) {
        return "Hello " + name;
    }

    public String greetUs(String name1, String name2) {
            return "Hello " + name1 + ", " + name2;
    }
}

为 ExampleJavadocHello 生成 Javadoc 元数据

因为 ExampleJavadocHello 的元数据作为 Javadoc 提供,因此需要为示例 Java API 生成 Javadoc 并将其安装到 camel-api-example-api Maven 构件中。API POM 文件 camel-api-example-api/pom.xml 配置 maven-javadoc-plugin,以在 Maven 构建期间自动执行此步骤。