package demo5.server;
import org.openswing.swing.server.*;
import javax.servlet.ServletContext;
import java.sql.*;
/**
* <p>Title: OpenSwing Framework</p>
* <p>Description: Controller callbacks class.</p>
* <p>Copyright: Copyright (C) 2006 Mauro Carniel</p>
* <p> </p>
* @author Mauro Carniel
* @version 1.0
*/
public class DemoControllerCallbacks extends ControllerCallbacks {
public DemoControllerCallbacks() {
}
/**
* Method called by the init method of Controller class, as last instruction.
*/
public void afterInit(ServletContext context) {
createConnection(context);
}
/**
* Create the database connection (using Hypersonic DB - in memory) and initialize tables...
*/
private void createConnection(ServletContext context) {
Connection conn = null;
PreparedStatement stmt = null;
try {
conn = ConnectionManager.getConnection(context);
try {
stmt = conn.prepareStatement("create table DEMO5(TEXT VARCHAR,DECNUM DECIMAL(10,2),CURRNUM DECIMAL(10,2),THEDATE DATE,COMBO VARCHAR,CHECK_BOX CHAR(1),RADIO CHAR(1),CODE VARCHAR,TA VARCHAR,PRIMARY KEY(TEXT))");
stmt.execute();
stmt.close();
stmt = conn.prepareStatement("create table DEMO5_LOOKUP(CODE VARCHAR,DESCRCODE VARCHAR,PRIMARY KEY(CODE))");
stmt.execute();
for(int i=0;i<200;i++) {
stmt.close();
stmt = conn.prepareStatement("insert into DEMO5 values('ABC"+i+"',"+12+i+0.333+","+1234+i+0.56+",?,'ABC','Y','Y','A"+i+"','AAAAAA"+i+"')");
stmt.setObject(1,new java.sql.Date(System.currentTimeMillis()+86400000*i));
stmt.execute();
}
for(int i=0;i<100;i++) {
stmt.close();
stmt = conn.prepareStatement("insert into DEMO5_LOOKUP values('A"+i+"','ABCDEF"+String.valueOf((char)(i+78))+"')");
stmt.execute();
}
stmt.close();
stmt = conn.prepareStatement("create table DEMO5_USERS(USERNAME VARCHAR,PASSWORD VARCHAR,LANGUAGE_ID VARCHAR,PRIMARY KEY(USERNAME))");
stmt.execute();
stmt.close();
stmt = conn.prepareStatement("insert into DEMO5_USERS values('ADMIN','ADMIN','EN')");
stmt.execute();
stmt.close();
stmt = conn.prepareStatement("insert into DEMO5_USERS values('MAURO','MAURO','IT')");
stmt.execute();
}
catch (SQLException ex1) {
ex1.printStackTrace();
}
finally {
try {
stmt.close();
}
catch (SQLException ex2) {
}
}
conn.commit();
}
catch (Exception ex) {
ex.printStackTrace();
}
finally {
try {
ConnectionManager.releaseConnection(conn, context);
}
catch (Exception ex3) {
}
}
}
}