Repository: sqoop
Updated Branches:
  refs/heads/sqoop2 9f05b4a5c -> ec5dfc42f


SQOOP-2306: Sqoop2: Use LinkConfiguration in Executor rather then LinkConfig

(Jarek Jarcec Cecho via Abraham Elmahrek)


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

Branch: refs/heads/sqoop2
Commit: ec5dfc42f9c18f3d2a563516330117ef27fd746a
Parents: 9f05b4a
Author: Abraham Elmahrek <[email protected]>
Authored: Mon Apr 20 17:38:32 2015 -0700
Committer: Abraham Elmahrek <[email protected]>
Committed: Mon Apr 20 17:38:32 2015 -0700

----------------------------------------------------------------------
 .../connector/jdbc/GenericJdbcExecutor.java     | 32 +++++++++++---------
 .../connector/jdbc/GenericJdbcExtractor.java    |  2 +-
 .../jdbc/GenericJdbcFromInitializer.java        |  4 +--
 .../sqoop/connector/jdbc/GenericJdbcLoader.java |  2 +-
 .../connector/jdbc/GenericJdbcToDestroyer.java  |  2 +-
 .../jdbc/GenericJdbcToInitializer.java          |  4 +--
 .../connector/jdbc/GenericJdbcExecutorTest.java | 11 ++++---
 .../jdbc/GenericJdbcTestConstants.java          |  8 ++---
 .../sqoop/connector/jdbc/TestExtractor.java     |  2 +-
 .../connector/jdbc/TestFromInitializer.java     |  2 +-
 .../apache/sqoop/connector/jdbc/TestLoader.java |  2 +-
 .../sqoop/connector/jdbc/TestToInitializer.java |  2 +-
 12 files changed, 38 insertions(+), 35 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/sqoop/blob/ec5dfc42/connector/connector-generic-jdbc/src/main/java/org/apache/sqoop/connector/jdbc/GenericJdbcExecutor.java
----------------------------------------------------------------------
diff --git 
a/connector/connector-generic-jdbc/src/main/java/org/apache/sqoop/connector/jdbc/GenericJdbcExecutor.java
 
b/connector/connector-generic-jdbc/src/main/java/org/apache/sqoop/connector/jdbc/GenericJdbcExecutor.java
index a5cd715..cab0917 100644
--- 
a/connector/connector-generic-jdbc/src/main/java/org/apache/sqoop/connector/jdbc/GenericJdbcExecutor.java
+++ 
b/connector/connector-generic-jdbc/src/main/java/org/apache/sqoop/connector/jdbc/GenericJdbcExecutor.java
@@ -20,6 +20,7 @@ package org.apache.sqoop.connector.jdbc;
 import org.apache.log4j.Logger;
 import org.apache.sqoop.common.SqoopException;
 import org.apache.sqoop.connector.jdbc.configuration.LinkConfig;
+import org.apache.sqoop.connector.jdbc.configuration.LinkConfiguration;
 import org.apache.sqoop.error.code.GenericJdbcConnectorError;
 import org.apache.sqoop.schema.Schema;
 import org.apache.sqoop.schema.type.Column;
