org.springframework.data.hadoop.mapreduce
Class ToolRunner

java.lang.Object
  extended by org.springframework.data.hadoop.mapreduce.ToolRunner
All Implemented Interfaces:
BeanClassLoaderAware, FactoryBean<Integer>, InitializingBean

public class ToolRunner
extends Object
implements FactoryBean<Integer>, InitializingBean

Wrapper around ToolRunner allowing for an easier configuration and execution of Tool instances inside Spring. Optionally returns the execution result (as an int per Tool.run(String[])).

Author:
Costin Leau

Constructor Summary
ToolRunner()
           
 
Method Summary
 void afterPropertiesSet()
           
 Integer getObject()
           
 Class<?> getObjectType()
           
 boolean isSingleton()
           
 void setArchives(Resource... archives)
          Sets the archives to be unarchive to the map reduce cluster.
 void setArguments(String... arguments)
          Sets the arguments.
 void setBeanClassLoader(ClassLoader classLoader)
           
 void setConfiguration(Configuration configuration)
          Sets the configuration.
 void setFiles(Resource... files)
          Sets the files to be copied to the map reduce cluster.
 void setJar(Resource jar)
           
 void setLibs(Resource... libJars)
          Sets the jar files to include in the classpath.
 void setProperties(Properties properties)
          Sets the properties.
 void setRunAtStartup(boolean runAtStartup)
          Sets the run at startup.
 void setTool(Tool tool)
          Sets the tool.
 void setToolClass(String toolClassName)
          Sets the tool class by name.
 void setUser(String user)
          Sets the user impersonation (optional) for running this job.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ToolRunner

public ToolRunner()
Method Detail

getObject

public Integer getObject()
                  throws Exception
Specified by:
getObject in interface FactoryBean<Integer>
Throws:
Exception

getObjectType

public Class<?> getObjectType()
Specified by:
getObjectType in interface FactoryBean<Integer>

isSingleton

public boolean isSingleton()
Specified by:
isSingleton in interface FactoryBean<Integer>

afterPropertiesSet

public void afterPropertiesSet()
                        throws Exception
Specified by:
afterPropertiesSet in interface InitializingBean
Throws:
Exception

setRunAtStartup

public void setRunAtStartup(boolean runAtStartup)
Sets the run at startup.

Parameters:
runAtStartup - The runAtStartup to set.

setTool

public void setTool(Tool tool)
Sets the tool.

Parameters:
tool - The tool to set.

setToolClass

public void setToolClass(String toolClassName)
Sets the tool class by name.

Parameters:
toolClassName - the new tool class

setJar

public void setJar(Resource jar)

setArguments

public void setArguments(String... arguments)
Sets the arguments.

Parameters:
arguments - The arguments to set.

setConfiguration

public void setConfiguration(Configuration configuration)
Sets the configuration.

Parameters:
configuration - The configuration to set.

setProperties

public void setProperties(Properties properties)
Sets the properties.

Parameters:
properties - The properties to set.

setBeanClassLoader

public void setBeanClassLoader(ClassLoader classLoader)
Specified by:
setBeanClassLoader in interface BeanClassLoaderAware

setLibs

public void setLibs(Resource... libJars)
Sets the jar files to include in the classpath. Note that a pattern can be used (e.g. mydir/*.jar), which the Spring container will automatically resolve.

Parameters:
libJars - The jar files to include in the classpath.

setFiles

public void setFiles(Resource... files)
Sets the files to be copied to the map reduce cluster. Note that a pattern can be used (e.g. mydir/*.txt), which the Spring container will automatically resolve.

Parameters:
files - The files to copy.

setArchives

public void setArchives(Resource... archives)
Sets the archives to be unarchive to the map reduce cluster. Note that a pattern can be used (e.g. mydir/*.zip), which the Spring container will automatically resolve.

Parameters:
archives - The archives to unarchive on the compute machines.

setUser

public void setUser(String user)
Sets the user impersonation (optional) for running this job. Should be used when running against a Hadoop Kerberos cluster.

Parameters:
user - user/group information