BaseAddLikeSyntaxCommand Class

Summary

BaseClass for add,update,delete.
graph BT Type-->Base0["BaseCommand"] click Base0 "/Cake.7zip/api/Cake.SevenZip.Commands/BaseCommand" Base0-->Base1["object"] Type-.->Interface0["IHaveArgumentArchive"] click Interface0 "/Cake.7zip/api/Cake.SevenZip.Arguments/IHaveArgumentArchive" Type-.->Interface1["IHaveArgumentFiles"] click Interface1 "/Cake.7zip/api/Cake.SevenZip.Arguments/IHaveArgumentFiles" Type-.->Interface2["IHaveArgumentDirectories"] click Interface2 "/Cake.7zip/api/Cake.SevenZip.Arguments/IHaveArgumentDirectories" Type-.->Interface3["IHaveArgument"] click Interface3 "/Cake.7zip/api/Cake.SevenZip.Arguments/IHaveArgument" Type["BaseAddLikeSyntaxCommand"] class Type type-node Derived0["AddCommand"]-->Type click Derived0 "/Cake.7zip/api/Cake.SevenZip.Commands/AddCommand" Derived1["UpdateCommand"]-->Type click Derived1 "/Cake.7zip/api/Cake.SevenZip.Commands/UpdateCommand" Derived2["DeleteCommand"]-->Type click Derived2 "/Cake.7zip/api/Cake.SevenZip.Commands/DeleteCommand"

Syntax

public abstract class BaseAddLikeSyntaxCommand : BaseCommand, IHaveArgumentArchive, 
    IHaveArgumentFiles, IHaveArgumentDirectories, IHaveArgument

Properties

Name Value Summary
Archive FilePath?
Sets the archive the command operates on.
CommandChar string
Gets the command character. (e.g. "a", "u" or "e"...)
Inherited from BaseCommand
CommandName string
Gets the name of the command. (i.e. "add", "update" or "extract".)
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.

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.
Switches IEnumerable<ISwitch?>
Gets all supported switches.
Inherited from BaseCommand
ThrowOnMissingInputFiles bool
Gets a value indicating whether to throw on missing input files.

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
GitHub Discussion