@@ -58,7 +59,7 @@ public class GenericJdbcExecutor {
   /**
    * User configured link with credentials and such
    */
-  private LinkConfig linkConfig;
+  private LinkConfiguration link;
 
   /**
    * Internal connection object (we'll hold to it)
@@ -70,23 +71,24 @@ public class GenericJdbcExecutor {
    */
   private PreparedStatement preparedStatement;
 
-  public GenericJdbcExecutor(LinkConfig linkConfig) {
-    assert linkConfig != null;
-    assert linkConfig.connectionString != null;
-
+  public GenericJdbcExecutor(LinkConfiguration linkConfig) {
     // Persist link configuration for future use
-    this.linkConfig = linkConfig;
+    this.link = linkConfig;
+
+    assert link != null;
+    assert link.linkConfig != null;
+    assert link.linkConfig.connectionString != null;
 
     // Load/register the JDBC driver to JVM
-    Class driverClass = ClassUtils.loadClass(linkConfig.jdbcDriver);
+    Class driverClass = ClassUtils.loadClass(link.linkConfig.jdbcDriver);
     if(driverClass == null) {
-      throw new 
SqoopException(GenericJdbcConnectorError.GENERIC_JDBC_CONNECTOR_0000, 
linkConfig.jdbcDriver);
+      throw new 
SqoopException(GenericJdbcConnectorError.GENERIC_JDBC_CONNECTOR_0000, 
link.linkConfig.jdbcDriver);
     }
 
     // Properties that we will use for the connection
     Properties properties = new Properties();
-    if(linkConfig.jdbcProperties != null) {
-      properties.putAll(linkConfig.jdbcProperties);
+    if(link.linkConfig.jdbcProperties != null) {
+      properties.putAll(link.linkConfig.jdbcProperties);
     }
 
     // Propagate username and password to the properties
@@ -96,16 +98,16 @@ public class GenericJdbcExecutor {
     // * getConnection(url, properties)
     // As we have to use properties, we need to use the later
     // method and hence we have to persist the credentials there.
-    if(linkConfig.username != null) {
-      properties.put(JDBC_PROPERTY_USERNAME, linkConfig.username);
+    if(link.linkConfig.username != null) {
+      properties.put(JDBC_PROPERTY_USERNAME, link.linkConfig.username);
     }
-    if(linkConfig.password != null) {
-      properties.put(JDBC_PROPERTY_PASSWORD, linkConfig.password);
+    if(link.linkConfig.password != null) {
+      properties.put(JDBC_PROPERTY_PASSWORD, link.linkConfig.password);
     }
 
     // Finally create the connection
     try {
-      connection = DriverManager.getConnection(linkConfig.connectionString, 
properties);
+      connection = 
DriverManager.getConnection(link.linkConfig.connectionString, properties);
     } catch (SQLException e) {
       logSQLException(e);
       throw new 
SqoopException(GenericJdbcConnectorError.GENERIC_JDBC_CONNECTOR_0001, e);

http://git-wip-us.apache.org/repos/asf/sqoop/blob/ec5dfc42/connector/connector-generic-jdbc/src/main/java/org/apache/sqoop/connector/jdbc/GenericJdbcExtractor.java
----------------------------------------------------------------------
diff --git 
a/connector/connector-generic-jdbc/src/main/java/org/apache/sqoop/connector/jdbc/GenericJdbcExtractor.java
 
b/connector/connector-generic-jdbc/src/main/java/org/apache/sqoop/connector/jdbc/GenericJdbcExtractor.java
index 63046c0..62730fd 100644
--- 
a/connector/connector-generic-jdbc/src/main/java/org/apache/sqoop/connector/jdbc/GenericJdbcExtractor.java
+++ 
b/connector/connector-generic-jdbc/src/main/java/org/apache/sqoop/connector/jdbc/GenericJdbcExtractor.java
@@ -42,7 +42,7 @@ public class GenericJdbcExtractor extends 
Extractor<LinkConfiguration, FromJobCo
  private long rowsRead = 0;
   @Override
   public void extract(ExtractorContext context, LinkConfiguration linkConfig, 
FromJobConfiguration fromJobConfig, GenericJdbcPartition partition) {
-    GenericJdbcExecutor executor = new 
GenericJdbcExecutor(linkConfig.linkConfig);
+    GenericJdbcExecutor executor = new GenericJdbcExecutor(linkConfig);
 
     String query = 
context.getString(GenericJdbcConnectorConstants.CONNECTOR_JDBC_FROM_DATA_SQL);
     String conditions = partition.getConditions();

http://git-wip-us.apache.org/repos/asf/sqoop/blob/ec5dfc42/connector/connector-generic-jdbc/src/main/java/org/apache/sqoop/connector/jdbc/GenericJdbcFromInitializer.java
----------------------------------------------------------------------
diff --git 
a/connector/connector-generic-jdbc/src/main/java/org/apache/sqoop/connector/jdbc/GenericJdbcFromInitializer.java
 
b/connector/connector-generic-jdbc/src/main/java/org/apache/sqoop/connector/jdbc/GenericJdbcFromInitializer.java
index df517bd..20fabf6 100644
--- 
a/connector/connector-generic-jdbc/src/main/java/org/apache/sqoop/connector/jdbc/GenericJdbcFromInitializer.java
+++ 
b/connector/connector-generic-jdbc/src/main/java/org/apache/sqoop/connector/jdbc/GenericJdbcFromInitializer.java
@@ -47,7 +47,7 @@ public class GenericJdbcFromInitializer extends 
Initializer<LinkConfiguration, F
 
   @Override
   public void initialize(InitializerContext context, LinkConfiguration 
linkConfig, FromJobConfiguration fromJobConfig) {
-    executor = new GenericJdbcExecutor(linkConfig.linkConfig);
+    executor = new GenericJdbcExecutor(linkConfig);
 
     try {
       configurePartitionProperties(context.getContext(), linkConfig, 
fromJobConfig);
@@ -68,7 +68,7 @@ public class GenericJdbcFromInitializer extends 
Initializer<LinkConfiguration, F
 
   @Override
   public Schema getSchema(InitializerContext context, LinkConfiguration 
linkConfig, FromJobConfiguration fromJobConfig) {
-    executor = new GenericJdbcExecutor(linkConfig.linkConfig);
+    executor = new GenericJdbcExecutor(linkConfig);
 
     String schemaName = fromJobConfig.fromJobConfig.tableName;
     if(schemaName == null) {

http://git-wip-us.apache.org/repos/asf/sqoop/blob/ec5dfc42/connector/connector-generic-jdbc/src/main/java/org/apache/sqoop/connector/jdbc/GenericJdbcLoader.java
----------------------------------------------------------------------
diff --git 
a/connector/connector-generic-jdbc/src/main/java/org/apache/sqoop/connector/jdbc/GenericJdbcLoader.java
 
b/connector/connector-generic-jdbc/src/main/java/org/apache/sqoop/connector/jdbc/GenericJdbcLoader.java
index 22b726e..4e96644 100644
--- 
a/connector/connector-generic-jdbc/src/main/java/org/apache/sqoop/connector/jdbc/GenericJdbcLoader.java
+++ 
b/connector/connector-generic-jdbc/src/main/java/org/apache/sqoop/connector/jdbc/GenericJdbcLoader.java
@@ -32,7 +32,7 @@ public class GenericJdbcLoader extends 
Loader<LinkConfiguration, ToJobConfigurat
 
   @Override
   public void load(LoaderContext context, LinkConfiguration linkConfig, 
ToJobConfiguration toJobConfig) throws Exception{
-    GenericJdbcExecutor executor = new 
GenericJdbcExecutor(linkConfig.linkConfig);
+    GenericJdbcExecutor executor = new GenericJdbcExecutor(linkConfig);
     executor.setAutoCommit(false);
     String sql = 
context.getString(GenericJdbcConnectorConstants.CONNECTOR_JDBC_TO_DATA_SQL);
     executor.beginBatch(sql);

http://git-wip-us.apache.org/repos/asf/sqoop/blob/ec5dfc42/connector/connector-generic-jdbc/src/main/java/org/apache/sqoop/connector/jdbc/GenericJdbcToDestroyer.java
----------------------------------------------------------------------
diff --git 
a/connector/connector-generic-jdbc/src/main/java/org/apache/sqoop/connector/jdbc/GenericJdbcToDestroyer.java
 
b/connector/connector-generic-jdbc/src/main/java/org/apache/sqoop/connector/jdbc/GenericJdbcToDestroyer.java
index b9f7e7f..b7ece25 100644
--- 
a/connector/connector-generic-jdbc/src/main/java/org/apache/sqoop/connector/jdbc/GenericJdbcToDestroyer.java
+++ 
b/connector/connector-generic-jdbc/src/main/java/org/apache/sqoop/connector/jdbc/GenericJdbcToDestroyer.java
@@ -42,7 +42,7 @@ public class GenericJdbcToDestroyer extends 
Destroyer<LinkConfiguration, ToJobCo
   }
 
   private void moveDataToDestinationTable(LinkConfiguration linkConfig, 
boolean success, String stageTableName, String tableName) {
-    GenericJdbcExecutor executor = new 
GenericJdbcExecutor(linkConfig.linkConfig);
+    GenericJdbcExecutor executor = new GenericJdbcExecutor(linkConfig);
     try {
       if(success) {
         LOG.info("Job completed, transferring data from stage fromTable to " +

http://git-wip-us.apache.org/repos/asf/sqoop/blob/ec5dfc42/connector/connector-generic-jdbc/src/main/java/org/apache/sqoop/connector/jdbc/GenericJdbcToInitializer.java
----------------------------------------------------------------------
diff --git 
a/connector/connector-generic-jdbc/src/main/java/org/apache/sqoop/connector/jdbc/GenericJdbcToInitializer.java
 
b/connector/connector-generic-jdbc/src/main/java/org/apache/sqoop/connector/jdbc/GenericJdbcToInitializer.java
index c2515a5..4688de3 100644
--- 
a/connector/connector-generic-jdbc/src/main/java/org/apache/sqoop/connector/jdbc/GenericJdbcToInitializer.java
+++ 
b/connector/connector-generic-jdbc/src/main/java/org/apache/sqoop/connector/jdbc/GenericJdbcToInitializer.java
@@ -44,7 +44,7 @@ public class GenericJdbcToInitializer extends 
Initializer<LinkConfiguration, ToJ
 
   @Override
   public void initialize(InitializerContext context, LinkConfiguration 
linkConfig, ToJobConfiguration toJobConfig) {
-    executor = new GenericJdbcExecutor(linkConfig.linkConfig);
+    executor = new GenericJdbcExecutor(linkConfig);
     try {
       configureTableProperties(context.getContext(), linkConfig, toJobConfig);
     } finally {
@@ -61,7 +61,7 @@ public class GenericJdbcToInitializer extends 
Initializer<LinkConfiguration, ToJ
 
   @Override
   public Schema getSchema(InitializerContext context, LinkConfiguration 
linkConfig, ToJobConfiguration toJobConfig) {
-    executor = new GenericJdbcExecutor(linkConfig.linkConfig);
+    executor = new GenericJdbcExecutor(linkConfig);
 
     String schemaName = toJobConfig.toJobConfig.tableName;
 

http://git-wip-us.apache.org/repos/asf/sqoop/blob/ec5dfc42/connector/connector-generic-jdbc/src/test/java/org/apache/sqoop/connector/jdbc/GenericJdbcExecutorTest.java
----------------------------------------------------------------------
diff --git 
a/connector/connector-generic-jdbc/src/test/java/org/apache/sqoop/connector/jdbc/GenericJdbcExecutorTest.java
 
b/connector/connector-generic-jdbc/src/test/java/org/apache/sqoop/connector/jdbc/GenericJdbcExecutorTest.java
index 01e77a3..91f97f1 100644
--- 
a/connector/connector-generic-jdbc/src/test/java/org/apache/sqoop/connector/jdbc/GenericJdbcExecutorTest.java
+++ 
b/connector/connector-generic-jdbc/src/test/java/org/apache/sqoop/connector/jdbc/GenericJdbcExecutorTest.java
@@ -19,6 +19,7 @@ package org.apache.sqoop.connector.jdbc;
 
 import org.apache.sqoop.common.SqoopException;
 import org.apache.sqoop.connector.jdbc.configuration.LinkConfig;
+import org.apache.sqoop.connector.jdbc.configuration.LinkConfiguration;
 import org.testng.annotations.BeforeMethod;
 import org.testng.annotations.Test;
 
@@ -35,7 +36,7 @@ public class GenericJdbcExecutorTest {
   public GenericJdbcExecutorTest() {
     table = getClass().getSimpleName().toUpperCase();
     emptyTable = table + "_EMPTY";
-    executor = new GenericJdbcExecutor(GenericJdbcTestConstants.LINK_CONFIG);
+    executor = new 
GenericJdbcExecutor(GenericJdbcTestConstants.LINK_CONFIGURATION);
   }
 
   @BeforeMethod(alwaysRun = true)
@@ -62,11 +63,11 @@ public class GenericJdbcExecutorTest {
 
   @Test(expectedExceptions = SqoopException.class)
   public void testUnknownDriver() {
-    LinkConfig linkConfig = new LinkConfig();
-    linkConfig.jdbcDriver = "net.jarcec.driver.MyAwesomeDatabase";
-    linkConfig.connectionString = "jdbc:awesome:";
+    LinkConfiguration link = new LinkConfiguration();
+    link.linkConfig.jdbcDriver = "net.jarcec.driver.MyAwesomeDatabase";
+    link.linkConfig.connectionString = "jdbc:awesome:";
 
-    new GenericJdbcExecutor(linkConfig);
+    new GenericJdbcExecutor(link);
   }
 
   @Test

http://git-wip-us.apache.org/repos/asf/sqoop/blob/ec5dfc42/connector/connector-generic-jdbc/src/test/java/org/apache/sqoop/connector/jdbc/GenericJdbcTestConstants.java
----------------------------------------------------------------------
diff --git 
a/connector/connector-generic-jdbc/src/test/java/org/apache/sqoop/connector/jdbc/GenericJdbcTestConstants.java
 
b/connector/connector-generic-jdbc/src/test/java/org/apache/sqoop/connector/jdbc/GenericJdbcTestConstants.java
index 5a5e9ce..8a5dba4 100644
--- 
a/connector/connector-generic-jdbc/src/test/java/org/apache/sqoop/connector/jdbc/GenericJdbcTestConstants.java
+++ 
b/connector/connector-generic-jdbc/src/test/java/org/apache/sqoop/connector/jdbc/GenericJdbcTestConstants.java
@@ -17,7 +17,7 @@
  */
 package org.apache.sqoop.connector.jdbc;
 
-import org.apache.sqoop.connector.jdbc.configuration.LinkConfig;
+import org.apache.sqoop.connector.jdbc.configuration.LinkConfiguration;
 
 public class GenericJdbcTestConstants {
 
@@ -34,9 +34,9 @@ public class GenericJdbcTestConstants {
   /**
    * Test link configuration
    */
-  public static final LinkConfig LINK_CONFIG = new LinkConfig();
+  public static final LinkConfiguration LINK_CONFIGURATION = new 
LinkConfiguration();
   static {
-    LINK_CONFIG.jdbcDriver = DRIVER;
-    LINK_CONFIG.connectionString = URL;
+    LINK_CONFIGURATION.linkConfig.jdbcDriver = DRIVER;
+    LINK_CONFIGURATION.linkConfig.connectionString = URL;
   }
 }

http://git-wip-us.apache.org/repos/asf/sqoop/blob/ec5dfc42/connector/connector-generic-jdbc/src/test/java/org/apache/sqoop/connector/jdbc/TestExtractor.java
----------------------------------------------------------------------
diff --git 
a/connector/connector-generic-jdbc/src/test/java/org/apache/sqoop/connector/jdbc/TestExtractor.java
 
b/connector/connector-generic-jdbc/src/test/java/org/apache/sqoop/connector/jdbc/TestExtractor.java
index dd6bb27..9acc5c3 100644
--- 
a/connector/connector-generic-jdbc/src/test/java/org/apache/sqoop/connector/jdbc/TestExtractor.java
+++ 
b/connector/connector-generic-jdbc/src/test/java/org/apache/sqoop/connector/jdbc/TestExtractor.java
@@ -59,7 +59,7 @@ public class TestExtractor {
 
   @BeforeMethod(alwaysRun = true)
   public void setUp() {
-    executor = new GenericJdbcExecutor(GenericJdbcTestConstants.LINK_CONFIG);
+    executor = new 
GenericJdbcExecutor(GenericJdbcTestConstants.LINK_CONFIGURATION);
 
     if (!executor.existTable(tableName)) {
       executor.executeUpdate("CREATE TABLE "

http://git-wip-us.apache.org/repos/asf/sqoop/blob/ec5dfc42/connector/connector-generic-jdbc/src/test/java/org/apache/sqoop/connector/jdbc/TestFromInitializer.java
----------------------------------------------------------------------
diff --git 
a/connector/connector-generic-jdbc/src/test/java/org/apache/sqoop/connector/jdbc/TestFromInitializer.java
 
b/connector/connector-generic-jdbc/src/test/java/org/apache/sqoop/connector/jdbc/TestFromInitializer.java
index c80fd32..5fc2a4a 100644
--- 
a/connector/connector-generic-jdbc/src/test/java/org/apache/sqoop/connector/jdbc/TestFromInitializer.java
+++ 
b/connector/connector-generic-jdbc/src/test/java/org/apache/sqoop/connector/jdbc/TestFromInitializer.java
@@ -61,7 +61,7 @@ public class TestFromInitializer {
 
   @BeforeMethod(alwaysRun = true)
   public void setUp() {
-    executor = new GenericJdbcExecutor(GenericJdbcTestConstants.LINK_CONFIG);
+    executor = new 
GenericJdbcExecutor(GenericJdbcTestConstants.LINK_CONFIGURATION);
 
     String fullTableName = executor.delimitIdentifier(schemaName) + "." + 
executor.delimitIdentifier(tableName);
     if (!executor.existTable(tableName)) {

http://git-wip-us.apache.org/repos/asf/sqoop/blob/ec5dfc42/connector/connector-generic-jdbc/src/test/java/org/apache/sqoop/connector/jdbc/TestLoader.java
----------------------------------------------------------------------
diff --git 
a/connector/connector-generic-jdbc/src/test/java/org/apache/sqoop/connector/jdbc/TestLoader.java
 
b/connector/connector-generic-jdbc/src/test/java/org/apache/sqoop/connector/jdbc/TestLoader.java
index 3a73691..d423a6a 100644
--- 
a/connector/connector-generic-jdbc/src/test/java/org/apache/sqoop/connector/jdbc/TestLoader.java
+++ 
b/connector/connector-generic-jdbc/src/test/java/org/apache/sqoop/connector/jdbc/TestLoader.java
@@ -69,7 +69,7 @@ public class TestLoader {
 
   @BeforeMethod(alwaysRun = true)
   public void setUp() {
-    executor = new GenericJdbcExecutor(GenericJdbcTestConstants.LINK_CONFIG);
+    executor = new 
GenericJdbcExecutor(GenericJdbcTestConstants.LINK_CONFIGURATION);
 
     if (!executor.existTable(tableName)) {
       executor.executeUpdate("CREATE TABLE "

http://git-wip-us.apache.org/repos/asf/sqoop/blob/ec5dfc42/connector/connector-generic-jdbc/src/test/java/org/apache/sqoop/connector/jdbc/TestToInitializer.java
----------------------------------------------------------------------
diff --git 
a/connector/connector-generic-jdbc/src/test/java/org/apache/sqoop/connector/jdbc/TestToInitializer.java
 
b/connector/connector-generic-jdbc/src/test/java/org/apache/sqoop/connector/jdbc/TestToInitializer.java
index 17bac77..04c5437 100644
--- 
a/connector/connector-generic-jdbc/src/test/java/org/apache/sqoop/connector/jdbc/TestToInitializer.java
+++ 
b/connector/connector-generic-jdbc/src/test/java/org/apache/sqoop/connector/jdbc/TestToInitializer.java
@@ -59,7 +59,7 @@ public class TestToInitializer {
 
   @BeforeMethod(alwaysRun = true)
   public void setUp() {
-    executor = new GenericJdbcExecutor(GenericJdbcTestConstants.LINK_CONFIG);
+    executor = new 
GenericJdbcExecutor(GenericJdbcTestConstants.LINK_CONFIGURATION);
 
     String fullTableName = executor.delimitIdentifier(schemaName) + "." + 
executor.delimitIdentifier(tableName);
     if (!executor.existTable(tableName)) {

Reply via email to