org.pentaho.di.job.entries.zipfile
Class JobEntryZipFile

java.lang.Object
  extended by org.pentaho.di.job.entry.JobEntryBase
      extended by org.pentaho.di.job.entries.zipfile.JobEntryZipFile
All Implemented Interfaces:
Cloneable, CheckResultSourceInterface, LoggingObjectInterface, VariableSpace, JobEntryInterface, ResourceHolderInterface

public class JobEntryZipFile
extends JobEntryBase
implements Cloneable, JobEntryInterface

This defines a 'zip file' job entry. Its main use would be to zip files in a directory and process zipped files (deleted or move).

Since:
27-02-2007
Author:
Samatar Hassan

Field Summary
 int afterzip
           
 int compressionrate
           
 int ifzipfileexists
           
 
Constructor Summary
JobEntryZipFile()
           
JobEntryZipFile(String n)
          Default constructor.
 
Method Summary
 void check(List<CheckResultInterface> remarks, JobMeta jobMeta)
          Support for overrides not having to put in a check method.
 Object clone()
          This method is called when a job entry is duplicated in Spoon.
 boolean evaluates()
          This method must return true if the job entry supports the true/false outgoing hops.
 Result execute(Result previousResult, int nr)
          Execute the job entry.
 boolean getcreateparentfolder()
           
 boolean getDatafromprevious()
           
 String getDateTimeFormat()
           
 String getFullFilename(String filename, boolean add_date, boolean add_time, boolean specify_format, String datetime_folder)
           
 String getMoveToDirectory()
           
 String getSourceDirectory()
           
 String getWildcard()
           
 String getWildcardExclude()
           
 String getXML()
          This method is called by PDI whenever a job entry needs to serialize its settings to XML.
 String getZipFilename()
           
 boolean isAddFileToResult()
           
 boolean isCreateMoveToDirectory()
           
 boolean isDateInFilename()
           
 boolean isIncludingSubFolders()
           
 boolean isSpecifyFormat()
           
 boolean isTimeInFilename()
           
 void loadRep(Repository rep, ObjectId id_jobentry, List<DatabaseMeta> databases, List<SlaveServer> slaveServers)
          This method is called by PDI whenever a job entry needs to read its configuration from a PDI repository.
 void loadXML(Node entrynode, List<DatabaseMeta> databases, List<SlaveServer> slaveServers, Repository rep)
          This method is called by PDI whenever a job entry needs to read its settings from XML.
 boolean processRowFile(Job parentJob, Result result, String realZipfilename, String realWildcard, String realWildcardExclude, String realSourceDirectoryOrFile, String realMovetodirectory, boolean createparentfolder)
           
 void saveRep(Repository rep, ObjectId id_job)
          This method is called by PDI whenever a job entry needs to save its settings to a PDI repository.
 void setAddFileToResult(boolean addfiletoresultin)
           
 void setCreateMoveToDirectory(boolean createMoveToDirectory)
           
 void setcreateparentfolder(boolean createparentfolder)
           
 void setDatafromprevious(boolean isfromprevious)
           
 void setDateInFilename(boolean adddate)
           
 void setDateTimeFormat(String date_time_format)
           
 void setIncludingSubFolders(boolean includesSubFolders)
           
 void setMoveToDirectory(String movetodirectory)
           
 void setSourceDirectory(String sourcedirectory)
           
 void setSpecifyFormat(boolean SpecifyFormat)
           
 void setTimeInFilename(boolean addtime)
           
 void setWildcard(String wildcard)
           
 void setWildcardExclude(String wildcardexclude)
           
 void setZipFilename(String zipFilename)
           
 
