use of org.talend.core.GlobalServiceRegister in project tbd-studio-se by Talend.
the class ExtractParquetFileSchemaService method initJarLibrary.
private void initJarLibrary() {
List<File> libList = new ArrayList<File>();
List<String> jars = new ArrayList<String>();
List<File> jarFileList = new ArrayList<File>();
List<ModuleNeeded> modulesNeeded = new ArrayList<ModuleNeeded>();
if (classLoader instanceof DynamicClassLoader) {
GlobalServiceRegister register = GlobalServiceRegister.getDefault();
DynamicClassLoader loader = (DynamicClassLoader) classLoader;
String libStorePath = loader.getLibStorePath();
File libFolder = new File(libStorePath);
File[] listFiles = libFolder.listFiles();
libList = Arrays.asList(listFiles);
if (register.isServiceRegistered(IComponentsService.class)) {
IComponentsService componentsService = register.getService(IComponentsService.class);
IComponent component = componentsService.getComponentsFactory().get("tFileInputParquet", ComponentCategory.CATEGORY_4_DI.getName());
modulesNeeded = component.getModulesNeeded();
modulesNeeded.forEach(module -> {
jars.add(module.getMavenUri());
jarFileList.add(new File(libStorePath + "/" + module.getModuleName()));
});
}
if (register.isServiceRegistered(ILibraryManagerService.class)) {
ILibraryManagerService service = GlobalServiceRegister.getDefault().getService(ILibraryManagerService.class);
service.retrieve(jars, libStorePath, true, new NullProgressMonitor());
}
for (File jarFile : jarFileList) {
loader.addLibrary(jarFile.getAbsolutePath());
}
}
}
use of org.talend.core.GlobalServiceRegister in project tesb-studio-se by Talend.
the class CamelNewBeanWizard method refreshLibrariesListForTheBean.
private void refreshLibrariesListForTheBean() {
GlobalServiceRegister globalServiceRegister = GlobalServiceRegister.getDefault();
if (globalServiceRegister.isServiceRegistered(IRunProcessService.class)) {
IRunProcessService runProcessService = globalServiceRegister.getService(IRunProcessService.class);
MavenPomSynchronizer.addChangeLibrariesListener();
runProcessService.updateLibraries((RoutineItem) beanItem.getProperty().getItem());
}
}
Aggregations