public static List <IFile> SearchFilesPath(IFile root, string path) { var condition = new FilePathCondition(); condition.Path = path; return(SearchFile.Search(root, condition)); }
/// <summary> /// /// </summary> /// <param name="inputProject"></param> /// <returns> path to .exe file </returns> public Tuple <string, LogProcess> Process(IProject inputProject) { List <IFile> listCsFiles = SearchFile.Search(inputProject.RootFolder, new CsFileSearchCondition()); List <CsClass> screens = new List <CsClass>(); List <CsFile> listCsFilesNeedToModify = new List <CsFile>(); foreach (IFile file in listCsFiles) { CsFileAnalyzer csFileAnalyzer = new CsFileAnalyzer(); CsFile csFile = (CsFile)file; csFileAnalyzer.CsFile = csFile; csFileAnalyzer.Process(); foreach (CsClass csClass in csFile.Classes) { if (csClass.BaseOnClass != null && ( csClass.BaseOnClass.Contains(CsClass.WINDOW_CLASS) | csClass.BaseOnClass.Contains(CsClass.FORM_CLASS))) { screens.Add(csClass); if (!listCsFilesNeedToModify.Contains(file)) { listCsFilesNeedToModify.Add((CsFile)file); } } } } ModifyProject(inputProject, screens, listCsFilesNeedToModify); return(RebuildProject(inputProject)); }
public static CsprojFile SearchCsprojFile(IFile root) { List <IFile> files = SearchFile.Search(root, new CsprojSearchCondition()); if (files == null | files.Count != 1) { logger.Error("get " + files.Count + " .csproj in project input: " + files); return(null); } return((CsprojFile)files[0]); }