diff --git a/trunk/SIPRPSoft/lib/evolute.jar b/trunk/SIPRPSoft/lib/evolute.jar index df1b3225..ab5af455 100644 Binary files a/trunk/SIPRPSoft/lib/evolute.jar and b/trunk/SIPRPSoft/lib/evolute.jar differ diff --git a/trunk/SIPRPSoft/src/siprp/Main.java b/trunk/SIPRPSoft/src/siprp/Main.java index fb9a437c..91c13a28 100644 --- a/trunk/SIPRPSoft/src/siprp/Main.java +++ b/trunk/SIPRPSoft/src/siprp/Main.java @@ -31,6 +31,7 @@ import siprp.initializer.SIPRPLoggerInit; import siprp.initializer.SIPRPUIInitializer; import siprp.update.UpdateList; +import com.evolute.module.updater.UpdateListener; import com.evolute.module.updater.Updater; import com.evolute.project.ProjectTools; import com.evolute.properties.EvoPropertyKey; @@ -92,45 +93,90 @@ public class Main implements com.evolute.utils.ui.window.Connector UnicodeChecker.setUseDoubleSlash( true ); avisos = new AvisosPanel(); - String logoFileName = ( String ) Singleton.getInstance( SHSTPropertiesConstants.COMPANY_LOGO ); - loginWindow = new LoginWindow( new Main(), logoFileName, - new String[] { (String) Singleton.getInstance( SHSTPropertiesConstants.SOFTWARE_NAME ) }, - new String[] { "Vers\u00E3o " + ProjectTools.getInstance().getVersion(), "(EVOLUTE 2004-2010)" }, "", - (String)Singleton.getInstance( SHSTPropertiesConstants.LOCAL_USER ), - (String)Singleton.getInstance( SHSTPropertiesConstants.LOCAL_PASSWORD ), avisos, false ); - loginWindow.setTitle( (String) Singleton.getInstance( SHSTPropertiesConstants.SOFTWARE_NAME ) ); + final String logoFileName = ( String ) Singleton.getInstance( SHSTPropertiesConstants.COMPANY_LOGO ); - String iconPath = ( String ) Singleton.getInstance( EvoPropertyKey.APP.ICON_PATH ); - if ( iconPath != null && ! "".equals( iconPath.trim() ) ) - { - loginWindow.setIconImage( new EvoImage( iconPath ).getImage() ); - } - - loginWindow.getButtOK().setEnabled( false ); - JPanel left = loginWindow.getLeftPanel(); - left.setBackground( Color.white ); - - loginWindow.setSize( 1024, 510 ); - loginWindow.setExtendedState(loginWindow.getExtendedState() | LoginWindow.MAXIMIZED_BOTH); - loginWindow.setVisible( true ); - SwingUtilities.invokeLater( new Runnable() + String url = null; + try { - @Override - public void run() + String server = null; + if( server == null ) + { + server = (String)Singleton.getInstance( SHSTPropertiesConstants.LOCAL_URL ); + } + String prefix = (String)Singleton.getInstance( SHSTPropertiesConstants.LOCAL_URL_PREFIX ); + url = prefix + server + "/" + dbase; + DBManager dbm = new JDBCManager( url, + (String)Singleton.getInstance( SHSTPropertiesConstants.LOCAL_USER ), + (String)Singleton.getInstance( SHSTPropertiesConstants.LOCAL_PASSWORD ) , 10, 8, 8, null ); + Singleton.setInstance( Singleton.DEFAULT_DBMANAGER, dbm ); + + StatementExecuterFactory.initialize( new DBStatementExecuter( dbm.getSharedExecuter( Main.class ) ) ); + + Updater.getInstance().addUpdateListener( new UpdateListener() { - try + @Override + public void updateStarted() { - siprpTracker.setLoginWindow( loginWindow ); - loginWindow.expandAll(); } - catch ( Exception e ) + + @Override + public void updateDone() { - ErrorLogger.logExceptionAndShow( new Exception( "Erro ao iniciar o SIPRPSoft", e ) ); + try + { + new SHSTORMInitializer().doInit(); + Singleton.setInstance( Singleton.TODAY, new Date() ); + loginWindow = new LoginWindow( new Main(), logoFileName, + new String[] { (String) Singleton.getInstance( SHSTPropertiesConstants.SOFTWARE_NAME ) }, + new String[] { "Vers\u00E3o " + ProjectTools.getInstance().getVersion(), "(EVOLUTE 2004-2010)" }, "", + (String)Singleton.getInstance( SHSTPropertiesConstants.LOCAL_USER ), + (String)Singleton.getInstance( SHSTPropertiesConstants.LOCAL_PASSWORD ), avisos, false ); + loginWindow.setTitle( (String) Singleton.getInstance( SHSTPropertiesConstants.SOFTWARE_NAME ) ); + + String iconPath = ( String ) Singleton.getInstance( EvoPropertyKey.APP.ICON_PATH ); + if ( iconPath != null && ! "".equals( iconPath.trim() ) ) + { + loginWindow.setIconImage( new EvoImage( iconPath ).getImage() ); + } + + loginWindow.getButtOK().setEnabled( false ); + JPanel left = loginWindow.getLeftPanel(); + left.setBackground( Color.white ); + + loginWindow.setSize( 1024, 510 ); + loginWindow.setExtendedState(loginWindow.getExtendedState() | LoginWindow.MAXIMIZED_BOTH); + loginWindow.setVisible( true ); + SwingUtilities.invokeLater( new Runnable() + { + @Override + public void run() + { + try + { + siprpTracker.setLoginWindow( loginWindow ); + loginWindow.expandAll(); + } + catch ( Exception e ) + { + ErrorLogger.logExceptionAndShow( new Exception( "Erro ao iniciar o SIPRPSoft", e ) ); + } + } + } ); + fopConfigFile = loadFopConfigFile(); + } + catch( Exception e ) + { + ErrorLogger.logExceptionAndShow( e ); + } } - } - } ); - fopConfigFile = loadFopConfigFile(); - + } ); + Updater.getInstance().executeUpdates( UpdateList.getUpdates() ); + } + catch( Exception ex ) + { + DialogException.showExceptionMessage( ex, "N\u00E3o foi poss\u00EDvel estabelecer" + + " a liga\u00E7\u00E3o \u00E0 base de dados.\n(" + url + ")", false ); + } } private static File loadFopConfigFile() @@ -163,33 +209,6 @@ public class Main implements com.evolute.utils.ui.window.Connector @Override public boolean connect( String user, String passwd ) { - String url = null; - try - { - String server = null; - if( server == null ) - { - server = (String)Singleton.getInstance( SHSTPropertiesConstants.LOCAL_URL ); - } - String prefix = (String)Singleton.getInstance( SHSTPropertiesConstants.LOCAL_URL_PREFIX ); - url = prefix + server + "/" + dbase; - DBManager dbm = new JDBCManager( url, user, passwd , 10, 8, 8, null ); - Singleton.setInstance( Singleton.DEFAULT_DBMANAGER, dbm ); - - StatementExecuterFactory.initialize( new DBStatementExecuter( dbm.getSharedExecuter(this) ) ); - - Updater.getInstance().executeUpdates( UpdateList.getUpdates() ); - - new SHSTORMInitializer().doInit(); - - Singleton.setInstance( Singleton.TODAY, new Date() ); - } - catch( Exception ex ) - { - DialogException.showExceptionMessage( ex, "N\u00E3o foi poss\u00EDvel estabelecer" - + " a liga\u00E7\u00E3o \u00E0 base de dados.\n(" + url + ")", false ); - return false; - } Singleton.setInstance( Singleton.USERNAME, user ); SIPRPLoggerInit.init(); siprpTracker = new SIPRPTracker( avisos );