wx.Build.ContentFile Class Reference

Inheritance diagram for wx.Build.ContentFile:

Inheritance graph

List of all members.

Public Member Functions

object Clone ()
int CompareTo (object o)
bool Contains (IBuildProduct file)
 ContentFile (System.Xml.XmlReader reader)
 ContentFile ()
 ContentFile (ContentType type, string filename)
 ContentFile (ContentType type, ContentFileLocation location, string filename)
 ContentFile (ContentFile src)
override bool Equals (object obj)
bool Execute (BuildToolFamilyEnv env, DateTime validityOfBuildSystem)
override int GetHashCode ()
ICollection
< RefToProject
GetProjects ()
System.Xml.Schema.XmlSchema GetSchema ()
ICollection
< IBuildProduct
GetTargets ()
DateTime GetValidity ()
DateTime GetValidityDemand ()
void NormalizeOriginalFileName (string nameOfAValidDirOrFile)
void ReadXml (System.Xml.XmlReader reader)
IFileProducts Replace (IFileProducts oldInstance, IFileProducts replacement)
override string ToString ()
void WriteXml (System.Xml.XmlWriter writer)

Static Public Member Functions

static string ConvertFilenameToBooString (string filename)
static string ConvertFilenameToString (string filename)
static string GetCommonBasePath (string p1, string p2)
static string[] GetCommonDirectories (string fileName1, string fileName2)
static string[] GetDirectories (string fileName)
static bool HasCommonDirectories (string fileName1, string fileName2)
static bool operator!= (ContentFile f1, ContentFile f2)
static bool operator== (ContentFile f1, ContentFile f2)
static string QuoteFileName (string filename)
static string ReplaceRootedPaths (string stringWithFiles)

Properties

string BaseFileName [get]
int Count [get]
string DirectoryName [get]
bool Exists [get]
ContentFiles ExplicitFiles [get]
ContentFile File [get]
string FileName [get]
string FileNameAsBooString [get]
ContentFiles Files [get]
ContentFileLocation Location [get]
string OriginalFileName [get]
string QuotedFileName [get]
ContentType Type [get]


Detailed Description

Designates a build object consisting of a file comprising content of a particular type.

This is of course also a ISingleFileProduct where nothing has to be done in order to create the ContentFile.

Typically, this assumes the designated file to exist and to be located in the local file system. However, you may define some other locations. This will take effect expecially on the Validity.


Constructor & Destructor Documentation

wx.Build.ContentFile.ContentFile ( ContentFile  src  ) 

Copy-CTor

Parameters:
src The source.

wx.Build.ContentFile.ContentFile ( ContentType  type,
ContentFileLocation  location,
string  filename 
)

This will create an instance designating a file at the provided location.

Parameters:
type is the content type of the described file.
filename is the path to the designated file in the local filesystem.
location provides the location of the file, i.e. whether the file is in the local filesystem, the GAC or an installation package.

wx.Build.ContentFile.ContentFile ( ContentType  type,
string  filename 
)

This will create an instance designating a local file.

Parameters:
type is the content type of the described file.
filename is the path to the designated file in the local filesystem.
See also:
ContentFileLocation.LocalFileSystem

wx.Build.ContentFile.ContentFile (  ) 

Default CTor. User only with ReadXml().

See also:
ReadXml

wx.Build.ContentFile.ContentFile ( System.Xml.XmlReader  reader  ) 

Creates an instance. Reads all properties from the argument. This source of information shall have been written by WriteXml().

Parameters:
reader The source
See also:
ReadXml


Member Function Documentation

object wx.Build.ContentFile.Clone (  ) 

int wx.Build.ContentFile.CompareTo ( object  o  ) 

bool wx.Build.ContentFile.Contains ( IBuildProduct  file  ) 

True if this equals or the provided build product.

Parameters:
arg The build product that will be searched

Implements wx.Build.IFileProducts.

static string wx.Build.ContentFile.ConvertFilenameToBooString ( string  filename  )  [static]

Returns the provided filename as string. All contained backslashes and double quotes will be backquoted.

Parameters:
filename The filename that shall be converted.
Returns:

static string wx.Build.ContentFile.ConvertFilenameToString ( string  filename  )  [static]

