com.mucommander.job
Class TempOpenWithJob

java.lang.Object
  extended by com.mucommander.job.FileJob
      extended by com.mucommander.job.TransferFileJob
          extended by com.mucommander.job.AbstractCopyJob
              extended by com.mucommander.job.CopyJob
                  extended by com.mucommander.job.TempCopyJob
                      extended by com.mucommander.job.TempOpenWithJob
All Implemented Interfaces:
java.lang.Runnable

public class TempOpenWithJob
extends TempCopyJob

This job copies a file or a set of files to a temporary folder, makes the temporary file(s) read-only and executes them with a specific command. The temporary files are deleted when the JVM terminates.

Author:
Maxence Bernard, Nicolas Rinaudo

Field Summary
 
Fields inherited from class com.mucommander.job.TempCopyJob
tempFiles
 
Fields inherited from class com.mucommander.job.CopyJob
COPY_MODE, currentDestFile, DOWNLOAD_MODE, UNPACK_MODE
 
Fields inherited from class com.mucommander.job.AbstractCopyJob
append, archiveToOptimize, baseDestFolder, defaultFileExistsAction, errorDialogTitle, isOptimizingArchive, newName
 
Fields inherited from class com.mucommander.job.FileJob
APPEND_ACTION, APPEND_TEXT, baseSourceFolder, CANCEL_ACTION, CANCEL_TEXT, currentFile, currentFileIndex, currentFilename, files, FINISHED, INTERRUPTED, mainFrame, nbFiles, NOT_STARTED, PAUSED, progressDialog, RETRY_ACTION, RETRY_TEXT, RUNNING, SKIP_ACTION, SKIP_TEXT
 
Constructor Summary
TempOpenWithJob(ProgressDialog progressDialog, MainFrame mainFrame, AbstractFile fileToExecute, Command command)
          Creates a new TempOpenWithJob that operates on a single file.
TempOpenWithJob(ProgressDialog progressDialog, MainFrame mainFrame, FileSet filesToExecute, Command command)
          Creates a new TempOpenWithJob that operates on a set of files.
 
Method Summary
protected  void jobCompleted()
          This method is called when this job has completed normal execution : all files have been processed without any interruption (without any call to FileJob.interrupt()).
 
Methods inherited from class com.mucommander.job.TempCopyJob
getTemporaryFileName, getTemporaryFolder, processFile
 
Methods inherited from class com.mucommander.job.CopyJob
getStatusString, hasFolderChanged
 
Methods inherited from class com.mucommander.job.AbstractCopyJob
checkForCollision, createDestinationFile, optimizeArchive
 
Methods inherited from class com.mucommander.job.TransferFileJob
closeCurrentInputStream, copyFile, getCurrentFileByteCounter, getCurrentFileSize, getCurrentFileSkippedByteCounter, getFilePercentDone, getThroughputLimit, getTotalByteCounter, getTotalPercentDone, getTotalSkippedByteCounter, isCheckingIntegrity, isIntegrityCheckEnabled, jobPaused, jobResumed, jobStopped, nextFile, setCurrentInputStream, setIntegrityCheckEnabled, setThroughputLimit, skipCurrentFile, tryCopyFile, wasCurrentFileSkipped
 
Methods inherited from class com.mucommander.job.FileJob
addFileJobListener, getCurrentFileIndex, getCurrentFilename, getEffectiveJobTime, getEndDate, getNbFiles, getPausedTime, getPauseStartDate, getStartDate, getState, interrupt, jobStarted, refreshTables, removeFileJobListener, run, selectFileWhenFinished, setAutoUnmark, setPaused, setState, showErrorDialog, showErrorDialog, start, waitForUserResponse
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

TempOpenWithJob

public TempOpenWithJob(ProgressDialog progressDialog,
                       MainFrame mainFrame,
                       AbstractFile fileToExecute,
                       Command command)
Creates a new TempOpenWithJob that operates on a single file.

Parameters:
progressDialog - the ProgressDialog that monitors this job
mainFrame - the MainFrame this job is attached to
fileToExecute - the file to copy to a temporary location and execute
command - the command used to execute the temporary file

TempOpenWithJob

public TempOpenWithJob(ProgressDialog progressDialog,
                       MainFrame mainFrame,
                       FileSet filesToExecute,
                       Command command)
Creates a new TempOpenWithJob that operates on a set of files. Only a single command get executed, operating on all files.

Parameters:
progressDialog - the ProgressDialog that monitors this job
mainFrame - the MainFrame this job is attached to
filesToExecute - the set of files to copy to a temporary location and execute
command - the command used to execute the temporary file
Method Detail

jobCompleted

protected void jobCompleted()
Description copied from class: FileJob
This method is called when this job has completed normal execution : all files have been processed without any interruption (without any call to FileJob.interrupt()).

The call happens after the last call to FileJob.processFile(AbstractFile,Object) is made. This method implementation does nothing but it can be overriden by subclasses to properly complete the job.

Note that this method will NOT be called if a call to FileJob.interrupt() was made before all files were processed.

Overrides:
jobCompleted in class CopyJob


This file is part of muCommander - Copyright (C) 2002-2008 Maxence Bernard