OODT-927 Values passed to SQL commands should be sanitized in CAS 
DataSourceIngestMapper.java


Project: http://git-wip-us.apache.org/repos/asf/oodt/repo
Commit: http://git-wip-us.apache.org/repos/asf/oodt/commit/1a1cdf1a
Tree: http://git-wip-us.apache.org/repos/asf/oodt/tree/1a1cdf1a
Diff: http://git-wip-us.apache.org/repos/asf/oodt/diff/1a1cdf1a

Branch: refs/heads/avrorpc
Commit: 1a1cdf1ac8e3dc48187f66923ffd6baa92ced3c3
Parents: a54207f
Author: Lewis John McGibbney <[email protected]>
Authored: Thu May 26 14:25:25 2016 -0700
Committer: Lewis John McGibbney <[email protected]>
Committed: Thu May 26 14:25:25 2016 -0700

----------------------------------------------------------------------
 .../catalog/mapping/DataSourceIngestMapper.java | 303 +++++++------------
 .../mapping/DataSourceIngestMapperFactory.java  |   9 +-
 .../oodt/cas/catalog/mapping/IngestMapper.java  |  38 ++-
 .../cas/catalog/mapping/LuceneIngestMapper.java |  41 +--
 .../mapping/LuceneIngestMapperFactory.java      |   1 +
 .../mapping/MemoryBasedIngestMapper.java        |  26 +-
 .../mapping/MemoryBasedIngestMapperFactory.java |   1 +
 core/pom.xml                                    |  11 +-
 8 files changed, 180 insertions(+), 250 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/oodt/blob/1a1cdf1a/catalog/src/main/java/org/apache/oodt/cas/catalog/mapping/DataSourceIngestMapper.java
----------------------------------------------------------------------
diff --git 
a/catalog/src/main/java/org/apache/oodt/cas/catalog/mapping/DataSourceIngestMapper.java
 
b/catalog/src/main/java/org/apache/oodt/cas/catalog/mapping/DataSourceIngestMapper.java
index a17bfab..3548570 100644
--- 
a/catalog/src/main/java/org/apache/oodt/cas/catalog/mapping/DataSourceIngestMapper.java
+++ 
b/catalog/src/main/java/org/apache/oodt/cas/catalog/mapping/DataSourceIngestMapper.java
@@ -18,13 +18,15 @@ package org.apache.oodt.cas.catalog.mapping;
 
 //JDK imports
 import java.sql.Connection;
+import java.sql.PreparedStatement;
 import java.sql.ResultSet;
+import java.sql.SQLException;
 import java.sql.Statement;
+import java.text.ParseException;
 import java.util.Calendar;
 import java.util.Date;
 import java.util.HashSet;
 import java.util.Set;
-
 //SQL imports
 import javax.sql.DataSource;
 
