@Override public List<ModuleNeeded> getModulesNeededForJobs() throws PersistenceException { List<ModuleNeeded> importNeedsList = new ArrayList<ModuleNeeded>(); IProxyRepositoryFactory repositoryFactory = CoreRuntimePlugin.getInstance().getRepositoryService().getProxyRepositoryFactory(); ERepositoryObjectType jobType = ERepositoryObjectType.PROCESS; if (jobType != null) { List<IRepositoryViewObject> jobs = repositoryFactory.getAll(jobType, true); for (IRepositoryViewObject cur : jobs) { if (!cur.isDeleted()) { ProcessItem item = (ProcessItem) cur.getProperty().getItem(); if (item == null || item.getProcess() == null) { continue; } List<NodeType> nodes = item.getProcess().getNode(); for (NodeType node : nodes) { List<ElementParameterType> elementParameter = node.getElementParameter(); for (ElementParameterType elementParam : elementParameter) { if (elementParam.getField() != null && elementParam.getField().equals(EParameterFieldType.MODULE_LIST.getName())) { String uniquename = coreSerivce.getParameterUNIQUENAME(node); ModuleNeeded toAdd = new ModuleNeeded( Messages.getString("AbstractEMFRepositoryFactory.job") + item.getProperty().getLabel(), // $NON-NLS-1$ elementParam.getValue(), Messages.getString("AbstractEMFRepositoryFactory.requiredComponent") + uniquename + ".", true); //$NON-NLS-1$ //$NON-NLS-2$ importNeedsList.add(toAdd); } } } } } } return importNeedsList; }