public static OpenLog ( string operationName, string timeStamp = "N/A" ) : void | ||
operationName | string | |
timeStamp | string | |
return | void |
public static void DoWork() { string timeStamp = DateTime.Now.ToString("yyyyMMdd_hhmmss"); csvOutputFileSpec = Environment.CurrentDirectory + "\\ManageMaintenanceBanners-" + timeStamp + Constants.CSVExtension; csvOutputFileHasHeader = System.IO.File.Exists(csvOutputFileSpec); Logger.OpenLog("ManageMaintenanceBanners", timeStamp); Logger.LogInfoMessage(String.Format("Scan starting {0}", DateTime.Now.ToString()), true); BannerOperation operationToPerform = BannerOperation.None; if (!ReadInputOptions(ref operationToPerform)) { System.Console.ForegroundColor = System.ConsoleColor.Yellow; Logger.LogInfoMessage("Operation aborted by user.", true); Logger.LogInfoMessage(String.Format("Scan aborted {0}", DateTime.Now.ToString()), true); Logger.CloseLog(); System.Console.ResetColor(); return; } string cdnAbsoluteUrl = String.Empty; if (operationToPerform == BannerOperation.Add) { if (!ReadCdnUrl(ref cdnAbsoluteUrl)) { System.Console.ForegroundColor = System.ConsoleColor.Red; Logger.LogErrorMessage("CDN Library Folder Url was not specified."); Logger.LogInfoMessage(String.Format("Scan aborted {0}", DateTime.Now.ToString()), true); Logger.CloseLog(); System.Console.ResetColor(); return; } } string inputFileSpec = Environment.CurrentDirectory + "\\" + Constants.UsageReport_SitesInputFileName; if (!System.IO.File.Exists(inputFileSpec)) { System.Console.ForegroundColor = System.ConsoleColor.Red; Logger.LogErrorMessage(String.Format("Input file {0} is not available", inputFileSpec), true); Logger.LogInfoMessage(String.Format("Scan aborted {0}", DateTime.Now.ToString()), true); Logger.CloseLog(); System.Console.ResetColor(); return; } string[] siteUrls = Helper.ReadInputFile(inputFileSpec, false); Logger.LogInfoMessage(String.Format("Preparing to process a total of {0} sites ...", siteUrls.Length), true); foreach (string siteUrl in siteUrls) { ProcessSite(siteUrl, operationToPerform, cdnAbsoluteUrl); } Logger.LogInfoMessage(String.Format("Scan completed {0}", DateTime.Now.ToString()), true); Logger.CloseLog(); }
public static void DoWork() { string timeStamp = DateTime.Now.ToString("yyyyMMdd_hhmmss"); string setupInputFile = string.Empty; Logger.OpenLog("DeleteSetupFiles", timeStamp); //if (!ShowInformation()) // return; if (!ReadInputFile(ref setupInputFile)) { System.Console.ForegroundColor = System.ConsoleColor.Red; Logger.LogErrorMessage("Setup Files input file is not valid or available. So, Operation aborted!"); Logger.LogErrorMessage("Please enter path like: E.g. C:\\<Working Directory>\\<InputFile>.csv"); System.Console.ResetColor(); return; } string inputFileSpec = setupInputFile; if (System.IO.File.Exists(inputFileSpec)) { Logger.LogInfoMessage(String.Format("Scan starting {0}", DateTime.Now.ToString()), true); IEnumerable <MissingSetupFilesInput> objInputMissingSetupFiles = ImportCSV.ReadMatchingColumns <MissingSetupFilesInput>(inputFileSpec, Constants.CsvDelimeter); if (objInputMissingSetupFiles != null && objInputMissingSetupFiles.Any()) { try { string csvFile = Environment.CurrentDirectory + @"\" + Constants.DeleteSetupFileStatus + timeStamp + Constants.CSVExtension; if (System.IO.File.Exists(csvFile)) { System.IO.File.Delete(csvFile); } Logger.LogInfoMessage(String.Format("Preparing to delete a total of {0} files ...", objInputMissingSetupFiles.Cast <Object>().Count()), true); foreach (MissingSetupFilesInput missingFile in objInputMissingSetupFiles) { DeleteMissingFile(missingFile, csvFile); } } catch (Exception ex) { Logger.LogErrorMessage(String.Format("[DeleteSetupFiles: DoWork] failed: Error={0}", ex.Message), true); ExceptionCsv.WriteException(Constants.NotApplicable, Constants.NotApplicable, Constants.NotApplicable, "SetupFile", ex.Message, ex.ToString(), "DoWork", ex.GetType().ToString(), "Exception occured while reading input file"); } } else { Logger.LogInfoMessage("There is nothing to delete from the '" + inputFileSpec + "' File ", true); } Logger.LogInfoMessage(String.Format("Scan Completed {0}", DateTime.Now.ToString()), true); } else { Logger.LogErrorMessage(String.Format("[DeleteSetupFiles: DoWork]: Input file {0} is not available", inputFileSpec), true); } Logger.CloseLog(); }
public static void DoWork() { Logger.OpenLog("DeleteMissingEventReceivers"); Logger.LogInfoMessage(String.Format("Scan starting {0}", DateTime.Now.ToString()), true); string inputFileSpec = Environment.CurrentDirectory + "\\" + Constants.MissingEventReceiversInputFileName; //Read Input file IEnumerable <MissingEventReceiversInput> objInputMissingEventReceivers = ImportCSV.ReadMatchingColumns <MissingEventReceiversInput>(inputFileSpec, Constants.CsvDelimeter); if (objInputMissingEventReceivers != null) { try { Logger.LogInfoMessage(String.Format("Preparing to delete a total of {0} event receivers ...", objInputMissingEventReceivers.Cast <Object>().Count()), true); foreach (MissingEventReceiversInput MissingEventReceiver in objInputMissingEventReceivers) { DeleteMissingEventReceiver(MissingEventReceiver); } } catch (Exception ex) { Logger.LogErrorMessage(String.Format("DeleteMissingEventReceivers() failed: Error={0}", ex.Message), true); } Logger.LogInfoMessage(String.Format("Scan completed {0}", DateTime.Now.ToString()), true); } else { Logger.LogInfoMessage("There is nothing to delete from the '" + inputFileSpec + "' File ", true); } Logger.CloseLog(); }
public static void DoWork() { string timeStamp = DateTime.Now.ToString("yyyyMMdd_hhmmss"); csvOutputFileSpec = Environment.CurrentDirectory + "\\ResetDeviceChannelMappingFiles-" + timeStamp + Constants.CSVExtension; csvOutputFileHasHeader = System.IO.File.Exists(csvOutputFileSpec); Logger.OpenLog("ResetDeviceChannelMappingFiles", timeStamp); Logger.LogInfoMessage(String.Format("Scan starting {0}", DateTime.Now.ToString()), true); string inputFileSpec = String.Empty; if (!ReadInputFile(ref inputFileSpec)) { System.Console.ForegroundColor = System.ConsoleColor.Red; Logger.LogErrorMessage(String.Format("Input file [{0}] does not exist.", inputFileSpec), true); Logger.LogInfoMessage(String.Format("Scan aborted {0}", DateTime.Now.ToString()), true); Logger.CloseLog(); System.Console.ResetColor(); return; } // The Locked Master Pages input file is essentially a filtered instance of the Missing Setup Files input file. IEnumerable <LockedMasterPageFilesInput> objInputLockedMasterPageFiles = ImportCSV.ReadMatchingColumns <LockedMasterPageFilesInput>(inputFileSpec, Constants.CsvDelimeter); if (objInputLockedMasterPageFiles == null || objInputLockedMasterPageFiles.Count() == 0) { System.Console.ForegroundColor = System.ConsoleColor.Red; Logger.LogErrorMessage(String.Format("Input file [{0}] is empty.", inputFileSpec), true); Logger.LogInfoMessage(String.Format("Scan aborted {0}", DateTime.Now.ToString()), true); Logger.CloseLog(); System.Console.ResetColor(); return; } Logger.LogInfoMessage(String.Format("Preparing to process a total of {0} master page files ...", objInputLockedMasterPageFiles.Count()), true); try { foreach (LockedMasterPageFilesInput masterPageFile in objInputLockedMasterPageFiles) { ResetMappingFile(masterPageFile); } } catch (Exception ex) { Logger.LogErrorMessage(String.Format("ResetDeviceChannelMappingFiles() failed: Error={0}", ex.Message), true); ExceptionCsv.WriteException( Constants.NotApplicable, Constants.NotApplicable, Constants.NotApplicable, "MappingFile", ex.Message, ex.ToString(), "DoWork", ex.GetType().ToString(), "Exception occured while processing input file." ); } Logger.LogInfoMessage(String.Format("Scan completed {0}", DateTime.Now.ToString()), true); Logger.CloseLog(); }
public static void DoWork() { string timeStamp = DateTime.Now.ToString("yyyyMMdd_hhmmss"); csvOutputFileSpec = Environment.CurrentDirectory + "\\GenerateSecurityGroupReport-" + timeStamp + Constants.CSVExtension; csvOutputFileHasHeader = System.IO.File.Exists(csvOutputFileSpec); Logger.OpenLog("GenerateSecurityGroupReport", timeStamp); Logger.LogInfoMessage(String.Format("Scan starting {0}", DateTime.Now.ToString()), true); string[] securityGroups = new string[0]; string securityGroupsInputFileSpec = Environment.CurrentDirectory + "\\" + Constants.SecurityGroupsInputFileName; if (!System.IO.File.Exists(securityGroupsInputFileSpec)) { System.Console.ForegroundColor = System.ConsoleColor.Red; Logger.LogErrorMessage(String.Format("Input file {0} is not available", securityGroupsInputFileSpec), true); Logger.LogInfoMessage(String.Format("Scan aborted {0}", DateTime.Now.ToString()), true); Logger.CloseLog(); System.Console.ResetColor(); return; } securityGroups = Helper.ReadInputFile(securityGroupsInputFileSpec, false); if (securityGroups.Length == 0) { System.Console.ForegroundColor = System.ConsoleColor.Red; Logger.LogErrorMessage(String.Format("Input file {0} is empty", securityGroupsInputFileSpec), true); Logger.LogInfoMessage(String.Format("Scan aborted {0}", DateTime.Now.ToString()), true); Logger.CloseLog(); System.Console.ResetColor(); return; } Logger.LogInfoMessage(String.Format("Loaded a total of {0} security groups ...", securityGroups.Length), true); string inputFileSpec = Environment.CurrentDirectory + "\\" + Constants.UsageReport_SitesInputFileName; if (!System.IO.File.Exists(inputFileSpec)) { System.Console.ForegroundColor = System.ConsoleColor.Red; Logger.LogErrorMessage(String.Format("Input file {0} is not available", inputFileSpec), true); Logger.LogInfoMessage(String.Format("Scan aborted {0}", DateTime.Now.ToString()), true); Logger.CloseLog(); System.Console.ResetColor(); return; } string[] siteUrls = Helper.ReadInputFile(inputFileSpec, false); Logger.LogInfoMessage(String.Format("Preparing to scan a total of {0} sites ...", siteUrls.Length), true); foreach (string siteUrl in siteUrls) { ProcessSite(siteUrl, securityGroups); } Logger.LogInfoMessage(String.Format("Scan completed {0}", DateTime.Now.ToString()), true); Logger.CloseLog(); }
public static void DoWork() { outputPath = Environment.CurrentDirectory; string webUrl = string.Empty; string serverRelativePageUrl = string.Empty; string webPartID = string.Empty; string timeStamp = DateTime.Now.ToString("yyyyMMdd_hhmmss"); //Trace Log TXT File Creation Command Logger.OpenLog("WebpartProperties", timeStamp); System.Console.ForegroundColor = System.ConsoleColor.Cyan; System.Console.WriteLine("Please enter Web Url : "); System.Console.ResetColor(); webUrl = System.Console.ReadLine().ToLower(); if (string.IsNullOrEmpty(webUrl)) { Logger.LogErrorMessage("[WebpartProperties: DoWork]WebUrl should not be empty or null. Operation aborted...", true); return; } System.Console.ForegroundColor = System.ConsoleColor.Cyan; System.Console.WriteLine("Please enter Server Relative PageUrl (E:g- /sites/DTTesting/SitePages/WebPartPage.aspx): "); System.Console.ResetColor(); serverRelativePageUrl = System.Console.ReadLine().ToLower(); if (string.IsNullOrEmpty(serverRelativePageUrl)) { Logger.LogErrorMessage("[WebpartProperties: DoWork]ServerRelative PageUrl should not be empty or null. Operation aborted...", true); return; } System.Console.ForegroundColor = System.ConsoleColor.Cyan; System.Console.WriteLine("Please enter WebPart ID : "); System.Console.ResetColor(); webPartID = System.Console.ReadLine().ToLower(); if (string.IsNullOrEmpty(webPartID)) { Logger.LogErrorMessage("[WebpartProperties: DoWork]WebPart ID should not be empty or null. Operation aborted...", true); return; } Logger.LogInfoMessage(String.Format("Process started {0}", DateTime.Now.ToString()), true); try { GetWebPartProperties(serverRelativePageUrl, webPartID, webUrl, outputPath); } catch (Exception ex) { ExceptionCsv.WriteException(Constants.NotApplicable, Constants.NotApplicable, Constants.NotApplicable, "WebPartProperties", ex.Message, ex.ToString(), "WebPartProperties: DoWork()", ex.GetType().ToString()); System.Console.ForegroundColor = System.ConsoleColor.Red; Logger.LogErrorMessage("[WebpartProperties: DoWork]. Exception Message: " + ex.Message, true); System.Console.ResetColor(); } Logger.LogInfoMessage(String.Format("Process completed {0}", DateTime.Now.ToString()), true); Logger.CloseLog(); }
public static void DoWork() { try { Logger.OpenLog("DeleteMissingWorkflowAssociations"); System.Console.WriteLine("Enter the path of input file PreMT_MissingWorkflowAssociations.csv"); string filePath = System.Console.ReadLine(); if (string.IsNullOrEmpty(filePath) || !System.IO.Directory.Exists(filePath)) { Logger.LogWarningMessage("Input FilePath '" + filePath + "' is not valid", true); filePath = Environment.CurrentDirectory; Logger.LogInfoMessage("Correct Input FilePath is not provided so it changed to current environment '" + filePath + "'", true); } Logger.LogInfoMessage(String.Format("Scan starting {0}", DateTime.Now.ToString()), true); string inputFileSpec = filePath + "\\" + Constants.MissingWorkflowAssociationsInputFileName; if (System.IO.File.Exists(inputFileSpec)) { IEnumerable <MissingWorkflowAssociationsInput> objInputMissingWorkflowAssociations = ImportCSV.ReadMatchingColumns <MissingWorkflowAssociationsInput>(inputFileSpec, Constants.CsvDelimeter); if (objInputMissingWorkflowAssociations != null) { try { Logger.LogInfoMessage(String.Format("\nPreparing to delete a total of {0} files ...", objInputMissingWorkflowAssociations.Cast <Object>().Count()), true); foreach (MissingWorkflowAssociationsInput missingFile in objInputMissingWorkflowAssociations) { DeleteMissingFile(missingFile); } } catch (Exception ex) { Logger.LogErrorMessage(String.Format("DeleteMissingWorkflowAssociationFiles() failed: Error={0}", ex.Message), true); } Logger.LogInfoMessage(String.Format("Scan completed {0}", DateTime.Now.ToString()), true); } else { Logger.LogInfoMessage("There is nothing to delete from the '" + inputFileSpec + "' File ", true); } } else { Logger.LogErrorMessage("The input file " + inputFileSpec + " is not present", true); } } catch (Exception ex) { Logger.LogErrorMessage(String.Format("DeleteMissingWorkflowAssociationFiles() failed: Error={0}", ex.Message), true); } Logger.CloseLog(); }
public static void DoWork() { Logger.OpenLog("GenerateSiteCollectionReport"); Logger.LogInfoMessage(String.Format("Preparing to generate report ..."), true); List <SiteEntity> sites = GetAllSites(); GenerateReportFile(sites); Logger.LogInfoMessage(String.Format("Report completed at {0}", DateTime.Now.ToString()), true); Logger.CloseLog(); }
public static void DoWork() { string GenSiteColFileName = outputPath + @"\" + Constants.GenSiteCollectionFileName + DateTime.Now.ToString("yyyyMMdd_hhmmss") + Constants.CSVExtension; string timeStamp = DateTime.Now.ToString("yyyyMMdd_hhmmss"); Logger.OpenLog("GenerateSiteCollectionReport", timeStamp); List <SiteEntity> sites = GetAllSites(); GenerateReportFile(sites, GenSiteColFileName); Logger.LogInfoMessage(String.Format("Report completed at {0}", DateTime.Now.ToString()), true); Logger.CloseLog(); }
/// <summary> /// This method reports on the usage of custom master pages. /// /// General Approach: /// - disable site feature: V4VisualUpgrade /// - note: the feature deactivator processes MPs of all child webs /// - process webs /// - delete custom hidden list: Lists/RedirectURL /// - disable web feature: Redirect Url List /// - disable web features: custom Master Pages (6) /// - delete custom master page files /// </summary> public static void DoWork() { Logger.OpenLog("GenerateNonDefaultMasterPageUsageReport"); Logger.LogInfoMessage(String.Format("Scan starting {0}", DateTime.Now.ToString()), true); string inputFileSpec = Environment.CurrentDirectory + "\\" + Constants.UsageReport_SitesInputFileName; string[] siteUrls = Helper.ReadInputFile(inputFileSpec, false); Logger.LogInfoMessage(String.Format("Preparing to scan a total of {0} sites ...", siteUrls.Length), true); foreach (string siteUrl in siteUrls) { ProcessSite(siteUrl); } Logger.LogInfoMessage(String.Format("Scan completed {0}", DateTime.Now.ToString()), true); Logger.CloseLog(); }
public static void DoWork() { Logger.OpenLog("GenerateColumnAndTypeUsageReport"); Logger.LogInfoMessage(String.Format("Scan starting {0}", DateTime.Now.ToString()), true); string contentTypesInputFileSpec = Environment.CurrentDirectory + "\\" + Constants.UsageReport_ContentTypesInputFileName; string[] contentTypeRows = Helper.ReadInputFile(contentTypesInputFileSpec, true); Logger.LogInfoMessage(String.Format("Loaded {0} content type definitions ...", contentTypeRows.Length), true); List <ContentTypeSpec> contentTypes = new List <ContentTypeSpec>(); foreach (string s in contentTypeRows) { string[] arr = s.Split(','); contentTypes.Add(new ContentTypeSpec(arr[0], arr[1])); } string siteColumnsInputFileSpec = Environment.CurrentDirectory + "\\" + Constants.UsageReport_SiteColumnsInputFileName; string[] siteColumnRows = Helper.ReadInputFile(siteColumnsInputFileSpec, true); Logger.LogInfoMessage(String.Format("Loaded {0} site column definitions ...", siteColumnRows.Length), true); List <SiteColumnSpec> siteColumns = new List <SiteColumnSpec>(); foreach (string s in siteColumnRows) { string[] arr = s.Split(','); siteColumns.Add(new SiteColumnSpec(arr[0], arr[1])); } string inputFileSpec = Environment.CurrentDirectory + "\\" + Constants.UsageReport_SitesInputFileName; string[] siteUrls = Helper.ReadInputFile(inputFileSpec, false); Logger.LogInfoMessage(String.Format("Preparing to scan a total of {0} sites ...", siteUrls.Length), true); foreach (string siteUrl in siteUrls) { ProcessSite(siteUrl, contentTypes, siteColumns); } Logger.LogInfoMessage(String.Format("Scan completed {0}", DateTime.Now.ToString()), true); Logger.CloseLog(); }
public static void DoWork() { string timeStamp = DateTime.Now.ToString("yyyyMMdd_hhmmss"); string NonDefMasterFileName = outputPath + @"\" + Constants.NonDefaultMasterPageFileName + timeStamp + Constants.CSVExtension; Logger.OpenLog("GenerateNonDefaultMasterPageUsageReport", timeStamp); if (!ShowInformation()) { return; } Logger.LogInfoMessage(String.Format("Scan starting {0}", DateTime.Now.ToString()), true); if (!System.IO.File.Exists(NonDefMasterFileName)) { headermasterPage = false; } else { headermasterPage = true; } string inputFileSpec = Environment.CurrentDirectory + "\\" + Constants.UsageReport_SitesInputFileName; if (System.IO.File.Exists(inputFileSpec)) { string[] siteUrls = Helper.ReadInputFile(inputFileSpec, false); Logger.LogInfoMessage(String.Format("Preparing to scan a total of {0} sites ...", siteUrls.Length), true); foreach (string siteUrl in siteUrls) { ProcessSite(siteUrl, NonDefMasterFileName); } Logger.LogSuccessMessage(String.Format("[GenerateNonDefaultMasterPageUsageReport] Usage report is exported to the file {0}", NonDefMasterFileName), true); } else { Logger.LogErrorMessage(String.Format("[GenerateNonDefaultMasterPageUsageReport] Input file {0} is not available", inputFileSpec), true); } Logger.LogInfoMessage(String.Format("Scan completed {0}", DateTime.Now.ToString()), true); Logger.CloseLog(); }
public static void DoWork() { outputPath = Environment.CurrentDirectory; string webPartsInputFile = string.Empty; string webpartType = string.Empty; IEnumerable <WebpartInput> objWPDInput; string timeStamp = DateTime.Now.ToString("yyyyMMdd_hhmmss"); //Trace Log TXT File Creation Command Logger.OpenLog("DeleteWebparts", timeStamp); if (!ReadInputFile(ref webPartsInputFile)) { System.Console.ForegroundColor = System.ConsoleColor.Red; Logger.LogErrorMessage("Webparts input file is not valid or available. So, Operation aborted!"); Logger.LogErrorMessage("Please enter path like: E.g. C:\\<Working Directory>\\<InputFile>.csv"); System.Console.ResetColor(); return; } System.Console.ForegroundColor = System.ConsoleColor.Cyan; Logger.LogMessage("Please enter Webpart Type (enter 'all' to delete all webparts):"); System.Console.ResetColor(); webpartType = System.Console.ReadLine().ToLower(); try { string csvFile = outputPath + @"/" + Constants.DeleteWebpartStatus + timeStamp + Constants.CSVExtension; if (System.IO.File.Exists(csvFile)) { System.IO.File.Delete(csvFile); } if (System.IO.File.Exists(webPartsInputFile)) { if (String.Equals(Constants.WebpartType_All, webpartType, StringComparison.CurrentCultureIgnoreCase)) { //Reading Input File objWPDInput = ImportCSV.ReadMatchingColumns <WebpartInput>(webPartsInputFile, Constants.CsvDelimeter); if (objWPDInput.Any()) { IEnumerable <string> webPartTypes = objWPDInput.Select(x => x.WebPartType); webPartTypes = webPartTypes.Distinct(); Logger.LogInfoMessage(String.Format("Preparing to delete a total of {0} webparts ...", webPartTypes.Count()), true); foreach (string webPartType in webPartTypes) { try { DeleteWebPart_UsingCSV(webPartType, webPartsInputFile, csvFile); } catch (Exception ex) { Logger.LogErrorMessage("[DeleteMissingWebparts: DoWork]. Exception Message: " + ex.Message, true); ExceptionCsv.WriteException(Constants.NotApplicable, Constants.NotApplicable, Constants.NotApplicable, "Webpart", ex.Message, ex.ToString(), "DoWork", ex.GetType().ToString(), Constants.NotApplicable); } } webPartTypes = null; } else { Logger.LogInfoMessage("There is nothing to delete from the '" + webPartsInputFile + "' File ", true); } } else { DeleteWebPart_UsingCSV(webpartType, webPartsInputFile, csvFile); } Logger.LogInfoMessage("Processing input file has been comepleted..."); } else { Logger.LogErrorMessage("[DeleteMissingWebparts: DoWork]The input file " + webPartsInputFile + " is not present", true); } } catch (Exception ex) { Logger.LogErrorMessage("[DeleteMissingWebparts: DoWork]. Exception Message: " + ex.Message, true); ExceptionCsv.WriteException(Constants.NotApplicable, Constants.NotApplicable, Constants.NotApplicable, "Webpart", ex.Message, ex.ToString(), "DoWork", ex.GetType().ToString(), Constants.NotApplicable); } finally { objWPDInput = null; } Logger.CloseLog(); }
public static void DoWork() { string timeStamp = DateTime.Now.ToString("yyyyMMdd_hhmmss"); string CTCFFileName = outputPath + @"\" + Constants.ContentTypeAndCustomFieldFileName + timeStamp + Constants.CSVExtension; Logger.OpenLog("GenerateColumnORFieldAndTypeUsageReport", timeStamp); if (!ShowInformation()) { return; } Logger.LogInfoMessage(String.Format("Scan starting {0}", DateTime.Now.ToString()), true); string contentTypesInputFileSpec = Environment.CurrentDirectory + "\\" + Constants.ContentTypeInput; List <ContentTypeSpec> contentTypes = new List <ContentTypeSpec>(); if (System.IO.File.Exists(contentTypesInputFileSpec)) { IEnumerable <InputContentTypeBase> objInputContentType = ImportCSV.ReadMatchingColumns <InputContentTypeBase>(contentTypesInputFileSpec, Constants.CsvDelimeter); Logger.LogInfoMessage(String.Format("Loaded {0} content type definitions ...", objInputContentType.Count()), true); foreach (InputContentTypeBase s in objInputContentType) { contentTypes.Add(new ContentTypeSpec(s.ContentTypeID, s.ContentTypeName)); } } else { Logger.LogErrorMessage(String.Format("[GenerateColumnORFieldAndTypeUsageReport] Input file {0} is not available", contentTypesInputFileSpec), true); } string customFieldsInputFileSpec = Environment.CurrentDirectory + "\\" + Constants.CustomFieldsInput; List <SiteColumnSpec> customFields = new List <SiteColumnSpec>(); if (System.IO.File.Exists(customFieldsInputFileSpec)) { IEnumerable <InputCustomFieldBase> objInputCustomField = ImportCSV.ReadMatchingColumns <InputCustomFieldBase>(customFieldsInputFileSpec, Constants.CsvDelimeter); Logger.LogInfoMessage(String.Format("Loaded {0} site column/custom field definitions ...", objInputCustomField.Count()), true); foreach (InputCustomFieldBase s in objInputCustomField) { customFields.Add(new SiteColumnSpec(s.ID, s.Name)); } } else { Logger.LogErrorMessage(String.Format("[GenerateColumnORFieldAndTypeUsageReport] Input file {0} is not available", customFieldsInputFileSpec), true); } if (!System.IO.File.Exists(CTCFFileName)) { headerContentType = false; } else { headerContentType = true; } string inputFileSpec = Environment.CurrentDirectory + "\\" + Constants.UsageReport_SitesInputFileName; if (System.IO.File.Exists(inputFileSpec)) { string[] siteUrls = Helper.ReadInputFile(inputFileSpec, false); Logger.LogInfoMessage(String.Format("Preparing to scan a total of {0} sites ...", siteUrls.Length), true); foreach (string siteUrl in siteUrls) { ProcessSite(siteUrl, contentTypes, customFields, CTCFFileName); } Logger.LogSuccessMessage(String.Format("[GenerateColumnORFieldAndTypeUsageReport] Usage report is exported to the file {0} ", CTCFFileName), true); } else { Logger.LogErrorMessage(String.Format("[GenerateColumnORFieldAndTypeUsageReport] Input file {0} is not available", inputFileSpec), true); } Logger.LogInfoMessage(String.Format("Scan completed {0}", DateTime.Now.ToString()), true); Logger.CloseLog(); }
public static void DoWork() { timeStamp = DateTime.Now.ToString("yyyyMMdd_hhmmss"); outputPath = Environment.CurrentDirectory; string webPartsInputFile = string.Empty; string webpartType = string.Empty; string targetWebPartFileName = string.Empty; string targetWebPartXmlFilePath = string.Empty; //Trace Log TXT File Creation Command Logger.OpenLog("ReplaceWebPart", timeStamp); if (!ReadInputFile(ref webPartsInputFile)) { System.Console.ForegroundColor = System.ConsoleColor.Red; Logger.LogErrorMessage("Webparts input file is not valid or available. So, Operation aborted!"); Logger.LogErrorMessage("Please enter path like: E.g. C:\\<Working Directory>\\<InputFile>.csv"); System.Console.ResetColor(); return; } System.Console.ForegroundColor = System.ConsoleColor.Cyan; System.Console.WriteLine("Please enter Source Webpart Type :"); System.Console.ResetColor(); webpartType = System.Console.ReadLine().ToLower(); if (string.IsNullOrEmpty(webpartType)) { Logger.LogErrorMessage("[ReplaceWebPart: DoWork]Webpart Type should not be empty or null. Operation aborted...", true); return; } System.Console.ForegroundColor = System.ConsoleColor.Cyan; System.Console.WriteLine("Please enter Target WebPart File Name :"); System.Console.ResetColor(); targetWebPartFileName = System.Console.ReadLine().ToLower(); if (string.IsNullOrEmpty(targetWebPartFileName)) { Logger.LogErrorMessage("[ReplaceWebPart: DoWork]Target WebPart File Name should not be empty or null. Operation aborted...", true); return; } System.Console.ForegroundColor = System.ConsoleColor.Cyan; System.Console.WriteLine("Please enter Target WebPart Xml File Path :"); System.Console.ResetColor(); targetWebPartXmlFilePath = System.Console.ReadLine().ToLower(); if (string.IsNullOrEmpty(targetWebPartXmlFilePath) || !System.IO.File.Exists(targetWebPartXmlFilePath)) { Logger.LogErrorMessage("[ReplaceWebPart: DoWork]Target WebPart Xml File Path is not valid or available. Operation aborted...", true); return; } Logger.LogInfoMessage(String.Format("Process started {0}", DateTime.Now.ToString()), true); try { TransformWebPart_UsingCSV(webPartsInputFile, webpartType, targetWebPartFileName, targetWebPartXmlFilePath, outputPath); } catch (Exception ex) { System.Console.ForegroundColor = System.ConsoleColor.Red; Logger.LogErrorMessage("[ReplaceWebPart: DoWork]. Exception Message: " + ex.Message, true); System.Console.ResetColor(); ExceptionCsv.WriteException(Constants.NotApplicable, Constants.NotApplicable, Constants.NotApplicable, "ReplaceWebPart", ex.Message, ex.ToString(), "ReplaceWebPart: DoWork()", ex.GetType().ToString()); } Logger.LogInfoMessage(String.Format("Process completed {0}", DateTime.Now.ToString()), true); Logger.CloseLog(); }
public static void DoWork() { timeStamp = DateTime.Now.ToString("yyyyMMdd_hhmmss"); bool processInputFile = false; bool processWebUrl = false; bool replaceMasterUrl = false; bool replaceCustomMasterUrl = false; bool replaceBothMaserUrls = false; string masterPageInputFile = string.Empty; string webUrl = string.Empty; try { outputPath = Environment.CurrentDirectory; Logger.OpenLog("ReplaceMasterPage", timeStamp); if (!ReadInputOptions(ref processInputFile, ref processWebUrl)) { System.Console.ForegroundColor = System.ConsoleColor.Red; Logger.LogErrorMessage("Invalid option selected or Exit option is selected. Operation aborted!"); System.Console.ResetColor(); return; } if (processInputFile) { if (!ReadInputFile(ref masterPageInputFile)) { System.Console.ForegroundColor = System.ConsoleColor.Red; Logger.LogErrorMessage("MasterPage input file is not valid or available. So, Operation aborted!"); Logger.LogErrorMessage("Please enter path like: E.g. C:\\<Working Directory>\\<InputFile>.csv"); System.Console.ResetColor(); return; } if (!ReadMasterUrlReplaceOptions(ref replaceMasterUrl, ref replaceCustomMasterUrl, ref replaceBothMaserUrls)) { System.Console.ForegroundColor = System.ConsoleColor.Red; Logger.LogErrorMessage("Invalid option selected. Operation aborted!"); System.Console.ResetColor(); return; } ProcessInputFile(masterPageInputFile, replaceMasterUrl, replaceCustomMasterUrl, replaceBothMaserUrls, outputPath); } if (processWebUrl) { System.Console.ForegroundColor = System.ConsoleColor.Cyan; Logger.LogMessage("Enter WebUrl to replace MasterPage: "); System.Console.ResetColor(); webUrl = System.Console.ReadLine(); if (string.IsNullOrEmpty(webUrl)) { Logger.LogErrorMessage("[ReplaceMasterPage: DoWork]WebUrl should not be empty or null. Operation aborted...", true); return; } if (!ReadMasterUrlReplaceOptions(ref replaceMasterUrl, ref replaceCustomMasterUrl, ref replaceBothMaserUrls)) { System.Console.ForegroundColor = System.ConsoleColor.Red; Logger.LogErrorMessage("Invalid option selected. Operation aborted!"); System.Console.ResetColor(); return; } if (ProcessWebUrl(webUrl, null, replaceMasterUrl, replaceCustomMasterUrl, replaceBothMaserUrls)) { System.Console.ForegroundColor = System.ConsoleColor.Green; Logger.LogSuccessMessage("[ReplaceMasterPage: DoWork] Successfully processed given WebUrl and output file is present in the path: " + outputPath, true); System.Console.ResetColor(); } else { Logger.LogErrorMessage("Replacing Custom Master Page with OOB Master Page is failed for the site " + webUrl); } } } catch (Exception ex) { Logger.LogErrorMessage(String.Format("[ReplaceMasterPage: DoWork] failed: Error={0}", ex.Message), true); ExceptionCsv.WriteException(Constants.NotApplicable, Constants.NotApplicable, webUrl, "ReplaceMasterPage", ex.Message, ex.ToString(), "ReplaceMasterPage: DoWork()", ex.GetType().ToString()); } Logger.CloseLog(); }
//public static bool flagXML = false; public static void DoWork() { string PivotConfigXMLFileName = string.Empty; bool Discovery = false; bool PreMigration = false; if (!ReadInputOptions(ref Discovery, ref PreMigration)) { System.Console.ForegroundColor = System.ConsoleColor.Red; System.Console.WriteLine("Invalid option selected or Exit option is selected. Operation aborted!"); System.Console.ResetColor(); return; } if (Discovery) { timeStamp = DateTime.Now.ToString("yyyyMMdd_hhmmss"); try { Environment.CurrentDirectory = outputPath; Logger.OpenLog("DT_GeneratePivotReport", timeStamp); PivotConfigXMLFileName = "Discovery-Pivot.xml"; //Reading Usage Files Path ReadInputFilesPath(ref OutputFolderPath, PivotConfigXMLFileName, Constants.DTFileName); if (flag == true) { return; } GeneratePivotReports(OutputFolderPath, PivotConfigXMLFileName, "Component", outputPath); } catch (Exception ex) { Logger.LogErrorMessage(String.Format("[PivotReports: DoWork] failed: Error={0}", ex.Message), true); ExceptionCsv.WriteException(Constants.NotApplicable, Constants.NotApplicable, Constants.NotApplicable, "PivotReports", ex.Message, ex.ToString(), "[PivotReports]: DoWork()", ex.GetType().ToString(), Constants.NotApplicable); } Logger.CloseLog(); } else if (PreMigration) { timeStamp = DateTime.Now.ToString("yyyyMMdd_hhmmss"); try { Environment.CurrentDirectory = outputPath; Logger.OpenLog("PreMT_GeneratePivotReport", timeStamp); PivotConfigXMLFileName = "PreMT-Pivot.xml"; //Reading Usage Files Path ReadInputFilesPath(ref OutputFolderPath, PivotConfigXMLFileName, Constants.PreMTFileName); if (flag == true) { return; } GeneratePivotReports(OutputFolderPath, PivotConfigXMLFileName, "Component", outputPath); } catch (Exception ex) { Logger.LogErrorMessage(String.Format("[PivotReports: DoWork] failed: Error={0}", ex.Message), true); ExceptionCsv.WriteException(Constants.NotApplicable, Constants.NotApplicable, Constants.NotApplicable, "PivotReports", ex.Message, ex.ToString(), "[PivotReports]: DoWork()", ex.GetType().ToString(), Constants.NotApplicable); } Logger.CloseLog(); } }
public static void DoWork() { string timeStamp = DateTime.Now.ToString("yyyyMMdd_hhmmss"); outputPath = Environment.CurrentDirectory; string webUrl = string.Empty; string serverRelativePageUrl = string.Empty; string webPartZoneIndex = string.Empty; string webPartZoneID = string.Empty; string webPartFileName = string.Empty; string webPartXmlFilePath = string.Empty; bool headerAddWebPart = false; //Trace Log TXT File Creation Command Logger.OpenLog("AddWebPart", timeStamp); System.Console.ForegroundColor = System.ConsoleColor.Cyan; //System.Console.ResetColor(); System.Console.WriteLine("Please enter Web Url : "); System.Console.ResetColor(); webUrl = System.Console.ReadLine().ToLower(); if (string.IsNullOrEmpty(webUrl)) { Logger.LogErrorMessage("[AddWebpart: DoWork]WebUrl should not be empty or null. Operation aborted...", true); return; } System.Console.ForegroundColor = System.ConsoleColor.Cyan; System.Console.WriteLine("Please enter Server Relative PageUrl (E:g- /sites/DTTesting/SitePages/WebPartPage.aspx): "); System.Console.ResetColor(); serverRelativePageUrl = System.Console.ReadLine().ToLower(); if (string.IsNullOrEmpty(serverRelativePageUrl)) { Logger.LogErrorMessage("[AddWebpart: DoWork]ServerRelative PageUrl should not be empty or null. Operation aborted...", true); return; } System.Console.ForegroundColor = System.ConsoleColor.Cyan; System.Console.WriteLine("Please enter WebPart ZoneIndex : "); System.Console.ResetColor(); webPartZoneIndex = System.Console.ReadLine().ToLower(); if (string.IsNullOrEmpty(webPartZoneIndex)) { Logger.LogErrorMessage("[AddWebpart: DoWork]WebPart ZoneIndex should not be empty or null. Operation aborted...", true); return; } System.Console.ForegroundColor = System.ConsoleColor.Cyan; System.Console.WriteLine("Please enter WebPart ZoneID : "); System.Console.ResetColor(); webPartZoneID = System.Console.ReadLine().ToLower(); if (string.IsNullOrEmpty(webPartZoneID)) { Logger.LogErrorMessage("[AddWebpart: DoWork]WebPart ZoneId should not be empty or null. Operation aborted...", true); return; } System.Console.ForegroundColor = System.ConsoleColor.Cyan; System.Console.WriteLine("Please enter WebPart File Name (WebPart must be present in the WebPart gallery) : "); System.Console.ResetColor(); webPartFileName = System.Console.ReadLine().ToLower(); if (string.IsNullOrEmpty(webPartFileName)) { Logger.LogErrorMessage("[AddWebpart: DoWork]WebPart File Name should not be empty or null. Operation aborted...", true); return; } System.Console.ForegroundColor = System.ConsoleColor.Cyan; System.Console.WriteLine("Please enter WebPart XmlFile Path : "); System.Console.ResetColor(); webPartXmlFilePath = System.Console.ReadLine().ToLower(); if (string.IsNullOrEmpty(webPartXmlFilePath) || !System.IO.File.Exists(webPartXmlFilePath)) { Logger.LogErrorMessage("[AddWebpart: DoWork]WebPart XmlFile Path is not valid or available. Operation aborted...", true); return; } System.Console.ResetColor(); Logger.LogInfoMessage(String.Format("Process started {0}", DateTime.Now.ToString()), true); try { AddWebPartStatusBase objWPOutputBase = new AddWebPartStatusBase(); objWPOutputBase.WebApplication = Constants.NotApplicable; objWPOutputBase.SiteCollection = Constants.NotApplicable; objWPOutputBase.WebUrl = webUrl; objWPOutputBase.WebPartFileName = webPartFileName; objWPOutputBase.ZoneID = webPartZoneID; objWPOutputBase.ZoneIndex = webPartZoneIndex; objWPOutputBase.PageUrl = serverRelativePageUrl; objWPOutputBase.ExecutionDateTime = DateTime.Now.ToString(); if (AddWebPartToPage(webUrl, webPartFileName, webPartXmlFilePath, webPartZoneIndex, webPartZoneID, serverRelativePageUrl, outputPath)) { System.Console.ForegroundColor = System.ConsoleColor.Green; Logger.LogSuccessMessage("[AddWebPart: DoWork] Successfully Added WebPart and output file is present in the path: " + outputPath, true); System.Console.ResetColor(); objWPOutputBase.Status = Constants.Success; } else { Logger.LogInfoMessage("Adding WebPart to the page is failed for the site " + webUrl); objWPOutputBase.Status = Constants.Failure; } if (!System.IO.File.Exists(outputPath + @"\" + Constants.AddWebPartStatusFileName + timeStamp + Constants.CSVExtension)) { headerAddWebPart = false; } else { headerAddWebPart = true; } FileUtility.WriteCsVintoFile(outputPath + @"\" + Constants.AddWebPartStatusFileName + timeStamp + Constants.CSVExtension, objWPOutputBase, ref headerAddWebPart); } catch (Exception ex) { System.Console.ForegroundColor = System.ConsoleColor.Red; Logger.LogErrorMessage("[AddWebPart: DoWork]. Exception Message: " + ex.Message, true); System.Console.ResetColor(); ExceptionCsv.WriteException(Constants.NotApplicable, Constants.NotApplicable, Constants.NotApplicable, "AddWebPart", ex.Message, ex.ToString(), "AddWebpart: DoWork()", ex.GetType().ToString()); } Logger.LogInfoMessage(String.Format("Process completed {0}", DateTime.Now.ToString()), true); Logger.CloseLog(); }