protected override void ProcessRecord() { try { AzureResourceCollector resourceCollector = new AzureResourceCollector(); if (ClaimsDump == null) { if (String.IsNullOrEmpty(Token)) { Token = resourceCollector.Login(TenantName); //WriteVerbose(Token); } } else if (ClaimsDump.Contains("Token copied")) { Token = Clipboard.GetText().Replace("Bearer ", ""); resourceCollector.token = Token; } else { return; } TemplateGenerator generator = new TemplateGenerator(APIManagement, SubscriptionId, ResourceGroup, APIFilters, ExportGroups, ExportProducts, ExportPIManagementInstance, ParametrizePropertiesOnly, resourceCollector); JObject result = generator.GenerateTemplate().Result; WriteObject(result.ToString()); } catch (Exception ex) { WriteError(new ErrorRecord(ex, "0", ErrorCategory.ParserError, this)); } }
protected override void ProcessRecord() { AzureResourceCollector resourceCollector = new AzureResourceCollector(); if (!string.IsNullOrEmpty(DebugOutPutFolder)) { resourceCollector.DebugOutputFolder = DebugOutPutFolder; } if (ClaimsDump == null) { resourceCollector.token = String.IsNullOrEmpty(Token) ? resourceCollector.Login(TenantName) : Token; } else if (ClaimsDump.Contains("Token copied")) { Token = Clipboard.GetText().Replace("Bearer ", ""); resourceCollector.token = Token; } else { return; } try { TemplateGenerator generator = new TemplateGenerator(APIManagement, SubscriptionId, ResourceGroup, APIFilters, ExportGroups, ExportProducts, ExportPIManagementInstance, ParametrizePropertiesOnly, resourceCollector, ReplaceSetBackendServiceBaseUrlWithProperty, FixedServiceNameParameter, CreateApplicationInsightsInstance, ApiVersion, ParameterizeBackendFunctionKey); JObject result = generator.GenerateTemplate().Result; WriteObject(result.ToString()); } catch (Exception ex) { if (ex is AggregateException) { StringBuilder sb = new StringBuilder(); sb.AppendLine("Aggregation exception thrown, se following exceptions for more information"); AggregateException ae = (AggregateException)ex; foreach (var e in ae.InnerExceptions) { sb.AppendLine($"Exception: {e.Message}"); sb.AppendLine($"{e.StackTrace}"); sb.AppendLine("-------------------------------------------"); } WriteObject(sb.ToString()); throw new Exception($"Aggregation Exception thrown, {ae.Message}, first Exception message is: {ae.InnerExceptions.First().Message}, for more information read the output file."); } else { throw ex; } } }