in src/com/epam/digital/data/platform/pipelines/stages/StageFactory.groovy [80:99]
private void loadStages() {
String stagesRelativePath = "com/epam/digital/data/platform/pipelines/stages/impl"
ArrayList<Class> classesList = []
Enumeration<URL> res = Thread.currentThread()
.getContextClassLoader()
.getResources(stagesRelativePath)
File dir = new File(res.nextElement().getFile())
dir.eachDirRecurse() { directory ->
directory.eachFile(FileType.FILES) { file ->
classesList.push(Class.forName("${stagesRelativePath.replaceAll('/', '.')}." +
"${directory.path.replace("${dir.path}/", "").replaceAll('/', '.')}." +
"${file.name.replace(".groovy", "")}"))
}
}
classesList.each {
add(it)
}
}