@ -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 ) ;