List of usage examples for org.eclipse.jface.dialogs MessageDialog openQuestion
public static boolean openQuestion(Shell parent, String title, String message)
From source file:com.centurylink.mdw.plugin.designer.properties.ProjectSection.java
License:Apache License
public void setSelection(WorkflowElement selection) { if (project != null) project.removeElementChangeListener(this); project = (WorkflowProject) selection; project.addElementChangeListener(this); // dispose controls to render dynamically if (sourceProjectEditor != null) sourceProjectEditor.dispose();/* w ww. j a v a 2 s .c o m*/ if (jdbcUrlEditor != null) jdbcUrlEditor.dispose(); if (hostEditor != null) hostEditor.dispose(); if (portEditor != null) portEditor.dispose(); if (webContextRootEditor != null) webContextRootEditor.dispose(); if (updateServerCacheEditor != null) updateServerCacheEditor.dispose(); if (localProjectEditor != null) localProjectEditor.dispose(); if (localProjectInfoEditor != null) localProjectInfoEditor.dispose(); if (mdwVersionEditor != null) mdwVersionEditor.dispose(); if (appVersionEditor != null) appVersionEditor.dispose(); // source project text field sourceProjectEditor = new PropertyEditor(project, PropertyEditor.TYPE_TEXT); sourceProjectEditor.setLabel("Source Project"); sourceProjectEditor.setWidth(200); sourceProjectEditor.render(composite); sourceProjectEditor.setValue(project.getSourceProjectName()); sourceProjectEditor.setEditable(false); // jdbc url text field jdbcUrlEditor = new PropertyEditor(project, PropertyEditor.TYPE_TEXT); jdbcUrlEditor.setLabel("JDBC URL"); jdbcUrlEditor.addValueChangeListener(new ValueChangeListener() { public void propertyValueChanged(Object newValue) { project.getMdwDataSource().setJdbcUrlWithCredentials(((String) newValue).trim()); project.getMdwDataSource().setEntrySource("projectSection"); WorkflowProjectManager.updateProject(project); project.fireElementChangeEvent(ChangeType.SETTINGS_CHANGE, project.getMdwDataSource()); } }); jdbcUrlEditor.render(composite); jdbcUrlEditor.setValue(project.getMdwDataSource().getJdbcUrlWithMaskedCredentials()); jdbcUrlEditor.setEditable(!project.isReadOnly()); // host text field hostEditor = new PropertyEditor(project, PropertyEditor.TYPE_TEXT); hostEditor.setLabel("Server Host"); hostEditor.addValueChangeListener(new ValueChangeListener() { public void propertyValueChanged(Object newValue) { project.getServerSettings().setHost((String) newValue); WorkflowProjectManager.updateProject(project); project.fireElementChangeEvent(ChangeType.SETTINGS_CHANGE, project.getServerSettings()); } }); hostEditor.render(composite); hostEditor.setValue(project.getServerSettings().getHost()); hostEditor.setEditable(!project.isReadOnly()); // port text field portEditor = new PropertyEditor(project, PropertyEditor.TYPE_TEXT); portEditor.setLabel("Server Port"); portEditor.addValueChangeListener(new ValueChangeListener() { public void propertyValueChanged(Object newValue) { project.getServerSettings().setPort(Integer.parseInt(((String) newValue).trim())); WorkflowProjectManager.updateProject(project); project.fireElementChangeEvent(ChangeType.SETTINGS_CHANGE, project.getServerSettings()); } }); portEditor.render(composite); portEditor.setValue(project.getServerSettings().getPort()); portEditor.setEditable(!project.isReadOnly()); // web context root text field webContextRootEditor = new PropertyEditor(project, PropertyEditor.TYPE_TEXT); webContextRootEditor.setLabel("Web Context Root"); webContextRootEditor.setWidth(200); if (project.isRemote()) { webContextRootEditor.addValueChangeListener(new ValueChangeListener() { public void propertyValueChanged(Object newValue) { project.setWebContextRoot(((String) newValue).trim()); WorkflowProjectManager.updateProject(project); project.fireElementChangeEvent(ChangeType.SETTINGS_CHANGE, project.getServerSettings()); } }); } webContextRootEditor.render(composite); webContextRootEditor.setValue(project.getWebContextRoot()); webContextRootEditor.setEditable(!project.isReadOnly() && project.isRemote()); // refresh server cache checkbox updateServerCacheEditor = new PropertyEditor(project, PropertyEditor.TYPE_CHECKBOX); updateServerCacheEditor.setLabel("Update Server Cache"); updateServerCacheEditor.addValueChangeListener(new ValueChangeListener() { public void propertyValueChanged(Object newValue) { project.setUpdateServerCache(Boolean.parseBoolean(newValue.toString())); WorkflowProjectManager.updateProject(project); project.fireElementChangeEvent(ChangeType.SETTINGS_CHANGE, project.isUpdateServerCache()); } }); updateServerCacheEditor.render(composite); updateServerCacheEditor.setValue(project.isUpdateServerCache()); updateServerCacheEditor.setEditable(!project.isReadOnly()); // mdw version combo if (project.isRemote()) { mdwVersionEditor = new PropertyEditor(project, PropertyEditor.TYPE_TEXT); } else { mdwVersionEditor = new PropertyEditor(project, PropertyEditor.TYPE_COMBO); List<String> versionOptions = mdwSettings.getMdwVersions(); if (!versionOptions.contains(project.getMdwVersion())) versionOptions.add(project.getMdwVersion()); mdwVersionEditor.setValueOptions(versionOptions); mdwVersionEditor.addValueChangeListener(new ValueChangeListener() { public void propertyValueChanged(Object newValue) { if (!project.isRemote() && !newValue.equals("")) { project.setMdwVersion((String) newValue); WorkflowProjectManager.updateProject(project); if (MessageDialog.openQuestion(getShell(), "Update Framework Libraries", "Download updated framework libraries to match MDW Version selection?")) { ProjectUpdater updater = new ProjectUpdater(getProject(), MdwPlugin.getSettings()); try { updater.updateFrameworkJars(null); ExtensionModulesUpdater modulesUpdater = new ExtensionModulesUpdater(getProject()); modulesUpdater.doUpdate(getShell()); } catch (Exception ex) { PluginMessages.uiError(getShell(), ex, "Update Framework Libraries", getProject()); } } if (getProject().isOsgi()) MessageDialog.openInformation(getShell(), "MDW Version Changed", "The MDW version has been updated in the plug-in settings file. Please update any MDW dependencies in your pom.xml build file."); } } }); } mdwVersionEditor.setLabel("MDW Version"); mdwVersionEditor.setWidth(100); mdwVersionEditor.render(composite); mdwVersionEditor.setValue(project.getMdwVersion()); mdwVersionEditor.setEditable(!project.isReadOnly() && !project.isRemote()); // app version if (!project.isCloudProject() && !"Unknown".equals(project.getAppVersion())) { appVersionEditor = new PropertyEditor(project, PropertyEditor.TYPE_TEXT); appVersionEditor.setLabel("App Version"); appVersionEditor.setWidth(200); appVersionEditor.render(composite); appVersionEditor.setValue(project.getAppVersion()); appVersionEditor.setEditable(false); } if (!project.isRemote()) { // local project text field localProjectEditor = new PropertyEditor(project, PropertyEditor.TYPE_TEXT); localProjectEditor.setLabel("Workspace Project"); localProjectEditor.setWidth(200); localProjectEditor.setReadOnly(true); localProjectEditor.render(composite); if (project.isCloudProject()) localProjectEditor.setValue(project.getSourceProjectName()); else localProjectEditor.setValue(project.getEarProjectName()); if (!project.isOsgi()) { // local project info field localProjectInfoEditor = new PropertyEditor(project, PropertyEditor.TYPE_LINK); localProjectInfoEditor.setLabel("Workspace Project Settings"); localProjectInfoEditor.addValueChangeListener(new ValueChangeListener() { public void propertyValueChanged(Object newValue) { final IProject proj = project.isCloudProject() ? project.getSourceProject() : project.getEarProject(); PropertyDialog dialog = PropertyDialog.createDialogOn(getShell(), "mdw.workflow.mdwServerConnectionsPropertyPage", proj); if (dialog != null) dialog.open(); } }); localProjectInfoEditor.render(composite); } } composite.layout(true); }
From source file:com.centurylink.mdw.plugin.project.ProjectSettingsPropertyPage.java
License:Apache License
public boolean performOk() { IProject project = (IProject) getElement(); try {/*w w w.ja v a2 s . c o m*/ WorkflowProjectManager.getInstance().save(getProject(), project); } catch (CoreException ex) { PluginMessages.uiError(getShell(), ex, "Project Settings", getProject()); return false; } if (getProject().getPersistType() == PersistType.Git) { if (!gitRepositoryUrlTextField.getText().trim().equals(originalGitRepositoryUrl) || !gitBranchTextField.getText().trim().equals(originalGitBranch) || !assetLocalPathTextField.getText().trim().equals(originalAssetLocalPath) || (includeArchiveCheckbox != null && includeArchiveCheckbox.getSelection() != originalIncludeArchive)) { getProject().getMdwVcsRepository().setEntrySource("projectSettingsPropertyPage"); getProject().fireElementChangeEvent(ChangeType.SETTINGS_CHANGE, getProject().getMdwVcsRepository()); } } if (!databaseJdbcUrlTextField.getText().trim().equals(originalJdbcUrl)) { getProject().getMdwDataSource().setEntrySource("projectSettingsPropertyPage"); getProject().fireElementChangeEvent(ChangeType.SETTINGS_CHANGE, getProject().getMdwDataSource()); } if (mdwVersionComboBox != null && !mdwVersionComboBox.getText().equals(originalMdwVersion)) { getProject().fireElementChangeEvent(ChangeType.VERSION_CHANGE, getProject().getMdwVersion()); if (MessageDialog.openQuestion(getShell(), "Update Framework Libraries", "The MDW version has changed. Would you like to download updated framework libraries to match the new selection?")) { ProjectUpdater updater = new ProjectUpdater(getProject(), MdwPlugin.getSettings()); try { updater.updateFrameworkJars(null); ExtensionModulesUpdater modulesUpdater = new ExtensionModulesUpdater(getProject()); modulesUpdater.doUpdate(getShell()); } catch (Exception ex) { PluginMessages.uiError(getShell(), ex, "Update Framework Libraries", getProject()); return false; } } if (getProject().isOsgi()) MessageDialog.openInformation(getShell(), "MDW Version Changed", "The MDW version has been updated in the plug-in settings file. Please update any MDW dependencies in your pom.xml build file."); } if (getProject().isRemote()) { if (!hostTextField.getText().trim().equals(originalHost) || !portTextField.getText().trim().equals(String.valueOf(originalPort))) { getProject().fireElementChangeEvent(ChangeType.SETTINGS_CHANGE, getProject().getServerSettings()); } if (!contextRootTextField.getText().trim().equals(originalContextRoot)) { getProject().fireElementChangeEvent(ChangeType.SETTINGS_CHANGE, getProject().getWebContextRoot()); } if (syncSwitch != null && syncSwitch.getSelection() != originalSync) { WorkflowProjectManager.getInstance().makeLocal(getProject()); getProject().fireElementChangeEvent(ChangeType.SETTINGS_CHANGE, getProject().getMdwVcsRepository()); MessageDialog.openInformation(getShell(), "Remote Project Unlocked", getProject().getName() + " has been unlocked. Please close any open assets and refresh."); } } if (updateServerCacheCheckbox.getSelection() != originalRefreshServerCache) getProject().fireElementChangeEvent(ChangeType.SETTINGS_CHANGE, getProject().isUpdateServerCache()); return true; }
From source file:com.cloudbees.eclipse.dtp.internal.actions.DeleteDatabaseAction.java
License:Open Source License
@Override public void run(IAction action) { if (action instanceof ObjectPluginAction) { ObjectPluginAction pluginAction = (ObjectPluginAction) action; ISelection selection = pluginAction.getSelection(); if (selection instanceof IStructuredSelection) { final IStructuredSelection structSelection = (IStructuredSelection) selection; @SuppressWarnings("unchecked") final Iterator<DatabaseInfo> iterator = structSelection.iterator(); String name = "-"; if (structSelection.size() == 1) { DatabaseInfo d = (DatabaseInfo) structSelection.getFirstElement(); name = d.getName();//from w ww . ja v a 2 s .co m } try { final String target = structSelection.size() > 1 ? "the selected databases" : "'" + name + "'"; String question = MessageFormat.format("Are you sure you want to delete {0}?", target); boolean confirmed = MessageDialog.openQuestion(Display.getCurrent().getActiveShell(), "Delete", question); if (confirmed) { org.eclipse.core.runtime.jobs.Job job = new org.eclipse.core.runtime.jobs.Job( "Deleting " + target) { @Override protected IStatus run(final IProgressMonitor monitor) { monitor.beginTask("Deleting " + target + "...", structSelection.size() * 10); try { while (iterator.hasNext()) { DatabaseInfo databaseInfo = iterator.next(); monitor.subTask("Deleting '" + databaseInfo.getName() + "'..."); BeesSDK.deleteDatabase(databaseInfo.getName()); monitor.worked(5); deleteDatabaseConnectionProfile(databaseInfo); monitor.worked(5); } CloudBeesDataToolsPlugin.getPoller().fetchAndUpdateDatabases(monitor); CloudBeesUIPlugin.getDefault().fireDatabaseInfoChanged(); } catch (Exception e) { CloudBeesDataToolsPlugin.logErrorAndShowDialog(e); } finally { monitor.done(); } return Status.OK_STATUS; } }; job.setUser(true); job.schedule(); } } catch (Exception e) { CloudBeesDataToolsPlugin.logError(e); } } } }
From source file:com.cloudbees.eclipse.run.ui.popup.actions.DeleteAction.java
License:Open Source License
@Override public void run(IAction action) { if (action instanceof ObjectPluginAction) { ObjectPluginAction pluginAction = (ObjectPluginAction) action; ISelection selection = pluginAction.getSelection(); if (selection instanceof IStructuredSelection) { final IStructuredSelection structSelection = (IStructuredSelection) selection; @SuppressWarnings("unchecked") final Iterator<ApplicationInfo> iterator = structSelection.iterator(); String name = "-"; if (structSelection.size() == 1) { ApplicationInfo d = (ApplicationInfo) structSelection.getFirstElement(); name = d.getId();// w w w .j a va 2s .com } try { final String target = structSelection.size() > 1 ? "the selected apps" : "'" + name + "'"; String question = MessageFormat.format("Are you sure you want to delete {0}?", target); boolean confirmed = MessageDialog.openQuestion(Display.getCurrent().getActiveShell(), "Delete", question); if (confirmed) { org.eclipse.core.runtime.jobs.Job job = new org.eclipse.core.runtime.jobs.Job( "Deleting " + target) { @Override protected IStatus run(final IProgressMonitor monitor) { monitor.beginTask("Deleting " + target + "...", structSelection.size() * 10); try { while (iterator.hasNext()) { ApplicationInfo applicationInfo = iterator.next(); monitor.subTask("Deleting '" + applicationInfo.getId() + "'..."); BeesSDK.delete(applicationInfo.getId()); monitor.worked(10); } CBRunCoreActivator.getPoller().fetchAndUpdateApps(); CloudBeesUIPlugin.getDefault().fireApplicationInfoChanged(); } catch (Exception e) { CBRunUiActivator.logErrorAndShowDialog(e); } finally { monitor.done(); } return Status.OK_STATUS; } }; job.setUser(true); job.schedule(); } } catch (Exception e) { CBRunUiActivator.logError(e); } } } }
From source file:com.clustercontrol.approval.dialog.ApprovalDetailDialog.java
License:Open Source License
private void OperationStop(JobApprovalInfo info) { if (MessageDialog.openQuestion(null, Messages.getString("confirmed"), Messages.getString("message.approval.5"))) { if (info.getSessionId() != null && info.getSessionId().length() > 0 && info.getJobunitId() != null && info.getJobunitId().length() > 0 && info.getJobId() != null && info.getJobId().length() > 0) { ///*w w w . ja va 2s . c om*/ Property prop = getStopProperty(info); //? OperationJob operation = new OperationJob(); boolean result = operation.operationJob(info.getMangerName(), prop); if (result) { MessageDialog.openInformation(null, Messages.getString("confirmed"), Messages.getString("message.approval.6")); } close(); } } }
From source file:com.clustercontrol.approval.dialog.ApprovalDetailDialog.java
License:Open Source License
private void OperationApprove(boolean bool) { if (bool) {/*from www . java 2 s. c o m*/ //? if (MessageDialog.openQuestion(null, Messages.getString("confirmed"), Messages.getString("message.approval.1"))) { isApprove = true; approvalInfo.setResult(JobApprovalResultConstant.TYPE_APPROVAL); okPressed(); } } else { //? if (MessageDialog.openQuestion(null, Messages.getString("confirmed"), Messages.getString("message.approval.3"))) { isApprove = false; approvalInfo.setResult(JobApprovalResultConstant.TYPE_DENIAL); okPressed(); } } }
From source file:com.clustercontrol.dialog.CommonDialog.java
License:Open Source License
/** * ????????/*from w ww . jav a2s .com*/ * * @param result ValidateResult * @return? */ protected boolean displayQuestion(ValidateResult result) { return MessageDialog.openQuestion(null, Messages.getString("confirmed"), result.getMessage()); }
From source file:com.clustercontrol.jobmanagement.dialog.JobDialog.java
License:Open Source License
/** * ????/*from w ww .j av a 2 s .com*/ * <P> * ?????? * * @param parent ? * * @see com.clustercontrol.jobmanagement.bean.JobInfo * @see com.clustercontrol.bean.JobConstant */ @Override protected void customizeDialog(Composite parent) { m_shell = this.getShell(); Label label = null; RowLayout layout = new RowLayout(); layout.type = SWT.VERTICAL; layout.spacing = 0; layout.marginWidth = 10; layout.marginHeight = 10; layout.marginBottom = 0; layout.fill = true; parent.setLayout(layout); JobInfo info = m_jobTreeItem.getData(); if (info == null) throw new InternalError("info is null."); // ??????setJobFull JobPropertyUtil.setJobFull(m_managerName, info); if (info.getType() == JobConstant.TYPE_JOBUNIT) { parent.getShell().setText(Messages.getString("dialog.job.create.modify.jobunit")); } else if (info.getType() == JobConstant.TYPE_JOBNET) { parent.getShell().setText(Messages.getString("dialog.job.create.modify.jobnet")); } else if (info.getType() == JobConstant.TYPE_JOB) { parent.getShell().setText(Messages.getString("dialog.job.create.modify.job")); } else if (info.getType() == JobConstant.TYPE_FILEJOB) { parent.getShell().setText(Messages.getString("dialog.job.create.modify.forward.file.job")); } else if (info.getType() == JobConstant.TYPE_REFERJOB || info.getType() == JobConstant.TYPE_REFERJOBNET) { parent.getShell().setText(Messages.getString("dialog.job.create.modify.refer.job")); } else if (info.getType() == JobConstant.TYPE_APPROVALJOB) { parent.getShell().setText(Messages.getString("dialog.job.create.modify.approval.job")); } else if (info.getType() == JobConstant.TYPE_MONITORJOB) { parent.getShell().setText(Messages.getString("dialog.job.create.modify.monitor.job")); } boolean initFlag = true; if (info.getId() != null && info.getId().length() > 0) { initFlag = false; } // Composite Composite jobInfoComposite = new Composite(parent, SWT.NONE); GridLayout jobInfoGridLayout = new GridLayout(4, false); jobInfoComposite.setLayout(jobInfoGridLayout); // ID label = new Label(jobInfoComposite, SWT.NONE); label.setText(Messages.getString("job.id") + " : "); label.setLayoutData(new GridData(120, SizeConstant.SIZE_LABEL_HEIGHT)); // ID this.m_jobIdText = new Text(jobInfoComposite, SWT.BORDER); WidgetTestUtil.setTestId(this, "m_jobIdText", m_jobIdText); this.m_jobIdText.setLayoutData(new GridData(200, SizeConstant.SIZE_TEXT_HEIGHT)); if (m_isCallJobHistory) { this.m_jobIdText.addVerifyListener(new StringVerifyListener(DataRangeConstant.VARCHAR_1024)); } else { this.m_jobIdText.addVerifyListener(new StringVerifyListener(DataRangeConstant.VARCHAR_64)); } this.m_jobIdText.addModifyListener(new ModifyListener() { @Override public void modifyText(ModifyEvent arg0) { update(); } }); // this.m_editButton = new Button(jobInfoComposite, SWT.NONE); WidgetTestUtil.setTestId(this, "m_editButton", m_editButton); m_editButton.setText(Messages.getString("edit")); m_editButton.setEnabled(false); this.m_editButton.setLayoutData(new GridData(40, SizeConstant.SIZE_BUTTON_HEIGHT)); ((GridData) this.m_editButton.getLayoutData()).horizontalSpan = 2; m_editButton.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent event) { super.widgetSelected(event); JobTreeItem jobunitItem = JobUtil.getTopJobUnitTreeItem(m_jobTreeItem); String jobunitId = jobunitItem.getData().getJobunitId(); JobEditState JobEditState = JobEditStateUtil.getJobEditState(m_managerName); // ? Long updateTime = JobEditState.getJobunitUpdateTime(jobunitId); Integer result = null; try { result = JobUtil.getEditLock(m_managerName, jobunitId, updateTime, false); } catch (OtherUserGetLock_Exception e) { // ?????? String message = HinemosMessage.replace(e.getMessage()); if (MessageDialog.openQuestion(null, Messages.getString("confirmed"), message)) { try { result = JobUtil.getEditLock(m_managerName, jobunitId, updateTime, true); } catch (Exception e1) { // ?????????? m_log.error("run() : logical error"); } } } if (result != null) { // ??? m_log.debug("run() : get editLock(jobunitId=" + jobunitId + ")"); JobEditState.addLockedJobunit(jobunitItem.getData(), JobTreeItemUtil.clone(jobunitItem, null), result); if (m_jobTreeComposite != null) { m_jobTreeComposite.refresh(jobunitItem.getParent()); } //? m_readOnly = false; updateWidgets(); } else { // ????? m_log.debug("run() : cannot get editLock(jobunitId=" + jobunitId + ")"); } } }); // ?? label = new Label(jobInfoComposite, SWT.NONE); label.setText(Messages.getString("job.name") + " : "); label.setLayoutData(new GridData(120, SizeConstant.SIZE_LABEL_HEIGHT)); // ?? this.m_jobNameText = new Text(jobInfoComposite, SWT.BORDER); WidgetTestUtil.setTestId(this, "m_jobNameText", m_jobNameText); this.m_jobNameText.setLayoutData(new GridData(200, SizeConstant.SIZE_TEXT_HEIGHT)); this.m_jobNameText.addVerifyListener(new StringVerifyListener(DataRangeConstant.VARCHAR_64)); this.m_jobNameText.addModifyListener(new ModifyListener() { @Override public void modifyText(ModifyEvent arg0) { update(); } }); // this.m_moduleRegisteredCondition = new Button(jobInfoComposite, SWT.CHECK); WidgetTestUtil.setTestId(this, "m_moduleRegistCondition", this.m_moduleRegisteredCondition); this.m_moduleRegisteredCondition.setText(Messages.getString("job.module.registration")); this.m_moduleRegisteredCondition.setLayoutData(new GridData(150, SizeConstant.SIZE_BUTTON_HEIGHT)); ((GridData) this.m_moduleRegisteredCondition.getLayoutData()).horizontalSpan = 2; this.m_moduleRegisteredCondition.addSelectionListener(new SelectionListener() { @Override public void widgetSelected(SelectionEvent e) { } @Override public void widgetDefaultSelected(SelectionEvent e) { } }); if (info.getType() == JobConstant.TYPE_JOBNET || info.getType() == JobConstant.TYPE_APPROVALJOB || info.getType() == JobConstant.TYPE_JOB || info.getType() == JobConstant.TYPE_FILEJOB || info.getType() == JobConstant.TYPE_MONITORJOB) { m_moduleRegisteredCondition.setEnabled(!m_readOnly); } else { m_moduleRegisteredCondition.setEnabled(false); } // label = new Label(jobInfoComposite, SWT.NONE); label.setText(Messages.getString("description") + " : "); label.setLayoutData(new GridData(120, SizeConstant.SIZE_LABEL_HEIGHT)); // m_jobAnnotationText = new Text(jobInfoComposite, SWT.BORDER); WidgetTestUtil.setTestId(this, "m_jobAnnotationText", m_jobAnnotationText); m_jobAnnotationText.setLayoutData(new GridData(200, SizeConstant.SIZE_TEXT_HEIGHT)); m_jobAnnotationText.addVerifyListener(new StringVerifyListener(DataRangeConstant.VARCHAR_256)); // dummy new Label(jobInfoComposite, SWT.NONE); // dummy new Label(jobInfoComposite, SWT.NONE); // ID label = new Label(jobInfoComposite, SWT.NONE); label.setText(Messages.getString("owner.role.id") + " : "); label.setLayoutData(new GridData(120, SizeConstant.SIZE_LABEL_HEIGHT)); // ID // ????? // ????JobInfo.createTime?? if (info.getType() == JobConstant.TYPE_JOBUNIT && info.getCreateTime() == null) { this.m_ownerRoleId = new RoleIdListComposite(jobInfoComposite, SWT.NONE, this.m_managerName, true, Mode.OWNER_ROLE); this.m_ownerRoleId.getComboRoleId().addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { m_messageComposite.getNotifyId().setOwnerRoleId(m_ownerRoleId.getText(), false); } }); } else { this.m_ownerRoleId = new RoleIdListComposite(jobInfoComposite, SWT.NONE, this.m_managerName, false, Mode.OWNER_ROLE); } GridData ownerRoleIdGridData = new GridData(); ownerRoleIdGridData.widthHint = 207; this.m_ownerRoleId.setLayoutData(ownerRoleIdGridData); // ID if (info.getType() != JobConstant.TYPE_JOBUNIT) { // ID label = new Label(jobInfoComposite, SWT.NONE); label.setText(Messages.getString("icon.id") + " : "); label.setLayoutData(new GridData(70, SizeConstant.SIZE_LABEL_HEIGHT)); // ID m_iconIdCombo = new Combo(jobInfoComposite, SWT.DROP_DOWN | SWT.READ_ONLY); WidgetTestUtil.setTestId(this, "m_iconIdCombo", m_iconIdCombo); m_iconIdCombo.setLayoutData(new GridData(120, SizeConstant.SIZE_COMBO_HEIGHT)); } else { // dummy new Label(jobInfoComposite, SWT.NONE); // dummy new Label(jobInfoComposite, SWT.NONE); } // m_tabFolder = new TabFolder(parent, SWT.NONE); WidgetTestUtil.setTestId(this, null, m_tabFolder); if (info.getType() == JobConstant.TYPE_JOBNET) { //?? m_startComposite = new WaitRuleComposite(m_tabFolder, SWT.NONE, info.getType()); WidgetTestUtil.setTestId(this, "m_startComposite", m_startComposite); TabItem tabItem1 = new TabItem(m_tabFolder, SWT.NONE); WidgetTestUtil.setTestId(this, "tabitem1", tabItem1); tabItem1.setText(Messages.getString("wait.rule")); tabItem1.setControl(m_startComposite); // m_controlComposite = new ControlComposite(m_tabFolder, SWT.NONE); WidgetTestUtil.setTestId(this, "m_controlComposite", m_controlComposite); TabItem tabItem2 = new TabItem(m_tabFolder, SWT.NONE); WidgetTestUtil.setTestId(this, "tabitem2", tabItem2); tabItem2.setText(Messages.getString("control.job")); tabItem2.setControl(m_controlComposite); //? m_startDelayComposite = new StartDelayComposite(m_tabFolder, SWT.NONE); WidgetTestUtil.setTestId(this, "m_startDelayComposite", m_startDelayComposite); TabItem tabItem3 = new TabItem(m_tabFolder, SWT.NONE); WidgetTestUtil.setTestId(this, "tabitem3", tabItem3); tabItem3.setText(Messages.getString("start.delay")); tabItem3.setControl(m_startDelayComposite); //? m_endDelayComposite = new EndDelayComposite(m_tabFolder, SWT.NONE, false); WidgetTestUtil.setTestId(this, "m_endDelayComposite", m_endDelayComposite); TabItem tabItem4 = new TabItem(m_tabFolder, SWT.NONE); WidgetTestUtil.setTestId(this, "tabitem4", tabItem4); tabItem4.setText(Messages.getString("end.delay")); tabItem4.setControl(m_endDelayComposite); } else if (info.getType() == JobConstant.TYPE_JOB) { //?? m_startComposite = new WaitRuleComposite(m_tabFolder, SWT.NONE, info.getType()); WidgetTestUtil.setTestId(this, "m_startComposite", m_startComposite); TabItem tabItem1 = new TabItem(m_tabFolder, SWT.NONE); WidgetTestUtil.setTestId(this, "tabitem1", tabItem1); tabItem1.setText(Messages.getString("wait.rule")); tabItem1.setControl(m_startComposite); //() m_controlComposite = new ControlComposite(m_tabFolder, SWT.NONE); WidgetTestUtil.setTestId(this, "m_controlComposite", m_controlComposite); TabItem tabItem2 = new TabItem(m_tabFolder, SWT.NONE); WidgetTestUtil.setTestId(this, "tabItem2", tabItem2); tabItem2.setText(Messages.getString("control.job")); tabItem2.setControl(m_controlComposite); //() m_controlNodeComposite = new ControlNodeComposite(m_tabFolder, SWT.NONE, info.getType()); WidgetTestUtil.setTestId(this, "m_controlNodeComposite", m_controlNodeComposite); TabItem tabItem3 = new TabItem(m_tabFolder, SWT.NONE); WidgetTestUtil.setTestId(this, "tabitem3", tabItem3); tabItem3.setText(Messages.getString("control.node")); tabItem3.setControl(m_controlNodeComposite); // m_executeComposite = new CommandComposite(m_tabFolder, SWT.NONE); m_executeComposite.setManagerName(m_managerName); WidgetTestUtil.setTestId(this, "m_executeComposite", m_executeComposite); TabItem tabItem4 = new TabItem(m_tabFolder, SWT.NONE); WidgetTestUtil.setTestId(this, "tabitem4", tabItem4); tabItem4.setText(Messages.getString("command")); tabItem4.setControl(m_executeComposite); //? m_startDelayComposite = new StartDelayComposite(m_tabFolder, SWT.NONE); WidgetTestUtil.setTestId(this, "m_startDelayComposite", m_startDelayComposite); TabItem tabItem5 = new TabItem(m_tabFolder, SWT.NONE); WidgetTestUtil.setTestId(this, "tabitem5", tabItem5); tabItem5.setText(Messages.getString("start.delay")); tabItem5.setControl(m_startDelayComposite); //? m_endDelayComposite = new EndDelayComposite(m_tabFolder, SWT.NONE, false); WidgetTestUtil.setTestId(this, "m_endDelayComposite", m_endDelayComposite); TabItem tabItem6 = new TabItem(m_tabFolder, SWT.NONE); WidgetTestUtil.setTestId(this, "tabitem6", tabItem6); tabItem6.setText(Messages.getString("end.delay")); tabItem6.setControl(m_endDelayComposite); } else if (info.getType() == JobConstant.TYPE_FILEJOB) { //?? m_startComposite = new WaitRuleComposite(m_tabFolder, SWT.NONE, info.getType()); WidgetTestUtil.setTestId(this, "m_startComposite", m_startComposite); TabItem tabItem1 = new TabItem(m_tabFolder, SWT.NONE); WidgetTestUtil.setTestId(this, "tabitem1", tabItem1); tabItem1.setText(Messages.getString("wait.rule")); tabItem1.setControl(m_startComposite); // m_controlComposite = new ControlComposite(m_tabFolder, SWT.NONE); WidgetTestUtil.setTestId(this, "m_controlComposite", m_controlComposite); TabItem tabItem2 = new TabItem(m_tabFolder, SWT.NONE); WidgetTestUtil.setTestId(this, "tabItem2", tabItem2); tabItem2.setText(Messages.getString("control.job")); tabItem2.setControl(m_controlComposite); //() m_controlNodeComposite = new ControlNodeComposite(m_tabFolder, SWT.NONE, info.getType()); WidgetTestUtil.setTestId(this, "m_controlNodeComposite", m_controlNodeComposite); TabItem tabItem6 = new TabItem(m_tabFolder, SWT.NONE); WidgetTestUtil.setTestId(this, "tabItem2", tabItem2); tabItem6.setText(Messages.getString("control.node")); tabItem6.setControl(m_controlNodeComposite); //? m_fileComposite = new FileComposite(m_tabFolder, SWT.NONE); WidgetTestUtil.setTestId(this, "m_fileComposite", m_fileComposite); TabItem tabItem3 = new TabItem(m_tabFolder, SWT.NONE); WidgetTestUtil.setTestId(this, "tabItem2", tabItem2); tabItem3.setText(Messages.getString("forward.file")); tabItem3.setControl(m_fileComposite); //? m_startDelayComposite = new StartDelayComposite(m_tabFolder, SWT.NONE); WidgetTestUtil.setTestId(this, "m_startDelayComposite", m_startDelayComposite); TabItem tabItem4 = new TabItem(m_tabFolder, SWT.NONE); WidgetTestUtil.setTestId(this, "tabItem2", tabItem2); tabItem4.setText(Messages.getString("start.delay")); tabItem4.setControl(m_startDelayComposite); //? m_endDelayComposite = new EndDelayComposite(m_tabFolder, SWT.NONE, true); WidgetTestUtil.setTestId(this, "m_endDelayComposite", m_endDelayComposite); TabItem tabItem5 = new TabItem(m_tabFolder, SWT.NONE); WidgetTestUtil.setTestId(this, "tabItem2", tabItem2); tabItem5.setText(Messages.getString("end.delay")); tabItem5.setControl(m_endDelayComposite); } //?/?? else if (info.getType() == JobConstant.TYPE_REFERJOB || info.getType() == JobConstant.TYPE_REFERJOBNET) { //?? m_startComposite = new WaitRuleComposite(m_tabFolder, SWT.NONE, info.getType()); WidgetTestUtil.setTestId(this, "m_startComposite", m_startComposite); TabItem tabItem1 = new TabItem(m_tabFolder, SWT.NONE); WidgetTestUtil.setTestId(this, "tabitem1", tabItem1); tabItem1.setText(Messages.getString("wait.rule")); tabItem1.setControl(m_startComposite); //? m_referComposite = new ReferComposite(m_tabFolder, SWT.NONE); WidgetTestUtil.setTestId(this, "m_referComposite", m_referComposite); TabItem tabItem2 = new TabItem(m_tabFolder, SWT.NONE); WidgetTestUtil.setTestId(this, "tabyitem2", tabItem2); tabItem2.setText(Messages.getString("refer")); tabItem2.setControl(m_referComposite); } else if (info.getType() == JobConstant.TYPE_APPROVALJOB) { //?? m_startComposite = new WaitRuleComposite(m_tabFolder, SWT.NONE, info.getType()); WidgetTestUtil.setTestId(this, "m_startComposite", m_startComposite); TabItem tabItem1 = new TabItem(m_tabFolder, SWT.NONE); WidgetTestUtil.setTestId(this, "tabitem1", tabItem1); tabItem1.setText(Messages.getString("wait.rule")); tabItem1.setControl(m_startComposite); //() m_controlComposite = new ControlComposite(m_tabFolder, SWT.NONE); WidgetTestUtil.setTestId(this, "m_controlComposite", m_controlComposite); TabItem tabItem2 = new TabItem(m_tabFolder, SWT.NONE); WidgetTestUtil.setTestId(this, "tabItem2", tabItem2); tabItem2.setText(Messages.getString("control.job")); tabItem2.setControl(m_controlComposite); //? m_approvalComposite = new ApprovalComposite(m_tabFolder, SWT.NONE, m_managerName); WidgetTestUtil.setTestId(this, "m_approvalComposite", m_approvalComposite); TabItem tabItem3 = new TabItem(m_tabFolder, SWT.NONE); WidgetTestUtil.setTestId(this, "tabitem3", tabItem3); tabItem3.setText(Messages.getString("approval")); tabItem3.setControl(m_approvalComposite); //? m_startDelayComposite = new StartDelayComposite(m_tabFolder, SWT.NONE); WidgetTestUtil.setTestId(this, "m_startDelayComposite", m_startDelayComposite); TabItem tabItem4 = new TabItem(m_tabFolder, SWT.NONE); WidgetTestUtil.setTestId(this, "tabItem4", tabItem4); tabItem4.setText(Messages.getString("start.delay")); tabItem4.setControl(m_startDelayComposite); //? m_endDelayComposite = new EndDelayComposite(m_tabFolder, SWT.NONE, false); WidgetTestUtil.setTestId(this, "m_endDelayComposite", m_endDelayComposite); TabItem tabItem5 = new TabItem(m_tabFolder, SWT.NONE); WidgetTestUtil.setTestId(this, "tabItem5", tabItem5); tabItem5.setText(Messages.getString("end.delay")); tabItem5.setControl(m_endDelayComposite); } else if (info.getType() == JobConstant.TYPE_MONITORJOB) { //?? m_startComposite = new WaitRuleComposite(m_tabFolder, SWT.NONE, info.getType()); WidgetTestUtil.setTestId(this, "m_startComposite", m_startComposite); TabItem tabItem1 = new TabItem(m_tabFolder, SWT.NONE); WidgetTestUtil.setTestId(this, "tabitem1", tabItem1); tabItem1.setText(Messages.getString("wait.rule")); tabItem1.setControl(m_startComposite); //() m_controlComposite = new ControlComposite(m_tabFolder, SWT.NONE); WidgetTestUtil.setTestId(this, "m_controlComposite", m_controlComposite); TabItem tabItem2 = new TabItem(m_tabFolder, SWT.NONE); tabItem2.setText(Messages.getString("control.job")); tabItem2.setControl(m_controlComposite); // m_monitorComposite = new MonitorComposite(m_tabFolder, SWT.NONE); m_monitorComposite.setManagerName(m_managerName); WidgetTestUtil.setTestId(this, "m_monitorComposite", m_monitorComposite); TabItem tabItem4 = new TabItem(m_tabFolder, SWT.NONE); WidgetTestUtil.setTestId(this, "tabitem4", tabItem4); tabItem4.setText(Messages.getString("monitor")); tabItem4.setControl(m_monitorComposite); //? m_startDelayComposite = new StartDelayComposite(m_tabFolder, SWT.NONE); WidgetTestUtil.setTestId(this, "m_startDelayComposite", m_startDelayComposite); TabItem tabItem5 = new TabItem(m_tabFolder, SWT.NONE); WidgetTestUtil.setTestId(this, "tabitem5", tabItem5); tabItem5.setText(Messages.getString("start.delay")); tabItem5.setControl(m_startDelayComposite); //? m_endDelayComposite = new EndDelayComposite(m_tabFolder, SWT.NONE, false); WidgetTestUtil.setTestId(this, "m_endDelayComposite", m_endDelayComposite); TabItem tabItem6 = new TabItem(m_tabFolder, SWT.NONE); WidgetTestUtil.setTestId(this, "tabitem6", tabItem6); tabItem6.setText(Messages.getString("end.delay")); tabItem6.setControl(m_endDelayComposite); } //?/????? if (info.getType() != JobConstant.TYPE_REFERJOB && info.getType() != JobConstant.TYPE_REFERJOBNET) { // m_endComposite = new EndStatusComposite(m_tabFolder, SWT.NONE); WidgetTestUtil.setTestId(this, "m_endComposite", m_endComposite); TabItem tabItem7 = new TabItem(m_tabFolder, SWT.NONE); WidgetTestUtil.setTestId(this, "tabitem7", tabItem7); tabItem7.setText(Messages.getString("end.status")); tabItem7.setControl(m_endComposite); //? m_messageComposite = new NotificationsComposite(m_tabFolder, SWT.NONE, m_managerName); WidgetTestUtil.setTestId(this, "m_messageComposite", m_messageComposite); TabItem tabItem8 = new TabItem(m_tabFolder, SWT.NONE); WidgetTestUtil.setTestId(this, "tabitem8", tabItem8); tabItem8.setText(Messages.getString("notifications")); tabItem8.setControl(m_messageComposite); } if (info.getType() == JobConstant.TYPE_JOBUNIT) { // m_parameterComposite = new ParameterComposite(m_tabFolder, SWT.NONE, initFlag); WidgetTestUtil.setTestId(this, "m_parameterComposite", m_parameterComposite); TabItem tabItem9 = new TabItem(m_tabFolder, SWT.NONE); WidgetTestUtil.setTestId(this, "tabitem9", tabItem9); tabItem9.setText(Messages.getString("job.parameter")); tabItem9.setControl(m_parameterComposite); } m_tabFolder.setSelection(0); // ?? Display display = m_shell.getDisplay(); m_shell.setLocation((display.getBounds().width - m_shell.getSize().x) / 2, (display.getBounds().height - m_shell.getSize().y) / 2); //?? reflectJobInfo(info); updateWidgets(); }
From source file:com.clustercontrol.jobmanagement.dialog.JobDialog.java
License:Open Source License
/** * ???????// w w w.j a va2 s . c o m * * @return ?? */ private ValidateResult createJobInfo() { ValidateResult result = null; JobInfo info = m_jobTreeItem.getData(); String oldJobId = info.getId(); String oldJobunitId; // ID???(?????????? if (!m_readOnly && info.getType() == JobConstant.TYPE_JOBUNIT) { // ID??? oldJobunitId = info.getJobunitId(); info.setJobunitId(m_jobIdText.getText()); try { JobUtil.findDuplicateJobunitId(m_jobTreeItem.getParent().getParent()); } catch (JobInvalid e) { result = new ValidateResult(); result.setValid(false); result.setID(Messages.getString("message.hinemos.1")); String[] args1 = { m_jobIdText.getText() }; result.setMessage(Messages.getString("message.job.64", args1)); return result; } finally { info.setJobunitId(oldJobunitId); } // ID??? if (!m_jobIdText.getText().matches(PatternConstant.HINEMOS_ID_PATTERN)) { result = new ValidateResult(); result.setValid(false); result.setID(Messages.getString("message.hinemos.1")); String[] args1 = { m_jobIdText.getText(), Messages.getString("job.id") }; result.setMessage(Messages.getString("message.common.6", args1)); info.setJobunitId(oldJobunitId); return result; } JobEditState JobEditState = JobEditStateUtil.getJobEditState(m_managerName); if (JobEditState.getEditSession(m_jobTreeItem.getData()) == null) { // ???? Integer editSession = null; try { editSession = JobUtil.getEditLock(m_managerName, m_jobIdText.getText(), null, false); } catch (OtherUserGetLock_Exception e) { // ?????? String message = HinemosMessage.replace(e.getMessage()); if (MessageDialog.openQuestion(null, Messages.getString("confirmed"), message)) { try { editSession = JobUtil.getEditLock(m_managerName, m_jobIdText.getText(), null, true); } catch (Exception e1) { // ?????????? m_log.error("run() : logical error"); } } } if (editSession == null) { result = new ValidateResult(); result.setValid(false); result.setID(Messages.getString("message.hinemos.1")); String[] args1 = { m_jobIdText.getText() }; result.setMessage(Messages.getString("message.job.105", args1)); return result; } JobEditState.addLockedJobunit(info, null, editSession); } else if (!m_jobIdText.getText().equals(oldJobunitId)) { // ID?? Integer oldEditSession = JobEditState.getEditSession(info); Integer editSession = null; try { editSession = JobUtil.getEditLock(m_managerName, m_jobIdText.getText(), null, false); } catch (OtherUserGetLock_Exception e) { // ?????? String message = HinemosMessage.replace(e.getMessage()); if (MessageDialog.openQuestion(null, Messages.getString("confirmed"), message)) { try { editSession = JobUtil.getEditLock(m_managerName, m_jobIdText.getText(), null, true); } catch (Exception e1) { // ?????????? m_log.error("run() : logical error"); } } } if (editSession == null) { result = new ValidateResult(); result.setValid(false); result.setID(Messages.getString("message.hinemos.1")); String[] args1 = { m_jobIdText.getText() }; result.setMessage(Messages.getString("message.job.105", args1)); return result; } JobEditState.addLockedJobunit(info, null, editSession); try { JobEndpointWrapper wrapper = JobEndpointWrapper.getWrapper(m_managerName); wrapper.releaseEditLock(oldEditSession); } catch (Exception e) { result = new ValidateResult(); result.setValid(false); result.setID(Messages.getString("message.hinemos.1")); String[] args1 = { m_jobIdText.getText() }; result.setMessage(Messages.getString("message.job.105", args1)); return result; } } } //ID? if (m_jobIdText.getText().length() > 0) { String oldId = info.getId(); info.setId(""); //ID??????? JobTreeItem unit = JobUtil.getTopJobUnitTreeItem(m_jobTreeItem); if (unit != null && JobUtil.findJobId(m_jobIdText.getText(), unit)) { result = new ValidateResult(); result.setValid(false); result.setID(Messages.getString("message.hinemos.1")); String[] args1 = { m_jobIdText.getText() }; result.setMessage(Messages.getString("message.job.42", args1)); info.setId(oldId); return result; } // ID??? if (!m_jobIdText.getText().matches(PatternConstant.HINEMOS_ID_PATTERN)) { result = new ValidateResult(); result.setValid(false); result.setID(Messages.getString("message.hinemos.1")); String[] args1 = { m_jobIdText.getText(), Messages.getString("job.id") }; result.setMessage(Messages.getString("message.common.6", args1)); info.setId(oldId); return result; } info.setId(m_jobIdText.getText()); // ???ID? if (info.getType() == JobConstant.TYPE_JOBUNIT) { info.setJobunitId(m_jobIdText.getText()); } } else { result = new ValidateResult(); result.setValid(false); result.setID(Messages.getString("message.hinemos.1")); result.setMessage(Messages.getString("message.job.22")); return result; } //??? if (m_jobNameText.getText().length() > 0) { info.setName(m_jobNameText.getText()); } else { result = new ValidateResult(); result.setValid(false); result.setID(Messages.getString("message.hinemos.1")); result.setMessage(Messages.getString("message.job.23")); return result; } //? info.setRegisteredModule(m_moduleRegisteredCondition.getSelection()); //? if (m_jobAnnotationText.getText().length() > 0) { info.setDescription(m_jobAnnotationText.getText()); } else { info.setDescription(""); } // ID if (info.getType() != JobConstant.TYPE_JOBUNIT) { if (this.m_iconIdCombo.getText() == null) { info.setIconId(""); } else { info.setIconId(this.m_iconIdCombo.getText()); } } //ID? String newOwnerRoleId = m_ownerRoleId.getText(); if (newOwnerRoleId.length() > 0) { if (!newOwnerRoleId.equals(info.getOwnerRoleId())) { changeOwnerRoleId(m_jobTreeItem, newOwnerRoleId); } } else { result = new ValidateResult(); result.setValid(false); result.setID(Messages.getString("message.hinemos.1")); result.setMessage(Messages.getString("owner.role.id")); return result; } //?????????? if (!oldJobId.equals(info.getId()) && info.getType() != JobConstant.TYPE_JOBUNIT) { List<JobTreeItem> siblings = m_jobTreeItem.getParent().getChildren(); for (JobTreeItem sibling : siblings) { if (sibling == m_jobTreeItem) { continue; } JobInfo siblingJobInfo = sibling.getData(); if (siblingJobInfo.getWaitRule() == null) { continue; } for (JobObjectInfo siblingWaitJobObjectInfo : siblingJobInfo.getWaitRule().getObject()) { if (oldJobId.equals(siblingWaitJobObjectInfo.getJobId())) { siblingWaitJobObjectInfo.setJobId(info.getId()); } } } } //????ID if (!oldJobId.equals(info.getId()) && info.getType() != JobConstant.TYPE_JOBUNIT) { //?jobunit? JobTreeItem treeItem = m_jobTreeItem; while (treeItem.getData().getType() != JobConstant.TYPE_JOBUNIT) { treeItem = treeItem.getParent(); } //??????????? updateReferJob(treeItem, oldJobId, info.getId()); } return null; }
From source file:com.clustercontrol.jobmanagement.view.action.DeleteJobAction.java
License:Open Source License
/** * []???????????// ww w . j av a 2 s. co m * <p> * <ol> * <li>[]?????????</li> * <li>[]??????????</li> * <li>?????</li> * <li>??????????</li> * <li>[]???</li> * </ol> * * @see org.eclipse.core.commands.IHandler#execute * @see com.clustercontrol.jobmanagement.composite.JobTreeComposite * @see com.clustercontrol.jobmanagement.composite.JobListComposite */ @Override public Object execute(ExecutionEvent event) throws ExecutionException { this.window = HandlerUtil.getActiveWorkbenchWindow(event); // In case this action has been disposed if (null == this.window || !isEnabled()) { return null; } // ??? this.viewPart = HandlerUtil.getActivePart(event); if (!(viewPart instanceof JobListView)) { return null; } JobListView jobListView = null; try { jobListView = (JobListView) viewPart.getAdapter(JobListView.class); } catch (Exception e) { m_log.info("execute " + e.getMessage()); return null; } if (jobListView == null) { m_log.info("execute: view is null"); return null; } List<JobTreeItem> itemList = jobListView.getSelectJobTreeItemList(); if (null == itemList || itemList.isEmpty()) { return null; } //????? int size = itemList.size(); JobTreeItem[][] itemAry = new JobTreeItem[size][2]; for (int i = 0; i < size; i++) { JobTreeItem item = itemList.get(i); itemAry[i][0] = item.getParent(); itemAry[i][1] = item; } if (null == itemAry || itemAry.length == 0) { return null; } String message = null; if (size == 1) { message = Messages.getString("job") + "[" + itemList.get(0).getData().getId() + "]" + Messages.getString("message.job.2"); } else { Object arg[] = { size, Messages.getString("job") }; message = Messages.getString("message.job.123", arg); } // ?? if (MessageDialog.openQuestion(null, Messages.getString("confirmed"), message)) { for (JobTreeItem[] ary : itemAry) { JobTreeItem parent = ary[0]; JobTreeItem item = ary[1]; JobTreeItemUtil.removeChildren(parent, item); JobEditState jobEditState = JobEditStateUtil .getJobEditState(JobTreeItemUtil.getManagerName(parent)); if (item.getData().getType() == JobConstant.TYPE_JOBUNIT) { // ? jobEditState.removeEditedJobunit(item); if (jobEditState.getLockedJobunitBackup(item.getData()) != null) { // ???????? jobEditState.addDeletedJobunit(item); } } else { // ?????? jobEditState.addEditedJobunit(item); } JobTreeComposite tree = jobListView.getJobTreeComposite(); tree.refresh(parent); tree.getTreeViewer().setSelection(new StructuredSelection(parent), true); } } return null; }