From aa60f7312e32522c0f59d726648bb4d99130a729 Mon Sep 17 00:00:00 2001 From: ray Date: Thu, 13 Nov 2003 02:28:52 +0000 Subject: [PATCH] Oy! Since mike changed the name of the String in the Site object (must've had a reason for it...) we can't use the Table to insert a new row, so instead we do it manually. git-svn-id: https://samskivert.googlecode.com/svn/trunk@1296 6335cc39-0255-0410-8fd6-9bcaacd3b74c --- .../servlet/JDBCTableSiteIdentifier.java | 39 +++++++++---------- 1 file changed, 19 insertions(+), 20 deletions(-) diff --git a/projects/samskivert/src/java/com/samskivert/servlet/JDBCTableSiteIdentifier.java b/projects/samskivert/src/java/com/samskivert/servlet/JDBCTableSiteIdentifier.java index eb21ee6d..987e5176 100644 --- a/projects/samskivert/src/java/com/samskivert/servlet/JDBCTableSiteIdentifier.java +++ b/projects/samskivert/src/java/com/samskivert/servlet/JDBCTableSiteIdentifier.java @@ -1,5 +1,5 @@ // -// $Id: JDBCTableSiteIdentifier.java,v 1.5 2003/11/13 01:28:25 ray Exp $ +// $Id: JDBCTableSiteIdentifier.java,v 1.6 2003/11/13 02:28:52 ray Exp $ // // samskivert library - useful routines for java programs // Copyright (C) 2001 Michael Bayne @@ -21,8 +21,9 @@ package com.samskivert.servlet; import java.sql.Connection; -import java.sql.Statement; +import java.sql.PreparedStatement; import java.sql.ResultSet; +import java.sql.Statement; import java.sql.SQLException; import java.util.ArrayList; @@ -36,11 +37,8 @@ import com.samskivert.io.PersistenceException; import com.samskivert.jdbc.ConnectionProvider; import com.samskivert.jdbc.DatabaseLiaison; -import com.samskivert.jdbc.JORARepository; import com.samskivert.jdbc.JDBCUtil; import com.samskivert.jdbc.SimpleRepository; -import com.samskivert.jdbc.jora.Session; -import com.samskivert.jdbc.jora.Table; import com.samskivert.util.ArrayUtil; import com.samskivert.util.HashIntMap; @@ -145,20 +143,13 @@ public class JDBCTableSiteIdentifier implements SiteIdentifier * Used to load information from the site database. */ protected class SiteIdentifierRepository - extends JORARepository implements SimpleRepository.Operation + extends SimpleRepository implements SimpleRepository.Operation { public SiteIdentifierRepository (ConnectionProvider conprov) { super(conprov, SITE_IDENTIFIER_IDENT); } - // documentation inherited - protected void createTables (Session session) - { - _stable = new Table( - Site.class.getName(), "sites", session, "siteId"); - } - public void refreshSiteData () throws PersistenceException { @@ -217,17 +208,25 @@ public class JDBCTableSiteIdentifier implements SiteIdentifier public Object invoke (Connection conn, DatabaseLiaison liaison) throws PersistenceException, SQLException { - _stable.insert(site); - // update the userid now that it's known - site.siteId = liaison.lastInsertedId(conn); - // nothing to return + PreparedStatement stmt = null; + try { + stmt = conn.prepareStatement( + "insert into sites (stringId) VALUES (?)"); + stmt.setString(1, site.siteString); + if (1 != stmt.executeUpdate()) { + throw new PersistenceException("Not inserted"); + } + + site.siteId = liaison.lastInsertedId(conn); + System.err.println("site id inserted was " + site.siteId); + } finally { + JDBCUtil.close(stmt); + } + return null; } }); } - - /** A wrapper that provides access to the sites table. */ - protected Table _stable; } /**