UpdateCommand Class

Summary

Update older files in the archive and add files that are not already in the archive. (Command: u) Note: the updating of solid .7z archives can be slow, since it can require some re-compression.

The builder is UpdateCommandBuilder.

graph BT Type-->Base0["BaseAddLikeSyntaxCommand"] click Base0 "/api/Cake.SevenZip.Commands/BaseAddLikeSyntaxCommand" Base0-->Base1["BaseCommand"] click Base1 "/api/Cake.SevenZip.Commands/BaseCommand" Base1-->Base2["Object"] Type-.->Interface0["IHaveArgumentArchive"] click Interface0 "/api/Cake.SevenZip.Arguments/IHaveArgumentArchive" Type-.->Interface1["IHaveArgumentFiles"] click Interface1 "/api/Cake.SevenZip.Arguments/IHaveArgumentFiles" Type-.->Interface2["IHaveArgumentDirectories"] click Interface2 "/api/Cake.SevenZip.Arguments/IHaveArgumentDirectories" Type-.->Interface3["IHaveArgument"] click Interface3 "/api/Cake.SevenZip.Arguments/IHaveArgument" Type-.->Interface4["ICommand"] click Interface4 "/api/Cake.SevenZip.Commands/ICommand" Type-.->Interface5["ISupportSwitchIncludeFilenames"] click Interface5 "/api/Cake.SevenZip.Switches/ISupportSwitchIncludeFilenames" Type-.->Interface6["ISupportSwitchCompressionMethod"] click Interface6 "/api/Cake.SevenZip.Switches/ISupportSwitchCompressionMethod" Type-.->Interface7["ISupportSwitchPassword"] click Interface7 "/api/Cake.SevenZip.Switches/ISupportSwitchPassword" Type-.->Interface8["ISupportSwitchRecurseSubdirectories"] click Interface8 "/api/Cake.SevenZip.Switches/ISupportSwitchRecurseSubdirectories" Type-.->Interface9["ISupportSwitchNtSecurityInformation"] click Interface9 "/api/Cake.SevenZip.Switches/ISupportSwitchNtSecurityInformation" Type-.->Interface10["ISupportSwitchNtfsAlternateStreams"] click Interface10 "/api/Cake.SevenZip.Switches/ISupportSwitchNtfsAlternateStreams" Type-.->Interface11["ISupportSwitchCompressFilesOpenForWriting"] click Interface11 "/api/Cake.SevenZip.Switches/ISupportSwitchCompressFilesOpenForWriting" Type-.->Interface12["ISupportSwitchTimestampFromMostRecentFile"] click Interface12 "/api/Cake.SevenZip.Switches/ISupportSwitchTimestampFromMostRecentFile" Type-.->Interface13["ISupportSwitchArchiveType"] click Interface13 "/api/Cake.SevenZip.Switches/ISupportSwitchArchiveType" Type-.->Interface14["ISupportSwitchWorkingDirectory"] click Interface14 "/api/Cake.SevenZip.Switches/ISupportSwitchWorkingDirectory" Type-.->Interface15["ISupportSwitchExcludeFilenames"] click Interface15 "/api/Cake.SevenZip.Switches/ISupportSwitchExcludeFilenames" Type-.->Interface16["ISupportSwitchUpdateOptions"] click Interface16 "/api/Cake.SevenZip.Switches/ISupportSwitchUpdateOptions" Type-.->Interface17["ISupportSwitchSelfExtractingArchive"] click Interface17 "/api/Cake.SevenZip.Switches/ISupportSwitchSelfExtractingArchive" Type-.->Interface18["ISupportSwitchFullyQualifiedFilePaths"] click Interface18 "/api/Cake.SevenZip.Switches/ISupportSwitchFullyQualifiedFilePaths" Type-.->Interface19["ISupportSwitch"] click Interface19 "/api/Cake.SevenZip.Switches/ISupportSwitch" Type["UpdateCommand"] class Type type-node

Syntax

public sealed class UpdateCommand : BaseAddLikeSyntaxCommand, IHaveArgumentArchive, 
    IHaveArgumentFiles, IHaveArgumentDirectories, IHaveArgument, ICommand, 
    ISupportSwitchIncludeFilenames, ISupportSwitchCompressionMethod, ISupportSwitchPassword, 
    ISupportSwitchRecurseSubdirectories, ISupportSwitchNtSecurityInformation, 
    ISupportSwitchNtfsAlternateStreams, ISupportSwitchCompressFilesOpenForWriting, 
    ISupportSwitchTimestampFromMostRecentFile, ISupportSwitchArchiveType, 
    ISupportSwitchWorkingDirectory, ISupportSwitchExcludeFilenames, ISupportSwitchUpdateOptions, 
    ISupportSwitchSelfExtractingArchive, ISupportSwitchFullyQualifiedFilePaths, ISupportSwitch

