You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
SIPRP/trunk/siprp/Main.java

239 lines
7.5 KiB

package siprp;
import siprp.data.*;
import siprp.ficha.*;
import siprp.clientes.*;
import com.evolute.utils.*;
import com.evolute.utils.db.*;
import com.evolute.utils.db.keyretrievers.*;
import com.evolute.utils.jdbc.*;
import com.evolute.utils.jdo.*;
import com.evolute.utils.sql.*;
import com.evolute.utils.ui.*;
import com.evolute.utils.ui.window.*;
import javax.jdo.JDOHelper;
import javax.jdo.PersistenceManager;
import javax.jdo.PersistenceManagerFactory;
import javax.jdo.Transaction;
import java.awt.*;
import java.io.*;
import java.text.*;
import java.util.*;
import javax.swing.*;
import javax.swing.tree.*;
public class Main implements Connector
{
private final static ClassLoader classLoader = new EVUtilsImageLib().getClass().getClassLoader();
private static final String dbase = "siprp";
private SIPRPTracker siprpTracker;
private static AvisosPanel avisos = null;
public static void main( String args[] )
throws Exception
{
/* Calendar cal = Calendar.getInstance();
cal.set( 2004, 06, 14 );
if( cal.before( Calendar.getInstance() ) )
{
com.evolute.utils.ui.DialogException.showException( new RuntimeException( "Unknown error ocurred." ) );
}
else
{
*/ Insert.setDefaultKeyRetriever( JDBCAutoKeyRetriever.DEFAULT );
String server = System.getProperty( "server.address" );
// if( server == null )
// {
// server = "ws_fpalma";
// }
//
// String user = "root";
// String passwd = "UNIXLuvsU";
//
// DBManager dbm = new JDBCManager( "jdbc:mysql://" + server + "/" + dbase,
// user, passwd , 10, 8, 8, null );
UnicodeChecker.setUseDoubleSlash( true );
// Singleton.setInstance( Singleton.DEFAULT_DBMANAGER, dbm );
// StatementExecuterFactory.initialize(
// new DBStatementExecuter( dbm.getSharedExecuter() ) );
// }
// FichaWindow window = new FichaWindow();
/* window.setLogo( new ImageIcon(
new Main().getClass().getClassLoader().getResource( "logo/logo_w400.png" )
).getImage() );*/
// window.show();
avisos = new AvisosPanel();
LoginWindow loginWindow = new LoginWindow( new Main(), "logo"+File.separator + "logo_combo.jpg",//"logo"+File.separator + "logo_w400.jpg",
new String[] { "SIPRPSoft" },
new String[] { "Vers\u00E3o 1.1", "(EVOLUTE 2004)" }, "",
"root", "UNIXLuvsU", avisos, false );
loginWindow.setTitle( "SIPRPSoft" );
JPanel left = loginWindow.getLeftPanel();
left.setBackground( Color.white );
loginWindow.show();
}
public boolean connect( String user, String passwd )
{
try
{
// run initialization SQL
SQLQuery initQuery[] = new SQLQuery[] {};
String server = System.getProperty( "server.address" );
if( server == null )
{
server = "ws_fpalma";
}
DBManager dbm = new JDBCManager( "jdbc:mysql://" + server + "/" + dbase,
user, passwd , 10, 8, 8, null );
// UnicodeChecker.setUseDoubleSlash( true );
Singleton.setInstance( Singleton.DEFAULT_DBMANAGER, dbm );
StatementExecuterFactory.initialize(
new DBStatementExecuter( dbm.getSharedExecuter() ) );
Properties props = new Properties();
props.load( classLoader.getResourceAsStream( "speedo.properties" ) );
PersistenceManagerFactory pmf = JDOHelper.getPersistenceManagerFactory( props );
// Collection c = pmf.supportedOptions();
// System.out.println( "Options: " + c );
Singleton.setInstance( Singleton.DEFAULT_PERSISTENCE_MANAGER_FACTORY, pmf );
PersistenceManager pm = pmf.getPersistenceManager();
Singleton.setInstance( SingletonConstants.PERSISTENCE_MANAGER, pm );
com.evolute.utils.jdo.JDOObject.setPersistentManager( pm );
//for( int i = 0; i < 5; ++i )
//{
// try
// {
// System.out.println( "S: " + i );
// System.out.println( "ID: " + new siprp.data.EmpresaID() );
// }
// catch( Throwable t )
// {
// t.printStackTrace();
// }
// pm.currentTransaction().begin();
// siprp.data.Empresa emp = new siprp.data.Empresa();
// emp.set( siprp.data.Empresa.DESIGNACAO_SOCIAL, "J1111212222" );
// emp.set( siprp.data.Empresa.MORADA, "J111" );
// emp.set( siprp.data.Empresa.CODIGO_POSTAL, "J111" );
// emp.set( siprp.data.Empresa.LOCALIDADE, "J111" );
// emp.set( siprp.data.Empresa.DISTRITO, "J111" );
// emp.set( siprp.data.Empresa.CONCELHO, "J111" );
// emp.set( siprp.data.Empresa.DATA_PROPOSTA, new Date() );
// emp.set( siprp.data.Empresa.DATA_ACEITACAO, new Date() );
// emp.set( siprp.data.Empresa.PERFIL_1, "J111" );
// emp.set( siprp.data.Empresa.PERFIL_2, "J111" );
// emp.set( siprp.data.Empresa.DATA_ENVIO_CONTRATO, new Date() );
// emp.set( siprp.data.Empresa.DATA_RECEPCAO_CONTRATO, new Date() );
// emp.set( siprp.data.Empresa.DATA_ENVIO_IDICT, new Date() );
// emp.set( siprp.data.Empresa.CODIGO_1, "J111" );
// emp.set( siprp.data.Empresa.CODIGO_2, "J111" );
// emp.set( siprp.data.Empresa.CODIGO_3, "J111" );
// emp.set( siprp.data.Empresa.CAE, "J111" );
// emp.set( siprp.data.Empresa.CONTRIBUINTE, "J111" );
// emp.set( siprp.data.Empresa.SEGURANCA_SOCIAL, "J111" );
// emp.set( siprp.data.Empresa.CONTACTO_1, null );
// emp.set( siprp.data.Empresa.CONTACTO_2, null );
// emp.set( siprp.data.Empresa.SERVICOS, new Integer( -1 ) );
// //emp.set( siprp.data.Empresa.INACTIVO, null );
// pm.makePersistent( emp );
// pm.currentTransaction().commit();
//}
/* pm.currentTransaction().begin();
siprp.data.Empresa emp = new siprp.data.Empresa( new Integer( 999 ), "JDO_teste" );
emp.set( siprp.data.Empresa.ID, new Integer( 999 ) );
emp.set( siprp.data.Empresa.DESIGNACAO_SOCIAL, "JDO_TESTE" );
pm.makePersistent( emp );
pm.currentTransaction().commit();
*/
// siprp.data.Empresa emp = ( siprp.data.Empresa )com.evolute.utils.jdo.JDOObject.load( siprp.data.Empresa.class, "999" );
//System.out.println( "Nome: " + emp.get( siprp.data.Empresa.DESIGNACAO_SOCIAL ) );
StatementExecuterFactory.initialize(
new DBStatementExecuter( dbm.getSharedExecuter() ) );
StatementExecuterFactory.initialize(
new DBStatementExecuter( dbm.getSharedExecuter() ) );
Singleton.setInstance( Singleton.TODAY, new Date() );
//cleanData( dbm.getSharedExecuter() );
//msg( dbm.getSharedExecuter() );
}
catch( Exception ex )
{
DialogException.showExceptionMessage( ex, "N\u00E3o foi poss\u00EDvel estabelecer"
+ " a liga\u00E7\u00E3o \u00E0 base de dados.", false );
return false;
}
Singleton.setInstance( Singleton.USERNAME, user );
//Singleton.setInstance( Singleton.USERNAME, user );
siprpTracker = new SIPRPTracker( avisos );
avisos.refresh();
return true;
}
public static void reconnectJDO()
{
PersistenceManagerFactory pmf = ( PersistenceManagerFactory ) Singleton.getInstance( Singleton.DEFAULT_PERSISTENCE_MANAGER_FACTORY );
PersistenceManager pm = pmf.getPersistenceManager();
Singleton.setInstance( SingletonConstants.PERSISTENCE_MANAGER, pm );
com.evolute.utils.jdo.JDOObject.setPersistentManager( pm );
}
public boolean disconnect()
{
if( siprpTracker.quit() )
{
siprpTracker = null;
try
{
( ( DBManager )Singleton.getInstance(
Singleton.DEFAULT_DBMANAGER ) ).close();
Singleton.clear();
}
catch( DBException ex )
{
DialogException.showException( ex );
}
return true;
}
return false;
}
public void executeAction( DefaultMutableTreeNode node )
{
try
{
siprpTracker.openWindow( ( String )node.getUserObject() );
}
catch( Exception ex )
{
DialogException.showException( ex );
}
}
public void exit()
{
if( siprpTracker == null || siprpTracker.quit() )
{
System.exit( 0 );
}
}
public MutableTreeNode getTree()
{
return siprpTracker.getRoot();
}
}