Returns the provided filename as string. All contained backslashes and double quotes will be backquoted.

Parameters:
filename The filename that shall be converted.
Returns:

override bool wx.Build.ContentFile.Equals ( object  obj  ) 

bool wx.Build.ContentFile.Execute ( BuildToolFamilyEnv  env,
DateTime  validityOfBuildSystem 
)

Simply does nothing because the result, this instance, is not associated with a building step.

static string wx.Build.ContentFile.GetCommonBasePath ( string  p1,
string  p2 
) [static]

Returns the common base directory of both paths. Relative paths will be made absolute using the BuildConfig.RootPath.

Parameters:
p1 Relative or absolute path.
p2 Relative or absolute path.
Returns:

static string [] wx.Build.ContentFile.GetCommonDirectories ( string  fileName1,
string  fileName2 
) [static]

Returns a list of directories designating the deepest common directory containing the files from the argument list.

Parameters:
fileName1 The first file defining common directories
fileName2 The second file defining common dierctories
This will return ["basdir", "subdir"] to the files "\basedir\subdir\subsubdir1\file.ext" and "\basedir\subdir\subsubdir2\file.ext".

The result to the files "C:\basedir\subdir\subsubdir1\file.ext" and "D:\basedir\subdir\subsubdir2\file.ext" will be empty.

Returns:

static string [] wx.Build.ContentFile.GetDirectories ( string  fileName  )  [static]

Returns an array of directory names. This will collect all basenames of directory names of the argument.

Parameters:
pathName The original path that will be divided.
Returns:
Argument "/basedir/subdir/filename.ext" will result into ["basedir", "subdir"]

override int wx.Build.ContentFile.GetHashCode (  ) 

ICollection<RefToProject> wx.Build.ContentFile.GetProjects (  ) 

This returns null because this does not imply build projects.

Implements wx.Build.IBuildProduct.

System.Xml.Schema.XmlSchema wx.Build.ContentFile.GetSchema (  ) 

Returns null as suggested by the framework documentation.

Returns:
null

ICollection<IBuildProduct> wx.Build.ContentFile.GetTargets (  ) 

This instance is the target.

DateTime wx.Build.ContentFile.GetValidity (  ) 

Returns last write time or DateTime.MinValue if this does not exist.

Implements wx.Build.IBuildObject.

DateTime wx.Build.ContentFile.GetValidityDemand (  ) 

Returns last write time or DateTime .MinValue if this does not exist.

Implements wx.Build.IBuildObject.

static bool wx.Build.ContentFile.HasCommonDirectories ( string  fileName1,
string  fileName2 
) [static]

True iff the result of GetCommonDirectories() is not empty.

Parameters:
fileName1 The first file defining common directories
fileName2 The second file defining common dierctories
GetCommonDirectories
Returns:

void wx.Build.ContentFile.NormalizeOriginalFileName ( string  nameOfAValidDirOrFile  ) 

You may use this method to control the form of the file name that will be used to serialize this (the original filename). The argument is a path to an existing file or directory. This will strip a directory information from this path. After that, the original file name will change to something equivalent to the absolute filename (referring to the same file) but now relative to the directory as specified by the argument.

Use this method to prepare content file instance for serialization in such a way that all file names become relative to the same directory.

Parameters:
nameOfAValidDirOrFile The name of an existing file or directory. This name will - if relative - be expanded using the BuildConfig. If this is null, this method will return without any effect. This may also be the name of a not yet existing file. In that case, however, the directory name shall exist.
See also:
OriginalFileName

Exceptions:
System.ArgumentException Will be raised if the argument is neither the path to an existing file nor directory.

Implements wx.Build.IFileProducts.

static bool wx.Build.ContentFile.operator!= ( ContentFile  f1,
ContentFile  f2 
) [static]

Compare referring to FileName, Type, and Location.

Parameters:
f1 File descriptor 1
f2 File descriptor 2
Returns:

static bool wx.Build.ContentFile.operator== ( ContentFile  f1,
ContentFile  f2 
) [static]

Compare referring to FileName, Type, and Location.

Parameters:
f1 File descriptor 1
f2 File descriptor 2
Returns:

static string wx.Build.ContentFile.QuoteFileName ( string  filename  )  [static]

