mirror of
https://github.com/esiur/esiur-dotnet.git
synced 2025-06-26 21:13:13 +00:00
CLI
This commit is contained in:
@ -5,7 +5,7 @@
|
||||
<Copyright>Ahmed Kh. Zamil</Copyright>
|
||||
<PackageProjectUrl>http://www.esiur.com</PackageProjectUrl>
|
||||
<GeneratePackageOnBuild>true</GeneratePackageOnBuild>
|
||||
<Version>2.4.4</Version>
|
||||
<Version>2.4.5</Version>
|
||||
<RepositoryUrl>https://github.com/esiur/esiur-dotnet</RepositoryUrl>
|
||||
<Authors>Ahmed Kh. Zamil</Authors>
|
||||
<AssemblyVersion></AssemblyVersion>
|
||||
@ -63,7 +63,7 @@
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<PackageReference Include="Microsoft.CodeAnalysis.Common" Version="4.10.0" />
|
||||
<PackageReference Include="Microsoft.CodeAnalysis.Common" Version="4.11.0" />
|
||||
<PackageReference Include="System.Collections" Version="4.3.0" />
|
||||
<PackageReference Include="System.ComponentModel.Annotations" Version="5.0.0" />
|
||||
<PackageReference Include="System.Diagnostics.StackTrace" Version="4.3.0" />
|
||||
@ -74,11 +74,11 @@
|
||||
<PackageReference Include="System.Net.Security" Version="4.3.2" />
|
||||
<PackageReference Include="System.Reflection.Emit" Version="4.7.0" />
|
||||
<PackageReference Include="System.Reflection.Emit.Lightweight" Version="4.7.0" />
|
||||
<PackageReference Include="System.Text.Json" Version="8.0.4" GeneratePathProperty="true" />
|
||||
<PackageReference Include="System.Text.Json" Version="8.0.5" GeneratePathProperty="true" />
|
||||
<PackageReference Include="System.Threading.Tasks.Extensions" Version="4.5.4" />
|
||||
|
||||
<PackageReference Include="Microsoft.CodeAnalysis.CSharp" Version="4.10.0" PrivateAssets="all" />
|
||||
<PackageReference Include="Microsoft.CodeAnalysis.Analyzers" Version="3.3.4" PrivateAssets="all" />
|
||||
<PackageReference Include="Microsoft.CodeAnalysis.CSharp" Version="4.11.0" PrivateAssets="all" />
|
||||
<PackageReference Include="Microsoft.CodeAnalysis.Analyzers" Version="3.11.0" PrivateAssets="all" />
|
||||
|
||||
</ItemGroup>
|
||||
|
||||
|
@ -177,7 +177,7 @@ public static class TemplateGenerator
|
||||
return (representationType.Nullable) ? name + "?" : name;
|
||||
}
|
||||
|
||||
public static string GetTemplate(string url, string dir = null, string username = null, string password = null, bool asyncSetters = false)
|
||||
public static string GetTemplate(string url, string dir = null, bool tempDir = false, string username = null, string password = null, bool asyncSetters = false)
|
||||
{
|
||||
try
|
||||
{
|
||||
@ -200,14 +200,14 @@ public static class TemplateGenerator
|
||||
// no longer needed
|
||||
Warehouse.Remove(con);
|
||||
|
||||
var tempDir = new DirectoryInfo(Path.GetTempPath() + Path.DirectorySeparatorChar
|
||||
+ Misc.Global.GenerateCode(20) + Path.DirectorySeparatorChar + dir);
|
||||
var dstDir = new DirectoryInfo(tempDir ? Path.GetTempPath() + Path.DirectorySeparatorChar
|
||||
+ Misc.Global.GenerateCode(20) + Path.DirectorySeparatorChar + dir : dir);
|
||||
|
||||
if (!tempDir.Exists)
|
||||
tempDir.Create();
|
||||
if (!dstDir.Exists)
|
||||
dstDir.Create();
|
||||
else
|
||||
{
|
||||
foreach (FileInfo file in tempDir.GetFiles())
|
||||
foreach (FileInfo file in dstDir.GetFiles())
|
||||
file.Delete();
|
||||
}
|
||||
|
||||
@ -217,17 +217,17 @@ public static class TemplateGenerator
|
||||
if (tmp.Type == TemplateType.Resource)
|
||||
{
|
||||
var source = GenerateClass(tmp, templates, asyncSetters);
|
||||
File.WriteAllText(tempDir.FullName + Path.DirectorySeparatorChar + tmp.ClassName + ".Generated.cs", source);
|
||||
File.WriteAllText(dstDir.FullName + Path.DirectorySeparatorChar + tmp.ClassName + ".Generated.cs", source);
|
||||
}
|
||||
else if (tmp.Type == TemplateType.Record)
|
||||
{
|
||||
var source = GenerateRecord(tmp, templates);
|
||||
File.WriteAllText(tempDir.FullName + Path.DirectorySeparatorChar + tmp.ClassName + ".Generated.cs", source);
|
||||
File.WriteAllText(dstDir.FullName + Path.DirectorySeparatorChar + tmp.ClassName + ".Generated.cs", source);
|
||||
}
|
||||
else if (tmp.Type == TemplateType.Enum)
|
||||
{
|
||||
var source = GenerateEnum(tmp, templates);
|
||||
File.WriteAllText(tempDir.FullName + Path.DirectorySeparatorChar + tmp.ClassName + ".Generated.cs", source);
|
||||
File.WriteAllText(dstDir.FullName + Path.DirectorySeparatorChar + tmp.ClassName + ".Generated.cs", source);
|
||||
}
|
||||
}
|
||||
|
||||
@ -248,10 +248,10 @@ public static class TemplateGenerator
|
||||
"\r\n } \r\n}";
|
||||
|
||||
|
||||
File.WriteAllText(tempDir.FullName + Path.DirectorySeparatorChar + "Esiur.Generated.cs", typesFile);
|
||||
File.WriteAllText(dstDir.FullName + Path.DirectorySeparatorChar + "Esiur.Generated.cs", typesFile);
|
||||
|
||||
|
||||
return tempDir.FullName;
|
||||
return dstDir.FullName;
|
||||
|
||||
}
|
||||
catch (Exception ex)
|
||||
|
@ -1,11 +1,11 @@
|
||||
function Get-Template($url, $dir, $username, $password, $asyncSetters)
|
||||
{
|
||||
|
||||
$lib = Resolve-Path -Path "$($PSScriptRoot)\..\lib\netstandard2.0\Esiur.dll"
|
||||
$lib = Resolve-Path -Path "$($PSScriptRoot)\..\lib\netstandard2.0\Esiur.dll"
|
||||
#write-host "Lib is at $($lib)"
|
||||
|
||||
$assembly = [Reflection.Assembly]::LoadFile($lib)
|
||||
$tempPath = [Esiur.Proxy.TemplateGenerator]::GetTemplate($url, $dir, $username,$password, $asyncSetters);
|
||||
$tempPath = [Esiur.Proxy.TemplateGenerator]::GetTemplate($url, $dir, true, $username,$password, $asyncSetters);
|
||||
|
||||
$startupProject = GetStartupProject
|
||||
|
||||
|
Reference in New Issue
Block a user