public virtual void Deploy(IDirectory source) { if (source == null) { throw new ArgumentNullException("source"); } if (RemoveEmptyDirectory) { source.RemoveEmptyDirectories(); } if (WebConfigTransformers.Count > 0) { WebConfigHelper config; var file = source.FindFile(WebConfigFileName); if (file == null) { file = source.CreateFile(WebConfigFileName); config = WebConfigHelper.New(); } else { config = WebConfigHelper.Load(file.ReadAsString()); } WebConfigTransformers.Transform(config); file.WriteString(config.ToString()); } DeployCore(source); }
public static IFile CreateFileFromText(this IDirectory directory, string name, string text) { if (directory == null) { throw new ArgumentNullException("directory"); } var file = directory.CreateFile(name); using (StreamWriter writer = new StreamWriter(file.StreamProvider.OpenWrite())) { writer.Write(text); } return(file); }
/// <summary> /// This will return a file location whether or not it exists /// </summary> /// <param name="directory"></param> /// <param name="fileName"></param> /// <returns></returns> public static IFile GetFile(this IDirectory directory, string fileName) { return(directory.GetExistingFile(fileName) ?? directory.CreateFile(fileName)); }
private static IFile CreateFile(IDirectory dir, string fileName) => dir.CreateFile(new PathPart(fileName));