use of org.talend.mdm.repository.ui.dialogs.message.MultiStatusDialog in project tmdm-studio-se by Talend.
the class ImportDataClusterAction method doRun.
@Override
protected void doRun() {
FileDialog fd = new FileDialog(getShell(), SWT.OPEN);
// $NON-NLS-1$
fd.setFilterExtensions(new String[] { "*.zip" });
String fPath = fd.open();
if (fPath != null) {
DataClusterService dataClusterService = DataClusterService.getIntance();
File tempFolder = IOUtil.getTempFolder();
String tempFolderPath = tempFolder.getAbsolutePath();
dataClusterService.unZipFile(fPath, tempFolderPath);
String dName = dataClusterService.loadIndexFile(tempFolderPath);
if (dName == null) {
MessageDialog.openError(getShell(), Messages.Common_Error, Messages.ImportDataClusterAction_errorFormat);
return;
}
tempFolderPath += File.separator + dName;
//
SelectServerDefDialog dialog = new SelectServerDefDialog(getShell());
if (dialog.open() == IDialogConstants.OK_ID) {
MDMServerDef serverDef = dialog.getSelectedServerDef();
try {
TMDMService service = RepositoryWebServiceAdapter.getMDMService(serverDef);
service.ping(new WSPing(Messages.ImportDataClusterAction_importTitle));
if (!dataClusterService.isExistDataCluster(service, dName)) {
if (MessageDialog.openQuestion(getShell(), Messages.ImportDataClusterAction_createDataClusterTitle, Messages.bind(Messages.ImportDataClusterAction_createConfirm, dName))) {
dataClusterService.createDataCluster(service, dName);
} else {
return;
}
}
IDataContentProcess process = dataClusterService.getNewImportContentProcess(serverDef, dName, tempFolderPath);
try {
process.run();
} catch (InterruptedException e) {
// do nothing
return;
}
MultiStatus multiStatus = process.getResult();
if (multiStatus != null && multiStatus.getChildren().length > 0) {
MultiStatusDialog statusDialog = new MultiStatusDialog(getShell(), multiStatus.getMessage(), multiStatus);
statusDialog.open();
} else {
// show success info
MessageDialog.openInformation(getShell(), Messages.ImportDataClusterAction_importTitle, Messages.bind(Messages.ImportDataClusterAction_successImport, dName));
}
} catch (XtentisException e) {
log.error(e.getMessage(), e);
} catch (WebServiceException e) {
MessageDialog.openError(getShell(), Messages.ImportDataClusterAction_importTitle, Messages.AbstractDataClusterAction_ConnectFailed);
} finally {
IOUtil.cleanFolder(tempFolder);
}
}
}
}
use of org.talend.mdm.repository.ui.dialogs.message.MultiStatusDialog in project tmdm-studio-se by Talend.
the class AbstractDeployAction method showDeployStatus.
protected void showDeployStatus(IStatus status) {
int count = 0;
if (status.isMultiStatus()) {
for (IStatus child : status.getChildren()) {
if (child.isMultiStatus()) {
count += child.getChildren().length;
} else {
count++;
}
}
}
MultiStatusDialog dialog = new DeployStatusDialog(getShell(), status);
dialog.open();
}
use of org.talend.mdm.repository.ui.dialogs.message.MultiStatusDialog in project tmdm-studio-se by Talend.
the class DeployService method showDeployStatus.
private void showDeployStatus(Shell shell, IStatus status) {
MultiStatusDialog dialog = new DeployStatusDialog(shell, status);
dialog.open();
}
use of org.talend.mdm.repository.ui.dialogs.message.MultiStatusDialog in project tmdm-studio-se by Talend.
the class AbstractRepositoryAction method showRemoveStatus.
protected void showRemoveStatus(IStatus status) {
MultiStatusDialog dialog = new MultiStatusDialog(getShell(), status.getChildren().length + Messages.AbstractDeployAction_removeMessage, status);
dialog.open();
}
Aggregations