@@ -50,299 +52,200 @@ public class DataSourceIngestMapper implements 
IngestMapper {
 
        private DataSource dataSource;
        
+       private static final String CATALOG_ID = "' AND CATALOG_ID = '";
+       
+       private static final String CAT_TRANS_FACTORY = "CAT_TRANS_FACTORY";
+       
+       private static final String CAT_TRANS_ID = "CAT_TRANS_ID";
+       
        public DataSourceIngestMapper(String user, String pass, String driver,
                        String jdbcUrl) {
                this.dataSource = 
DatabaseConnectionBuilder.buildDataSource(user, pass,
                 driver, jdbcUrl);
        }
        
+       @Override
        public synchronized void deleteAllMappingsForCatalog(String catalogId)
-                       throws CatalogRepositoryException {
-               Connection conn = null;
-               Statement stmt = null;
-               try {
-                       conn = this.dataSource.getConnection();
-                       stmt = conn.createStatement();
+                       throws CatalogRepositoryException, SQLException {
+               try (Connection conn = this.dataSource.getConnection();
+                   Statement stmt = conn.createStatement()) {
                        stmt.execute("DELETE FROM CatalogServiceMapper WHERE 
CATALOG_ID = '" + catalogId + "'");
-               }catch (Exception e) {
-                       throw new CatalogRepositoryException(e.getMessage(), e);
-               }finally {
-                       try {
-                               conn.close();
-                       }catch(Exception ignored) {}
-                       try {
-                               stmt.close();
-                       }catch(Exception ignored) {}
                }
        }
 
+       @Override
        public synchronized void 
deleteAllMappingsForCatalogServiceTransactionId(
                        TransactionId<?> catalogServiceTransactionId)
-                       throws CatalogRepositoryException {
-               Connection conn = null;
-               Statement stmt = null;
-               try {
-                       conn = this.dataSource.getConnection();
-                       stmt = conn.createStatement();
+                       throws CatalogRepositoryException, SQLException {
+               try (Connection conn = this.dataSource.getConnection();
+                   Statement stmt = conn.createStatement()){
                        stmt.execute("DELETE FROM CatalogServiceMapper WHERE 
CAT_SERV_TRANS_ID = '" + catalogServiceTransactionId + "'");
                        conn.commit();
-               }catch (Exception e) {
-                       throw new CatalogRepositoryException(e.getMessage(), e);
-               }finally {
-                       try {
-                               conn.close();
-                       }catch(Exception ignored) {}
-                       try {
-                               stmt.close();
-                       }catch(Exception ignored) {}
                }
        }
 
+       @Override
        public synchronized void deleteTransactionIdMapping(
                        TransactionId<?> catalogTransactionId, String catalogId)
-                       throws CatalogRepositoryException {
-               Connection conn = null;
-               Statement stmt = null;
-               try {
-                       conn = this.dataSource.getConnection();
-                       stmt = conn.createStatement();
-                       stmt.execute("DELETE FROM CatalogServiceMapper WHERE 
CAT_TRANS_ID = '" + catalogTransactionId + "' AND CATALOG_ID = '" + catalogId + 
"'");
+                       throws CatalogRepositoryException, SQLException {
+               try (Connection conn = this.dataSource.getConnection();
+                   Statement stmt = conn.createStatement()){
+                       stmt.execute("DELETE FROM CatalogServiceMapper WHERE 
CAT_TRANS_ID = '" + catalogTransactionId + CATALOG_ID + catalogId + "'");
                        conn.commit();
-               }catch (Exception e) {
-                       throw new CatalogRepositoryException(e.getMessage(), e);
-               }finally {
-                       try {
-                               conn.close();
-                       }catch(Exception ignored) {}
-                       try {
-                               stmt.close();
-                       }catch(Exception ignored) {}
                }
        }
 
+       @Override
        public synchronized TransactionId<?> getCatalogServiceTransactionId(
                        TransactionId<?> catalogTransactionId, String catalogId)
-                       throws CatalogRepositoryException {
-               Connection conn = null;
-               Statement stmt = null;
+                       throws CatalogRepositoryException, SQLException, 
InstantiationException, IllegalAccessException, ClassNotFoundException {
                ResultSet rs = null;
-               try {
-                       conn = this.dataSource.getConnection();
-                       stmt = conn.createStatement();
-                       rs = stmt.executeQuery("SELECT 
CAT_SERV_TRANS_ID,CAT_SERV_TRANS_FACTORY FROM CatalogServiceMapper WHERE 
CAT_TRANS_ID = '"+ catalogTransactionId + "' AND CATALOG_ID = '" + catalogId + 
"'");
-                       
+    String query = "SELECT CAT_SERV_TRANS_ID,CAT_SERV_TRANS_FACTORY FROM 
CatalogServiceMapper WHERE CAT_TRANS_ID = '"+ catalogTransactionId + CATALOG_ID 
+ catalogId + "'";
+               try (Connection conn = this.dataSource.getConnection();
+                   PreparedStatement pstmt = conn.prepareStatement(query)){
+                       rs = pstmt.executeQuery();
                        while(rs.next()) {
                          return ((TransactionIdFactory) 
Class.forName(rs.getString("CAT_SERV_TRANS_FACTORY")).newInstance())
                                  
.createTransactionId(rs.getString("CAT_SERV_TRANS_ID"));
                        }
-
                        return null;
-               }catch (Exception e) {
-                       throw new CatalogRepositoryException(e.getMessage(), e);
                }finally {
-                       try {
-                               conn.close();
-                       }catch(Exception ignored) {}
-                       try {
-                               stmt.close();
-                       }catch(Exception ignored) {}
-                       try {
-                               rs.close();
-                       }catch(Exception ignored) {}
+      if (rs != null && !rs.isClosed()) {
+          rs.close();
+      }
                }
        }
 
+       @Override
        public synchronized TransactionId<?> getCatalogTransactionId(
                        TransactionId<?> catalogServiceTransactionId, String 
catalogId)
-                       throws CatalogRepositoryException {
-               Connection conn = null;
-               Statement stmt = null;
+                       throws CatalogRepositoryException, SQLException, 
InstantiationException, IllegalAccessException, ClassNotFoundException {
                ResultSet rs = null;
-               try {
-                       conn = this.dataSource.getConnection();
-                       stmt = conn.createStatement();
-                       rs = stmt.executeQuery("SELECT 
CAT_TRANS_ID,CAT_TRANS_FACTORY FROM CatalogServiceMapper WHERE 
CAT_SERV_TRANS_ID = '"+ catalogServiceTransactionId + "' AND CATALOG_ID = '" + 
catalogId + "'");
-                       
+    String query = "SELECT CAT_TRANS_ID,CAT_TRANS_FACTORY FROM 
CatalogServiceMapper WHERE CAT_SERV_TRANS_ID = '"+ catalogServiceTransactionId 
+ CATALOG_ID + catalogId + "'";
+               try (Connection conn = this.dataSource.getConnection();
+                   PreparedStatement pstmt = conn.prepareStatement(query)){
+                       rs = pstmt.executeQuery();
                        while(rs.next()) {
-                         return ((TransactionIdFactory) 
Class.forName(rs.getString("CAT_TRANS_FACTORY")).newInstance())
-                                 
.createTransactionId(rs.getString("CAT_TRANS_ID"));
+                         return ((TransactionIdFactory) 
Class.forName(rs.getString(CAT_TRANS_FACTORY)).newInstance())
+                                 
.createTransactionId(rs.getString(CAT_TRANS_ID));
                        }
-
                        return null;
-               }catch (Exception e) {
-                       throw new CatalogRepositoryException(e.getMessage(), e);
                }finally {
-                       try {
-                               conn.close();
-                       }catch(Exception ignored) {}
-                       try {
-                               stmt.close();
-                       }catch(Exception ignored) {}
-                       try {
-                               rs.close();
-                       }catch(Exception ignored) {}
+      if (rs != null && !rs.isClosed()) {
+        rs.close();
+      }
                }
        }
 
+       @Override
        public synchronized Set<String> getCatalogIds(
                        TransactionId<?> catalogServiceTransactionId)
-                       throws CatalogRepositoryException {
-               Connection conn = null;
-               Statement stmt = null;
+                       throws CatalogRepositoryException, SQLException {
                ResultSet rs = null;
-               try {
-                       conn = this.dataSource.getConnection();
-                       stmt = conn.createStatement();
-                       rs = stmt.executeQuery("SELECT CATALOG_ID FROM 
CatalogServiceMapper WHERE CAT_SERV_TRANS_ID = '"+ catalogServiceTransactionId 
+ "'");
-                       
-                       Set<String> catalogIds = new HashSet<String>();
+    String query = "SELECT CATALOG_ID FROM CatalogServiceMapper WHERE 
CAT_SERV_TRANS_ID = '"+ catalogServiceTransactionId + "'";
+               try (Connection conn = this.dataSource.getConnection();
+                   PreparedStatement pstmt = conn.prepareStatement(query)){
+                       rs = pstmt.executeQuery();
+                       Set<String> catalogIds = new HashSet<>();
                        while(rs.next()) {
                          catalogIds.add(rs.getString("CATALOG_ID"));
                        }
-
                        return catalogIds;
-               }catch (Exception e) {
-                       throw new CatalogRepositoryException(e.getMessage(), e);
                }finally {
-                       try {
-                               conn.close();
-                       }catch(Exception ignored) {}
-                       try {
-                               stmt.close();
-                       }catch(Exception ignored) {}
-                       try {
-                               rs.close();
-                       }catch(Exception ignored) {}
+      if (rs != null && !rs.isClosed()) {
+        rs.close();
+      }
                }       
        }
 
+       @Override
        public synchronized Set<TransactionId<?>> 
getPageOfCatalogTransactionIds(
                        IndexPager indexPager, String catalogId)
-                       throws CatalogRepositoryException {
-               Connection conn = null;
-               Statement stmt = null;
+                       throws CatalogRepositoryException, SQLException, 
InstantiationException, IllegalAccessException, ClassNotFoundException {
                ResultSet rs = null;
-               try {
-                       conn = this.dataSource.getConnection();
-                       stmt = conn.createStatement();
-                       rs = stmt.executeQuery(
-                               "SELECT * FROM "
-                                       +"( SELECT a.*, ROWNUM r FROM " 
-                                               + "( SELECT 
CAT_TRANS_FACTORY,CAT_TRANS_ID FROM CatalogServiceMapper WHERE 
CatalogServiceMapper.CATALOG_ID = '" + catalogId + "' ORDER BY 
CatalogServiceMapper.CAT_SERV_TRANS_ID DESC ) a "
-                                       + "WHERE ROWNUM <= " + 
(indexPager.getPageSize() * (indexPager.getPageNum() + 1)) + " ) "
-                               + "WHERE r >= " + ((indexPager.getPageSize() * 
indexPager.getPageNum()) + 1));
-                       
-                       Set<TransactionId<?>> transactionIds = new 
HashSet<TransactionId<?>>();
+               String query = "SELECT * FROM "
+        +"( SELECT a.*, ROWNUM r FROM " 
+        + "( SELECT CAT_TRANS_FACTORY,CAT_TRANS_ID FROM CatalogServiceMapper 
WHERE CatalogServiceMapper.CATALOG_ID = '" 
+        + catalogId + "' ORDER BY CatalogServiceMapper.CAT_SERV_TRANS_ID DESC 
) a "
+        + "WHERE ROWNUM <= " + (indexPager.getPageSize() * 
(indexPager.getPageNum() + 1)) + " ) "
+        + "WHERE r >= " + ((indexPager.getPageSize() * 
indexPager.getPageNum()) + 1);
+               try (Connection conn = this.dataSource.getConnection();
+                   PreparedStatement pstmt = conn.prepareStatement(query)){
+                       rs = pstmt.executeQuery();
+                       Set<TransactionId<?>> transactionIds = new HashSet<>();
                        while(rs.next()) {
-                         transactionIds.add(((TransactionIdFactory) 
Class.forName(rs.getString("CAT_TRANS_FACTORY")).newInstance())
-                                 
.createTransactionId(rs.getString("CAT_TRANS_ID")));
+                         transactionIds.add(((TransactionIdFactory) 
Class.forName(rs.getString(CAT_TRANS_FACTORY)).newInstance())
+                                 
.createTransactionId(rs.getString(CAT_TRANS_ID)));
                        }
-                               
                        return transactionIds;
-               }catch (Exception e) {
-                       throw new CatalogRepositoryException(e.getMessage(), e);
                }finally {
-                       try {
-                               conn.close();
-                       }catch(Exception ignored) {}
-                       try {
-                               stmt.close();
-                       }catch(Exception ignored) {}
-                       try {
-                               rs.close();
-                       }catch(Exception ignored) {}
+      if (rs != null && !rs.isClosed()) {
+        rs.close();
+      }
                }
        }
 
+       @Override
        public synchronized boolean hasCatalogServiceTransactionId(
                        TransactionId<?> catalogServiceTransactionId)
-                       throws CatalogRepositoryException {
-               Connection conn = null;
-               Statement stmt = null;
+                       throws CatalogRepositoryException, SQLException {
                ResultSet rs = null;
-               try {
-                       conn = this.dataSource.getConnection();
-                       stmt = conn.createStatement();
-                       rs = stmt.executeQuery("SELECT CAT_SERV_TRANS_ID FROM 
CatalogServiceMapper WHERE CAT_SERV_TRANS_ID = '"+ catalogServiceTransactionId 
+ "'");
+               String query = "SELECT CAT_SERV_TRANS_ID FROM 
CatalogServiceMapper WHERE CAT_SERV_TRANS_ID = '"+ catalogServiceTransactionId 
+ "'";
+               try (Connection conn = this.dataSource.getConnection();
+                   PreparedStatement pstmt = conn.prepareStatement(query)){
+                       rs = pstmt.executeQuery();
                        return rs.next();
-               }catch (Exception e) {
-                       throw new CatalogRepositoryException(e.getMessage(), e);
                }finally {
-                       try {
-                               conn.close();
-                       }catch(Exception ignored) {}
-                       try {
-                               stmt.close();
-                       }catch(Exception ignored) {}
-                       try {
-                               rs.close();
-                       }catch(Exception ignored) {}
+      if (rs != null && !rs.isClosed()) {
+        rs.close();
+      }
                }
        }
 
+       @Override
        public synchronized void storeTransactionIdMapping(
                        TransactionId<?> catalogServiceTransactionId,
                        TransactionIdFactory catalogServiceTransactionIdFactory,
                        CatalogReceipt catalogReceipt,
                        TransactionIdFactory catalogTransactionIdFactory)
-                       throws CatalogRepositoryException { 
-               Connection conn = null;
-               Statement stmt = null;
-               try {
-                       conn = this.dataSource.getConnection();
-                       stmt = conn.createStatement();
-                       Calendar calTime = DateUtils.getCurrentUtcTime();
-                       calTime.setTime(catalogReceipt.getTransactionDate());
-                       stmt.execute("INSERT INTO CatalogServiceMapper 
(CAT_SERV_TRANS_ID, CAT_SERV_TRANS_FACTORY, CAT_TRANS_ID, CAT_TRANS_FACTORY, 
CAT_TRANS_DATE, CATALOG_ID) VALUES ('" 
-                                       + catalogServiceTransactionId + "', '" 
-                                       + 
catalogServiceTransactionIdFactory.getClass().getName() + "', '" 
-                                       + catalogReceipt.getTransactionId() + 
"', '" 
-                                       + 
catalogTransactionIdFactory.getClass().getName() + "', '" 
-                                       + DateUtils.toString(calTime) + "', '"
-                                       + catalogReceipt.getCatalogId() + "')");
+                       throws CatalogRepositoryException, SQLException {
+    Calendar calTime = DateUtils.getCurrentUtcTime();
+    calTime.setTime(catalogReceipt.getTransactionDate());
+         String query = "INSERT INTO CatalogServiceMapper (CAT_SERV_TRANS_ID, 
CAT_SERV_TRANS_FACTORY, CAT_TRANS_ID, CAT_TRANS_FACTORY,"
+             + " CAT_TRANS_DATE, CATALOG_ID) VALUES ('" 
+        + catalogServiceTransactionId + "', '" 
+        + catalogServiceTransactionIdFactory.getClass().getName() + "', '" 
+        + catalogReceipt.getTransactionId() + "', '" 
+        + catalogTransactionIdFactory.getClass().getName() + "', '" 
+        + DateUtils.toString(calTime) + "', '"
+        + catalogReceipt.getCatalogId() + "')";
+               try (Connection conn = this.dataSource.getConnection();
+                   PreparedStatement pstmt = conn.prepareStatement(query)){
+                       pstmt.execute();
                        conn.commit();
-               }catch (Exception e) {
-                       throw new CatalogRepositoryException(e.getMessage(), e);
-               }finally {
-                       try {
-                               conn.close();
-                       }catch(Exception ignored) {}
-                       try {
-                               stmt.close();
-                       }catch(Exception ignored) {}
                }
        }
 
+       @Override
        public CatalogReceipt getCatalogReceipt(
                        TransactionId<?> catalogServiceTransactionId, String 
catalogId)
-                       throws CatalogRepositoryException {
-               Connection conn = null;
-               Statement stmt = null;
+                       throws CatalogRepositoryException, SQLException, 
InstantiationException, IllegalAccessException, ClassNotFoundException, 
ParseException {
                ResultSet rs = null;
-               try {
-                       conn = this.dataSource.getConnection();
-                       stmt = conn.createStatement();
-                       rs = stmt.executeQuery("SELECT CAT_TRANS_ID, 
CAT_TRANS_FACTORY, CAT_TRANS_DATE FROM CatalogServiceMapper WHERE 
CAT_SERV_TRANS_ID = '"+ catalogServiceTransactionId + "' AND CATALOG_ID = '" + 
catalogId + "'");
-                       
+               String query = "SELECT CAT_TRANS_ID, CAT_TRANS_FACTORY, 
CAT_TRANS_DATE FROM CatalogServiceMapper WHERE CAT_SERV_TRANS_ID = '"+ 
catalogServiceTransactionId + CATALOG_ID + catalogId + "'";
+               try (Connection conn = this.dataSource.getConnection();
+                   PreparedStatement pstmt = conn.prepareStatement(query)){
+                       rs = pstmt.executeQuery();
                        if(rs.next()) {
-                               TransactionId<?> catalogTransactionId =  
((TransactionIdFactory) 
Class.forName(rs.getString("CAT_TRANS_FACTORY")).newInstance()).createTransactionId(rs.getString("CAT_TRANS_ID"));
+                               TransactionId<?> catalogTransactionId =  
((TransactionIdFactory) 
Class.forName(rs.getString(CAT_TRANS_FACTORY)).newInstance()).createTransactionId(rs.getString(CAT_TRANS_ID));
                                Date transactionDate = 
DateUtils.toCalendar(rs.getString("CAT_TRANS_DATE"), 
DateUtils.FormatType.UTC_FORMAT).getTime();
                                return new CatalogReceipt(new 
IngestReceipt(catalogTransactionId, transactionDate), catalogId);
                        }else {
                                return null;
                        }
-               }catch (Exception e) {
-                       throw new CatalogRepositoryException(e.getMessage(), e);
                }finally {
-                       try {
-                               conn.close();
-                       }catch(Exception ignored) {}
-                       try {
-                               stmt.close();
-                       }catch(Exception ignored) {}
-                       try {
-                               rs.close();
-                       }catch(Exception ignored) {}
+      if (rs != null && !rs.isClosed()) {
+        rs.close();
+      }
                }
        }
 

http://git-wip-us.apache.org/repos/asf/oodt/blob/1a1cdf1a/catalog/src/main/java/org/apache/oodt/cas/catalog/mapping/DataSourceIngestMapperFactory.java
----------------------------------------------------------------------
diff --git 
a/catalog/src/main/java/org/apache/oodt/cas/catalog/mapping/DataSourceIngestMapperFactory.java
 
b/catalog/src/main/java/org/apache/oodt/cas/catalog/mapping/DataSourceIngestMapperFactory.java
index 2a7981f..901915b 100644
--- 
a/catalog/src/main/java/org/apache/oodt/cas/catalog/mapping/DataSourceIngestMapperFactory.java
+++ 
b/catalog/src/main/java/org/apache/oodt/cas/catalog/mapping/DataSourceIngestMapperFactory.java
@@ -16,12 +16,12 @@
  */
 package org.apache.oodt.cas.catalog.mapping;
 
-//Spring imports
-import org.springframework.beans.factory.annotation.Required;
-
 import java.util.logging.Level;
 import java.util.logging.Logger;
 
+//Spring imports
+import org.springframework.beans.factory.annotation.Required;
+
 /**
  * @author bfoster
  * @version $Revision$
@@ -77,12 +77,13 @@ public class DataSourceIngestMapperFactory implements 
IngestMapperFactory {
                this.driver = driver;
        }
        
+       @Override
        public IngestMapper createMapper() {
                try {
                        return new DataSourceIngestMapper(user, pass,
                        driver, jdbcUrl);
                }catch (Exception e) {
-                       LOG.log(Level.SEVERE, e.getMessage());
+                       LOG.log(Level.SEVERE, e.getMessage(), e);
                        return null;
                }
        }

http://git-wip-us.apache.org/repos/asf/oodt/blob/1a1cdf1a/catalog/src/main/java/org/apache/oodt/cas/catalog/mapping/IngestMapper.java
----------------------------------------------------------------------
diff --git 
a/catalog/src/main/java/org/apache/oodt/cas/catalog/mapping/IngestMapper.java 
b/catalog/src/main/java/org/apache/oodt/cas/catalog/mapping/IngestMapper.java
index 9b00cbe..1c1ecde 100644
--- 
a/catalog/src/main/java/org/apache/oodt/cas/catalog/mapping/IngestMapper.java
+++ 
b/catalog/src/main/java/org/apache/oodt/cas/catalog/mapping/IngestMapper.java
@@ -16,6 +16,8 @@
  */
 package org.apache.oodt.cas.catalog.mapping;
 
+import java.sql.SQLException;
+import java.text.ParseException;
 //JDK imports
 import java.util.Set;
 
@@ -44,24 +46,25 @@ public interface IngestMapper {
         *            TransactionId generated by the CatalogService
         * @throws CatalogRepositoryException
         *             Any error
+        * @throws SQLException 
         */
        void storeTransactionIdMapping(
                TransactionId<?> catalogServiceTransactionId, 
TransactionIdFactory catalogServiceTransactionIdFactory,
                CatalogReceipt catalogReceipt, TransactionIdFactory 
catalogTransactionIdFactory)
-                       throws CatalogRepositoryException;
+                       throws CatalogRepositoryException, SQLException;
 
        Set<TransactionId<?>> getPageOfCatalogTransactionIds(IndexPager 
indexPager,
-                                                                               
                                 String catalogId) throws 
CatalogRepositoryException;
+                                                                               
                                 String catalogId) throws 
CatalogRepositoryException, SQLException, InstantiationException, 
IllegalAccessException, ClassNotFoundException;
        
        void deleteTransactionIdMapping(TransactionId<?> catalogTransactionId,
-                                                                       String 
catalogId) throws CatalogRepositoryException;
+                                                                       String 
catalogId) throws CatalogRepositoryException, SQLException;
        
        void deleteAllMappingsForCatalogServiceTransactionId(
                TransactionId<?> catalogServiceTransactionId)
-                       throws CatalogRepositoryException;
+                       throws CatalogRepositoryException, SQLException;
        
        void deleteAllMappingsForCatalog(String catalogId)
-                       throws CatalogRepositoryException;
+                       throws CatalogRepositoryException, SQLException;
        
        /**
         * Verify if the given CatalogService TransactionId has been stored in a
@@ -73,10 +76,11 @@ public interface IngestMapper {
         * @return True is the catalogServiceTransactionId has been used in a 
used in a mapping
         * @throws CatalogRepositoryException
         *             Any error
+        * @throws SQLException 
         */
        boolean hasCatalogServiceTransactionId(
                TransactionId<?> catalogServiceTransactionId)
-                       throws CatalogRepositoryException;
+                       throws CatalogRepositoryException, SQLException;
 
        /**
         * Get the CatalogService TransactionId that was mapped to the given 
Catalog
@@ -90,10 +94,14 @@ public interface IngestMapper {
         *         Catalog TransactionId and Catalog ID
         * @throws CatalogRepositoryException
         *             Any Error
+        * @throws SQLException 
+        * @throws ClassNotFoundException 
+        * @throws IllegalAccessException 
+        * @throws InstantiationException 
         */
        TransactionId<?> getCatalogServiceTransactionId(
                TransactionId<?> catalogTransactionId, String catalogId)
-                       throws CatalogRepositoryException;
+                       throws CatalogRepositoryException, SQLException, 
InstantiationException, IllegalAccessException, ClassNotFoundException;
 
        /**
         * Get the Catalog TransactionId that was mapped to the given Catalog ID
@@ -107,10 +115,14 @@ public interface IngestMapper {
         *         Catalog TransactionId and Catalog ID
         * @throws CatalogRepositoryException
         *             Any Error
+        * @throws SQLException 
+        * @throws ClassNotFoundException 
+        * @throws IllegalAccessException 
+        * @throws InstantiationException 
         */
        TransactionId<?> getCatalogTransactionId(
                TransactionId<?> catalogServiceTransactionId, String catalogId)
-                       throws CatalogRepositoryException;
+                       throws CatalogRepositoryException, SQLException, 
InstantiationException, IllegalAccessException, ClassNotFoundException;
 
        /**
         * Get all the Catalog URNs for which the given TransactionId was mapped
@@ -120,10 +132,11 @@ public interface IngestMapper {
         * @return Catalog IDs for which the given TransactionId was mapped
         * @throws CatalogRepositoryException
         *             Any Error
+        * @throws SQLException 
         */
        Set<String> getCatalogIds(
                TransactionId<?> catalogServiceTransactionId)
-                       throws CatalogRepositoryException;
+                       throws CatalogRepositoryException, SQLException;
        
        /**
         * 
@@ -131,9 +144,14 @@ public interface IngestMapper {
         * @param catalogId
         * @return
         * @throws CatalogRepositoryException
+        * @throws SQLException 
+        * @throws ClassNotFoundException 
+        * @throws IllegalAccessException 
+        * @throws InstantiationException 
+        * @throws ParseException 
         */
        CatalogReceipt getCatalogReceipt(
                TransactionId<?> catalogServiceTransactionId, String catalogId)
-                       throws CatalogRepositoryException;
+                       throws CatalogRepositoryException, SQLException, 
InstantiationException, IllegalAccessException, ClassNotFoundException, 
ParseException;
        
 }

http://git-wip-us.apache.org/repos/asf/oodt/blob/1a1cdf1a/catalog/src/main/java/org/apache/oodt/cas/catalog/mapping/LuceneIngestMapper.java
----------------------------------------------------------------------
diff --git 
a/catalog/src/main/java/org/apache/oodt/cas/catalog/mapping/LuceneIngestMapper.java
 
b/catalog/src/main/java/org/apache/oodt/cas/catalog/mapping/LuceneIngestMapper.java
index 231480c..3b97265 100644
--- 
a/catalog/src/main/java/org/apache/oodt/cas/catalog/mapping/LuceneIngestMapper.java
+++ 
b/catalog/src/main/java/org/apache/oodt/cas/catalog/mapping/LuceneIngestMapper.java
@@ -36,76 +36,77 @@ import 
org.apache.oodt.cas.catalog.struct.TransactionIdFactory;
  */
 public class LuceneIngestMapper implements IngestMapper {
 
+  private static final String UNSUPPORTED = "This operation is currently 
unsupported. Please report to [email protected]";
+  @Override
        public void deleteAllMappingsForCatalog(String catalogId)
                        throws CatalogRepositoryException {
-               // TODO Auto-generated method stub
-               
+               throw new UnsupportedOperationException(UNSUPPORTED);
        }
 
+  @Override
        public void deleteAllMappingsForCatalogServiceTransactionId(
                        TransactionId<?> catalogServiceTransactionId)
                        throws CatalogRepositoryException {
-               // TODO Auto-generated method stub
-               
+    throw new UnsupportedOperationException(UNSUPPORTED);
        }
 
+  @Override
        public void deleteTransactionIdMapping(
                        TransactionId<?> catalogTransactionId, String catalogId)
                        throws CatalogRepositoryException {
-               // TODO Auto-generated method stub
-               
+    throw new UnsupportedOperationException(UNSUPPORTED);
        }
 
+  @Override
        public CatalogReceipt getCatalogReceipt(
                        TransactionId<?> catalogServiceTransactionId, String 
catalogId)
                        throws CatalogRepositoryException {
-               // TODO Auto-generated method stub
-               return null;
+    throw new UnsupportedOperationException(UNSUPPORTED);
        }
 
+  @Override
        public TransactionId<?> getCatalogServiceTransactionId(
                        TransactionId<?> catalogTransactionId, String catalogId)
                        throws CatalogRepositoryException {
-               // TODO Auto-generated method stub
-               return null;
+    throw new UnsupportedOperationException(UNSUPPORTED);
        }
 
+  @Override
        public TransactionId<?> getCatalogTransactionId(
                        TransactionId<?> catalogServiceTransactionId, String 
catalogId)
                        throws CatalogRepositoryException {
-               // TODO Auto-generated method stub
-               return null;
+    throw new UnsupportedOperationException(UNSUPPORTED);
        }
 
+  @Override
        public Set<String> getCatalogIds(
                        TransactionId<?> catalogServiceTransactionId)
                        throws CatalogRepositoryException {
-               // TODO Auto-generated method stub
-               return null;
+    throw new UnsupportedOperationException(UNSUPPORTED);
        }
 
+  @Override
        public Set<TransactionId<?>> getPageOfCatalogTransactionIds(
                        IndexPager indexPager, String catalogId)
                        throws CatalogRepositoryException {
-               // TODO Auto-generated method stub
-               return null;
+    throw new UnsupportedOperationException(UNSUPPORTED);
        }
 
+  @Override
        public boolean hasCatalogServiceTransactionId(
                        TransactionId<?> catalogServiceTransactionId)
                        throws CatalogRepositoryException {
-               // TODO Auto-generated method stub
-               return false;
+    throw new UnsupportedOperationException(UNSUPPORTED);
        }
 
+  @Override
        public void storeTransactionIdMapping(
                        TransactionId<?> catalogServiceTransactionId,
                        TransactionIdFactory catalogServiceTransactionIdFactory,
                        CatalogReceipt catalogReceipt,
                        TransactionIdFactory catalogTransactionIdFactory)
                        throws CatalogRepositoryException {
-               // TODO Auto-generated method stub
-               
+    throw new UnsupportedOperationException(UNSUPPORTED);
        }
 
 

http://git-wip-us.apache.org/repos/asf/oodt/blob/1a1cdf1a/catalog/src/main/java/org/apache/oodt/cas/catalog/mapping/LuceneIngestMapperFactory.java
----------------------------------------------------------------------
diff --git 
a/catalog/src/main/java/org/apache/oodt/cas/catalog/mapping/LuceneIngestMapperFactory.java
 
b/catalog/src/main/java/org/apache/oodt/cas/catalog/mapping/LuceneIngestMapperFactory.java
index dee45ce..c736bd9 100644
--- 
a/catalog/src/main/java/org/apache/oodt/cas/catalog/mapping/LuceneIngestMapperFactory.java
+++ 
b/catalog/src/main/java/org/apache/oodt/cas/catalog/mapping/LuceneIngestMapperFactory.java
@@ -27,6 +27,7 @@ package org.apache.oodt.cas.catalog.mapping;
 public class LuceneIngestMapperFactory implements
                IngestMapperFactory {
 
+  @Override
        public IngestMapper createMapper() {
                return new LuceneIngestMapper();
        }

http://git-wip-us.apache.org/repos/asf/oodt/blob/1a1cdf1a/catalog/src/main/java/org/apache/oodt/cas/catalog/mapping/MemoryBasedIngestMapper.java
----------------------------------------------------------------------
diff --git 
a/catalog/src/main/java/org/apache/oodt/cas/catalog/mapping/MemoryBasedIngestMapper.java
 
b/catalog/src/main/java/org/apache/oodt/cas/catalog/mapping/MemoryBasedIngestMapper.java
index 281c23c..58df519 100644
--- 
a/catalog/src/main/java/org/apache/oodt/cas/catalog/mapping/MemoryBasedIngestMapper.java
+++ 
b/catalog/src/main/java/org/apache/oodt/cas/catalog/mapping/MemoryBasedIngestMapper.java
@@ -50,9 +50,9 @@ public class MemoryBasedIngestMapper implements IngestMapper {
        protected ConcurrentHashMap<String, List<CatalogReceipt>> 
catalogIdToCatalogReceiptMapping;
        
        public MemoryBasedIngestMapper() {
-               this.catalogServiceTransactionIdKeyMapping = new 
ConcurrentHashMap<String, TransactionIdMapping>();
-               this.catalogInfoKeyMapping = new ConcurrentHashMap<String, 
TransactionIdMapping>();
-               this.catalogIdToCatalogReceiptMapping = new 
ConcurrentHashMap<String, List<CatalogReceipt>>();
+               this.catalogServiceTransactionIdKeyMapping = new 
ConcurrentHashMap<>();
+               this.catalogInfoKeyMapping = new ConcurrentHashMap<>();
+               this.catalogIdToCatalogReceiptMapping = new 
ConcurrentHashMap<>();
        }
        
        /*
@@ -62,6 +62,7 @@ public class MemoryBasedIngestMapper implements IngestMapper {
         * getCatalogServiceTransactionId
         * (org.apache.oodt.cas.catalog.struct.TransactionId, java.lang.String)
         */
+       @Override
        public synchronized TransactionId<?> getCatalogServiceTransactionId(
                        TransactionId<?> catalogTransactionId, String catalogId)
                        throws CatalogRepositoryException {
@@ -82,6 +83,7 @@ public class MemoryBasedIngestMapper implements IngestMapper {
         * getCatalogTransactionId
         * (org.apache.oodt.cas.catalog.struct.TransactionId, java.lang.String)
         */
+       @Override
        public synchronized TransactionId<?> getCatalogTransactionId(
                        TransactionId<?> catalogServiceTransactionId, String 
catalogId)
                        throws CatalogRepositoryException {
@@ -104,9 +106,10 @@ public class MemoryBasedIngestMapper implements 
IngestMapper {
         * org.apache.oodt.cas.catalog.mapping.IngestMapper#getPage(org.apache
         * .oodt.cas.catalog.page.IndexPager, java.lang.String)
         */
+       @Override
        public synchronized Set<TransactionId<?>> 
getPageOfCatalogTransactionIds(IndexPager indexPager,
                        String catalogId) throws CatalogRepositoryException {
-               Set<TransactionId<?>> catalogTransactionIds = new 
HashSet<TransactionId<?>>();
+               Set<TransactionId<?>> catalogTransactionIds = new HashSet<>();
                List<CatalogReceipt> catalogReceipts = 
this.catalogIdToCatalogReceiptMapping.get(catalogId);
                if (catalogReceipts != null) {
                  for (int i = indexPager.getPageNum() * 
indexPager.getPageSize();
@@ -121,6 +124,7 @@ public class MemoryBasedIngestMapper implements 
IngestMapper {
         * (non-Javadoc)
         * @see 
org.apache.oodt.cas.catalog.mapping.IngestMapper#deleteAllMappingsForCatalog(java.lang.String)
         */
+       @Override
        public synchronized void deleteAllMappingsForCatalog(String catalogId)
                        throws CatalogRepositoryException {
                List<CatalogReceipt> catalogReceipts = 
this.catalogIdToCatalogReceiptMapping.remove(catalogId);
@@ -138,6 +142,7 @@ public class MemoryBasedIngestMapper implements 
IngestMapper {
         * (non-Javadoc)
         * @see 
org.apache.oodt.cas.catalog.repository.CatalogRepository#deleteAllMappingsForCatalogServiceTransactionId(org.apache.oodt.cas.catalog.struct.TransactionId)
         */
+       @Override
        public synchronized void 
deleteAllMappingsForCatalogServiceTransactionId(
                        TransactionId<?> catalogServiceTransactionId)
                        throws CatalogRepositoryException {
@@ -155,6 +160,7 @@ public class MemoryBasedIngestMapper implements 
IngestMapper {
         * (non-Javadoc)
         * @see 
org.apache.oodt.cas.catalog.repository.CatalogRepository#deleteTransactionIdMapping(org.apache.oodt.cas.catalog.struct.TransactionId,
 org.apache.oodt.cas.catalog.struct.TransactionId, java.lang.String)
         */
+       @Override
        public synchronized void deleteTransactionIdMapping(
                        TransactionId<?> catalogTransactionId, String catalogId)
                        throws CatalogRepositoryException {
@@ -173,6 +179,7 @@ public class MemoryBasedIngestMapper implements 
IngestMapper {
         * (non-Javadoc)
         * @see 
org.apache.oodt.cas.catalog.repository.CatalogRepository#hasCatalogServiceTransactionId(org.apache.oodt.cas.catalog.struct.TransactionId)
         */
+       @Override
        public synchronized boolean hasCatalogServiceTransactionId(
                        TransactionId<?> catalogServiceTransactionId)
                        throws CatalogRepositoryException {
@@ -187,6 +194,7 @@ public class MemoryBasedIngestMapper implements 
IngestMapper {
         * org.apache.oodt.cas.catalog.struct.TransactionId,
         * org.apache.oodt.cas.catalog.struct.TransactionId)
         */
+       @Override
        public synchronized void storeTransactionIdMapping(
                        TransactionId<?> catalogServiceTransactionId,
                        TransactionIdFactory catalogServiceTransactionIdFactory,
@@ -217,10 +225,11 @@ public class MemoryBasedIngestMapper implements 
IngestMapper {
         * org.apache.oodt.cas.catalog.repository.CatalogRepository#getCatalogs
         * (org.apache.oodt.cas.catalog.struct.TransactionId)
         */
+       @Override
        public synchronized Set<String> getCatalogIds(
                        TransactionId<?> catalogServiceTransactionId)
                        throws CatalogRepositoryException {
-               HashSet<String> catalogs = new HashSet<String>();
+               HashSet<String> catalogs = new HashSet<>();
                TransactionIdMapping mapping = 
this.catalogServiceTransactionIdKeyMapping
                                .get(catalogServiceTransactionId.toString());
                for (CatalogReceipt catalogReceipt : 
mapping.getCatalogReceipts()) {
@@ -229,6 +238,7 @@ public class MemoryBasedIngestMapper implements 
IngestMapper {
                return catalogs;
        }
 
+       @Override
        public CatalogReceipt getCatalogReceipt(
                        TransactionId<?> catalogServiceTransactionId, String 
catalogId)
                        throws CatalogRepositoryException {
@@ -252,7 +262,7 @@ public class MemoryBasedIngestMapper implements 
IngestMapper {
 
                public TransactionIdMapping(TransactionId<?> 
catalogServiceTransactionId) {
                        this.catalogServiceTransactionId = 
catalogServiceTransactionId;
-                       this.catalogReceipts = new Vector<CatalogReceipt>();
+                       this.catalogReceipts = new Vector<>();
                }
 
                public void addCatalogReceipt(CatalogReceipt catalogReceipt) {
@@ -266,10 +276,6 @@ public class MemoryBasedIngestMapper implements 
IngestMapper {
                public TransactionId<?> getCatalogServiceTransactionId() {
                        return catalogServiceTransactionId;
                }
-
-         public void setCatalogReceipts(List<CatalogReceipt> catalogReceipts) {
-               this.catalogReceipts = catalogReceipts;
-         }
        }
 
 }

http://git-wip-us.apache.org/repos/asf/oodt/blob/1a1cdf1a/catalog/src/main/java/org/apache/oodt/cas/catalog/mapping/MemoryBasedIngestMapperFactory.java
----------------------------------------------------------------------
diff --git 
a/catalog/src/main/java/org/apache/oodt/cas/catalog/mapping/MemoryBasedIngestMapperFactory.java
 
b/catalog/src/main/java/org/apache/oodt/cas/catalog/mapping/MemoryBasedIngestMapperFactory.java
index d7fe89b..cf691ba 100644
--- 
a/catalog/src/main/java/org/apache/oodt/cas/catalog/mapping/MemoryBasedIngestMapperFactory.java
+++ 
b/catalog/src/main/java/org/apache/oodt/cas/catalog/mapping/MemoryBasedIngestMapperFactory.java
@@ -26,6 +26,7 @@ package org.apache.oodt.cas.catalog.mapping;
  */
 public class MemoryBasedIngestMapperFactory implements IngestMapperFactory {
 
+  @Override
        public IngestMapper createMapper() {
                return new MemoryBasedIngestMapper();
        }

http://git-wip-us.apache.org/repos/asf/oodt/blob/1a1cdf1a/core/pom.xml
----------------------------------------------------------------------
diff --git a/core/pom.xml b/core/pom.xml
index 1e09a0e..47f8e86 100644
--- a/core/pom.xml
+++ b/core/pom.xml
@@ -543,10 +543,10 @@ the License.
     <sourceDirectory>${basedir}/src/main/java</sourceDirectory>
     <testSourceDirectory>${basedir}/src/test/java</testSourceDirectory>
     <plugins>
- <plugin>
-            <groupId>com.atlassian.maven.plugins</groupId>
-            <artifactId>maven-clover2-plugin</artifactId>
-            <version>4.0.6</version>
+      <plugin>
+        <groupId>com.atlassian.maven.plugins</groupId>
+        <artifactId>maven-clover2-plugin</artifactId>
+        <version>4.0.6</version>
         <configuration>
             <license><![CDATA[
 oOmRsdEFLXepeoGMXQooikmNPOPmVegiGubXhbERoJfRSL
@@ -556,8 +556,7 @@ onmqmUUnqrovqvommmmmUUnqrovqvommmmmUU1mXZebUUn
 mm
 ]]></license>
         </configuration>
-        </plugin>
-
+      </plugin>
       <plugin>
         <artifactId>maven-compiler-plugin</artifactId>
         <configuration>

Reply via email to