///////////////////////////////////////////////////////////////////////////// public static void AddFilesToProject( InputFile srcFile, IEnumerable<string> resultFiles, IExtSvcProvider service ) { // ****** var allPossibleFiles = GetPossibleFileNames( srcFile, resultFiles ); var filesThatExist = DiscoverGeneratedFiles( srcFile, resultFiles ); var filesThatDontExist = allPossibleFiles.Except( filesThatExist ); // ****** service.AddFilesToProject( filesThatExist ); service.RemoveFilesFromProject( filesThatDontExist ); //// ****** //var sb = new StringBuilder { }; // //sb.Append( "Files that are in, or have just been added to project:\r\n" ); //foreach( var name in filesThatExist ) { // sb.AppendFormat( " {0}\r\n", name ); //} // //sb.Append( "Files that have been removed from the project:\r\n" ); //foreach( var name in filesThatDontExist ) { // sb.AppendFormat( " {0}\r\n", name ); //} // //// ****** //return sb.ToString(); }
///////////////////////////////////////////////////////////////////////////// public Replace( IExtSvcProvider reporter, string basePath, ERCommand erCmd ) { this.reporter = reporter; this.basePath = basePath; //this.erCmd = erCmd; this.cmdLineArgs = erCmd.CmdLine; }
///////////////////////////////////////////////////////////////////////////// public ERules( string startPath, IExtSvcProvider service ) { this.service = service; //this.Report = report; Initialize( startPath ); }
///////////////////////////////////////////////////////////////////////////// public void AssureData( IExtSvcProvider reporter, string fileName ) { Id = Id?.Trim().ToLower() ?? string.Empty; OutputExtension = OutputExtension.AssureLeadingDot(); FilePatternRx = FilePatternRx?.Trim() ?? string.Empty; RunNext = RunNext?.Trim() ?? string.Empty; if( null == Commands ) { Commands = new List<ERCommand> { }; } else { Commands.ForEach( erCmd => erCmd.AssureData( reporter, fileName ) ); } }
///////////////////////////////////////////////////////////////////////////// public void AssureData( IExtSvcProvider service, string fileName ) { ExecutableName = ExecutableName?.Trim() ?? string.Empty; SaveExtension = SaveExtension.AssureLeadingDot(); if( null == CmdLine ) { CmdLine = new List<string> { }; } // // Action, ActionEnum // ActionEnum ae; if( Enum.TryParse<ActionEnum>( Action, true, out ae ) ) { ActionEnum = ae; } else { service.SendWarning( fileName, $"\"{Action ?? ""}\" is not a valid action name, using \"Default\"", -1, -1 ); } }
///////////////////////////////////////////////////////////////////////////// public RunOne( InputFile inputFile, IExtSvcProvider service ) { this.input = inputFile; this.service = service; }