in tooling/camel-kafka-connector-catalog-descriptor-maven-plugin/src/main/java/org/apache/camel/kafkaconnector/maven/catalog/descriptor/CollectConnectorDescriptorMojo.java [72:101]
protected void executeComponentsReadme() throws IOException {
getLog().info("About to scan all projects in" + connectorsDir + " in order to gather descriptors files");
if (connectorsDir != null && connectorsDir.isDirectory()) {
File[] files = connectorsDir.listFiles();
getLog().info("Found " + (files != null ? String.valueOf(files.length) : "0") + "directories:");
if (files != null) {
Arrays.sort(files);
Stream.of(files).filter(f -> f.isDirectory()).forEach(f -> getLog().info(f.getPath()));
StringBuilder sb = new StringBuilder();
for (int i = 0; i < files.length; i++) {
File file = files[i];
if (file.isDirectory()) {
fillStringBuilderWithContentOf(sb, file, "src/generated/descriptors/connector-source.properties");
fillStringBuilderWithContentOf(sb, file, "src/generated/descriptors/connector-sink.properties");
}
}
File file = FileUtils.getFile(catalogDescriptorDir, "connectors.properties");
getLog().info("About to write descriptor to: " + catalogDescriptorDir);
if (!file.exists()) {
// Create the structure
File parent = file.getParentFile();
parent.mkdirs();
}
file.createNewFile();
try (BufferedWriter writer = new BufferedWriter(new FileWriter(file))) {
writer.write(sb.toString());
}
}
}
}