001: /*
002: * JOnAS: Java(TM) Open Application Server
003: * Copyright (C) 1999 Bull S.A.
004: * Contact: jonas-team@objectweb.org
005: *
006: * This library is free software; you can redistribute it and/or
007: * modify it under the terms of the GNU Lesser General Public
008: * License as published by the Free Software Foundation; either
009: * version 2.1 of the License, or any later version.
010: *
011: * This library is distributed in the hope that it will be useful,
012: * but WITHOUT ANY WARRANTY; without even the implied warranty of
013: * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
014: * Lesser General Public License for more details.
015: *
016: * You should have received a copy of the GNU Lesser General Public
017: * License along with this library; if not, write to the Free Software
018: * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
019: * USA
020: *
021: * --------------------------------------------------------------------------
022: * $Id: Tfolder.java 9159 2006-07-12 12:18:26Z coqp $
023: * --------------------------------------------------------------------------
024: */
025:
026: package org.objectweb.jonas.jtests.tables;
027:
028: import java.rmi.RemoteException;
029: import java.sql.Connection;
030: import java.sql.Statement;
031: import javax.naming.NamingException;
032: import javax.sql.DataSource;
033:
034: public class Tfolder {
035:
036: static DataSource dataSource = null;
037:
038: /**
039: * Entry point
040: */
041: public static void init() throws NamingException, RemoteException {
042:
043: // Get DataSource
044: dataSource = DBEnvSL.getDataSource("jdbc_1");
045:
046: // create tables
047: createTable("folderFileECB",
048: "c_count integer, c_p1pk varchar(30), c_p2pk varchar(30)");
049: createTable("folderPaperECL", "c_value integer");
050: createTable("jt2_paper", "c_value integer");
051: createTable2("jt2_paper2");
052: createTable2("jt2_paper3");
053: }
054:
055: /**
056: * create a table
057: */
058: private static void createTable(String name, String fields)
059: throws RemoteException {
060:
061: // get connection
062: Connection conn = null;
063: try {
064: conn = dataSource.getConnection();
065: } catch (Exception e) {
066: throw new RemoteException("Cannot get Connection");
067: }
068:
069: Statement stmt;
070: try {
071: stmt = conn.createStatement();
072: stmt.execute("DROP TABLE " + name);
073: stmt.close();
074: } catch (Exception e) {
075: }
076: try {
077: stmt = conn.createStatement();
078: stmt.execute("create table " + name
079: + "(c_name varchar(30) not null primary key,"
080: + fields + ")");
081: if (name == "jt2_paper") {
082: stmt.execute("insert into " + name
083: + " values('aaaa', 10)");
084: stmt.execute("insert into " + name
085: + " values('bbbb', 20)");
086: }
087: stmt.close();
088: conn.close(); // release connection
089: } catch (Exception e) {
090: System.err.println("Exception in createTable : " + e);
091: throw new RemoteException("Exception in createTable : " + e);
092: }
093: }
094:
095: /**
096: * create tables for jt2_paper2 and jt2_paper3
097: */
098: private static void createTable2(String name)
099: throws RemoteException {
100:
101: // get connection
102: Connection conn = null;
103: try {
104: conn = dataSource.getConnection();
105: } catch (Exception e) {
106: throw new RemoteException("Cannot get Connection");
107: }
108:
109: Statement stmt;
110: try {
111: stmt = conn.createStatement();
112: stmt.execute("DROP TABLE " + name);
113: stmt.close();
114: } catch (Exception e) {
115: }
116: try {
117: stmt = conn.createStatement();
118: if (name == "jt2_paper2") {
119: stmt
120: .execute("create table "
121: + name
122: + "(c_id varchar(2) not null primary key, c_valeur integer, c_statut varchar(2)) ");
123: stmt.execute("insert into " + name
124: + " values('1', 40, '1')");
125: stmt.execute("insert into " + name
126: + " values('2', 20, '1')");
127: stmt.execute("insert into " + name
128: + " values('3', 10, '2')");
129:
130: } else {
131: //jt2_paper3
132: stmt
133: .execute("create table "
134: + name
135: + "(c_statut3 varchar(2) not null primary key, c_valide varchar(2)) ");
136: stmt.execute("insert into " + name
137: + " values('1', '1')");
138: stmt.execute("insert into " + name
139: + " values('2', '0')");
140:
141: }
142: stmt.close();
143: conn.close(); // release connection
144: } catch (Exception e) {
145: System.err.println("Exception in createTable : " + e);
146: throw new RemoteException("Exception in createTable : " + e);
147: }
148: }
149: }
|