|
|
|
@ -167,13 +167,15 @@ public class CheckServiceDialog extends JDialog implements ActionListener {
|
|
|
|
|
centerPanel.add(detailsPane, BorderLayout.CENTER); |
|
|
|
|
JPanel buttonPanel = FRGUIPaneFactory.createBorderLayout_M_Pane(); |
|
|
|
|
buttonPanel.setBorder(BorderFactory.createEmptyBorder(0, 10, 10, 10)); |
|
|
|
|
boolean Sync = false; |
|
|
|
|
if (isOnline() && Sync) { |
|
|
|
|
if (isOnline()) { |
|
|
|
|
ignoreButton = new UIButton(Toolkit.i18nText("Fine-Design_Basic_Sync_Ignore")); |
|
|
|
|
ignoreButton.addActionListener(this); |
|
|
|
|
syncButton = new UIButton(Toolkit.i18nText("Fine-Design_Basic_Sync_To_Local")); |
|
|
|
|
syncButton.setToolTipText(Toolkit.i18nText("Fine-Design_Basic_Sync_To_Local_Tip")); |
|
|
|
|
syncButton.addMouseListener(syncButtonClickListener); |
|
|
|
|
if(jarConsistency && differentPlugins.isEmpty()){ |
|
|
|
|
syncButton.setEnabled(false); |
|
|
|
|
} |
|
|
|
|
progressBar = new JProgressBar(); |
|
|
|
|
progressBar.setUI(new MotifProgressBarUI()); |
|
|
|
|
progressBar.setForeground(UpdateConstants.BAR_COLOR); |
|
|
|
@ -184,6 +186,8 @@ public class CheckServiceDialog extends JDialog implements ActionListener {
|
|
|
|
|
buttonPanel.add(progressBar, BorderLayout.CENTER); |
|
|
|
|
buttonPanel.add(syncButton, BorderLayout.EAST); |
|
|
|
|
} else { |
|
|
|
|
UILabel adviceLabel = new UILabel(Toolkit.i18nText("Fine-Design_Basic_Sync_Suggestion")); |
|
|
|
|
centerPanel.add(adviceLabel, BorderLayout.SOUTH); |
|
|
|
|
UIButton okButton = new UIButton(Toolkit.i18nText("Fine-Design_Basic_Remote_Design_Button_Confirm")); |
|
|
|
|
okButton.addActionListener(this); |
|
|
|
|
buttonPanel.add(okButton, BorderLayout.EAST); |
|
|
|
@ -307,79 +311,84 @@ public class CheckServiceDialog extends JDialog implements ActionListener {
|
|
|
|
|
private MouseListener syncButtonClickListener = new MouseAdapter() { |
|
|
|
|
@Override |
|
|
|
|
public void mouseClicked(MouseEvent e) { |
|
|
|
|
ignoreButton.setEnabled(false); |
|
|
|
|
syncButton.setEnabled(false); |
|
|
|
|
String[] option = {Toolkit.i18nText("Fine-Design_Report_Yes"), Toolkit.i18nText("Fine-Design_Report_No")}; |
|
|
|
|
if (!jarConsistency) { |
|
|
|
|
int a = FineJOptionPane.showOptionDialog(getParent(), Toolkit.i18nText("Fine-Design_Basic_Sync_Info_Information"), |
|
|
|
|
Toolkit.i18nText("Fine-Design_Basic_Confirm"), JOptionPane.YES_NO_OPTION, QUESTION_MESSAGE, IOUtils.readIcon("com/fr/design/icon/versioncheck/question.png"), option, 1); |
|
|
|
|
if (0 == a) { |
|
|
|
|
progressBar.setVisible(true); |
|
|
|
|
progressBar.setString(Toolkit.i18nText("Fine-Design_Update_Info_Wait_Message")); |
|
|
|
|
syncButton.setEnabled(false); |
|
|
|
|
deletePreviousPropertyFile(); |
|
|
|
|
final String installLib = StableUtils.pathJoin(StableUtils.getInstallHome(), ProjectConstants.LOGS_NAME, UpdateConstants.INSTALL_LIB); |
|
|
|
|
final JFrame frame = DesignerContext.getDesignerFrame(); |
|
|
|
|
final RestartHelper helper = new RestartHelper(); |
|
|
|
|
FineProcessContext.getParentPipe().fire(FineProcessEngineEvent.DESTROY); |
|
|
|
|
SyncFailedPluginsDialog syncFailedPluginsDialog = new SyncFailedPluginsDialog(frame, JSONArray.create()); |
|
|
|
|
new SyncFileProcess(progressBar, remoteBuildNo, syncFailedPluginsDialog) { |
|
|
|
|
@Override |
|
|
|
|
public void onDownloadSuccess() { |
|
|
|
|
deleteForDesignerUpdate(installLib); |
|
|
|
|
progressBar.setVisible(false); |
|
|
|
|
syncFailedPluginsDialog.showDialog(); |
|
|
|
|
if (!syncFailedPluginsDialog.restartClicked()) { |
|
|
|
|
helper.restartForUpdate(frame); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
sync(); |
|
|
|
|
} |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
|
public void onDownloadFailed() { |
|
|
|
|
progressBar.setVisible(false); |
|
|
|
|
deleteForDesignerUpdate(installLib); |
|
|
|
|
ErrorDialog errorDialog = new ErrorDialog(DesignerContext.getDesignerFrame(), Toolkit.i18nText("Fine-Design_Basic_Sync_Fail")); |
|
|
|
|
errorDialog.setVisible(true); |
|
|
|
|
private void sync() { |
|
|
|
|
ignoreButton.setEnabled(false); |
|
|
|
|
syncButton.setEnabled(false); |
|
|
|
|
String[] option = {Toolkit.i18nText("Fine-Design_Report_Yes"), Toolkit.i18nText("Fine-Design_Report_No")}; |
|
|
|
|
if (!jarConsistency) { |
|
|
|
|
int a = FineJOptionPane.showOptionDialog(getParent(), Toolkit.i18nText("Fine-Design_Basic_Sync_Info_Information"), |
|
|
|
|
Toolkit.i18nText("Fine-Design_Basic_Confirm"), JOptionPane.YES_NO_OPTION, QUESTION_MESSAGE, IOUtils.readIcon("com/fr/design/icon/versioncheck/question.png"), option, 1); |
|
|
|
|
if (0 == a) { |
|
|
|
|
progressBar.setVisible(true); |
|
|
|
|
progressBar.setString(Toolkit.i18nText("Fine-Design_Update_Info_Wait_Message")); |
|
|
|
|
syncButton.setEnabled(false); |
|
|
|
|
deletePreviousPropertyFile(); |
|
|
|
|
final String installLib = StableUtils.pathJoin(StableUtils.getInstallHome(), ProjectConstants.LOGS_NAME, UpdateConstants.INSTALL_LIB); |
|
|
|
|
final JFrame frame = DesignerContext.getDesignerFrame(); |
|
|
|
|
final RestartHelper helper = new RestartHelper(); |
|
|
|
|
FineProcessContext.getParentPipe().fire(FineProcessEngineEvent.DESTROY); |
|
|
|
|
SyncFailedPluginsDialog syncFailedPluginsDialog = new SyncFailedPluginsDialog(frame, JSONArray.create()); |
|
|
|
|
new SyncFileProcess(progressBar, remoteBuildNo, syncFailedPluginsDialog) { |
|
|
|
|
@Override |
|
|
|
|
public void onDownloadSuccess() { |
|
|
|
|
deleteForDesignerUpdate(installLib); |
|
|
|
|
progressBar.setVisible(false); |
|
|
|
|
syncFailedPluginsDialog.showDialog(); |
|
|
|
|
if (!syncFailedPluginsDialog.restartClicked()) { |
|
|
|
|
helper.restartForUpdate(frame); |
|
|
|
|
} |
|
|
|
|
}.execute(); |
|
|
|
|
} |
|
|
|
|
} else { |
|
|
|
|
//到这边说明主jar是一致的,就只尝试同步插件
|
|
|
|
|
new SwingWorker<JSONArray, Void>() { |
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
|
protected JSONArray doInBackground() { |
|
|
|
|
progressBar.setVisible(true); |
|
|
|
|
progressBar.setString(Toolkit.i18nText("Fine-Design_Basic_Sync_Plugins")); |
|
|
|
|
progressBar.setValue(0); |
|
|
|
|
return VersionCheckUtils.syncPlugins(differentPlugins); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
|
protected void done() { |
|
|
|
|
public void onDownloadFailed() { |
|
|
|
|
progressBar.setVisible(false); |
|
|
|
|
JSONArray syncFailedPlugins = null; |
|
|
|
|
try { |
|
|
|
|
syncFailedPlugins = get(); |
|
|
|
|
} catch (Exception ex) { |
|
|
|
|
FineLoggerFactory.getLogger().error(ex.getMessage(), ex); |
|
|
|
|
} |
|
|
|
|
if (syncFailedPlugins != null && syncFailedPlugins.size() > 0) { |
|
|
|
|
SyncFailedPluginsDialog syncFailedPluginsDialog = new SyncFailedPluginsDialog(DesignerContext.getDesignerFrame(), syncFailedPlugins); |
|
|
|
|
syncFailedPluginsDialog.setVisible(true); |
|
|
|
|
} else { |
|
|
|
|
FineJOptionPane.showMessageDialog(DesignerContext.getDesignerFrame(), |
|
|
|
|
Toolkit.i18nText("Fine-Design_Basic_Sync_Success"), |
|
|
|
|
Toolkit.i18nText("Fine-Design_Basic_Tool_Tips"), |
|
|
|
|
FineJOptionPane.INFORMATION_MESSAGE); |
|
|
|
|
} |
|
|
|
|
close(); |
|
|
|
|
deleteForDesignerUpdate(installLib); |
|
|
|
|
ErrorDialog errorDialog = new ErrorDialog(DesignerContext.getDesignerFrame(), Toolkit.i18nText("Fine-Design_Basic_Sync_Fail")); |
|
|
|
|
errorDialog.setVisible(true); |
|
|
|
|
helper.restartForUpdate(frame); |
|
|
|
|
} |
|
|
|
|
}.execute(); |
|
|
|
|
} |
|
|
|
|
} else { |
|
|
|
|
//到这边说明主jar是一致的,就只尝试同步插件
|
|
|
|
|
new SwingWorker<JSONArray, Void>() { |
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
|
protected JSONArray doInBackground() { |
|
|
|
|
progressBar.setVisible(true); |
|
|
|
|
progressBar.setString(Toolkit.i18nText("Fine-Design_Basic_Sync_Plugins")); |
|
|
|
|
progressBar.setValue(0); |
|
|
|
|
return VersionCheckUtils.syncPlugins(differentPlugins); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
|
protected void done() { |
|
|
|
|
progressBar.setVisible(false); |
|
|
|
|
JSONArray syncFailedPlugins = null; |
|
|
|
|
try { |
|
|
|
|
syncFailedPlugins = get(); |
|
|
|
|
} catch (Exception ex) { |
|
|
|
|
FineLoggerFactory.getLogger().error(ex.getMessage(), ex); |
|
|
|
|
} |
|
|
|
|
if (syncFailedPlugins != null && syncFailedPlugins.size() > 0) { |
|
|
|
|
SyncFailedPluginsDialog syncFailedPluginsDialog = new SyncFailedPluginsDialog(DesignerContext.getDesignerFrame(), syncFailedPlugins); |
|
|
|
|
syncFailedPluginsDialog.setVisible(true); |
|
|
|
|
} else { |
|
|
|
|
FineJOptionPane.showMessageDialog(DesignerContext.getDesignerFrame(), |
|
|
|
|
Toolkit.i18nText("Fine-Design_Basic_Sync_Success"), |
|
|
|
|
Toolkit.i18nText("Fine-Design_Basic_Tool_Tips"), |
|
|
|
|
FineJOptionPane.INFORMATION_MESSAGE); |
|
|
|
|
} |
|
|
|
|
close(); |
|
|
|
|
} |
|
|
|
|
}.execute(); |
|
|
|
|
} |
|
|
|
|
}; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
private boolean deletePreviousPropertyFile() { |
|
|
|
|
File moveFile = new File(RestartHelper.MOVE_FILE); |
|
|
|
|