From 4447e1a47630813757715bf79af8fc7f253fa020 Mon Sep 17 00:00:00 2001 From: Kashif Jamal Soofi Date: Tue, 5 Dec 2017 15:51:29 +0000 Subject: [PATCH] #44 Display a friendly message to indicate possible problem. --- src/CloudModelGenerator/CodeGenerator.cs | 39 +++++++++++++++--------- 1 file changed, 24 insertions(+), 15 deletions(-) diff --git a/src/CloudModelGenerator/CodeGenerator.cs b/src/CloudModelGenerator/CodeGenerator.cs index dd0e51a7..09f12ea5 100644 --- a/src/CloudModelGenerator/CodeGenerator.cs +++ b/src/CloudModelGenerator/CodeGenerator.cs @@ -36,13 +36,19 @@ public void GenerateContentTypeModels(bool structuredModel = false) Directory.CreateDirectory(_options.OutputDir); var classCodeGenerators = GetClassCodeGenerators(structuredModel); + if (classCodeGenerators.Count() > 0) + { + foreach (var codeGenerator in classCodeGenerators) + { + SaveToFile(codeGenerator.GenerateCode(), codeGenerator.ClassFilename, codeGenerator.OverwriteExisting); + } - foreach (var codeGenerator in classCodeGenerators) + Console.WriteLine($"{classCodeGenerators.Count()} content type models were successfully created."); + } + else { - SaveToFile(codeGenerator.GenerateCode(), codeGenerator.ClassFilename, codeGenerator.OverwriteExisting); + Console.WriteLine($"No content type available for the project ({_options.ProjectId}). Please make sure you've enabled the delivery API."); } - - Console.WriteLine($"{classCodeGenerators.Count()} content type models were successfully created."); } public void GenerateTypeProvider() @@ -51,22 +57,25 @@ public void GenerateTypeProvider() Directory.CreateDirectory(_options.OutputDir); var classCodeGenerators = GetClassCodeGenerators(); - var typeProviderCodeGenerator = new TypeProviderCodeGenerator(_options.Namespace); - - foreach (var codeGenerator in classCodeGenerators) + if (classCodeGenerators.Count() > 0) { - typeProviderCodeGenerator.AddContentType(codeGenerator.ClassDefinition.Codename, codeGenerator.ClassDefinition.ClassName); - } + var typeProviderCodeGenerator = new TypeProviderCodeGenerator(_options.Namespace); - var typeProviderCode = typeProviderCodeGenerator.GenerateCode(); - if (!string.IsNullOrEmpty(typeProviderCode)) - { - SaveToFile(typeProviderCode, TypeProviderCodeGenerator.CLASS_NAME); - Console.WriteLine($"{TypeProviderCodeGenerator.CLASS_NAME} class was successfully created."); + foreach (var codeGenerator in classCodeGenerators) + { + typeProviderCodeGenerator.AddContentType(codeGenerator.ClassDefinition.Codename, codeGenerator.ClassDefinition.ClassName); + } + + var typeProviderCode = typeProviderCodeGenerator.GenerateCode(); + if (!string.IsNullOrEmpty(typeProviderCode)) + { + SaveToFile(typeProviderCode, TypeProviderCodeGenerator.CLASS_NAME); + Console.WriteLine($"{TypeProviderCodeGenerator.CLASS_NAME} class was successfully created."); + } } else { - Console.WriteLine($"{TypeProviderCodeGenerator.CLASS_NAME} class was not created."); + Console.WriteLine($"No content type available for the project ({_options.ProjectId}). Please make sure you've enabled the delivery API."); } }