Attributes

Type Description
NullableContextAttribute
NullableAttribute

Constructors

Name Summary
UpdateCommand()

Properties

Name Value Summary
Archive FilePath
Sets the archive the command operates on.
ArchiveType SwitchArchiveType
Gets or sets the SwitchArchiveType.
CommandChar string
Gets the command character. (e.g. "a", "u" or "e"...)
CommandName string
Gets the name of the command. (i.e. "add", "update" or "extract".)
CompressFilesOpenForWriting SwitchCompressFilesOpenForWriting
Gets or sets the SwitchCompressFilesOpenForWriting.
CompressionMethod SwitchCompressionMethod
Gets or sets the compression method.
Directories DirectoryPathCollection
Gets or sets the list of Directories the command operates on.

For add and update, adding a directory will add the directory itself to the root of the archive including everything in it.

DirectoryContents DirectoryPathCollection
Gets or sets the list of Directory-contents the command operates on.

For add and update, adding a directory this way will add the files of the directory to the root of the archive but not the directory itself.

ExcludeFilenames SwitchExcludeFilenameCollection
Gets or sets the SwitchExcludeFilenameCollection.
Files FilePathCollection
Gets or sets the list of files this command operates on. These are single files. (I.e. to add to, or to remove from the archive).

For add and update, single files from the file-system will always be placed directly into the archive without any directory-structure.

Setting Files like this in add/update:
Files = new[] {
  new FilePath("C:\\some\\place\\a.txt"),
  new FilePath("C:\\some\\other\\place\\b.txt"),
  new FilePath("C:\\a\\totally\\different\\place\\c.txt")
};
Will result in an archive:
Archive.zip
- a.txt
- b.txt
- c.txt
without any directory structure.
FullyQualifiedFilePaths SwitchFullyQualifiedFilePaths
Gets or sets the SwitchFullyQualifiedFilePaths.
IncludeFilenames SwitchIncludeFilenameCollection
Gets or sets the SwitchIncludeFilenameCollection.
NtfsAlternateStreams SwitchNtfsAlternateStreams
Gets or sets the SwitchNtfsAlternateStreams.
NtSecurityInformation SwitchNtSecurityInformation
Gets or sets the SwitchNtSecurityInformation.
Password SwitchPassword
Gets or sets the SwitchPassword.
RecurseSubdirectories SwitchRecurseSubdirectories
Gets or sets the SwitchRecurseSubdirectories.
SelfExtractingArchive SwitchSelfExtractingArchive
Gets or sets the SwitchSelfExtractingArchive.
Switches IEnumerable<ISwitch>
Gets all supported switches.
ThrowOnMissingInputFiles bool
Gets a value indicating whether to throw on missing input files.
TimestampFromMostRecentFile SwitchSetTimestampFromMostRecentFile
Gets or sets the SwitchSetTimestampFromMostRecentFile.
UpdateOptions SwitchUpdateOptions
Gets or sets the SwitchUpdateOptions.
WorkingDirectory SwitchWorkingDirectory
Gets or sets the SwitchWorkingDirectory.

Methods

Name Value Summary
BuildArgumentParams(ProcessArgumentBuilder) void
adds only the arguments to the builder. (i.e. Archive, files, directories).
BuildArguments(ProcessArgumentBuilder) void
Builds the arguments.
Inherited from BaseCommand

Extension Methods

Name Value Summary
Dump<UpdateCommand>() string
Get a basic string representation of specified object.
Requires the Cake.Incubator addin
IsIn<UpdateCommand>(UpdateCommand[]) bool
Checks if the source is contained in a list
Requires the Cake.Incubator addin
NotNull<UpdateCommand>(string) void
Throws an exception if the specified parameter's value is null.
Requires the Cake.Ftp addin
NotNull<UpdateCommand>(string) void
Throws an exception if the specified parameter's value is null.
Requires the Cake.Issues addin
ThrowIfNull<UpdateCommand>(string, string) T
Throws a System.ArgumentNullException with a specific message if the value is null, otherwise returns the value
Requires the Cake.Incubator addin
ThrowIfNull<UpdateCommand>(string) T
Throws a System.ArgumentNullException if the value is null, otherwise returns the value
Requires the Cake.Incubator addin
ToDictionary() IDictionary<string, object>
Requires the Cake.DeployParams addin
ToStringWithNullMarkup() string
Returns the string value or a Not set> markup suitable for Spectre.Console.
Requires the Cake.Issues addin