You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sqoop.apache.org by ab...@apache.org on 2014/10/10 05:07:35 UTC
[43/50] [abbrv] SQOOP-1498: Sqoop2: Repository Object refactoring
(objects prefixed with M)
http://git-wip-us.apache.org/repos/asf/sqoop/blob/8362c73c/common/src/test/java/org/apache/sqoop/model/TestMConnector.java
----------------------------------------------------------------------
diff --git a/common/src/test/java/org/apache/sqoop/model/TestMConnector.java b/common/src/test/java/org/apache/sqoop/model/TestMConnector.java
index d8bc94d..89ae440 100644
--- a/common/src/test/java/org/apache/sqoop/model/TestMConnector.java
+++ b/common/src/test/java/org/apache/sqoop/model/TestMConnector.java
@@ -17,6 +17,13 @@
*/
package org.apache.sqoop.model;
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertNotEquals;
+import static org.junit.Assert.assertNotNull;
+import static org.junit.Assert.assertNull;
+import static org.junit.Assert.assertTrue;
+
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
@@ -24,39 +31,34 @@ import java.util.List;
import org.apache.sqoop.common.Direction;
import org.junit.Test;
-import static org.junit.Assert.*;
-
-/**
- * Test class for org.apache.sqoop.model.TestMConnector
- */
public class TestMConnector {
private MConnector createConnector(List<Direction> supportedDirections) {
- List<MForm> forms = new ArrayList<MForm>();
- MIntegerInput input = new MIntegerInput("INTEGER-INPUT", false);
- input.setValue(100);
+ List<MConfig> configs = new ArrayList<MConfig>();
+ MIntegerInput inputs = new MIntegerInput("INTEGER-INPUT", false);
+ inputs.setValue(100);
MStringInput strInput = new MStringInput("STRING-INPUT",false,(short)20);
strInput.setValue("TEST-VALUE");
List<MInput<?>> list = new ArrayList<MInput<?>>();
- list.add(input);
+ list.add(inputs);
list.add(strInput);
- MForm form = new MForm("FORMNAME", list);
- forms.add(form);
+ MConfig config = new MConfig("CONFIGNAME", list);
+ configs.add(config);
- MConnectionForms connectionForms1 = new MConnectionForms(forms);
- MJobForms fromForm = null;
- MJobForms toForm = null;
+ MLinkConfig linkConfig = new MLinkConfig(configs);
+ MFromConfig fromConfig = null;
+ MToConfig toConfig = null;
if (supportedDirections.contains(Direction.FROM)) {
- fromForm = new MJobForms(forms);
+ fromConfig = new MFromConfig(configs);
}
if (supportedDirections.contains(Direction.TO)) {
- toForm = new MJobForms(forms);
+ toConfig = new MToConfig(configs);
}
return new MConnector("NAME", "CLASSNAME", "1.0",
- connectionForms1, fromForm, toForm);
+ linkConfig, fromConfig, toConfig);
}
/**
@@ -64,32 +66,32 @@ public class TestMConnector {
*/
@Test
public void testInitialization() {
- List<MForm> fromJobForms = new ArrayList<MForm>();
- List<MForm> toJobForms = new ArrayList<MForm>();
- MConnectionForms connectionForms1 = new MConnectionForms(fromJobForms);
- MJobForms fromJobForm1 = new MJobForms(fromJobForms);
- MJobForms toJobForm1 = new MJobForms(toJobForms);
+ List<MConfig> fromJobConfig = new ArrayList<MConfig>();
+ List<MConfig> toJobConfig = new ArrayList<MConfig>();
+ MLinkConfig linkConfig = new MLinkConfig(fromJobConfig);
+ MFromConfig fromConfig1 = new MFromConfig(fromJobConfig);
+ MToConfig toConfig1 = new MToConfig(toJobConfig);
MConnector connector1 = new MConnector("NAME", "CLASSNAME", "1.0",
- connectionForms1, fromJobForm1, toJobForm1);
+ linkConfig, fromConfig1, toConfig1);
assertEquals("NAME", connector1.getUniqueName());
assertEquals("CLASSNAME", connector1.getClassName());
assertEquals("1.0", connector1.getVersion());
MConnector connector2 = new MConnector("NAME", "CLASSNAME", "1.0",
- connectionForms1, fromJobForm1, toJobForm1);
+ linkConfig, fromConfig1, toConfig1);
assertEquals(connector2, connector1);
MConnector connector3 = new MConnector("NAME1", "CLASSNAME", "2.0",
- connectionForms1, fromJobForm1, toJobForm1);
+ linkConfig, fromConfig1, toConfig1);
assertFalse(connector1.equals(connector3));
try {
- connector1 = new MConnector(null, "CLASSNAME", "1.0", connectionForms1,
- fromJobForm1, toJobForm1); // Expecting null pointer exception
+ connector1 = new MConnector(null, "CLASSNAME", "1.0", linkConfig,
+ fromConfig1, toConfig1); // Expecting null pointer exception
} catch (NullPointerException e) {
assertTrue(true);
}
try {
- connector1 = new MConnector("NAME", null, "1.0", connectionForms1,
- fromJobForm1, toJobForm1); // Expecting null pointer exception
+ connector1 = new MConnector("NAME", null, "1.0", linkConfig,
+ fromConfig1, toConfig1); // Expecting null pointer exception
} catch (NullPointerException e) {
assertTrue(true);
}
@@ -97,48 +99,48 @@ public class TestMConnector {
@Test
public void testClone() {
- MConnector connector1 = createConnector(Arrays.asList(Direction.FROM, Direction.TO));
- assertEquals("NAME", connector1.getUniqueName());
- assertEquals("CLASSNAME", connector1.getClassName());
- assertEquals("1.0", connector1.getVersion());
- //Clone with values. Checking values copying after the cloning. But form values will be null
- MConnector clone1 = connector1.clone(true);
- assertEquals("NAME", clone1.getUniqueName());
- assertEquals("CLASSNAME", clone1.getClassName());
- assertEquals("1.0", clone1.getVersion());
- MForm clonedForm1 = clone1.getConnectionForms().getForms().get(0);
- assertNull(clonedForm1.getInputs().get(0).getValue());
- assertNull(clonedForm1.getInputs().get(1).getValue());
-
- MForm clonedForm2 = clone1.getJobForms(Direction.FROM).getForms().get(0);
- assertNull(clonedForm2.getInputs().get(0).getValue());
- assertNull(clonedForm2.getInputs().get(1).getValue());
-
- MForm clonedForm3 = clone1.getJobForms(Direction.TO).getForms().get(0);
- assertNull(clonedForm3.getInputs().get(0).getValue());
- assertNull(clonedForm3.getInputs().get(1).getValue());
+ MConnector connector = createConnector(Arrays.asList(Direction.FROM, Direction.TO));
+ assertEquals("NAME", connector.getUniqueName());
+ assertEquals("CLASSNAME", connector.getClassName());
+ assertEquals("1.0", connector.getVersion());
+ //Clone with values. Checking values copying after the cloning. But config values will be null
+ MConnector cloneConnector1 = connector.clone(true);
+ assertEquals("NAME", cloneConnector1.getUniqueName());
+ assertEquals("CLASSNAME", cloneConnector1.getClassName());
+ assertEquals("1.0", cloneConnector1.getVersion());
+ MConfig clonedLinkConfig = cloneConnector1.getLinkConfig().getConfigs().get(0);
+ assertNull(clonedLinkConfig.getInputs().get(0).getValue());
+ assertNull(clonedLinkConfig.getInputs().get(1).getValue());
+
+ MConfig clonedFromConfig = cloneConnector1.getConfig(Direction.FROM).getConfigs().get(0);
+ assertNull(clonedFromConfig.getInputs().get(0).getValue());
+ assertNull(clonedFromConfig.getInputs().get(1).getValue());
+
+ MConfig clonedToConfig = cloneConnector1.getConfig(Direction.TO).getConfigs().get(0);
+ assertNull(clonedToConfig.getInputs().get(0).getValue());
+ assertNull(clonedToConfig.getInputs().get(1).getValue());
//Clone without values. Inputs value will be null after cloning.
- MConnector clone2 = connector1.clone(false);
- clonedForm1 = clone2.getConnectionForms().getForms().get(0);
- assertNull(clonedForm1.getInputs().get(0).getValue());
- assertNull(clonedForm1.getInputs().get(1).getValue());
- clonedForm2 = clone2.getJobForms(Direction.FROM).getForms().get(0);
- assertNull(clonedForm2.getInputs().get(0).getValue());
- assertNull(clonedForm2.getInputs().get(1).getValue());
- clonedForm3 = clone2.getJobForms(Direction.TO).getForms().get(0);
- assertNull(clonedForm3.getInputs().get(0).getValue());
- assertNull(clonedForm3.getInputs().get(1).getValue());
+ MConnector clonedConnector2 = connector.clone(false);
+ clonedLinkConfig = clonedConnector2.getLinkConfig().getConfigs().get(0);
+ assertNull(clonedLinkConfig.getInputs().get(0).getValue());
+ assertNull(clonedLinkConfig.getInputs().get(1).getValue());
+ clonedFromConfig = clonedConnector2.getConfig(Direction.FROM).getConfigs().get(0);
+ assertNull(clonedFromConfig.getInputs().get(0).getValue());
+ assertNull(clonedFromConfig.getInputs().get(1).getValue());
+ clonedToConfig = clonedConnector2.getConfig(Direction.TO).getConfigs().get(0);
+ assertNull(clonedToConfig.getInputs().get(0).getValue());
+ assertNull(clonedToConfig.getInputs().get(1).getValue());
}
@Test
public void testFromDirection() {
MConnector connector = createConnector(Arrays.asList(Direction.FROM));
- // Clone should clone only one job form.
+ // Clone should clone only one job config.
MConnector clone = connector.clone(true);
- assertNotNull(clone.getJobForms(Direction.FROM));
- assertNull(clone.getJobForms(Direction.TO));
+ assertNotNull(clone.getFromConfig());
+ assertNull(clone.getToConfig());
assertEquals(connector, clone);
assertEquals(connector.toString(), clone.toString());
assertNotEquals(connector.hashCode(), clone.hashCode());
@@ -148,10 +150,10 @@ public class TestMConnector {
public void testToDirection() {
MConnector connector = createConnector(Arrays.asList(Direction.TO));
- // Clone should clone only one job form.
+ // Clone should clone only one job config.
MConnector clone = connector.clone(true);
- assertNull(clone.getJobForms(Direction.FROM));
- assertNotNull(clone.getJobForms(Direction.TO));
+ assertNull(clone.getFromConfig());
+ assertNotNull(clone.getToConfig());
assertEquals(connector, clone);
assertEquals(connector.toString(), clone.toString());
assertNotEquals(connector.hashCode(), clone.hashCode());
@@ -161,10 +163,10 @@ public class TestMConnector {
public void testNoDirection() {
MConnector connector = createConnector(Arrays.asList(new Direction[0]));
- // Clone should clone only one job form.
+ // Clone should clone only one job config.
MConnector clone = connector.clone(true);
- assertNull(clone.getJobForms(Direction.FROM));
- assertNull(clone.getJobForms(Direction.TO));
+ assertNull(clone.getFromConfig());
+ assertNull(clone.getToConfig());
assertEquals(connector, clone);
assertEquals(connector.toString(), clone.toString());
assertNotEquals(connector.hashCode(), clone.hashCode());
@@ -174,10 +176,10 @@ public class TestMConnector {
public void testBothDirections() {
MConnector connector = createConnector(Arrays.asList(Direction.FROM, Direction.TO));
- // Clone should clone only one job form.
+ // Clone should clone only one job config.
MConnector clone = connector.clone(true);
- assertNotNull(clone.getJobForms(Direction.FROM));
- assertNotNull(clone.getJobForms(Direction.TO));
+ assertNotNull(clone.getFromConfig());
+ assertNotNull(clone.getToConfig());
assertEquals(connector, clone);
assertEquals(connector.toString(), clone.toString());
assertNotEquals(connector.hashCode(), clone.hashCode());
http://git-wip-us.apache.org/repos/asf/sqoop/blob/8362c73c/common/src/test/java/org/apache/sqoop/model/TestMDriver.java
----------------------------------------------------------------------
diff --git a/common/src/test/java/org/apache/sqoop/model/TestMDriver.java b/common/src/test/java/org/apache/sqoop/model/TestMDriver.java
new file mode 100644
index 0000000..aa1ee34
--- /dev/null
+++ b/common/src/test/java/org/apache/sqoop/model/TestMDriver.java
@@ -0,0 +1,40 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.sqoop.model;
+
+import static org.junit.Assert.assertEquals;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.apache.sqoop.json.DriverBean;
+import org.junit.Test;
+
+public class TestMDriver {
+
+ @Test
+ public void testDriver() {
+ List<MConfig> driverConfig = new ArrayList<MConfig>();
+ driverConfig.add(new MConfig("driver-test", new ArrayList<MInput<?>>()));
+ MDriverConfig mDriverConfig = new MDriverConfig(driverConfig);
+
+ MDriver driver = new MDriver(mDriverConfig, DriverBean.CURRENT_DRIVER_VERSION);
+ assertEquals(1, driver.getDriverConfig().getConfigs().size());
+ assertEquals("driver-test", driver.getDriverConfig().getConfigs().get(0).getName());
+ }
+}
http://git-wip-us.apache.org/repos/asf/sqoop/blob/8362c73c/common/src/test/java/org/apache/sqoop/model/TestMDriverConfig.java
----------------------------------------------------------------------
diff --git a/common/src/test/java/org/apache/sqoop/model/TestMDriverConfig.java b/common/src/test/java/org/apache/sqoop/model/TestMDriverConfig.java
deleted file mode 100644
index 9c23cc3..0000000
--- a/common/src/test/java/org/apache/sqoop/model/TestMDriverConfig.java
+++ /dev/null
@@ -1,47 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.sqoop.model;
-
-import org.junit.Test;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import static org.junit.Assert.*;
-
-/**
- *
- */
-public class TestMDriverConfig {
-
- @Test
- public void testForms() {
- List<MForm> connectionFormList = new ArrayList<MForm>();
- List<MForm> jobFormList = new ArrayList<MForm>();
- connectionFormList.add(new MForm("connection-test", new ArrayList<MInput<?>>()));
- jobFormList.add(new MForm("job-test", new ArrayList<MInput<?>>()));
- MConnectionForms connectionForms = new MConnectionForms(connectionFormList);
- MJobForms jobForms = new MJobForms(jobFormList);
-
- MDriverConfig driver = new MDriverConfig(connectionForms, jobForms, "1");
- assertEquals(1, driver.getJobForms().getForms().size());
- assertEquals("job-test", driver.getJobForms().getForms().get(0).getName());
- assertEquals(1, driver.getConnectionForms().getForms().size());
- assertEquals("connection-test", driver.getConnectionForms().getForms().get(0).getName());
- }
-}
http://git-wip-us.apache.org/repos/asf/sqoop/blob/8362c73c/common/src/test/java/org/apache/sqoop/model/TestMForm.java
----------------------------------------------------------------------
diff --git a/common/src/test/java/org/apache/sqoop/model/TestMForm.java b/common/src/test/java/org/apache/sqoop/model/TestMForm.java
deleted file mode 100644
index 536b650..0000000
--- a/common/src/test/java/org/apache/sqoop/model/TestMForm.java
+++ /dev/null
@@ -1,89 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.sqoop.model;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.junit.Test;
-
-import static org.junit.Assert.*;
-
-/**
- * Test class for org.apache.sqoop.model.MForm
- */
-public class TestMForm {
-
- /**
- * Test for initialization
- */
- @Test
- public void testInitialization() {
- MInput<String> input1 = new MStringInput("sqoopsqoop1", true, (short) 5);
- MInput<String> input2 = new MStringInput("sqoopsqoop2", true, (short) 5);
-
- List<MInput<?>> list = new ArrayList<MInput<?>>();
- list.add(input1);
- list.add(input2);
- MForm mform = new MForm("form", list);
-
- assertEquals("form", mform.getName());
- assertEquals(2, mform.getInputs().size());
- }
-
- /**
- * Test for equals method
- */
- @Test
- public void testEquals() {
- MInput<Integer> input1 = new MIntegerInput("sqoopsqoop1", false);
- MInput<Integer> input2 = new MIntegerInput("sqoopsqoop2", false);
- List<MInput<?>> list1 = new ArrayList<MInput<?>>();
- list1.add(input1);
- list1.add(input2);
- MForm mform1 = new MForm("form", list1);
-
- MInput<Integer> input3 = new MIntegerInput("sqoopsqoop1", false);
- MInput<Integer> input4 = new MIntegerInput("sqoopsqoop2", false);
- List<MInput<?>> list2 = new ArrayList<MInput<?>>();
- list2.add(input3);
- list2.add(input4);
- MForm mform2 = new MForm("form", list2);
- assertEquals(mform2, mform1);
- }
-
- @Test
- public void testGetInputs() {
- MIntegerInput intInput = new MIntegerInput("Form.A", false);
- MMapInput mapInput = new MMapInput("Form.B", false);
- MStringInput stringInput = new MStringInput("Form.C", false, (short)3);
- MEnumInput enumInput = new MEnumInput("Form.D", false, new String[] {"I", "V"});
-
- List<MInput<?>> inputs = new ArrayList<MInput<?>>();
- inputs.add(intInput);
- inputs.add(mapInput);
- inputs.add(stringInput);
- inputs.add(enumInput);
-
- MForm form = new MForm("Form", inputs);
- assertEquals(intInput, form.getIntegerInput("Form.A"));
- assertEquals(mapInput, form.getMapInput("Form.B"));
- assertEquals(stringInput, form.getStringInput("Form.C"));
- assertEquals(enumInput, form.getEnumInput("Form.D"));
- }
-}
http://git-wip-us.apache.org/repos/asf/sqoop/blob/8362c73c/common/src/test/java/org/apache/sqoop/model/TestMFormList.java
----------------------------------------------------------------------
diff --git a/common/src/test/java/org/apache/sqoop/model/TestMFormList.java b/common/src/test/java/org/apache/sqoop/model/TestMFormList.java
deleted file mode 100644
index b8d3d37..0000000
--- a/common/src/test/java/org/apache/sqoop/model/TestMFormList.java
+++ /dev/null
@@ -1,58 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.sqoop.model;
-
-import org.junit.Test;
-
-import java.util.ArrayList;
-import java.util.LinkedList;
-import java.util.List;
-
-import static org.junit.Assert.assertEquals;
-
-/**
- *
- */
-public class TestMFormList {
- @Test
- public void testGetInputs() {
- List<MForm> forms = new LinkedList<MForm>();
-
- MIntegerInput intInput = new MIntegerInput("Form1.A", false);
- MMapInput mapInput = new MMapInput("Form1.B", false);
-
- List<MInput<?>> inputs = new ArrayList<MInput<?>>();
- inputs.add(intInput);
- inputs.add(mapInput);
- forms.add(new MForm("Form1", inputs));
-
- MStringInput stringInput = new MStringInput("Form2.C", false, (short)3);
- MEnumInput enumInput = new MEnumInput("Form2.D", false, new String[] {"I", "V"});
-
- inputs = new ArrayList<MInput<?>>();
- inputs.add(stringInput);
- inputs.add(enumInput);
- forms.add(new MForm("Form2", inputs));
-
- MFormList form = new MFormList(forms);
- assertEquals(intInput, form.getIntegerInput("Form1.A"));
- assertEquals(mapInput, form.getMapInput("Form1.B"));
- assertEquals(stringInput, form.getStringInput("Form2.C"));
- assertEquals(enumInput, form.getEnumInput("Form2.D"));
- }
-}
http://git-wip-us.apache.org/repos/asf/sqoop/blob/8362c73c/common/src/test/java/org/apache/sqoop/model/TestMJob.java
----------------------------------------------------------------------
diff --git a/common/src/test/java/org/apache/sqoop/model/TestMJob.java b/common/src/test/java/org/apache/sqoop/model/TestMJob.java
index 8f2943e..848c2cc 100644
--- a/common/src/test/java/org/apache/sqoop/model/TestMJob.java
+++ b/common/src/test/java/org/apache/sqoop/model/TestMJob.java
@@ -17,17 +17,15 @@
*/
package org.apache.sqoop.model;
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertNull;
+
import java.util.ArrayList;
import java.util.List;
import org.apache.sqoop.common.Direction;
import org.junit.Test;
-import static org.junit.Assert.*;
-
-/**
- * Test class for org.apache.sqoop.model.MJob
- */
public class TestMJob {
/**
* Test class for initialization
@@ -40,9 +38,9 @@ public class TestMJob {
assertEquals(456l, job.getConnectorId(Direction.TO));
assertEquals("Buffy", job.getCreationUser());
assertEquals("Vampire", job.getName());
- assertEquals(fromForms(), job.getConnectorPart(Direction.FROM));
- assertEquals(toForms(), job.getConnectorPart(Direction.TO));
- assertEquals(frameworkForms(), job.getFrameworkPart());
+ assertEquals(fromConfig(), job.getJobConfig(Direction.FROM));
+ assertEquals(toConfig(), job.getJobConfig(Direction.TO));
+ assertEquals(driverConfig(), job.getDriverConfig());
// Test copy constructor
MJob copy = new MJob(job);
@@ -50,19 +48,19 @@ public class TestMJob {
assertEquals(456l, copy.getConnectorId(Direction.TO));
assertEquals("Buffy", copy.getCreationUser());
assertEquals("Vampire", copy.getName());
- assertEquals(fromForms(), copy.getConnectorPart(Direction.FROM));
- assertEquals(toForms(), copy.getConnectorPart(Direction.TO));
- assertEquals(frameworkForms(), copy.getFrameworkPart());
+ assertEquals(fromConfig(), copy.getJobConfig(Direction.FROM));
+ assertEquals(toConfig(), copy.getJobConfig(Direction.TO));
+ assertEquals(driverConfig(), copy.getDriverConfig());
- // Test constructor for metadata upgrade (the order of forms is different)
- MJob upgradeCopy = new MJob(job, fromForms(), toForms(), frameworkForms());
+ // Test constructor for metadata upgrade (the order of configs is different)
+ MJob upgradeCopy = new MJob(job, fromConfig(), toConfig(), driverConfig());
assertEquals(123l, upgradeCopy.getConnectorId(Direction.FROM));
assertEquals(456l, upgradeCopy.getConnectorId(Direction.TO));
assertEquals("Buffy", upgradeCopy.getCreationUser());
assertEquals("Vampire", upgradeCopy.getName());
- assertEquals(fromForms(), upgradeCopy.getConnectorPart(Direction.FROM));
- assertEquals(toForms(), upgradeCopy.getConnectorPart(Direction.TO));
- assertEquals(frameworkForms(), upgradeCopy.getFrameworkPart());
+ assertEquals(fromConfig(), upgradeCopy.getJobConfig(Direction.FROM));
+ assertEquals(toConfig(), upgradeCopy.getJobConfig(Direction.TO));
+ assertEquals(driverConfig(), upgradeCopy.getDriverConfig());
}
@Test
@@ -70,42 +68,42 @@ public class TestMJob {
MJob job = job();
// Clone without value
- MJob withoutValue = job.clone(false);
- assertEquals(job, withoutValue);
- assertEquals(MPersistableEntity.PERSISTANCE_ID_DEFAULT, withoutValue.getPersistenceId());
- assertNull(withoutValue.getName());
- assertNull(withoutValue.getCreationUser());
- assertEquals(fromForms(), withoutValue.getConnectorPart(Direction.FROM));
- assertEquals(toForms(), withoutValue.getConnectorPart(Direction.TO));
- assertEquals(frameworkForms(), withoutValue.getFrameworkPart());
- assertNull(withoutValue.getConnectorPart(Direction.FROM)
- .getForm("FORMNAME").getInput("INTEGER-INPUT").getValue());
- assertNull(withoutValue.getConnectorPart(Direction.FROM)
- .getForm("FORMNAME").getInput("STRING-INPUT").getValue());
+ MJob withoutJobValue = job.clone(false);
+ assertEquals(job, withoutJobValue);
+ assertEquals(MPersistableEntity.PERSISTANCE_ID_DEFAULT, withoutJobValue.getPersistenceId());
+ assertNull(withoutJobValue.getName());
+ assertNull(withoutJobValue.getCreationUser());
+ assertEquals(fromConfig(), withoutJobValue.getJobConfig(Direction.FROM));
+ assertEquals(toConfig(), withoutJobValue.getJobConfig(Direction.TO));
+ assertEquals(driverConfig(), withoutJobValue.getDriverConfig());
+ assertNull(withoutJobValue.getJobConfig(Direction.FROM)
+ .getConfig("CONFIGFROMNAME").getInput("INTEGER-INPUT").getValue());
+ assertNull(withoutJobValue.getJobConfig(Direction.FROM)
+ .getConfig("CONFIGFROMNAME").getInput("STRING-INPUT").getValue());
// Clone with value
- MJob withValue = job.clone(true);
- assertEquals(job, withValue);
- assertEquals(job.getPersistenceId(), withValue.getPersistenceId());
- assertEquals(job.getName(), withValue.getName());
- assertEquals(job.getCreationUser(), withValue.getCreationUser());
- assertEquals(fromForms(), withValue.getConnectorPart(Direction.FROM));
- assertEquals(toForms(), withValue.getConnectorPart(Direction.TO));
- assertEquals(frameworkForms(), withValue.getFrameworkPart());
- assertEquals(100, withValue.getConnectorPart(Direction.FROM)
- .getForm("FORMNAME").getInput("INTEGER-INPUT").getValue());
- assertEquals("TEST-VALUE", withValue.getConnectorPart(Direction.FROM)
- .getForm("FORMNAME").getInput("STRING-INPUT").getValue()); }
+ MJob withJobValue = job.clone(true);
+ assertEquals(job, withJobValue);
+ assertEquals(job.getPersistenceId(), withJobValue.getPersistenceId());
+ assertEquals(job.getName(), withJobValue.getName());
+ assertEquals(job.getCreationUser(), withJobValue.getCreationUser());
+ assertEquals(fromConfig(), withJobValue.getJobConfig(Direction.FROM));
+ assertEquals(toConfig(), withJobValue.getJobConfig(Direction.TO));
+ assertEquals(driverConfig(), withJobValue.getDriverConfig());
+ assertEquals(100, withJobValue.getJobConfig(Direction.FROM)
+ .getConfig("CONFIGFROMNAME").getInput("INTEGER-INPUT").getValue());
+ assertEquals("TEST-VALUE", withJobValue.getJobConfig(Direction.FROM)
+ .getConfig("CONFIGFROMNAME").getInput("STRING-INPUT").getValue()); }
private MJob job() {
- MJob job = new MJob(123l, 456l, 1L, 2L, fromForms(), toForms(), frameworkForms());
+ MJob job = new MJob(123l, 456l, 1L, 2L, fromConfig(), toConfig(), driverConfig());
job.setName("Vampire");
job.setCreationUser("Buffy");
return job;
}
- private MJobForms fromForms() {
- List<MForm> forms = new ArrayList<MForm>();
+ private MFromConfig fromConfig() {
+ List<MConfig> configs = new ArrayList<MConfig>();
MIntegerInput input = new MIntegerInput("INTEGER-INPUT", false);
input.setValue(100);
MStringInput strInput = new MStringInput("STRING-INPUT",false,(short)20);
@@ -113,28 +111,28 @@ public class TestMJob {
List<MInput<?>> list = new ArrayList<MInput<?>>();
list.add(input);
list.add(strInput);
- MForm form = new MForm("FORMNAME", list);
- forms.add(form);
- return new MJobForms(forms);
+ MConfig config = new MConfig("CONFIGFROMNAME", list);
+ configs.add(config);
+ return new MFromConfig(configs);
}
- private MJobForms toForms() {
- List<MForm> forms = new ArrayList<MForm>();
+ private MToConfig toConfig() {
+ List<MConfig> configs = new ArrayList<MConfig>();
MMapInput input = new MMapInput("MAP-INPUT", false);
List<MInput<?>> list = new ArrayList<MInput<?>>();
list.add(input);
- MForm form = new MForm("form", list);
- forms.add(form);
- return new MJobForms(forms);
+ MConfig config = new MConfig("CONFIGTONAME", list);
+ configs.add(config);
+ return new MToConfig(configs);
}
- private MJobForms frameworkForms() {
- List<MForm> forms = new ArrayList<MForm>();
+ private MDriverConfig driverConfig() {
+ List<MConfig> configs = new ArrayList<MConfig>();
MMapInput input = new MMapInput("MAP-INPUT", false);
List<MInput<?>> list = new ArrayList<MInput<?>>();
list.add(input);
- MForm form = new MForm("form", list);
- forms.add(form);
- return new MJobForms(forms);
+ MConfig config = new MConfig("CONFIGDRIVERNAME", list);
+ configs.add(config);
+ return new MDriverConfig(configs);
}
}
http://git-wip-us.apache.org/repos/asf/sqoop/blob/8362c73c/common/src/test/java/org/apache/sqoop/model/TestMJobConfig.java
----------------------------------------------------------------------
diff --git a/common/src/test/java/org/apache/sqoop/model/TestMJobConfig.java b/common/src/test/java/org/apache/sqoop/model/TestMJobConfig.java
new file mode 100644
index 0000000..7d0641e
--- /dev/null
+++ b/common/src/test/java/org/apache/sqoop/model/TestMJobConfig.java
@@ -0,0 +1,42 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.sqoop.model;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.junit.Test;
+
+import static org.junit.Assert.*;
+
+public class TestMJobConfig {
+ /**
+ * Test for class initialization and values
+ */
+ @Test
+ public void testInitialization() {
+ List<MConfig> configs = new ArrayList<MConfig>();
+ MFromConfig fromJobConfig = new MFromConfig(configs);
+ List<MConfig> configs2 = new ArrayList<MConfig>();
+ MFromConfig fromJobConfig2 = new MFromConfig(configs2);
+ assertEquals(fromJobConfig2, fromJobConfig);
+ MConfig c = new MConfig("test", null);
+ configs2.add(c);
+ assertFalse(fromJobConfig.equals(fromJobConfig2));
+ }
+}
http://git-wip-us.apache.org/repos/asf/sqoop/blob/8362c73c/common/src/test/java/org/apache/sqoop/model/TestMJobForms.java
----------------------------------------------------------------------
diff --git a/common/src/test/java/org/apache/sqoop/model/TestMJobForms.java b/common/src/test/java/org/apache/sqoop/model/TestMJobForms.java
deleted file mode 100644
index e59b282..0000000
--- a/common/src/test/java/org/apache/sqoop/model/TestMJobForms.java
+++ /dev/null
@@ -1,46 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.sqoop.model;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.junit.Test;
-
-import static org.junit.Assert.*;
-
-/**
- * Test class for org.apache.sqoop.model.MJobForms
- */
-public class TestMJobForms {
- /**
- * Test for class initialization and values
- */
- @Test
- public void testInitialization() {
- List<MForm> forms = new ArrayList<MForm>();
- MJobForms jobform1 = new MJobForms(forms);
- List<MForm> forms2 = new ArrayList<MForm>();
- MJobForms jobform2 = new MJobForms(forms2);
- assertEquals(jobform2, jobform1);
- // Add a form to list for checking not equals
- MForm m = new MForm("test", null);
- forms2.add(m);
- assertFalse(jobform1.equals(jobform2));
- }
-}
http://git-wip-us.apache.org/repos/asf/sqoop/blob/8362c73c/common/src/test/java/org/apache/sqoop/model/TestMLink.java
----------------------------------------------------------------------
diff --git a/common/src/test/java/org/apache/sqoop/model/TestMLink.java b/common/src/test/java/org/apache/sqoop/model/TestMLink.java
index 77fa2a9..9ad8954 100644
--- a/common/src/test/java/org/apache/sqoop/model/TestMLink.java
+++ b/common/src/test/java/org/apache/sqoop/model/TestMLink.java
@@ -24,9 +24,6 @@ import org.junit.Test;
import static org.junit.Assert.*;
-/**
- * Test class for org.apache.sqoop.model.MConnection
- */
public class TestMLink {
/**
@@ -39,8 +36,7 @@ public class TestMLink {
assertEquals(123l, link.getConnectorId());
assertEquals("Vampire", link.getName());
assertEquals("Buffy", link.getCreationUser());
- assertEquals(forms1(), link.getConnectorPart());
- assertEquals(forms2(), link.getFrameworkPart());
+ assertEquals(linkConfig(), link.getConnectorLinkConfig());
// Test copy constructor
MLink copy = new MLink(link);
@@ -48,17 +44,7 @@ public class TestMLink {
assertEquals("Vampire", copy.getName());
assertEquals("Buffy", copy.getCreationUser());
assertEquals(link.getCreationDate(), copy.getCreationDate());
- assertEquals(forms1(), copy.getConnectorPart());
- assertEquals(forms2(), copy.getFrameworkPart());
-
- // Test constructor for metadata upgrade (the order of forms is different)
- MLink upgradeCopy = new MLink(link, forms2(), forms1());
- assertEquals(123l, upgradeCopy.getConnectorId());
- assertEquals("Vampire", upgradeCopy.getName());
- assertEquals("Buffy", upgradeCopy.getCreationUser());
- assertEquals(link.getCreationDate(), upgradeCopy.getCreationDate());
- assertEquals(forms2(), upgradeCopy.getConnectorPart());
- assertEquals(forms1(), upgradeCopy.getFrameworkPart());
+ assertEquals(linkConfig(), copy.getConnectorLinkConfig());
}
@Test
@@ -66,37 +52,35 @@ public class TestMLink {
MLink link = link();
// Clone without value
- MLink withoutValue = link.clone(false);
- assertEquals(link, withoutValue);
- assertEquals(MPersistableEntity.PERSISTANCE_ID_DEFAULT, withoutValue.getPersistenceId());
- assertNull(withoutValue.getName());
- assertNull(withoutValue.getCreationUser());
- assertEquals(forms1(), withoutValue.getConnectorPart());
- assertEquals(forms2(), withoutValue.getFrameworkPart());
- assertNull(withoutValue.getConnectorPart().getForm("FORMNAME").getInput("INTEGER-INPUT").getValue());
- assertNull(withoutValue.getConnectorPart().getForm("FORMNAME").getInput("STRING-INPUT").getValue());
+ MLink withoutLinkValue = link.clone(false);
+ assertEquals(link, withoutLinkValue);
+ assertEquals(MPersistableEntity.PERSISTANCE_ID_DEFAULT, withoutLinkValue.getPersistenceId());
+ assertNull(withoutLinkValue.getName());
+ assertNull(withoutLinkValue.getCreationUser());
+ assertEquals(linkConfig(), withoutLinkValue.getConnectorLinkConfig());
+ assertNull(withoutLinkValue.getConnectorLinkConfig().getConfig("CONFIGNAME").getInput("INTEGER-INPUT").getValue());
+ assertNull(withoutLinkValue.getConnectorLinkConfig().getConfig("CONFIGNAME").getInput("STRING-INPUT").getValue());
// Clone with value
- MLink withValue = link.clone(true);
- assertEquals(link, withValue);
- assertEquals(link.getPersistenceId(), withValue.getPersistenceId());
- assertEquals(link.getName(), withValue.getName());
- assertEquals(link.getCreationUser(), withValue.getCreationUser());
- assertEquals(forms1(), withValue.getConnectorPart());
- assertEquals(forms2(), withValue.getFrameworkPart());
- assertEquals(100, withValue.getConnectorPart().getForm("FORMNAME").getInput("INTEGER-INPUT").getValue());
- assertEquals("TEST-VALUE", withValue.getConnectorPart().getForm("FORMNAME").getInput("STRING-INPUT").getValue());
+ MLink withLinkValue = link.clone(true);
+ assertEquals(link, withLinkValue);
+ assertEquals(link.getPersistenceId(), withLinkValue.getPersistenceId());
+ assertEquals(link.getName(), withLinkValue.getName());
+ assertEquals(link.getCreationUser(), withLinkValue.getCreationUser());
+ assertEquals(linkConfig(), withLinkValue.getConnectorLinkConfig());
+ assertEquals(100, withLinkValue.getConnectorLinkConfig().getConfig("CONFIGNAME").getInput("INTEGER-INPUT").getValue());
+ assertEquals("TEST-VALUE", withLinkValue.getConnectorLinkConfig().getConfig("CONFIGNAME").getInput("STRING-INPUT").getValue());
}
private MLink link() {
- MLink link = new MLink(123l, forms1(), forms2());
+ MLink link = new MLink(123l, linkConfig());
link.setName("Vampire");
link.setCreationUser("Buffy");
return link;
}
- private MConnectionForms forms1() {
- List<MForm> forms = new ArrayList<MForm>();
+ private MLinkConfig linkConfig() {
+ List<MConfig> configs = new ArrayList<MConfig>();
MIntegerInput input = new MIntegerInput("INTEGER-INPUT", false);
input.setValue(100);
MStringInput strInput = new MStringInput("STRING-INPUT",false,(short)20);
@@ -104,19 +88,9 @@ public class TestMLink {
List<MInput<?>> list = new ArrayList<MInput<?>>();
list.add(input);
list.add(strInput);
- MForm form = new MForm("FORMNAME", list);
- forms.add(form);
- return new MConnectionForms(forms);
- }
-
- private MConnectionForms forms2() {
- List<MForm> forms = new ArrayList<MForm>();
- MMapInput input = new MMapInput("MAP-INPUT", false);
- List<MInput<?>> list = new ArrayList<MInput<?>>();
- list.add(input);
- MForm form = new MForm("form", list);
- forms.add(form);
- return new MConnectionForms(forms);
+ MConfig config = new MConfig("CONFIGNAME", list);
+ configs.add(config);
+ return new MLinkConfig(configs);
}
}
http://git-wip-us.apache.org/repos/asf/sqoop/blob/8362c73c/common/src/test/java/org/apache/sqoop/model/TestMLinkConfig.java
----------------------------------------------------------------------
diff --git a/common/src/test/java/org/apache/sqoop/model/TestMLinkConfig.java b/common/src/test/java/org/apache/sqoop/model/TestMLinkConfig.java
new file mode 100644
index 0000000..62f61a6
--- /dev/null
+++ b/common/src/test/java/org/apache/sqoop/model/TestMLinkConfig.java
@@ -0,0 +1,45 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.sqoop.model;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.junit.Test;
+
+import static org.junit.Assert.*;
+
+public class TestMLinkConfig {
+
+ /**
+ * Test for class initialization and values
+ */
+ @Test
+ public void testInitialization() {
+ List<MConfig> configs = new ArrayList<MConfig>();
+ MLinkConfig linkConfig = new MLinkConfig(configs);
+ List<MConfig> testConfig = new ArrayList<MConfig>();
+ assertEquals(testConfig, linkConfig.getConfigs());
+ MLinkConfig linkConfig2 = new MLinkConfig(testConfig);
+ assertEquals(linkConfig2, linkConfig);
+ // Add a config to list for checking not equals
+ MConfig c = new MConfig("test", null);
+ testConfig.add(c);
+ assertFalse(linkConfig.equals(linkConfig2));
+ }
+}
http://git-wip-us.apache.org/repos/asf/sqoop/blob/8362c73c/common/src/test/java/org/apache/sqoop/validation/TestValidation.java
----------------------------------------------------------------------
diff --git a/common/src/test/java/org/apache/sqoop/validation/TestValidation.java b/common/src/test/java/org/apache/sqoop/validation/TestValidation.java
index 85e9e1c..16a8bbe 100644
--- a/common/src/test/java/org/apache/sqoop/validation/TestValidation.java
+++ b/common/src/test/java/org/apache/sqoop/validation/TestValidation.java
@@ -17,16 +17,20 @@
*/
package org.apache.sqoop.validation;
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertNotNull;
+import static org.junit.Assert.assertNull;
+import static org.junit.Assert.assertTrue;
+import static org.junit.Assert.fail;
+
import java.util.HashMap;
import java.util.Map;
import org.apache.sqoop.common.SqoopException;
-import org.apache.sqoop.validation.Validation.FormInput;
-import org.apache.sqoop.validation.Validation.Message;
+import org.apache.sqoop.validation.ConfigValidator.ConfigInput;
+import org.apache.sqoop.validation.ConfigValidator.Message;
import org.junit.Test;
-import static org.junit.Assert.*;
-
/**
* Test class for org.apache.sqoop.validation.Validation
*/
@@ -38,42 +42,42 @@ public class TestValidation {
@Test
public void testInitialization() {
/* Check initialization with class */
- Validation validation = new Validation(Class.class);
+ ConfigValidator validation = new ConfigValidator(Class.class);
assertNotNull(validation);
assertEquals(Status.FINE, validation.getStatus());
assertEquals(0, validation.getMessages().size());
/* Check initialization with status and message as null */
- Validation validationNull = new Validation(null, null);
+ ConfigValidator validationNull = new ConfigValidator(null, null);
assertNotNull(validationNull);
assertNull(validationNull.getStatus());
assertNull(validationNull.getMessages());
/* Check initialization with status and message with values */
Status s1 = Status.FINE;
- Map<FormInput, Message> msg1 = new HashMap<Validation.FormInput, Validation.Message>();
- Validation validation1 = new Validation(s1, msg1);
+ Map<ConfigInput, Message> msg1 = new HashMap<ConfigValidator.ConfigInput, ConfigValidator.Message>();
+ ConfigValidator validation1 = new ConfigValidator(s1, msg1);
assertNotNull(validation1);
assertEquals(Status.FINE, validation1.getStatus());
assertEquals(0, validation1.getMessages().size());
/* Check initialization with status and message with values */
Status s2 = Status.ACCEPTABLE;
- Map<FormInput, Message> msg2 = new HashMap<Validation.FormInput, Validation.Message>();
- Validation validation2 = new Validation(s2, msg2);
+ Map<ConfigInput, Message> msg2 = new HashMap<ConfigValidator.ConfigInput, ConfigValidator.Message>();
+ ConfigValidator validation2 = new ConfigValidator(s2, msg2);
assertNotNull(validation2);
assertEquals(Status.ACCEPTABLE, validation2.getStatus());
assertEquals(0, validation2.getMessages().size());
/* Check initialization with status and message with values */
Status s3 = Status.ACCEPTABLE;
- Map<FormInput, Message> msg3 = new HashMap<Validation.FormInput, Validation.Message>();
- Validation.FormInput fi = new Validation.FormInput("form\\.input");
- Validation.Message message = new Validation.Message(Status.FINE, "sqoop");
+ Map<ConfigInput, Message> msg3 = new HashMap<ConfigValidator.ConfigInput, ConfigValidator.Message>();
+ ConfigValidator.ConfigInput fi = new ConfigValidator.ConfigInput("config\\.input");
+ ConfigValidator.Message message = new ConfigValidator.Message(Status.FINE, "sqoop");
msg3.put(fi, message);
- Validation validation3 = new Validation(s3, msg3);
- Validation.FormInput fiTest = new Validation.FormInput("form\\.input");
- Validation.Message messageTest = new Validation.Message(Status.FINE,
+ ConfigValidator validation3 = new ConfigValidator(s3, msg3);
+ ConfigValidator.ConfigInput fiTest = new ConfigValidator.ConfigInput("config\\.input");
+ ConfigValidator.Message messageTest = new ConfigValidator.Message(Status.FINE,
"sqoop");
assertEquals(messageTest, validation3.getMessages().get(fiTest));
assertEquals(Status.ACCEPTABLE, validation3.getStatus());
@@ -82,13 +86,13 @@ public class TestValidation {
/**
* Test for Validation.ForInput
*/
- public void testFormInput() {
- Validation.FormInput fi = new Validation.FormInput("test\\.test");
+ public void testConfigInput() {
+ ConfigValidator.ConfigInput fi = new ConfigValidator.ConfigInput("test\\.test");
assertNotNull(fi);
/* Passing null */
try {
- new Validation.FormInput(null);
+ new ConfigValidator.ConfigInput(null);
fail("Assert error is expected");
} catch (AssertionError e) {
assertTrue(true);
@@ -96,31 +100,31 @@ public class TestValidation {
/* Passing empty and check exception messages */
try {
- new Validation.FormInput("");
+ new ConfigValidator.ConfigInput("");
fail("SqoopException is expected");
} catch (SqoopException e) {
- assertEquals(ValidationError.VALIDATION_0003.getMessage(), e
+ assertEquals(ConfigValidationError.VALIDATION_0003.getMessage(), e
.getErrorCode().getMessage());
}
/* Passing value and check */
- Validation.FormInput fi2 = new Validation.FormInput("form\\.input");
- assertEquals("form\\", fi2.getForm());
+ ConfigValidator.ConfigInput fi2 = new ConfigValidator.ConfigInput("config\\.input");
+ assertEquals("config\\", fi2.getConfig());
assertEquals("input", fi2.getInput());
/* Check equals */
- Validation.FormInput fiOne = new Validation.FormInput("form\\.input");
- Validation.FormInput fiTwo = new Validation.FormInput("form\\.input");
+ ConfigValidator.ConfigInput fiOne = new ConfigValidator.ConfigInput("config\\.input");
+ ConfigValidator.ConfigInput fiTwo = new ConfigValidator.ConfigInput("config\\.input");
assertEquals(fiOne, fiTwo);
/* toString() method check */
- assertEquals("form\\.input", fiOne.toString());
+ assertEquals("config\\.input", fiOne.toString());
- // Checking null as input field (form validation)
- Validation.FormInput fi3 = new FormInput("form");
- assertEquals("form", fi3.getForm());
+ // Checking null as input field (config validation)
+ ConfigValidator.ConfigInput fi3 = new ConfigInput("config");
+ assertEquals("config", fi3.getConfig());
assertNull(fi3.getInput());
- assertEquals("form", fi3.toString());
+ assertEquals("config", fi3.toString());
}
@@ -129,17 +133,17 @@ public class TestValidation {
*/
public void testMessage() {
/* Passing null */
- Validation.Message msg1 = new Validation.Message(null, null);
+ ConfigValidator.Message msg1 = new ConfigValidator.Message(null, null);
assertNull(msg1.getStatus());
assertNull(msg1.getMessage());
/* Passing values */
- Validation.Message msg2 = new Validation.Message(Status.FINE, "sqoop");
+ ConfigValidator.Message msg2 = new ConfigValidator.Message(Status.FINE, "sqoop");
assertEquals(Status.FINE, msg2.getStatus());
assertEquals("sqoop", msg2.getMessage());
/* Check for equal */
- Validation.Message msg3 = new Validation.Message(Status.FINE, "sqoop");
+ ConfigValidator.Message msg3 = new ConfigValidator.Message(Status.FINE, "sqoop");
assertEquals(msg2, msg3);
}
}
http://git-wip-us.apache.org/repos/asf/sqoop/blob/8362c73c/common/src/test/java/org/apache/sqoop/validation/TestValidationRunner.java
----------------------------------------------------------------------
diff --git a/common/src/test/java/org/apache/sqoop/validation/TestValidationRunner.java b/common/src/test/java/org/apache/sqoop/validation/TestValidationRunner.java
index 647abe0..579d1c5 100644
--- a/common/src/test/java/org/apache/sqoop/validation/TestValidationRunner.java
+++ b/common/src/test/java/org/apache/sqoop/validation/TestValidationRunner.java
@@ -18,8 +18,8 @@
package org.apache.sqoop.validation;
import org.apache.sqoop.model.ConfigurationClass;
-import org.apache.sqoop.model.Form;
-import org.apache.sqoop.model.FormClass;
+import org.apache.sqoop.model.Config;
+import org.apache.sqoop.model.ConfigClass;
import org.apache.sqoop.model.Input;
import org.apache.sqoop.model.Validator;
import org.apache.sqoop.validation.validators.Contains;
@@ -35,18 +35,18 @@ import static org.junit.Assert.assertTrue;
*/
public class TestValidationRunner {
- @FormClass(validators = {@Validator(FormA.FormValidator.class)})
- public static class FormA {
+ @ConfigClass(validators = {@Validator(ConfigA.ConfigValidator.class)})
+ public static class ConfigA {
@Input(validators = {@Validator(NotNull.class)})
String notNull;
- public static class FormValidator extends AbstractValidator<FormA> {
+ public static class ConfigValidator extends AbstractValidator<ConfigA> {
@Override
- public void validate(FormA form) {
- if(form.notNull == null) {
+ public void validate(ConfigA config) {
+ if(config.notNull == null) {
addMessage(Status.UNACCEPTABLE, "null");
}
- if("error".equals(form.notNull)) {
+ if("error".equals(config.notNull)) {
addMessage(Status.UNACCEPTABLE, "error");
}
}
@@ -54,83 +54,83 @@ public class TestValidationRunner {
}
@Test
- public void testValidateForm() {
- FormA form = new FormA();
- ValidationRunner runner = new ValidationRunner();
- ValidationResult result;
-
- // Null string should fail on Input level and should not call form level validators
- form.notNull = null;
- result = runner.validateForm("formName", form);
+ public void testValidateConfig() {
+ ConfigA config = new ConfigA();
+ ConfigValidationRunner runner = new ConfigValidationRunner();
+ ConfigValidationResult result;
+
+ // Null string should fail on Input level and should not call config level validators
+ config.notNull = null;
+ result = runner.validateConfig("configName", config);
assertEquals(Status.UNACCEPTABLE, result.getStatus());
assertEquals(1, result.getMessages().size());
- assertTrue(result.getMessages().containsKey("formName.notNull"));
+ assertTrue(result.getMessages().containsKey("configName.notNull"));
- // String "error" should trigger form level error, but not Input level
- form.notNull = "error";
- result = runner.validateForm("formName", form);
+ // String "error" should trigger config level error, but not Input level
+ config.notNull = "error";
+ result = runner.validateConfig("configName", config);
assertEquals(Status.UNACCEPTABLE, result.getStatus());
assertEquals(1, result.getMessages().size());
- assertTrue(result.getMessages().containsKey("formName"));
+ assertTrue(result.getMessages().containsKey("configName"));
// Acceptable state
- form.notNull = "This is truly random string";
- result = runner.validateForm("formName", form);
+ config.notNull = "This is truly random string";
+ result = runner.validateConfig("configName", config);
assertEquals(Status.FINE, result.getStatus());
assertEquals(0, result.getMessages().size());
}
- @FormClass
- public static class FormB {
+ @ConfigClass
+ public static class ConfigB {
@Input(validators = {@Validator(NotNull.class), @Validator(NotEmpty.class)})
String str;
}
- @FormClass
- public static class FormC {
+ @ConfigClass
+ public static class ConfigC {
@Input(validators = {@Validator(value = Contains.class, strArg = "findme")})
String str;
}
@Test
public void testMultipleValidatorsOnSingleInput() {
- FormB form = new FormB();
- ValidationRunner runner = new ValidationRunner();
- ValidationResult result;
+ ConfigB config = new ConfigB();
+ ConfigValidationRunner runner = new ConfigValidationRunner();
+ ConfigValidationResult result;
- form.str = null;
- result = runner.validateForm("formName", form);
+ config.str = null;
+ result = runner.validateConfig("configName", config);
assertEquals(Status.UNACCEPTABLE, result.getStatus());
assertEquals(1, result.getMessages().size());
- assertTrue(result.getMessages().containsKey("formName.str"));
- assertEquals(2, result.getMessages().get("formName.str").size());
+ assertTrue(result.getMessages().containsKey("configName.str"));
+ assertEquals(2, result.getMessages().get("configName.str").size());
}
@Test
public void testValidatorWithParameters() {
- FormC form = new FormC();
- ValidationRunner runner = new ValidationRunner();
- ValidationResult result;
+ ConfigC config = new ConfigC();
+ ConfigValidationRunner runner = new ConfigValidationRunner();
+ ConfigValidationResult result;
// Sub string not found
- form.str = "Mordor";
- result = runner.validateForm("formName", form);
+ config.str = "Mordor";
+ result = runner.validateConfig("configName", config);
assertEquals(Status.UNACCEPTABLE, result.getStatus());
assertEquals(1, result.getMessages().size());
- assertTrue(result.getMessages().containsKey("formName.str"));
+ assertTrue(result.getMessages().containsKey("configName.str"));
// Sub string found
- form.str = "Morfindmedor";
- result = runner.validateForm("formName", form);
+ config.str = "Morfindmedor";
+ result = runner.validateConfig("configName", config);
assertEquals(Status.FINE, result.getStatus());
assertEquals(0, result.getMessages().size());
}
@ConfigurationClass(validators = {@Validator(ConfigurationA.ClassValidator.class)})
public static class ConfigurationA {
- @Form FormA formA;
+ @Config ConfigA formA;
public ConfigurationA() {
- formA = new FormA();
+ formA = new ConfigA();
}
public static class ClassValidator extends AbstractValidator<ConfigurationA> {
@@ -149,24 +149,24 @@ public class TestValidationRunner {
@Test
public void testValidate() {
ConfigurationA conf = new ConfigurationA();
- ValidationRunner runner = new ValidationRunner();
- ValidationResult result;
+ ConfigValidationRunner runner = new ConfigValidationRunner();
+ ConfigValidationResult result;
- // Null string should fail on Input level and should not call form nor class level validators
+ // Null string should fail on Input level and should not call config nor class level validators
conf.formA.notNull = null;
result = runner.validate(conf);
assertEquals(Status.UNACCEPTABLE, result.getStatus());
assertEquals(1, result.getMessages().size());
assertTrue(result.getMessages().containsKey("formA.notNull"));
- // String "error" should trigger form level error, but not Input nor class level
+ // String "error" should trigger config level error, but not Input nor class level
conf.formA.notNull = "error";
result = runner.validate(conf);
assertEquals(Status.UNACCEPTABLE, result.getStatus());
assertEquals(1, result.getMessages().size());
assertTrue(result.getMessages().containsKey("formA"));
- // String "conf-error" should trigger class level error, but not Input nor Form level
+ // String "conf-error" should trigger class level error, but not Input nor Config level
conf.formA.notNull = "conf-error";
result = runner.validate(conf);
assertEquals(Status.UNACCEPTABLE, result.getStatus());
http://git-wip-us.apache.org/repos/asf/sqoop/blob/8362c73c/common/src/test/java/org/apache/sqoop/validation/validators/TestClassAvailable.java
----------------------------------------------------------------------
diff --git a/common/src/test/java/org/apache/sqoop/validation/validators/TestClassAvailable.java b/common/src/test/java/org/apache/sqoop/validation/validators/TestClassAvailable.java
index 62b2e0a..3a15274 100644
--- a/common/src/test/java/org/apache/sqoop/validation/validators/TestClassAvailable.java
+++ b/common/src/test/java/org/apache/sqoop/validation/validators/TestClassAvailable.java
@@ -17,19 +17,17 @@
*/
package org.apache.sqoop.validation.validators;
-import org.apache.sqoop.validation.Message;
-import org.apache.sqoop.validation.Status;
-import org.junit.Test;
+import static org.junit.Assert.assertEquals;
import java.util.List;
-import static org.junit.Assert.assertEquals;
+import org.apache.sqoop.validation.Message;
+import org.apache.sqoop.validation.Status;
+import org.junit.Test;
-/**
- */
public class TestClassAvailable {
- AbstractValidator validator = new ClassAvailable();
+ AbstractValidator<String> validator = new ClassAvailable();
@Test
public void test() {
http://git-wip-us.apache.org/repos/asf/sqoop/blob/8362c73c/connector/connector-generic-jdbc/src/main/java/org/apache/sqoop/connector/jdbc/GenericJdbcConnector.java
----------------------------------------------------------------------
diff --git a/connector/connector-generic-jdbc/src/main/java/org/apache/sqoop/connector/jdbc/GenericJdbcConnector.java b/connector/connector-generic-jdbc/src/main/java/org/apache/sqoop/connector/jdbc/GenericJdbcConnector.java
index b4b6966..87ac2af 100644
--- a/connector/connector-generic-jdbc/src/main/java/org/apache/sqoop/connector/jdbc/GenericJdbcConnector.java
+++ b/connector/connector-generic-jdbc/src/main/java/org/apache/sqoop/connector/jdbc/GenericJdbcConnector.java
@@ -92,7 +92,7 @@ public class GenericJdbcConnector extends SqoopConnector {
}
@Override
- public Validator getValidator() {
+ public Validator getConfigValidator() {
return genericJdbcValidator;
}
http://git-wip-us.apache.org/repos/asf/sqoop/blob/8362c73c/connector/connector-generic-jdbc/src/main/java/org/apache/sqoop/connector/jdbc/GenericJdbcConnectorUpgrader.java
----------------------------------------------------------------------
diff --git a/connector/connector-generic-jdbc/src/main/java/org/apache/sqoop/connector/jdbc/GenericJdbcConnectorUpgrader.java b/connector/connector-generic-jdbc/src/main/java/org/apache/sqoop/connector/jdbc/GenericJdbcConnectorUpgrader.java
index 8deddb0..a069b3e 100644
--- a/connector/connector-generic-jdbc/src/main/java/org/apache/sqoop/connector/jdbc/GenericJdbcConnectorUpgrader.java
+++ b/connector/connector-generic-jdbc/src/main/java/org/apache/sqoop/connector/jdbc/GenericJdbcConnectorUpgrader.java
@@ -18,21 +18,20 @@
*/
package org.apache.sqoop.connector.jdbc;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
import org.apache.log4j.Logger;
import org.apache.sqoop.common.SqoopException;
import org.apache.sqoop.connector.spi.RepositoryUpgrader;
-import org.apache.sqoop.model.MConnectionForms;
-import org.apache.sqoop.model.MForm;
+import org.apache.sqoop.model.MConfigList;
+import org.apache.sqoop.model.MConfig;
import org.apache.sqoop.model.MInput;
-import org.apache.sqoop.model.MJobForms;
-
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
+import org.apache.sqoop.model.MLinkConfig;
public class GenericJdbcConnectorUpgrader extends RepositoryUpgrader {
- private static final Logger LOG =
- Logger.getLogger(GenericJdbcConnectorUpgrader.class);
+ private static final Logger LOG = Logger.getLogger(GenericJdbcConnectorUpgrader.class);
/*
* For now, there is no real upgrade. So copy all data over,
@@ -41,41 +40,40 @@ public class GenericJdbcConnectorUpgrader extends RepositoryUpgrader {
*/
@Override
- public void upgrade(MConnectionForms original,
- MConnectionForms upgradeTarget) {
- doUpgrade(original.getForms(), upgradeTarget.getForms());
+ public void upgrade(MLinkConfig original, MLinkConfig upgradeTarget) {
+ doUpgrade(original.getConfigs(), upgradeTarget.getConfigs());
}
@Override
- public void upgrade(MJobForms original, MJobForms upgradeTarget) {
- doUpgrade(original.getForms(), upgradeTarget.getForms());
+ public void upgrade(MConfigList original, MConfigList upgradeTarget) {
+ doUpgrade(original.getConfigs(), upgradeTarget.getConfigs());
}
@SuppressWarnings("unchecked")
- private void doUpgrade(List<MForm> original, List<MForm> target) {
- // Easier to find the form in the original forms list if we use a map.
- // Since the constructor of MJobForms takes a list,
+ private void doUpgrade(List<MConfig> original, List<MConfig> target) {
+ // Easier to find the config in the original list if we use a map.
+ // Since the constructor takes a list,
// index is not guaranteed to be the same, so we need to look for
// equivalence
- Map<String, MForm> formMap = new HashMap<String, MForm>();
- for (MForm form : original) {
- formMap.put(form.getName(), form);
+ Map<String, MConfig> configMap = new HashMap<String, MConfig>();
+ for (MConfig config : original) {
+ configMap.put(config.getName(), config);
}
- for (MForm form : target) {
- List<MInput<?>> inputs = form.getInputs();
- MForm originalForm = formMap.get(form.getName());
- if (originalForm == null) {
- LOG.warn("Form: '" + form.getName() + "' not present in old " +
- "connector. So it and its inputs will not be transferred by the upgrader.");
+ for (MConfig config : target) {
+ List<MInput<?>> inputs = config.getInputs();
+ MConfig orginalConfig = configMap.get(config.getName());
+ if (orginalConfig == null) {
+ LOG.warn("Config: '" + config.getName() + "' not present in old " +
+ "generic JDBC connector. So it and its inputs will not be transferred by the upgrader.");
continue;
}
for (MInput input : inputs) {
try {
- MInput originalInput = originalForm.getInput(input.getName());
+ MInput originalInput = orginalConfig.getInput(input.getName());
input.setValue(originalInput.getValue());
} catch (SqoopException ex) {
LOG.warn("Input: '" + input.getName() + "' not present in old " +
- "connector. So it will not be transferred by the upgrader.");
+ "generic JDBC connector. So it will not be transferred by the upgrader.");
}
}
}
http://git-wip-us.apache.org/repos/asf/sqoop/blob/8362c73c/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 e52610a..af9320b 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
@@ -34,12 +34,12 @@ public class GenericJdbcExtractor extends Extractor<LinkConfiguration, FromJobCo
private long rowsRead = 0;
@Override
- public void extract(ExtractorContext context, LinkConfiguration linkConf,
- FromJobConfiguration fromJobConf, GenericJdbcPartition partition) {
- String driver = linkConf.link.jdbcDriver;
- String url = linkConf.link.connectionString;
- String username = linkConf.link.username;
- String password = linkConf.link.password;
+ public void extract(ExtractorContext context, LinkConfiguration linkConfig,
+ FromJobConfiguration fromJobConfig, GenericJdbcPartition partition) {
+ String driver = linkConfig.linkConfig.jdbcDriver;
+ String url = linkConfig.linkConfig.connectionString;
+ String username = linkConfig.linkConfig.username;
+ String password = linkConfig.linkConfig.password;
GenericJdbcExecutor executor = new GenericJdbcExecutor(driver, url, username, password);
String query = context.getString(GenericJdbcConnectorConstants.CONNECTOR_JDBC_FROM_DATA_SQL);
http://git-wip-us.apache.org/repos/asf/sqoop/blob/8362c73c/connector/connector-generic-jdbc/src/main/java/org/apache/sqoop/connector/jdbc/GenericJdbcFromDestroyer.java
----------------------------------------------------------------------
diff --git a/connector/connector-generic-jdbc/src/main/java/org/apache/sqoop/connector/jdbc/GenericJdbcFromDestroyer.java b/connector/connector-generic-jdbc/src/main/java/org/apache/sqoop/connector/jdbc/GenericJdbcFromDestroyer.java
index d3a893f..3a783be 100644
--- a/connector/connector-generic-jdbc/src/main/java/org/apache/sqoop/connector/jdbc/GenericJdbcFromDestroyer.java
+++ b/connector/connector-generic-jdbc/src/main/java/org/apache/sqoop/connector/jdbc/GenericJdbcFromDestroyer.java
@@ -29,7 +29,7 @@ public class GenericJdbcFromDestroyer extends Destroyer<LinkConfiguration, FromJ
Logger.getLogger(GenericJdbcFromDestroyer.class);
@Override
- public void destroy(DestroyerContext context, LinkConfiguration linkConf, FromJobConfiguration fromJobConf) {
+ public void destroy(DestroyerContext context, LinkConfiguration linkConfig, FromJobConfiguration fromJobConfig) {
LOG.info("Running generic JDBC connector destroyer");
}
http://git-wip-us.apache.org/repos/asf/sqoop/blob/8362c73c/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 9d0c178..ef4ecc4 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
@@ -45,34 +45,34 @@ public class GenericJdbcFromInitializer extends Initializer<LinkConfiguration, F
private GenericJdbcExecutor executor;
@Override
- public void initialize(InitializerContext context, LinkConfiguration linkConf, FromJobConfiguration fromJobConf) {
- configureJdbcProperties(context.getContext(), linkConf, fromJobConf);
+ public void initialize(InitializerContext context, LinkConfiguration linkConfig, FromJobConfiguration fromJobConfig) {
+ configureJdbcProperties(context.getContext(), linkConfig, fromJobConfig);
try {
- configurePartitionProperties(context.getContext(), linkConf, fromJobConf);
- configureTableProperties(context.getContext(), linkConf, fromJobConf);
+ configurePartitionProperties(context.getContext(), linkConfig, fromJobConfig);
+ configureTableProperties(context.getContext(), linkConfig, fromJobConfig);
} finally {
executor.close();
}
}
@Override
- public List<String> getJars(InitializerContext context, LinkConfiguration linkConf, FromJobConfiguration fromJobConf) {
+ public List<String> getJars(InitializerContext context, LinkConfiguration linkConfig, FromJobConfiguration fromJobConfig) {
List<String> jars = new LinkedList<String>();
- jars.add(ClassUtils.jarForClass(linkConf.link.jdbcDriver));
+ jars.add(ClassUtils.jarForClass(linkConfig.linkConfig.jdbcDriver));
return jars;
}
@Override
- public Schema getSchema(InitializerContext context, LinkConfiguration linkConf, FromJobConfiguration fromJobConf) {
- configureJdbcProperties(context.getContext(), linkConf, fromJobConf);
+ public Schema getSchema(InitializerContext context, LinkConfiguration linkConfig, FromJobConfiguration fromJobConfig) {
+ configureJdbcProperties(context.getContext(), linkConfig, fromJobConfig);
- String schemaName = fromJobConf.fromJobConfig.tableName;
+ String schemaName = fromJobConfig.fromJobConfig.tableName;
if(schemaName == null) {
schemaName = "Query";
- } else if(fromJobConf.fromJobConfig.schemaName != null) {
- schemaName = fromJobConf.fromJobConfig.schemaName + "." + schemaName;
+ } else if(fromJobConfig.fromJobConfig.schemaName != null) {
+ schemaName = fromJobConfig.fromJobConfig.schemaName + "." + schemaName;
}
Schema schema = new Schema(schemaName);
@@ -117,11 +117,11 @@ public class GenericJdbcFromInitializer extends Initializer<LinkConfiguration, F
}
}
- private void configureJdbcProperties(MutableContext context, LinkConfiguration connectionConfig, FromJobConfiguration fromJobConfig) {
- String driver = connectionConfig.link.jdbcDriver;
- String url = connectionConfig.link.connectionString;
- String username = connectionConfig.link.username;
- String password = connectionConfig.link.password;
+ private void configureJdbcProperties(MutableContext context, LinkConfiguration linkConfig, FromJobConfiguration fromJobConfig) {
+ String driver = linkConfig.linkConfig.jdbcDriver;
+ String url = linkConfig.linkConfig.connectionString;
+ String username = linkConfig.linkConfig.username;
+ String password = linkConfig.linkConfig.password;
assert driver != null;
assert url != null;
@@ -129,7 +129,7 @@ public class GenericJdbcFromInitializer extends Initializer<LinkConfiguration, F
executor = new GenericJdbcExecutor(driver, url, username, password);
}
- private void configurePartitionProperties(MutableContext context, LinkConfiguration connectionConfig, FromJobConfiguration fromJobConfig) {
+ private void configurePartitionProperties(MutableContext context, LinkConfiguration linkConfig, FromJobConfiguration fromJobConfig) {
// ----- configure column name -----
String partitionColumnName = fromJobConfig.fromJobConfig.partitionColumn;
@@ -234,7 +234,7 @@ public class GenericJdbcFromInitializer extends Initializer<LinkConfiguration, F
}
}
- private void configureTableProperties(MutableContext context, LinkConfiguration connectionConfig, FromJobConfiguration fromJobConfig) {
+ private void configureTableProperties(MutableContext context, LinkConfiguration linkConfig, FromJobConfiguration fromJobConfig) {
String dataSql;
String fieldNames;
http://git-wip-us.apache.org/repos/asf/sqoop/blob/8362c73c/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 991e686..6340a70 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
@@ -30,11 +30,11 @@ public class GenericJdbcLoader extends Loader<LinkConfiguration, ToJobConfigurat
private int batchesPerTransaction = DEFAULT_BATCHES_PER_TRANSACTION;
@Override
- public void load(LoaderContext context, LinkConfiguration linkConf, ToJobConfiguration toJobConf) throws Exception{
- String driver = linkConf.link.jdbcDriver;
- String url = linkConf.link.connectionString;
- String username = linkConf.link.username;
- String password = linkConf.link.password;
+ public void load(LoaderContext context, LinkConfiguration linkConfig, ToJobConfiguration toJobConfig) throws Exception{
+ String driver = linkConfig.linkConfig.jdbcDriver;
+ String url = linkConfig.linkConfig.connectionString;
+ String username = linkConfig.linkConfig.username;
+ String password = linkConfig.linkConfig.password;
GenericJdbcExecutor executor = new GenericJdbcExecutor(driver, url, username, password);
executor.setAutoCommit(false);
http://git-wip-us.apache.org/repos/asf/sqoop/blob/8362c73c/connector/connector-generic-jdbc/src/main/java/org/apache/sqoop/connector/jdbc/GenericJdbcPartitioner.java
----------------------------------------------------------------------
diff --git a/connector/connector-generic-jdbc/src/main/java/org/apache/sqoop/connector/jdbc/GenericJdbcPartitioner.java b/connector/connector-generic-jdbc/src/main/java/org/apache/sqoop/connector/jdbc/GenericJdbcPartitioner.java
index 6b11228..2411169 100644
--- a/connector/connector-generic-jdbc/src/main/java/org/apache/sqoop/connector/jdbc/GenericJdbcPartitioner.java
+++ b/connector/connector-generic-jdbc/src/main/java/org/apache/sqoop/connector/jdbc/GenericJdbcPartitioner.java
@@ -47,7 +47,8 @@ public class GenericJdbcPartitioner extends Partitioner<LinkConfiguration, FromJ
private Boolean partitionColumnNull;
@Override
- public List<Partition> getPartitions(PartitionerContext context,LinkConfiguration linkConf, FromJobConfiguration fromJobConf) {
+ public List<Partition> getPartitions(PartitionerContext context, LinkConfiguration linkConfig,
+ FromJobConfiguration fromJobConfig) {
List<Partition> partitions = new LinkedList<Partition>();
numberPartitions = context.getMaxPartitions();
@@ -56,7 +57,7 @@ public class GenericJdbcPartitioner extends Partitioner<LinkConfiguration, FromJ
partitionMinValue = context.getString(GenericJdbcConnectorConstants.CONNECTOR_JDBC_PARTITION_MINVALUE);
partitionMaxValue = context.getString(GenericJdbcConnectorConstants.CONNECTOR_JDBC_PARTITION_MAXVALUE);
- partitionColumnNull = fromJobConf.fromJobConfig.partitionColumnNull;
+ partitionColumnNull = fromJobConfig.fromJobConfig.partitionColumnNull;
if (partitionColumnNull == null) {
partitionColumnNull = false;
}
http://git-wip-us.apache.org/repos/asf/sqoop/blob/8362c73c/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 7bed1d9..e381651 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
@@ -28,26 +28,26 @@ public class GenericJdbcToDestroyer extends Destroyer<LinkConfiguration, ToJobCo
private static final Logger LOG = Logger.getLogger(GenericJdbcToDestroyer.class);
@Override
- public void destroy(DestroyerContext context, LinkConfiguration linkConf, ToJobConfiguration toJobConf) {
+ public void destroy(DestroyerContext context, LinkConfiguration linkConfig, ToJobConfiguration toJobConfig) {
LOG.info("Running generic JDBC connector destroyer");
- final String tableName = toJobConf.toJobConfig.tableName;
- final String stageTableName = toJobConf.toJobConfig.stageTableName;
+ final String tableName = toJobConfig.toJobConfig.tableName;
+ final String stageTableName = toJobConfig.toJobConfig.stageTableName;
final boolean stageEnabled = stageTableName != null &&
stageTableName.length() > 0;
if(stageEnabled) {
- moveDataToDestinationTable(linkConf,
+ moveDataToDestinationTable(linkConfig,
context.isSuccess(), stageTableName, tableName);
}
}
- private void moveDataToDestinationTable(LinkConfiguration linkConf,
+ private void moveDataToDestinationTable(LinkConfiguration linkConfig,
boolean success, String stageTableName, String tableName) {
GenericJdbcExecutor executor =
- new GenericJdbcExecutor(linkConf.link.jdbcDriver,
- linkConf.link.connectionString,
- linkConf.link.username,
- linkConf.link.password);
+ new GenericJdbcExecutor(linkConfig.linkConfig.jdbcDriver,
+ linkConfig.linkConfig.connectionString,
+ linkConfig.linkConfig.username,
+ linkConfig.linkConfig.password);
try {
if(success) {
LOG.info("Job completed, transferring data from stage fromTable to " +
http://git-wip-us.apache.org/repos/asf/sqoop/blob/8362c73c/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 5d0ec93..1747347 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
@@ -43,35 +43,35 @@ public class GenericJdbcToInitializer extends Initializer<LinkConfiguration, ToJ
Logger.getLogger(GenericJdbcToInitializer.class);
@Override
- public void initialize(InitializerContext context, LinkConfiguration linkConf, ToJobConfiguration toJobConf) {
- configureJdbcProperties(context.getContext(), linkConf, toJobConf);
+ public void initialize(InitializerContext context, LinkConfiguration linkConfig, ToJobConfiguration toJobConfig) {
+ configureJdbcProperties(context.getContext(), linkConfig, toJobConfig);
try {
- configureTableProperties(context.getContext(), linkConf, toJobConf);
+ configureTableProperties(context.getContext(), linkConfig, toJobConfig);
} finally {
executor.close();
}
}
@Override
- public List<String> getJars(InitializerContext context, LinkConfiguration linkConf, ToJobConfiguration toJobConf) {
+ public List<String> getJars(InitializerContext context, LinkConfiguration linkConfig, ToJobConfiguration toJobConfig) {
List<String> jars = new LinkedList<String>();
- jars.add(ClassUtils.jarForClass(linkConf.link.jdbcDriver));
+ jars.add(ClassUtils.jarForClass(linkConfig.linkConfig.jdbcDriver));
return jars;
}
@Override
- public Schema getSchema(InitializerContext context, LinkConfiguration linkConf, ToJobConfiguration toJobConf) {
- configureJdbcProperties(context.getContext(), linkConf, toJobConf);
+ public Schema getSchema(InitializerContext context, LinkConfiguration linkConfig, ToJobConfiguration toJobConfig) {
+ configureJdbcProperties(context.getContext(), linkConfig, toJobConfig);
- String schemaName = toJobConf.toJobConfig.tableName;
+ String schemaName = toJobConfig.toJobConfig.tableName;
if (schemaName == null) {
throw new SqoopException(GenericJdbcConnectorError.GENERIC_JDBC_CONNECTOR_0019,
"Table name extraction not supported yet.");
}
- if(toJobConf.toJobConfig.schemaName != null) {
- schemaName = toJobConf.toJobConfig.schemaName + "." + schemaName;
+ if(toJobConfig.toJobConfig.schemaName != null) {
+ schemaName = toJobConfig.toJobConfig.schemaName + "." + schemaName;
}
Schema schema = new Schema(schemaName);
@@ -110,11 +110,11 @@ public class GenericJdbcToInitializer extends Initializer<LinkConfiguration, ToJ
}
}
- private void configureJdbcProperties(MutableContext context, LinkConfiguration linkConf, ToJobConfiguration toJobConf) {
- String driver = linkConf.link.jdbcDriver;
- String url = linkConf.link.connectionString;
- String username = linkConf.link.username;
- String password = linkConf.link.password;
+ private void configureJdbcProperties(MutableContext context, LinkConfiguration linkConfig, ToJobConfiguration toJobConfig) {
+ String driver = linkConfig.linkConfig.jdbcDriver;
+ String url = linkConfig.linkConfig.connectionString;
+ String username = linkConfig.linkConfig.username;
+ String password = linkConfig.linkConfig.password;
assert driver != null;
assert url != null;
@@ -122,7 +122,7 @@ public class GenericJdbcToInitializer extends Initializer<LinkConfiguration, ToJ
executor = new GenericJdbcExecutor(driver, url, username, password);
}
- private void configureTableProperties(MutableContext context, LinkConfiguration linkConf, ToJobConfiguration toJobConfig) {
+ private void configureTableProperties(MutableContext context, LinkConfiguration linkConfig, ToJobConfiguration toJobConfig) {
String dataSql;
String schemaName = toJobConfig.toJobConfig.schemaName;
http://git-wip-us.apache.org/repos/asf/sqoop/blob/8362c73c/connector/connector-generic-jdbc/src/main/java/org/apache/sqoop/connector/jdbc/GenericJdbcValidator.java
----------------------------------------------------------------------
diff --git a/connector/connector-generic-jdbc/src/main/java/org/apache/sqoop/connector/jdbc/GenericJdbcValidator.java b/connector/connector-generic-jdbc/src/main/java/org/apache/sqoop/connector/jdbc/GenericJdbcValidator.java
index ad1ee5c..93989a4 100644
--- a/connector/connector-generic-jdbc/src/main/java/org/apache/sqoop/connector/jdbc/GenericJdbcValidator.java
+++ b/connector/connector-generic-jdbc/src/main/java/org/apache/sqoop/connector/jdbc/GenericJdbcValidator.java
@@ -22,7 +22,7 @@ import org.apache.sqoop.connector.jdbc.configuration.LinkConfiguration;
import org.apache.sqoop.connector.jdbc.configuration.FromJobConfiguration;
import org.apache.sqoop.connector.jdbc.configuration.ToJobConfiguration;
import org.apache.sqoop.validation.Status;
-import org.apache.sqoop.validation.Validation;
+import org.apache.sqoop.validation.ConfigValidator;
import org.apache.sqoop.validation.Validator;
import java.sql.DriverManager;
@@ -34,30 +34,30 @@ import java.sql.SQLException;
public class GenericJdbcValidator extends Validator {
@Override
- public Validation validateLink(Object configuration) {
- Validation validation = new Validation(LinkConfiguration.class);
- LinkConfiguration linkConf = (LinkConfiguration)configuration;
+ public ConfigValidator validateConfigForLink(Object configuration) {
+ ConfigValidator validation = new ConfigValidator(LinkConfiguration.class);
+ LinkConfiguration linkConfig = (LinkConfiguration)configuration;
- if(linkConf.link.jdbcDriver == null) {
+ if(linkConfig.linkConfig.jdbcDriver == null) {
validation.addMessage(Status.UNACCEPTABLE, "link", "jdbcDriver", "Driver can't be empty");
} else {
try {
- Class.forName(linkConf.link.jdbcDriver);
+ Class.forName(linkConfig.linkConfig.jdbcDriver);
} catch (ClassNotFoundException e) {
validation.addMessage(Status.UNACCEPTABLE, "link", "jdbcDriver", "Can't load specified driver");
}
}
- if(linkConf.link.connectionString == null) {
+ if(linkConfig.linkConfig.connectionString == null) {
validation.addMessage(Status.UNACCEPTABLE, "link", "connectionString", "JDBC URL can't be empty");
- } else if(!linkConf.link.connectionString.startsWith("jdbc:")) {
+ } else if(!linkConfig.linkConfig.connectionString.startsWith("jdbc:")) {
validation.addMessage(Status.UNACCEPTABLE, "link", "connectionString", "This do not seem as a valid JDBC URL");
}
// See if we can connect to the database
try {
- DriverManager.getConnection(linkConf.link.connectionString,
- linkConf.link.username, linkConf.link.password);
+ DriverManager.getConnection(linkConfig.linkConfig.connectionString,
+ linkConfig.linkConfig.username, linkConfig.linkConfig.password);
} catch (SQLException e) {
validation.addMessage(Status.ACCEPTABLE, "link", "Can't connect to the database with given credentials: " + e.getMessage());
}
@@ -67,7 +67,7 @@ public class GenericJdbcValidator extends Validator {
}
@Override
- public Validation validateJob(Object jobConfiguration) {
+ public ConfigValidator validateConfigForJob(Object jobConfiguration) {
if (jobConfiguration instanceof FromJobConfiguration) {
return validateFromJobConfiguration((FromJobConfiguration)jobConfiguration);
} else if (jobConfiguration instanceof ToJobConfiguration) {
@@ -78,8 +78,8 @@ public class GenericJdbcValidator extends Validator {
}
}
- private Validation validateToJobConfiguration(ToJobConfiguration configuration) {
- Validation validation = new Validation(FromJobConfiguration.class);
+ private ConfigValidator validateToJobConfiguration(ToJobConfiguration configuration) {
+ ConfigValidator validation = new ConfigValidator(FromJobConfiguration.class);
if(configuration.toJobConfig.tableName == null && configuration.toJobConfig.sql == null) {
validation.addMessage(Status.UNACCEPTABLE, "toJobConfig", "Either table name or SQL must be specified");
@@ -102,8 +102,8 @@ public class GenericJdbcValidator extends Validator {
return validation;
}
- private Validation validateFromJobConfiguration(FromJobConfiguration configuration) {
- Validation validation = new Validation(FromJobConfiguration.class);
+ private ConfigValidator validateFromJobConfiguration(FromJobConfiguration configuration) {
+ ConfigValidator validation = new ConfigValidator(FromJobConfiguration.class);
if(configuration.fromJobConfig.tableName == null && configuration.fromJobConfig.sql == null) {
validation.addMessage(Status.UNACCEPTABLE, "fromJobConfig", "Either table name or SQL must be specified");