This will quote the argument in such a way that ist can be passed as an option to programs started via the locally used shell interpreter.

Parameters:
filename The filename that will be quoted.
Returns:
A string that contains the argument but quoted according to conventions related to the current platform.

void wx.Build.ContentFile.ReadXml ( System.Xml.XmlReader  reader  ) 

Reads all data from the argument stream.

Parameters:
reader The data source
See also:
WriteXml

Exceptions:
FormatException Will b raise on unexpected format.

IFileProducts wx.Build.ContentFile.Replace ( IFileProducts  oldInstance,
IFileProducts  replacement 
)

Creates a copy where contained file descriptors have been changed. This will be used when projects are transformed e.g. to make a release (c.f. wx.Build.Release.MakeReleaseProject).

A special case occurs if replacement is null. This method can be used in this configuration to remove occurances of a file product term.

Exceptions:
System.Exception May occur, if the replacement is not of the same class as the old instance.
Parameters:
oldInstance The file descriptor that shall be replaced. If the replacement is null, all occurances of this descriptor will be removed.
replacemant The file descriptor that shall be used instead of oldInstance. This may be null. In that case, all occurances of oldInstance will be removed.
Returns:
A copy of this instance where all occurances of oldInstance have been replaced by replacement. The result may be replacement if this instance is equal to oldInstance. The result may be this instance if this is neither equal to oldInstance nor this is a container containing oldInstance.

The result is null if this equals oldInstance and the replacement is null.

Implements wx.Build.IFileProducts.

static string wx.Build.ContentFile.ReplaceRootedPaths ( string  stringWithFiles  )  [static]

All occurances of rooted path names will be made relative to the project root if possible. This will quote all backslashes and double quotes. Thus, you may use the result as a C# or BOO string constant.

Parameters:
stringWithFiles A string containing paths that shall be made relative.
Returns:

override string wx.Build.ContentFile.ToString (  ) 

void wx.Build.ContentFile.WriteXml ( System.Xml.XmlWriter  writer  ) 

Writes the complete internal state into the argument.

Parameters:
writer the destination of the output.
See also:
ReadXml


Property Documentation

string wx.Build.ContentFile.BaseFileName [get]

The base filename of this content file as returned by System.IO.GetFileName().

int wx.Build.ContentFile.Count [get]

This is always 1.

Implements wx.Build.IFileProducts.

string wx.Build.ContentFile.DirectoryName [get]

The directory name of the filename as returned by System.IO.Path.GetDirectoryName().

bool wx.Build.ContentFile.Exists [get]

If this is ContentFileLocation.LocalFileSystem, the result is true iff the designated file exists. Otherwise, this is undefined.

ContentFiles wx.Build.ContentFile.ExplicitFiles [get]

A collection of contained files that are addressed explicitely as instances of ContentFiles or ContentFile.

Implements wx.Build.IFileProducts.

ContentFile wx.Build.ContentFile.File [get]

This returns this ... this is its own file target.

Implements wx.Build.ISingleFileProduct.

string wx.Build.ContentFile.FileName [get]

The filename (in fact the root filename including full directory path information).

string wx.Build.ContentFile.FileNameAsBooString [get]

Returns the original filename as a string that can be used in the BOO export. All contained backslashes and double quotes will be backquoted.

ContentFiles wx.Build.ContentFile.Files [get]

Returns File .

Implements wx.Build.IFileProducts.

ContentFileLocation wx.Build.ContentFile.Location [get]

A location classifier: Specifies whether this is on the local file system or another data source like the internet or the global assembly space.

string wx.Build.ContentFile.OriginalFileName [get]

The original filename that has been passed to the CTor. The original filename is usually relative to the project directory. When serializing this, the original filename will be stored (in contrast to the absolute one).

See also:
NormalizeOriginalFileName

string wx.Build.ContentFile.QuotedFileName [get]

Returns the filename in a form suitable to be passed as part of an option to a program via the relevant shell command. This depends of cource on the current platform.

ContentType wx.Build.ContentFile.Type [get]

The type of the content file.

Implements wx.Build.IFileProducts.


The wx.NET Build System.   (c) 2009-2010 Harald Meyer auf'm Hofe