using Json.LitJson;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ServiceClientGenerator
{
///
/// Describes a Project file to be generated
///
public class Project
{
///
/// Name of the project template configuration
///
public string Name { get; set; }
///
/// Used to generate the AssemblyName element of the project file
///
public string AssemblyName { get; set; }
///
/// Used to generate the ProjectReference elements of the project file
///
public IEnumerable ProjectReferences { get; set; }
///
/// Used to generate the Include tag of the Reference elements of the project file
///
public IEnumerable ReferenceDependencies { get; set; }
///
/// Used to generate the PackageReference elements of the project file
///
public IEnumerable PackageReferences { get; set; }
///
/// Used to generate the Include tag of the Service elements of the project file
///
public IEnumerable Services { get; set; }
///
/// Used to generate the HintPath for Reference elements relative to Nuget dependencies
///
public string NugetPackagesLocation { get; set; }
///
/// Used to generate the TargetFramework or TargetFrameworks element of the project file
///
public IEnumerable TargetFrameworks { get; set; }
///
/// Used to generate the DefineConstants element of the project file
///
public IEnumerable DefineConstants { get; set; }
///
/// Used to generate the Remove tag of the Compile elements of the project file
///
public IEnumerable CompileRemoveList { get; set; }
///
/// Used to generate the Include tag of the Compile elements of the project file for directories
///
public IEnumerable SourceDirectories { get; set; }
///
/// Used to generate the Include tag of the Compile elements of the project file for single files
///
public IEnumerable IndividualFileIncludes { get; set; }
///
/// Used to generate the Include tag of the EmbeddedResource elements of the project file
///
public IEnumerable EmbeddedResources { get; set; }
///
/// Used to generate the FrameworkPathOverride element of the project file
///
public string FrameworkPathOverride { get; set; }
///
/// Used to generate the OutputPath element of the project file
///
public string OutputPathOverride { get; set; }
///
/// Used to generate the NoWarn element of the project file
///
public string SupressWarnings { get; set; }
///
/// Used to generate the ProjectGuid element of the project file
///
public string ProjectGuid { get; set; }
///
/// Used to generate the RootNamespace element of the project file
///
public string RootNamespace { get; set; }
///
/// Used to decide wether to generate the AssemblyOriginatorKeyFile element of the project file
///
public bool SignBinaries { get; set; }
///
/// Used to generate the AssemblyOriginatorKeyFile element of the project file
///
public string KeyFilePath { get; set; }
///
/// Used to generate the OutputPath element of the project file
///
public string BinSubfolder { get; set; }
///
/// Used to generate the RuleSet path of the project file
///
public string FxcopAnalyzerRuleSetFilePath { get; set; }
///
/// Used to generate the RuleSet path for build of the project file
///
public string FxcopAnalyzerRuleSetFilePathForBuild { get; set; }
///
/// Used to generate the Custom Roslyn Analyzers dll directory
///
public string CustomRoslynAnalyzersDllDirectory { get; set; }
}
}