Methods inherited from class org.pentaho.di.job.entry.JobEntryBase
clear, copyVariablesFrom, environmentSubstitute, environmentSubstitute, equals, exportResources, getBooleanValueOfVariable, getContainerObjectId, getDescription, getDialogClassName, getFilename, getHolderType, getLogChannel, getLogChannelId, getLogLevel, getName, getObjectCopy, getObjectId, getObjectName, getObjectRevision, getObjectType, getParent, getParentJob, getParentVariableSpace, getPluginId, getRealFilename, getRegistrationDate, getRepository, getRepositoryDirectory, getResourceDependencies, getSQLStatements, getSQLStatements, getTypeDesc, getTypeId, getUsedDatabaseConnections, getVariable, getVariable, hasChanged, hasRepositoryReferences, initializeVariablesFrom, injectVariables, isBasic, isDebug, isDetailed, isDummy, isEvaluation, isFTP, isHTTP, isJob, isMail, isRowlevel, isSFTP, isShell, isSpecial, isStart, isTransformation, isUnconditional, listVariables, loadXML, logBasic, logBasic, logDebug, logDebug, logDetailed, logDetailed, logError, logError, logError, logMinimal, logMinimal, logRowlevel, logRowlevel, lookupRepositoryReferences, parseRepositoryObjects, resetErrorsBeforeExecution, setChanged, setChanged, setContainerObjectId, setDescription, setID, setLogLevel, setName, setObjectId, setParentJob, setParentVariableSpace, setPluginId, setRepository, setTypeId, setVariable, shareVariablesWith, toString
 
Methods inherited from class java.lang.Object
getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.pentaho.di.job.entry.JobEntryInterface
clear, exportResources, getDescription, getDialogClassName, getFilename, getLogChannel, getName, getObjectId, getParentJob, getPluginId, getRealFilename, getResourceDependencies, getSQLStatements, getSQLStatements, getTypeId, getUsedDatabaseConnections, hasChanged, hasRepositoryReferences, isDummy, isEvaluation, isJob, isMail, isShell, isSpecial, isStart, isTransformation, isUnconditional, lookupRepositoryReferences, resetErrorsBeforeExecution, setChanged, setChanged, setDescription, setName, setObjectId, setParentJob, setPluginId, setRepository
 

Field Detail

compressionrate

public int compressionrate

ifzipfileexists

public int ifzipfileexists

afterzip

public int afterzip
Constructor Detail

JobEntryZipFile

public JobEntryZipFile(String n)
Default constructor.


JobEntryZipFile

public JobEntryZipFile()
Method Detail

clone

public Object clone()
Description copied from class: JobEntryBase
This method is called when a job entry is duplicated in Spoon. It needs to return a deep copy of this job entry object. It is essential that the implementing class creates proper deep copies if the job entry configuration is stored in modifiable objects, such as lists or custom helper objects.

Specified by:
clone in interface JobEntryInterface
Overrides:
clone in class JobEntryBase
Returns:
a clone of the object

getXML

public String getXML()
Description copied from class: JobEntryBase
This method is called by PDI whenever a job entry needs to serialize its settings to XML. It is called when saving a job in Spoon. The method returns an XML string, containing the serialized settings. The string contains a series of XML tags, typically one tag per setting. The helper class org.pentaho.di.core.xml.XMLHandler is typically used to construct the XML string.

Specified by:
getXML in interface JobEntryInterface
Overrides:
getXML in class JobEntryBase
Returns:
the xml representation of the job entry

loadXML

public void loadXML(Node entrynode,
                    List<DatabaseMeta> databases,
                    List<SlaveServer> slaveServers,
                    Repository rep)
             throws KettleXMLException
Description copied from interface: JobEntryInterface
This method is called by PDI whenever a job entry needs to read its settings from XML. The XML node containing the job entry�s settings is passed in as an argument. Again, the helper class org.pentaho.di.core.xml.XMLHandler is typically used to conveniently read the settings from the XML node.

Specified by:
loadXML in interface JobEntryInterface
Parameters:
entrynode - the top-level XML node
databases - the list of databases
slaveServers - the list of slave servers
rep - the repository object
Throws:
KettleXMLException - if any errors occur during the loading of the XML

loadRep

public void loadRep(Repository rep,
                    ObjectId id_jobentry,
                    List<DatabaseMeta> databases,
                    List<SlaveServer> slaveServers)
             throws KettleException
Description copied from class: JobEntryBase
This method is called by PDI whenever a job entry needs to read its configuration from a PDI repository. For JobEntryBase, this method performs no operations.

Specified by:
loadRep in interface JobEntryInterface
Overrides:
loadRep in class JobEntryBase
Parameters:
rep - the repository object
id_jobentry - the id of the job entry
databases - the list of databases
slaveServers - the list of slave servers
Throws:
KettleException - if any errors occur during the load

