@Override public int runTool( String[] args, Configuration c ) { ClassLoader cl = Thread.currentThread().getContextClassLoader(); Thread.currentThread().setContextClassLoader( getClass().getClassLoader() ); try { return Sqoop.runTool( args, ShimUtils.asConfiguration( c ) ); } finally { Thread.currentThread().setContextClassLoader( cl ); } }
@Override public Integer call() throws Exception { ClassLoader cl = Thread.currentThread().getContextClassLoader(); Thread.currentThread().setContextClassLoader( getClass().getClassLoader() ); try { return Sqoop.runTool( args, ShimUtils.asConfiguration( c ) ); } finally { Thread.currentThread().setContextClassLoader( cl ); } } } );
@Override public void run(String... args) throws Exception { List<String> finalArguments = createFinalArguments(); logger.info("Running Sqoop tool with arguments: " + finalArguments); Configuration configuration = new Configuration(hadoopConfiguration); logger.info("Setting mapreduce.framework.name to " + mapreduceFramework); configuration.set("mapreduce.framework.name", mapreduceFramework); final int ret = Sqoop.runTool(finalArguments.toArray(new String[finalArguments.size()]), configuration); logger.info("Sqoop tool completed with return code: " + ret); if (ret != 0) { throw new RuntimeException("Sqoop job failed - return code " + ret); } }
@Test public void testPlugin() { // Register the plugin with SqoopTool. Configuration pluginConf = new Configuration(); pluginConf.set(SqoopTool.TOOL_PLUGINS_KEY, PluginClass.class.getName()); SqoopTool.loadPlugins(pluginConf); ArrayList<String> args = new ArrayList<String>(); args.add("fooTool"); args.add("--username"); args.add("bob"); args.add("--connect"); args.add("anywhere"); int ret = Sqoop.runTool(args.toArray(new String[0])); assertEquals("Expected tool run success", 0, ret); String actualUser = FooTool.getLastUser(); assertEquals("Failed to set username correctly.", "bob", actualUser); }
return Sqoop.runTool(sqoopArgs.toArray(new String[sqoopArgs.size()]), sqoopConf);
Sqoop.runTool(sqoopArgs.toArray(new String[sqoopArgs.size()]), sqoopConf); int rowsImported = 0;