aboutsummaryrefslogtreecommitdiff
path: root/DocumentService/src/eu/stork/documentservice/data/DatabaseConnectorMySQLImpl.java
diff options
context:
space:
mode:
Diffstat (limited to 'DocumentService/src/eu/stork/documentservice/data/DatabaseConnectorMySQLImpl.java')
-rw-r--r--DocumentService/src/eu/stork/documentservice/data/DatabaseConnectorMySQLImpl.java725
1 files changed, 0 insertions, 725 deletions
diff --git a/DocumentService/src/eu/stork/documentservice/data/DatabaseConnectorMySQLImpl.java b/DocumentService/src/eu/stork/documentservice/data/DatabaseConnectorMySQLImpl.java
deleted file mode 100644
index e4506e17d..000000000
--- a/DocumentService/src/eu/stork/documentservice/data/DatabaseConnectorMySQLImpl.java
+++ /dev/null
@@ -1,725 +0,0 @@
-package eu.stork.documentservice.data;
-
-import java.sql.Connection;
-import java.sql.DriverManager;
-import java.sql.PreparedStatement;
-import java.sql.ResultSet;
-import java.sql.SQLException;
-
-import eu.stork.documentservice.exceptions.DatabaseException;
-import eu.stork.documentservice.exceptions.ModelException;
-import eu.stork.documentservice.model.DocumentModel;
-import eu.stork.documentservice.model.RequestModel;
-import eu.stork.documentservice.model.TempDocumentModel;
-
-public class DatabaseConnectorMySQLImpl implements DatabaseConnector {
-
- private String user;
- private String password;
- private String server;
- private String database;
-
- /**
- * The MYSQL connector constructor
- * @author sveinbjorno
- * @param _user the database user
- * @param _password the users password
- * @param _server the mysql server
- * @param _database the mysql database
- */
- public DatabaseConnectorMySQLImpl(String _user, String _password, String _server, String _database)
- {
- user = _user;
- password = _password;
- server = _server;
- database = _database;
- try {
- Class.forName("com.mysql.jdbc.Driver").newInstance();
- } catch (InstantiationException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- } catch (IllegalAccessException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- } catch (ClassNotFoundException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- }
-
- /* (non-Javadoc)
- * @see eu.stork.documentservice.data.DatabaseConnector#addDocument(eu.stork.documentservice.model.DocumentModel)
- */
- @Override
- public boolean addDocument(DocumentModel document) throws DatabaseException
- {
- boolean successful = false;
- Connection con = null;
- PreparedStatement pst = null;
-
- try
- {
- document.insertValidate();
- String url = "jdbc:mysql://" + server + "/" + database;
- con = DriverManager.getConnection(url, user, password);
-
- pst = con.prepareStatement("INSERT INTO document(DOCID, DOCUMENT, FILENAME, MIMETYPE, CREATED, RECEIVERCERT, "
- + "ENCKEY, ENCIV) VALUES(?, ?, ?, ?, ?, ?, ?, ?)");
- pst.setString(1, document.getDocid());
- pst.setBlob(2, document.getDataStream());
- pst.setString(3, document.getFilename());
- pst.setString(4, document.getMimetype());
- pst.setTimestamp(5, DatabaseHelper.getSqlCurrentDate());
- pst.setString(6, document.getReicevercert());
- pst.setString(7, document.getEnckey());
- pst.setString(8, document.getEnciv());
- pst.executeUpdate();
- successful = true;
- }
- catch (SQLException ex)
- {
- throw new DatabaseException(ex);
- }
- catch (ModelException mex)
- {
- throw new DatabaseException(mex);
- }
- finally
- {
- try
- {
- if (pst != null) {
- pst.close();
- }
- if (con != null) {
- con.close();
- }
- }
- catch (SQLException ex)
- {
- throw new DatabaseException(ex);
- }
- }
- return successful;
- }
-
- /* (non-Javadoc)
- * @see eu.stork.documentservice.data.DatabaseConnector#updateDocument(eu.stork.documentservice.model.DocumentModel)
- */
- @Override
- public boolean updateDocument(DocumentModel document) throws DatabaseException
- {
- boolean successful = false;
- Connection con = null;
- PreparedStatement pst = null;
-
- try
- {
- document.updateValidate();
- String url = "jdbc:mysql://" + server + "/" + database;
- con = DriverManager.getConnection(url, user, password);
-
- pst = con.prepareStatement("update document set DOCUMENT = ?, FILENAME = ?, MIMETYPE = ?, UPDATED = ?, "
- + "RECEIVERCERT = ?, ENCKEY = ?, ENCIV = ? where DOCID = ?");
- pst.setBlob(1, document.getDataStream());
- pst.setString(2, document.getFilename());
- pst.setString(3, document.getMimetype());
- pst.setTimestamp(4, DatabaseHelper.getSqlCurrentDate());
- pst.setString(5, document.getReicevercert());
- pst.setString(6, document.getEnckey());
- pst.setString(7, document.getEnciv());
- pst.setString(8, document.getDocid());
- pst.executeUpdate();
- successful = true;
- }
- catch (SQLException ex)
- {
- throw new DatabaseException(ex);
- }
- catch (ModelException mex)
- {
- throw new DatabaseException(mex);
- }
- finally
- {
- try
- {
- if (pst != null) {
- pst.close();
- }
- if (con != null) {
- con.close();
- }
- }
- catch (SQLException ex)
- {
- throw new DatabaseException(ex);
- }
- }
- return successful;
- }
-
- /* (non-Javadoc)
- * @see eu.stork.documentservice.data.DatabaseConnector#getDocument(java.lang.String)
- */
- @Override
- public DocumentModel getDocument(String docId) throws DatabaseException
- {
- DocumentModel document = null;
- Connection con = null;
- PreparedStatement pst = null;
-
- try
- {
- if (docId == null || docId.isEmpty())
- throw new DatabaseException("Document ID is null or empty.");
- String url = "jdbc:mysql://" + server + "/" + database;
- con = DriverManager.getConnection(url, user, password);
- String commandString = "select DOCUMENT, FILENAME, MIMETYPE, CREATED, UPDATED, DELETED, RECEIVERCERT, ENCKEY, ENCIV "
- + "from document where DOCID = ?";
-
- pst = con.prepareStatement(commandString);
- pst.setString(1, docId);
-
- ResultSet set = pst.executeQuery();
- if (set.next())
- {
- document = new DocumentModel();
- document.setDocid(docId);
- document.setDataStream(set.getBinaryStream(1));
- document.setFilename(set.getString(2));
- document.setMimetype(set.getString(3));
- document.setCreated(DatabaseHelper.getUtilDate(set.getTimestamp(4)));
- document.setUpdated(DatabaseHelper.getUtilDate(set.getTimestamp(5)));
- document.setDeleted(DatabaseHelper.getUtilDate(set.getTimestamp(6)));
- document.setReicevercert(set.getString(7));
- document.setEnckey(set.getString(8));
- document.setEnciv(set.getString(9));
- }
- }
- catch (ModelException mex)
- {
- throw new DatabaseException(mex);
- }
- catch (SQLException ex)
- {
- throw new DatabaseException(ex);
- }
- finally
- {
- try
- {
- if (pst != null) {
- pst.close();
- }
- if (con != null) {
- con.close();
- }
- }
- catch (SQLException ex)
- {
- throw new DatabaseException(ex);
- }
- }
-
- return document;
- }
-
- /* (non-Javadoc)
- * @see eu.stork.documentservice.data.DatabaseConnector#deleteDocument(java.lang.String)
- */
- @Override
- public boolean deleteDocument(String docId) throws DatabaseException
- {
- boolean successful = false;
- Connection con = null;
- PreparedStatement pst = null;
-
- try
- {
- if (docId == null || docId.isEmpty())
- throw new DatabaseException("Document ID is null or empty.");
- String url = "jdbc:mysql://" + server + "/" + database;
- con = DriverManager.getConnection(url, user, password);
- String commandString = "update document set document = null, deleted = ? where DOCID = ?";
-
- pst = con.prepareStatement(commandString);
- pst.setTimestamp(1, DatabaseHelper.getSqlCurrentDate());
- pst.setString(2, docId);
-
- pst.executeUpdate();
- successful = true;
-
- }
- catch (SQLException ex)
- {
- throw new DatabaseException(ex);
- }
- finally
- {
- try
- {
- if (pst != null) {
- pst.close();
- }
- if (con != null) {
- con.close();
- }
- }
- catch (SQLException ex)
- {
- throw new DatabaseException(ex);
- }
- }
-
- return successful;
- }
-
- /* (non-Javadoc)
- * @see eu.stork.documentservice.data.DatabaseConnector#addRequest(eu.stork.documentservice.model.RequestModel)
- */
- @Override
- public boolean addRequest(RequestModel request) throws DatabaseException
- {
- boolean successful = false;
- Connection con = null;
- PreparedStatement pst = null;
-
- try
- {
- request.insertValidate();
- String url = "jdbc:mysql://" + server + "/" + database;
- con = DriverManager.getConnection(url, user, password);
-
- pst = con.prepareStatement("INSERT INTO request(REQUESTID, DOCID, DESTCOUNTRY, SPCOUNTRY, "
- + "SPID, XMLREQUEST, REQTIMESTAMP) VALUES(?, ?, ?, ?, ?, ?, ?)");
- pst.setString(1, request.getRequestid());
- pst.setString(2, request.getDocid());
- pst.setString(3, request.getDestcountry());
- pst.setString(4, request.getSpcountry());
- pst.setString(5, request.getSpid());
- pst.setString(6, request.getXmlrequest());
- pst.setTimestamp(7, DatabaseHelper.getSqlCurrentDate());
- pst.executeUpdate();
- successful = true;
- }
- catch (ModelException mex)
- {
- throw new DatabaseException(mex);
- }
- catch (SQLException ex)
- {
- throw new DatabaseException(ex);
- }
- finally
- {
- try
- {
- if (pst != null) {
- pst.close();
- }
- if (con != null) {
- con.close();
- }
- }
- catch (SQLException ex)
- {
- throw new DatabaseException(ex);
- }
- }
- return successful;
- }
-
- /* (non-Javadoc)
- * @see eu.stork.documentservice.data.DatabaseConnector#getRequest(java.lang.String)
- */
- @Override
- public RequestModel getRequest(String requestId) throws DatabaseException
- {
- RequestModel request = null;
- Connection con = null;
- PreparedStatement pst = null;
-
- try
- {
- if (requestId == null || requestId.isEmpty())
- throw new DatabaseException("Request ID is null or empty.");
- String url = "jdbc:mysql://" + server + "/" + database;
- con = DriverManager.getConnection(url, user, password);
- String commandString = "select DOCID, DESTCOUNTRY, SPCOUNTRY, SPID, XMLREQUEST, XMLRESPONSE, REQTIMESTAMP, "
- + "RESTIMESTAMP from request where REQUESTID = ?";
-
- pst = con.prepareStatement(commandString);
- pst.setString(1, requestId);
-
- ResultSet set = pst.executeQuery();
- if (set.next())
- {
- request = new RequestModel();
- request.setRequestid(requestId);
- request.setDocid(set.getString(1));
- request.setDestcountry(set.getString(2));
- request.setSpcountry(set.getString(3));
- request.setSpid(set.getString(4));
- request.setXmlrequest(set.getString(5));
- request.setXmlresponse(set.getString(6));
- request.setReqtimestamp(DatabaseHelper.getUtilDate(set.getTimestamp(7)));
- request.setRestimestamp(DatabaseHelper.getSqlDate(set.getTimestamp(8)));
- }
- }
- catch (SQLException ex)
- {
- throw new DatabaseException(ex);
- }
- finally
- {
- try
- {
- if (pst != null) {
- pst.close();
- }
- if (con != null) {
- con.close();
- }
- }
- catch (SQLException ex)
- {
- throw new DatabaseException(ex);
- }
- }
-
- return request;
- }
-
- /* (non-Javadoc)
- * @see eu.stork.documentservice.data.DatabaseConnector#getRequestByDocId(java.lang.String)
- */
- @Override
- public RequestModel getRequestByDocId(String docId) throws DatabaseException
- {
- RequestModel request = null;
- Connection con = null;
- PreparedStatement pst = null;
-
- try
- {
- if (docId == null || docId.isEmpty())
- throw new DatabaseException("Document ID is null or empty.");
- String url = "jdbc:mysql://" + server + "/" + database;
- con = DriverManager.getConnection(url, user, password);
- String commandString = "select REQUESTID, DESTCOUNTRY, SPCOUNTRY, SPID, XMLREQUEST, XMLRESPONSE, REQTIMESTAMP, "
- + "RESTIMESTAMP from request where DOCID = ?";
-
- pst = con.prepareStatement(commandString);
- pst.setString(1, docId);
-
- ResultSet set = pst.executeQuery();
- if (set.next())
- {
- request = new RequestModel();
- request.setDocid(docId);
- request.setRequestid(set.getString(1));
- request.setDestcountry(set.getString(2));
- request.setSpcountry(set.getString(3));
- request.setSpid(set.getString(4));
- request.setXmlrequest(set.getString(5));
- request.setXmlresponse(set.getString(6));
- request.setReqtimestamp(DatabaseHelper.getUtilDate(set.getTimestamp(7)));
- request.setRestimestamp(DatabaseHelper.getSqlDate(set.getTimestamp(8)));
- }
- }
- catch (SQLException ex)
- {
- throw new DatabaseException(ex);
- }
- finally
- {
- try
- {
- if (pst != null) {
- pst.close();
- }
- if (con != null) {
- con.close();
- }
- }
- catch (SQLException ex)
- {
- throw new DatabaseException(ex);
- }
- }
-
- return request;
- }
-
- /* (non-Javadoc)
- * @see eu.stork.documentservice.data.DatabaseConnector#updateRequest(eu.stork.documentservice.model.RequestModel)
- */
- @Override
- public boolean updateRequest(RequestModel request) throws DatabaseException
- {
- boolean successful = false;
- Connection con = null;
- PreparedStatement pst = null;
-
- try
- {
- request.updateValidate();
- String url = "jdbc:mysql://" + server + "/" + database;
- con = DriverManager.getConnection(url, user, password);
-
- pst = con.prepareStatement("update request set DOCID = ?, DESTCOUNTRY = ?, SPCOUNTRY = ?, SPID = ?, "
- + "XMLREQUEST = ?, XMLRESPONSE = ?, RESTIMESTAMP = ? where REQUESTID = ?");
- pst.setString(1, request.getDocid());
- pst.setString(2, request.getDestcountry());
- pst.setString(3, request.getSpcountry());
- pst.setString(4, request.getSpid());
- pst.setString(5, request.getXmlrequest());
- pst.setString(6, request.getXmlresponse());
- pst.setTimestamp(7, DatabaseHelper.getSqlDate(request.getRestimestamp()));
- pst.setString(8, request.getRequestid());
- pst.executeUpdate();
- successful = true;
- }
- catch (ModelException mex)
- {
- throw new DatabaseException(mex);
- }
- catch (SQLException ex)
- {
- throw new DatabaseException(ex);
- }
- finally
- {
- try
- {
- if (pst != null) {
- pst.close();
- }
- if (con != null) {
- con.close();
- }
- }
- catch (SQLException ex)
- {
- throw new DatabaseException(ex);
- }
- }
- return successful;
- }
-
- @Override
- public boolean addTempDocument(TempDocumentModel document) throws DatabaseException
- {
- boolean successful = false;
- Connection con = null;
- PreparedStatement pst = null;
-
- try
- {
- document.insertValidate();
- String url = "jdbc:mysql://" + server + "/" + database;
- con = DriverManager.getConnection(url, user, password);
-
- pst = con.prepareStatement("INSERT INTO temp_document(DOCID, DOCUMENT, MIMETYPE, CREATED, RECEIVERCERT, "
- + "ENCKEY, ENCIV, SPID) VALUES(?, ?, ?, ?, ?, ?, ?, (SELECT ID FROM spid where spid = ?))");
- pst.setString(1, document.getDocid());
- pst.setBlob(2, document.getDataStream());
- pst.setString(3, document.getMimetype());
- pst.setTimestamp(4, DatabaseHelper.getSqlCurrentDate());
- pst.setString(5, document.getReicevercert());
- pst.setString(6, document.getEnckey());
- pst.setString(7, document.getEnciv());
- pst.setString(8, document.getSpid());
- pst.executeUpdate();
- successful = true;
- }
- catch (SQLException ex)
- {
- throw new DatabaseException(ex);
- }
- catch (ModelException mex)
- {
- throw new DatabaseException(mex);
- }
- finally
- {
- try
- {
- if (pst != null) {
- pst.close();
- }
- if (con != null) {
- con.close();
- }
- }
- catch (SQLException ex)
- {
- throw new DatabaseException(ex);
- }
- }
- return successful;
- }
-
- @Override
- public TempDocumentModel getTempDocument(String docId) throws DatabaseException
- {
- TempDocumentModel document = null;
- Connection con = null;
- PreparedStatement pst = null;
-
- try
- {
- if (docId == null || docId.isEmpty())
- throw new DatabaseException("Document ID is null or empty.");
- String url = "jdbc:mysql://" + server + "/" + database;
- con = DriverManager.getConnection(url, user, password);
- String commandString = "select temp.DOCUMENT, temp.MIMETYPE, temp.CREATED, temp.FETCHED, temp.DELETED, "
- + "temp.RECEIVERCERT, temp.ENCKEY, temp.ENCIV, sp.SPID "
- + "from temp_document temp inner join spid sp on sp.ID = temp.SPID where DOCID = ?";
-
- pst = con.prepareStatement(commandString);
- pst.setString(1, docId);
-
- ResultSet set = pst.executeQuery();
- if (set.next())
- {
- document = new TempDocumentModel();
- document.setDocid(docId);
- document.setDataStream(set.getBinaryStream(1));
- document.setMimetype(set.getString(2));
- document.setCreated(DatabaseHelper.getUtilDate(set.getTimestamp(3)));
- document.setFetched(DatabaseHelper.getUtilDate(set.getTimestamp(4)));
- document.setDeleted(DatabaseHelper.getUtilDate(set.getTimestamp(5)));
- document.setReicevercert(set.getString(6));
- document.setEnckey(set.getString(7));
- document.setEnciv(set.getString(8));
- document.setSpid(set.getString(9));
- }
- }
- catch (ModelException mex)
- {
- throw new DatabaseException(mex);
- }
- catch (SQLException ex)
- {
- throw new DatabaseException(ex);
- }
- finally
- {
- try
- {
- if (pst != null) {
- pst.close();
- }
- if (con != null) {
- con.close();
- }
- }
- catch (SQLException ex)
- {
- throw new DatabaseException(ex);
- }
- }
- return document;
- }
-
- @Override
- public boolean updateTempDocument(TempDocumentModel document) throws DatabaseException
- {
- boolean successful = false;
- Connection con = null;
- PreparedStatement pst = null;
-
- try
- {
- document.updateValidate();
- String url = "jdbc:mysql://" + server + "/" + database;
- con = DriverManager.getConnection(url, user, password);
-
- pst = con.prepareStatement("update temp_document set DOCUMENT = ?, MIMETYPE = ?, FETCHED = ?, "
- + "RECEIVERCERT = ?, ENCKEY = ?, ENCIV = ? where DOCID = ?");
- pst.setBlob(1, document.getDataStream());
- pst.setString(2, document.getMimetype());
- pst.setTimestamp(3, DatabaseHelper.getSqlCurrentDate());
- pst.setString(4, document.getReicevercert());
- pst.setString(5, document.getEnckey());
- pst.setString(6, document.getEnciv());
- pst.setString(7, document.getDocid());
- pst.executeUpdate();
- successful = true;
- }
- catch (SQLException ex)
- {
- throw new DatabaseException(ex);
- }
- catch (ModelException mex)
- {
- throw new DatabaseException(mex);
- }
- finally
- {
- try
- {
- if (pst != null) {
- pst.close();
- }
- if (con != null) {
- con.close();
- }
- }
- catch (SQLException ex)
- {
- throw new DatabaseException(ex);
- }
- }
- return successful;
- }
-
- @Override
- public boolean deleteTempDocument(String docId) throws DatabaseException
- {
- boolean successful = false;
- Connection con = null;
- PreparedStatement pst = null;
-
- try
- {
- if (docId == null || docId.isEmpty())
- throw new DatabaseException("Document ID is null or empty.");
- String url = "jdbc:mysql://" + server + "/" + database;
- con = DriverManager.getConnection(url, user, password);
- String commandString = "update temp_document set document = null, deleted = ? where DOCID = ?";
-
- pst = con.prepareStatement(commandString);
- pst.setTimestamp(1, DatabaseHelper.getSqlCurrentDate());
- pst.setString(2, docId);
-
- pst.executeUpdate();
- successful = true;
-
- }
- catch (SQLException ex)
- {
- throw new DatabaseException(ex);
- }
- finally
- {
- try
- {
- if (pst != null) {
- pst.close();
- }
- if (con != null) {
- con.close();
- }
- }
- catch (SQLException ex)
- {
- throw new DatabaseException(ex);
- }
- }
-
- return successful;
- }
-}