summaryrefslogtreecommitdiff
path: root/src/main/Main.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/Main.java')
-rw-r--r--src/main/Main.java68
1 files changed, 39 insertions, 29 deletions
diff --git a/src/main/Main.java b/src/main/Main.java
index 5a8e137..ba59f8b 100644
--- a/src/main/Main.java
+++ b/src/main/Main.java
@@ -1,13 +1,16 @@
package main;
-import com.google.gson.JsonIOException;
import com.google.gson.JsonSyntaxException;
import data.Tweet;
-import database.DBConnection;
+import database.ConnectionBuilder;
import io.FileTweetReader;
import io.ITweetReader;
import io.TweetReader;
import java.io.IOException;
+import java.sql.Connection;
+import java.sql.SQLException;
+import java.util.logging.Level;
+import java.util.logging.Logger;
/**
* The main class.
@@ -40,35 +43,42 @@ public class Main {
throw new IllegalArgumentException("Missing --dbhost to specify the hostaddress.");
}
- DBConnection connection = new DBConnection(m_hostaddress, "5432", "Twitter", "postgres", "2IOC02");
- /* create the object that fills the database */
- DataFiller filler = new DataFiller(connection);
-
- ITweetReader reader = null;
- try {
- if (m_filename == null) {
- reader = new TweetReader(System.in);
- } else {
- reader = new FileTweetReader(m_filename);
- }
-
- Tweet tweet;
- while ((tweet = reader.getTweet()) != null) {
- filler.processTweet(tweet);
- }
- } catch (JsonSyntaxException ex) {
- System.err.println("Got an invalid tweet: " + ex);
- } catch (IOException ex) {
- System.err.println("Cannot open tweets: " + ex);
- } finally {
- if (reader != null) {
- reader.close();
+ ConnectionBuilder cb = new ConnectionBuilder()
+ .setServerName(m_hostaddress)
+ .setUsername("postgres")
+ .setPassword("2IOC02")
+ .setDbName("Twitter");
+
+ try (Connection connection = cb.create()) {
+
+ /* create the object that fills the database */
+ DataFiller filler = new DataFiller(connection);
+
+ ITweetReader reader = null;
+ try {
+ if (m_filename == null) {
+ reader = new TweetReader(System.in);
+ } else {
+ reader = new FileTweetReader(m_filename);
+ }
+
+ Tweet tweet;
+ while ((tweet = reader.getTweet()) != null) {
+ filler.processTweet(tweet);
+ }
+ } catch (JsonSyntaxException ex) {
+ System.err.println("Got an invalid tweet: " + ex);
+ } catch (IOException ex) {
+ System.err.println("Cannot open tweets: " + ex);
+ } finally {
+ if (reader != null) {
+ reader.close();
+ }
}
+ } catch (SQLException ex) {
+ Logger.getLogger(Main.class.getName()).log(Level.SEVERE,
+ "Query error", ex);
}
-
- connection.close();
-
- System.out.print("exit succesfull.");
}
private void parseGlobalOptions(String[] args) {