46.2. 生成される API サブプロジェクト
概要
「Maven archetype でのコードの生成」の説明どおりに新しい Maven プロジェクトを生成した場合、camel-api-example/camel-api-example-api
プロジェクトディレクトリーに Java API をパッケージ化するための Maven サブプロジェクトがあります。このセクションでは、生成されたサンプルコードの詳細と、その動作を説明します。
Java API のサンプル
生成されたサンプルコードには、API コンポーネントのベースとなるサンプル Java API が含まれています。サンプル Java API は比較的シンプルで、2 つの Hello World クラス (ExampleJavadocHello
および ExampleFileHello
) で設定されています。
ExampleJavadocHello クラス
例46.1「ExampleJavadocHello クラス」 は、サンプル Java API からの ExampleJavadocHello
クラスを示しています。クラスの名前が示すように、このクラスは Javadoc からマッピングメタデータを提供する方法を示すために使用されます。
例46.1 ExampleJavadocHello クラス
// 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 クラス
例46.2「ExampleFileHello クラス」 は、サンプル Java API からの ExampleFileHello
クラスを示しています。クラスの名前が示すように、このクラスは署名ファイルからマッピングメタデータを提供する方法を示すために使用されます。
例46.2 ExampleFileHello クラス
// 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 ビルド中にこの手順を自動的に実行するように maven-javadoc-plugin
を設定します。