Class Copy
java.lang.Object
org.nuxeo.connect.update.task.standalone.commands.AbstractCommand
org.nuxeo.connect.update.task.standalone.commands.Copy
- All Implemented Interfaces:
org.nuxeo.connect.update.task.Command
- Direct Known Subclasses:
Append
,ParameterizedCopy
Copy a file to the given target directory or file. If the target is a directory the file name is preserved. If the
target file exists it will be replaced if overwrite is true otherwise the command validation fails. If the source
file is a directory, then the files it contents will be recursively copied.
If md5 is set then the copy command will be validated only if the target file has the same md5 as the one specified in the command.
The Copy command has as inverse either Delete either another Copy command. If the file was copied without overwriting then Delete is the inverse (with a md5 set to the one of the copied file). If the file was overwritten then the inverse of Copy command is another copy command with the md5 to the one of the copied file and the overwrite flag to true. The file to copy will be the backup of the overwritten file.
- Author:
- Bogdan Stefanescu
-
Field Summary
Modifier and TypeFieldDescriptionprotected boolean
protected File
The source file.static final String
protected static final String
protected static final String
protected String
protected boolean
protected boolean
protected File
The target file.Fields inherited from class org.nuxeo.connect.update.task.standalone.commands.AbstractCommand
fail, guardVars, id, ignore
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionprotected org.nuxeo.connect.update.task.Command
doCopy
(org.nuxeo.connect.update.task.Task task, Map<String, String> prefs, File fileToCopy, File dst, boolean doOverwrite) protected org.nuxeo.connect.update.task.Command
Override to implement command actionsprotected void
doValidate
(org.nuxeo.connect.update.task.Task task, org.nuxeo.connect.update.ValidationStatus status) Override to implement validation.protected String
getContentToCopy
(File fileToCopy, Map<String, String> prefs) Override in subclass to parameterize content.void
Must be implemented to initialize the command arguments from an XML fragment.void
writeTo
(org.nuxeo.connect.update.xml.XmlWriter writer) Methods inherited from class org.nuxeo.connect.update.task.standalone.commands.AbstractCommand
getId, ignore, initialize, isPostInstall, run, setFail, setIgnore, setPackageUpdateService, validate
-
Field Details
-
ID
- See Also:
-
LAUNCHER_JAR
- See Also:
-
LAUNCHER_CHANGED_PROPERTY
- See Also:
-
file
The source file. It can be a file or a directory. -
tofile
The target file. It can be a directory since 5.5 -
overwrite
protected boolean overwrite -
md5
-
removeOnExit
protected boolean removeOnExit -
append
protected boolean append- Since:
- 5.5
-
-
Constructor Details
-
Copy
-
Copy
public Copy() -
Copy
-
Copy
-
Copy
-
-
Method Details
-
doRun
protected org.nuxeo.connect.update.task.Command doRun(org.nuxeo.connect.update.task.Task task, Map<String, String> prefs) throws org.nuxeo.connect.update.PackageExceptionDescription copied from class:AbstractCommand
Override to implement command actions- Specified by:
doRun
in classAbstractCommand
- Returns:
- Rollback command
- Throws:
org.nuxeo.connect.update.PackageException
-
doCopy
protected org.nuxeo.connect.update.task.Command doCopy(org.nuxeo.connect.update.task.Task task, Map<String, String> prefs, File fileToCopy, File dst, boolean doOverwrite) throws org.nuxeo.connect.update.PackageException- Throws:
org.nuxeo.connect.update.PackageException
- Since:
- 5.5
-
getContentToCopy
protected String getContentToCopy(File fileToCopy, Map<String, String> prefs) throws org.nuxeo.connect.update.PackageExceptionOverride in subclass to parameterize content.- Returns:
- Content to put in destination file. See
append
parameter to determine if returned content is replacing or appending to destination file. - Throws:
org.nuxeo.connect.update.PackageException
- Since:
- 5.5
-
doValidate
protected void doValidate(org.nuxeo.connect.update.task.Task task, org.nuxeo.connect.update.ValidationStatus status) throws org.nuxeo.connect.update.PackageException Description copied from class:AbstractCommand
Override to implement validation.- Specified by:
doValidate
in classAbstractCommand
- Parameters:
task
- The task being validatedstatus
- UseValidationStatus.addError(String)
orValidationStatus.addWarning(String)
to provide validation error/warning messages- Throws:
org.nuxeo.connect.update.PackageException
-
readFrom
Description copied from class:AbstractCommand
Must be implemented to initialize the command arguments from an XML fragment.- Specified by:
readFrom
in classAbstractCommand
- Throws:
org.nuxeo.connect.update.PackageException
-
writeTo
public void writeTo(org.nuxeo.connect.update.xml.XmlWriter writer)
-