diff options
Diffstat (limited to 'src/main/DataFiller.java')
-rw-r--r-- | src/main/DataFiller.java | 53 |
1 files changed, 23 insertions, 30 deletions
diff --git a/src/main/DataFiller.java b/src/main/DataFiller.java index a65a032..10ed774 100644 --- a/src/main/DataFiller.java +++ b/src/main/DataFiller.java @@ -1,9 +1,9 @@ package main; import data.Tweet; -import database.DBConnection; +import database.NamedPreparedStatement; import database.QueryUtils; -import java.sql.PreparedStatement; +import java.sql.Connection; import java.sql.SQLException; import java.util.ArrayList; import java.util.List; @@ -20,58 +20,52 @@ public class DataFiller { /** * The main database connection to fill. */ - private final DBConnection m_connection; + private final Connection m_connection; /** * A single insert tweet that can be used. */ - private PreparedStatement m_insertTweet; + private final NamedPreparedStatement m_insertTweet; /** * A single insert profiles that can be used. */ - private PreparedStatement m_insertProfile; - /** - * A single insert ispostedby that can be used. - */ - private PreparedStatement m_insertPosted; + private final NamedPreparedStatement m_insertProfile; /** * A single insert brand that can be used. */ - private PreparedStatement m_insertBrand; + private final NamedPreparedStatement m_insertBrand; /** * A single insert hashtag that can be used. */ - private PreparedStatement m_insertHash; + private final NamedPreparedStatement m_insertHash; /** * A single insert url that can be used. */ - private PreparedStatement m_insertUrl; + private final NamedPreparedStatement m_insertUrl; /** * A single insert url that can be used. */ - private PreparedStatement m_insertMentions; + private final NamedPreparedStatement m_insertMentions; /** * Create the datafiller object. * * @param connection The database connection to use. */ - public DataFiller(DBConnection connection) { + public DataFiller(Connection connection) { try { m_connection = connection; - m_insertTweet = m_connection.create(QueryUtils.insertTweet()); - m_insertProfile = m_connection.create(QueryUtils.insertProfile()); - m_insertPosted = m_connection.create(QueryUtils.insertPosted()); - m_insertBrand = m_connection.create(QueryUtils.insertBrand()); - m_insertHash = m_connection.create(QueryUtils.insertHash()); - m_insertUrl = m_connection.create(QueryUtils.insertUrl()); - m_insertMentions = m_connection.create(QueryUtils.insertMentions()); - + m_insertTweet = new NamedPreparedStatement(m_connection, QueryUtils.insertTweet); + m_insertProfile = new NamedPreparedStatement(m_connection, QueryUtils.insertProfile); + m_insertBrand = new NamedPreparedStatement(m_connection, QueryUtils.insertBrand); + m_insertHash = new NamedPreparedStatement(m_connection, QueryUtils.insertHash); + m_insertUrl = new NamedPreparedStatement(m_connection, QueryUtils.insertUrl); + m_insertMentions = new NamedPreparedStatement(m_connection, QueryUtils.insertMentions); } catch (SQLException ex) { throw new RuntimeException(ex.getMessage()); } @@ -81,25 +75,24 @@ public class DataFiller { try { for (Tweet.Hashtag hashtag : tweet.entities.hashtags) { QueryUtils.setInsertHashParams(m_insertHash, tweet.id, hashtag.text); - m_insertHash.executeUpdate(); + m_insertHash.getStmt().executeUpdate(); } for (Tweet.Url url : tweet.entities.urls) { QueryUtils.setInsertHashParams(m_insertUrl, tweet.id, url.expanded_url); - m_insertUrl.executeUpdate(); + m_insertUrl.getStmt().executeUpdate(); } for (Tweet.Mention mention : tweet.entities.user_mentions) { QueryUtils.setInsertMentionsParams(m_insertMentions, tweet.id, mention.id); - m_insertMentions.executeUpdate(); + m_insertMentions.getStmt().executeUpdate(); } - QueryUtils.setInsertParams(m_insertTweet, m_insertProfile, m_insertPosted, tweet); - m_insertTweet.executeUpdate(); - m_insertProfile.executeUpdate(); - m_insertPosted.executeUpdate(); + QueryUtils.setInsertParams(m_insertTweet, m_insertProfile, tweet); + m_insertTweet.getStmt().executeUpdate(); + m_insertProfile.getStmt().executeUpdate(); List<String> brands = getBrands(tweet); for (String brand : brands) { QueryUtils.setInsertBrandParams(m_insertBrand, tweet.id, brand); - m_insertBrand.executeUpdate(); + m_insertBrand.getStmt().executeUpdate(); } } catch (SQLException ex) { Logger.getLogger(DataFiller.class.getName()).log(Level.SEVERE, null, ex); |