in src/main/java/org/apache/nifi/NarMojo.java [705:719]
private Map<String,Object> getDocumentationServiceAPIs(Class<?> serviceApiClass, Map<String,ServiceAPIDefinition> serviceDefinitions)
throws NoSuchMethodException, InstantiationException, IllegalAccessException, InvocationTargetException {
final Constructor<?> ctr = serviceApiClass.getConstructor(String.class, String.class, String.class, String.class);
final Map<String,Object> providedServices = new HashMap<>();
for (final Map.Entry<String,ServiceAPIDefinition> entry : serviceDefinitions.entrySet()) {
final String propName = entry.getKey();
final ServiceAPIDefinition definition = entry.getValue();
final Object serviceApi = ctr.newInstance(definition.getServiceAPIClassName(), definition.getServiceGroupId(), definition.getServiceArtifactId(), definition.getServiceVersion());
providedServices.put(propName, serviceApi);
}
return providedServices;
}