Class JobEntryZipFile

java.lang.Object
org.pentaho.di.job.entry.JobEntryBase
org.pentaho.di.job.entries.zipfile.JobEntryZipFile
All Implemented Interfaces:
Cloneable, org.pentaho.di.core.AttributesInterface, org.pentaho.di.core.CheckResultSourceInterface, org.pentaho.di.core.ExtensionDataInterface, org.pentaho.di.core.logging.LoggingObjectInterface, org.pentaho.di.core.logging.LoggingObjectLifecycleInterface, org.pentaho.di.core.variables.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 Details

    • compressionRate

      public int compressionRate
    • ifZipFileExists

      public int ifZipFileExists
    • afterZip

      public int afterZip
  • Constructor Details

    • JobEntryZipFile

      public JobEntryZipFile(String n)
      Default constructor.
    • JobEntryZipFile

      public JobEntryZipFile()
  • Method Details

    • 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<org.pentaho.di.core.database.DatabaseMeta> databases, List<SlaveServer> slaveServers, Repository rep, org.pentaho.metastore.api.IMetaStore metaStore) throws org.pentaho.di.core.exception.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
      Overrides:
      loadXML in class JobEntryBase
      Parameters:
      entrynode - the top-level XML node
      databases - the list of databases
      slaveServers - the list of slave servers
      rep - the repository object
      metaStore - The metaStore to optionally load from.
      Throws:
      org.pentaho.di.core.exception.KettleXMLException - if any errors occur during the loading of the XML
    • loadRep

      public void loadRep(Repository rep, org.pentaho.metastore.api.IMetaStore metaStore, org.pentaho.di.repository.ObjectId id_jobentry, List<org.pentaho.di.core.database.DatabaseMeta> databases, List<SlaveServer> slaveServers) throws org.pentaho.di.core.exception.KettleException
      Description copied from interface: JobEntryInterface
      This method is called by PDI whenever a job entry needs to read its configuration from a PDI repository. The job entry id given in the arguments should be used as the identifier when using the repository's serialization methods.
      Specified by:
      loadRep in interface JobEntryInterface
      Overrides:
      loadRep in class JobEntryBase
      Parameters:
      rep - the repository object
      metaStore - the MetaStore to use
      id_jobentry - the id of the job entry
      databases - the list of databases
      slaveServers - the list of slave servers
      Throws:
      org.pentaho.di.core.exception.KettleException - if any errors occur during the load
    • saveRep

      public void saveRep(Repository rep, org.pentaho.metastore.api.IMetaStore metaStore, org.pentaho.di.repository.ObjectId id_job) throws org.pentaho.di.core.exception.KettleException
      Description copied from interface: JobEntryInterface
      This method is called by PDI whenever a job entry needs to save its settings to a PDI repository. The repository object passed in as the first argument provides a convenient set of methods for serializing job entry settings. When calling repository serialization methods, job id and job entry id are required. The job id is passed in to saveRep() as an argument, and the job entry id can be obtained by a call to getObjectId() inherited from the base class.
      Specified by:
      saveRep in interface JobEntryInterface
      Overrides:
      saveRep in class JobEntryBase
      Parameters:
      rep - the repository
      metaStore - the MetaStore to use
      id_job - the id_job
      Throws:
      org.pentaho.di.core.exception.KettleException - if any errors occur during the save
    • processRowFile

      public boolean processRowFile(Job parentJob, org.pentaho.di.core.Result result, String realZipfilename, String realWildcard, String realWildcardExclude, String realSourceDirectoryOrFile, String realMovetodirectory, boolean createparentfolder)
    • execute

      public org.pentaho.di.core.Result execute(org.pentaho.di.core.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 addDate, boolean addTime, boolean specifyFormat, String datetimeFormat)
    • 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<org.pentaho.di.core.CheckResultInterface> remarks, JobMeta jobMeta, org.pentaho.di.core.variables.VariableSpace space, Repository repository, org.pentaho.metastore.api.IMetaStore metaStore)
      Description copied from class: JobEntryBase
      Allows JobEntry objects to check themselves for consistency
      Specified by:
      check in interface JobEntryInterface
      Overrides:
      check in class JobEntryBase
      Parameters:
      remarks - List of CheckResult objects indicating consistency status
      jobMeta - the metadata object for the job entry
      space - the variable space to resolve string expressions with variables with
      repository - the repository to load Kettle objects from
      metaStore - the MetaStore to load common elements from
    • 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
    • getStoredSourcePathDepth

      public String getStoredSourcePathDepth()
    • setStoredSourcePathDepth

      public void setStoredSourcePathDepth(String storedSourcePathDepth)
    • moveFilesToDestinationFolder

      public boolean moveFilesToDestinationFolder(org.apache.commons.vfs2.FileObject sourceFileOrFolder, org.apache.commons.vfs2.FileObject fileObjectd, String realMovetodirectory, boolean isSourceDirectory, org.apache.commons.vfs2.FileObject zippedFile)