saveRep

public void saveRep(Repository rep,
                    ObjectId id_job)
             throws KettleException
Description copied from class: JobEntryBase
This method is called by PDI whenever a job entry needs to save its settings to a PDI repository. For JobEntryBase, this method performs no operations

Specified by:
saveRep in interface JobEntryInterface
Overrides:
saveRep in class JobEntryBase
Parameters:
rep - the repository object
id_job - the id_job
Throws:
KettleException - if any errors occur during the save

processRowFile

public boolean processRowFile(Job parentJob,
                              Result result,
                              String realZipfilename,
                              String realWildcard,
                              String realWildcardExclude,
                              String realSourceDirectoryOrFile,
                              String realMovetodirectory,
                              boolean createparentfolder)

execute

public Result execute(Result previousResult,
                      int nr)
Description copied from interface: JobEntryInterface
Execute the job entry. The previous result and number of rows are provided to the method for the purpose of chaining job entries, transformations, etc.

Specified by:
execute in interface JobEntryInterface
Parameters:
previousResult - the previous result
nr - the number of rows
Returns:
the Result object from execution of this job entry

getFullFilename

public String getFullFilename(String filename,
                              boolean add_date,
                              boolean add_time,
                              boolean specify_format,
                              String datetime_folder)

evaluates

public boolean evaluates()
Description copied from class: JobEntryBase
This method must return true if the job entry supports the true/false outgoing hops. For JobEntryBase, this method always returns false

Specified by:
evaluates in interface JobEntryInterface
Overrides:
evaluates in class JobEntryBase
Returns:
false

setZipFilename

public void setZipFilename(String zipFilename)

setWildcard

public void setWildcard(String wildcard)

setWildcardExclude

public void setWildcardExclude(String wildcardexclude)

setSourceDirectory

public void setSourceDirectory(String sourcedirectory)

setMoveToDirectory

public void setMoveToDirectory(String movetodirectory)

getSourceDirectory

public String getSourceDirectory()

getMoveToDirectory

public String getMoveToDirectory()

getZipFilename

public String getZipFilename()

isCreateMoveToDirectory

public boolean isCreateMoveToDirectory()

setCreateMoveToDirectory

public void setCreateMoveToDirectory(boolean createMoveToDirectory)

getWildcard

public String getWildcard()

getWildcardExclude

public String getWildcardExclude()

setAddFileToResult

public void setAddFileToResult(boolean addfiletoresultin)

isAddFileToResult

public boolean isAddFileToResult()

setcreateparentfolder

public void setcreateparentfolder(boolean createparentfolder)

setDateInFilename

public void setDateInFilename(boolean adddate)

isDateInFilename

public boolean isDateInFilename()

setTimeInFilename

public void setTimeInFilename(boolean addtime)

isTimeInFilename

public boolean isTimeInFilename()

isSpecifyFormat

public boolean isSpecifyFormat()

setSpecifyFormat

public void setSpecifyFormat(boolean SpecifyFormat)

getDateTimeFormat

public String getDateTimeFormat()

setDateTimeFormat

public void setDateTimeFormat(String date_time_format)

getcreateparentfolder

public boolean getcreateparentfolder()

setDatafromprevious

public void setDatafromprevious(boolean isfromprevious)

getDatafromprevious

public boolean getDatafromprevious()

check

public void check(List<CheckResultInterface> remarks,
                  JobMeta jobMeta)
Description copied from class: JobEntryBase
Support for overrides not having to put in a check method. For JobEntryBase, this method performs no operations.

Specified by:
check in interface JobEntryInterface
Overrides:
check in class JobEntryBase
Parameters:
remarks - CheckResults from checking the job entry
jobMeta - JobMeta information letting threading back to the JobMeta possible

isIncludingSubFolders

public boolean isIncludingSubFolders()
Returns:
true if the search for files to zip in a folder include sub-folders

setIncludingSubFolders

public void setIncludingSubFolders(boolean includesSubFolders)
Parameters:
includesSubFolders - Set to true if the search for files to zip in a folder needs to include sub-folders