From: Artur Signell Date: Mon, 16 Feb 2009 14:23:51 +0000 (+0000) Subject: #2590 - Added jdbcUrl support to reservr X-Git-Tag: 6.7.0.beta1~3143 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=19b7352e026ff3d70caafb500bb0e20edf2b8210;p=vaadin-framework.git #2590 - Added jdbcUrl support to reservr svn changeset:6858/svn branch:trunk --- diff --git a/src/com/itmill/toolkit/demo/reservation/ReservationApplication.java b/src/com/itmill/toolkit/demo/reservation/ReservationApplication.java index 0cd7dfde03..1d68a45452 100644 --- a/src/com/itmill/toolkit/demo/reservation/ReservationApplication.java +++ b/src/com/itmill/toolkit/demo/reservation/ReservationApplication.java @@ -57,7 +57,7 @@ public class ReservationApplication extends Application { @Override public void init() { // - db = new SampleDB(); + db = new SampleDB(getProperty("jdbcUrl")); final Window mainWindow = new Window("Reservr "); setMainWindow(mainWindow); diff --git a/src/com/itmill/toolkit/demo/reservation/SampleDB.java b/src/com/itmill/toolkit/demo/reservation/SampleDB.java index 582c111866..b865d69a1e 100644 --- a/src/com/itmill/toolkit/demo/reservation/SampleDB.java +++ b/src/com/itmill/toolkit/demo/reservation/SampleDB.java @@ -60,8 +60,8 @@ public class SampleDB { + "_RESERVED_TO"; } - // TODO -> param - private static final String DB_URL = "jdbc:hsqldb:file:reservation.db"; + private static final String DEFAULT_JDBC_URL = "jdbc:hsqldb:file:reservation.db"; + private static Object dbMutex = new Object(); private static final String CREATE_TABLE_USER = "CREATE TABLE " + User.TABLE + " (" + " " + User.PROPERTY_ID_ID @@ -99,10 +99,15 @@ public class SampleDB { /** * Create database. + * + * @param jdbcUrl */ - public SampleDB() { + public SampleDB(String jdbcUrl) { + if (jdbcUrl == null || jdbcUrl.equals("")) { + jdbcUrl = DEFAULT_JDBC_URL; + } // connect to SQL database - connect(); + connect(jdbcUrl); } @@ -129,11 +134,11 @@ public class SampleDB { * named database in implicitly created into system memory. * */ - private synchronized void connect() { + private synchronized void connect(String dbUrl) { if (connection == null) { try { Class.forName("org.hsqldb.jdbcDriver").newInstance(); - connection = DriverManager.getConnection(DB_URL); + connection = DriverManager.getConnection(dbUrl); } catch (final Exception e) { throw new RuntimeException(e); } @@ -313,7 +318,7 @@ public class SampleDB { + Reservation.PROPERTY_ID_RESERVED_TO + "," + Reservation.PROPERTY_ID_DESCRIPTION + ")" + "VALUES (?,?,?,?,?)"; - synchronized (DB_URL) { + synchronized (dbMutex) { try { if (!isAvailableResource(resourceId, reservedFrom, reservedTo)) { throw new ResourceNotAvailableException(