@Override
 public void generateItemFiles(boolean withDependencies, IProgressMonitor monitor)
     throws Exception {
   if (!isOptionChoosed(ExportChoice.needJobItem)) {
     return;
   }
   IFolder baseFolder = talendProcessJavaProject.getItemsFolder();
   baseFolder =
       baseFolder.getFolder(
           JavaResourcesHelper.getJobFolderName(
               processItem.getProperty().getLabel(), processItem.getProperty().getVersion()));
   if (baseFolder.exists()) {
     talendProcessJavaProject.cleanFolder(monitor, baseFolder);
   } else {
     baseFolder.create(true, true, null);
   }
   IFolder itemsFolder = baseFolder.getFolder("items"); // $NON-NLS-1$
   itemsFolder.create(true, true, monitor);
   List<Item> items = new ArrayList<Item>();
   items.add(processItem);
   ExportItemUtil exportItemUtil = new ExportItemUtil();
   if (withDependencies) {
     Collection<IRepositoryViewObject> allProcessDependencies =
         ProcessUtils.getAllProcessDependencies(items);
     for (IRepositoryViewObject repositoryObject : allProcessDependencies) {
       items.add(repositoryObject.getProperty().getItem());
     }
   }
   File destination = new File(itemsFolder.getLocation().toFile().getAbsolutePath());
   exportItemUtil.setProjectNameAsLowerCase(isProjectNameLowerCase());
   exportItemUtil.exportItems(
       destination, new ArrayList<Item>(items), false, new NullProgressMonitor());
   addDQDependencies(itemsFolder, items);
   addTDMDependencies(itemsFolder, items);
 }
 protected String getOptionString(String key) {
   return ProcessUtils.getOptionValue(getArgumentsMap(), key, (String) null);
 }
 protected boolean isOptionChecked(String key, Object... args) {
   return ProcessUtils.isOptionChecked(getArgumentsMap(), key, args);
 }