Status API abstract classes instead of interfaces

This commit is contained in:
Kim 2023-02-21 07:25:53 +01:00
parent 7474574586
commit 95fadd4264
213 changed files with 1217 additions and 7913 deletions

View File

@ -17,8 +17,9 @@
<component name="ChangeListManager"> <component name="ChangeListManager">
<list default="true" id="6c592741-41e1-4ea7-be7b-2610d55779c1" name="Changes" comment=""> <list default="true" id="6c592741-41e1-4ea7-be7b-2610d55779c1" name="Changes" comment="">
<change beforePath="$PROJECT_DIR$/.idea/.idea.InnovEnergy/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/.idea.InnovEnergy/.idea/workspace.xml" afterDir="false" /> <change beforePath="$PROJECT_DIR$/.idea/.idea.InnovEnergy/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/.idea.InnovEnergy/.idea/workspace.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/Backend/Database/Folder.cs" beforeDir="false" afterPath="$PROJECT_DIR$/app/Backend/Database/Folder.cs" afterDir="false" /> <change beforePath="$PROJECT_DIR$/app/Backend/Program.cs" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/app/Backend/Program.cs" beforeDir="false" afterPath="$PROJECT_DIR$/app/Backend/Program.cs" afterDir="false" /> <change beforePath="$PROJECT_DIR$/app/Backend/db.sqlite" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/app/Backend/obj/staticwebassets.pack.sentinel" beforeDir="false" />
</list> </list>
<option name="SHOW_DIALOG" value="false" /> <option name="SHOW_DIALOG" value="false" />
<option name="HIGHLIGHT_CONFLICTS" value="true" /> <option name="HIGHLIGHT_CONFLICTS" value="true" />
@ -205,28 +206,28 @@
<option name="hideEmptyMiddlePackages" value="true" /> <option name="hideEmptyMiddlePackages" value="true" />
<option name="showLibraryContents" value="true" /> <option name="showLibraryContents" value="true" />
</component> </component>
<component name="PropertiesComponent"><![CDATA[{ <component name="PropertiesComponent">{
"keyToString": { &quot;keyToString&quot;: {
"RunOnceActivity.OpenProjectViewOnStart": "true", &quot;RunOnceActivity.OpenProjectViewOnStart&quot;: &quot;true&quot;,
"RunOnceActivity.ShowReadmeOnStart": "true", &quot;RunOnceActivity.ShowReadmeOnStart&quot;: &quot;true&quot;,
"WebServerToolWindowFactoryState": "false", &quot;WebServerToolWindowFactoryState&quot;: &quot;false&quot;,
"XThreadsFramesViewSplitterKey": "0.030162413", &quot;XThreadsFramesViewSplitterKey&quot;: &quot;0.030162413&quot;,
"last_opened_file_path": "/home/kim/code/innovenergy/new/csharp/app/Backend/Backend.csproj", &quot;last_opened_file_path&quot;: &quot;/home/kim/code/innovenergy/new/csharp/app/Backend/Backend.csproj&quot;,
"nodejs_package_manager_path": "npm", &quot;nodejs_package_manager_path&quot;: &quot;npm&quot;,
"settings.editor.selected.configurable": "preferences.pluginManager", &quot;settings.editor.selected.configurable&quot;: &quot;preferences.pluginManager&quot;,
"vue.rearranger.settings.migration": "true" &quot;vue.rearranger.settings.migration&quot;: &quot;true&quot;
}, },
"keyToStringList": { &quot;keyToStringList&quot;: {
"DatabaseDriversLRU": [ &quot;DatabaseDriversLRU&quot;: [
"sqlite" &quot;sqlite&quot;
], ],
"rider.external.source.directories": [ &quot;rider.external.source.directories&quot;: [
"/home/kim/.config/JetBrains/Rider2022.3/resharper-host/DecompilerCache", &quot;/home/kim/.config/JetBrains/Rider2022.3/resharper-host/DecompilerCache&quot;,
"/home/kim/.config/JetBrains/Rider2022.3/resharper-host/SourcesCache", &quot;/home/kim/.config/JetBrains/Rider2022.3/resharper-host/SourcesCache&quot;,
"/home/kim/.local/share/Symbols/src" &quot;/home/kim/.local/share/Symbols/src&quot;
] ]
} }
}]]></component> }</component>
<component name="RunManager" selected=".NET Launch Settings Profile.Backend"> <component name="RunManager" selected=".NET Launch Settings Profile.Backend">
<configuration name="API" type="DotNetProject" factoryName=".NET Project"> <configuration name="API" type="DotNetProject" factoryName=".NET Project">
<option name="EXE_PATH" value="" /> <option name="EXE_PATH" value="" />
@ -701,7 +702,7 @@
<workItem from="1675752455072" duration="53000" /> <workItem from="1675752455072" duration="53000" />
<workItem from="1675752613714" duration="146000" /> <workItem from="1675752613714" duration="146000" />
<workItem from="1675752778847" duration="21000" /> <workItem from="1675752778847" duration="21000" />
<workItem from="1675752808118" duration="105404000" /> <workItem from="1675752808118" duration="106862000" />
</task> </task>
<servers /> <servers />
</component> </component>

View File

@ -311,6 +311,10 @@
"target": "Package", "target": "Package",
"version": "[3.3.1, )" "version": "[3.3.1, )"
}, },
"DecimalMath.DecimalEx": {
"target": "Package",
"version": "[1.0.2, )"
},
"System.Reactive.Linq": { "System.Reactive.Linq": {
"target": "Package", "target": "Package",
"version": "[5.0.0, )" "version": "[5.0.0, )"

View File

@ -24,6 +24,19 @@
} }
} }
}, },
"DecimalMath.DecimalEx/1.0.2": {
"type": "package",
"compile": {
"lib/netstandard2.0/DecimalEx.dll": {
"related": ".xml"
}
},
"runtime": {
"lib/netstandard2.0/DecimalEx.dll": {
"related": ".xml"
}
}
},
"Flurl/3.0.4": { "Flurl/3.0.4": {
"type": "package", "type": "package",
"compile": { "compile": {
@ -419,6 +432,7 @@
"framework": ".NETCoreApp,Version=v6.0", "framework": ".NETCoreApp,Version=v6.0",
"dependencies": { "dependencies": {
"CliWrap": "3.3.1", "CliWrap": "3.3.1",
"DecimalMath.DecimalEx": "1.0.2",
"System.Reactive.Linq": "5.0.0" "System.Reactive.Linq": "5.0.0"
}, },
"compile": { "compile": {
@ -497,6 +511,20 @@
"lib/netstandard2.1/CliWrap.xml" "lib/netstandard2.1/CliWrap.xml"
] ]
}, },
"DecimalMath.DecimalEx/1.0.2": {
"sha512": "BCii/IxT7Tx7BPZ7MtrpqVlEii/iaHi4OOXpgaPi+zrphnkbe251KKI3S+pgnTzobfn0jS/SF7bgidqOMj1oGw==",
"type": "package",
"path": "decimalmath.decimalex/1.0.2",
"files": [
".nupkg.metadata",
".signature.p7s",
"LICENSE",
"decimalmath.decimalex.1.0.2.nupkg.sha512",
"decimalmath.decimalex.nuspec",
"lib/netstandard2.0/DecimalEx.dll",
"lib/netstandard2.0/DecimalEx.xml"
]
},
"Flurl/3.0.4": { "Flurl/3.0.4": {
"sha512": "2bgCzOs3TGwRkfcijCiH+7o9Pz4pyVnt4yyLX2vD3wlMSekpmGhqe2zA4988qSMmPa6AqeekX13CY4FvsjsDJQ==", "sha512": "2bgCzOs3TGwRkfcijCiH+7o9Pz4pyVnt4yyLX2vD3wlMSekpmGhqe2zA4988qSMmPa6AqeekX13CY4FvsjsDJQ==",
"type": "package", "type": "package",

View File

@ -1,11 +1,12 @@
{ {
"version": 2, "version": 2,
"dgSpecHash": "6lEDaHtCDwj4S/DQQvj1mLNtWThoKABX/6yd9728AgnrA9rIad/UaonAp8TkO53i9i5R0ToUggIRUuFIYaB/yw==", "dgSpecHash": "txRMsA4BjmCk2iCx9W46PczSZ0GaJCkNKOobx6SK/uzt2sbt/jTboM3Q07JADBWy8hPwfpZqspriY8zteLQAzw==",
"success": false, "success": false,
"projectFilePath": "/home/kim/code/innovenergy/new/csharp/app/API/API.csproj", "projectFilePath": "/home/kim/code/innovenergy/new/csharp/app/API/API.csproj",
"expectedPackageFiles": [ "expectedPackageFiles": [
"/home/kim/.nuget/packages/bouncycastle/1.8.9/bouncycastle.1.8.9.nupkg.sha512", "/home/kim/.nuget/packages/bouncycastle/1.8.9/bouncycastle.1.8.9.nupkg.sha512",
"/home/kim/.nuget/packages/cliwrap/3.3.1/cliwrap.3.3.1.nupkg.sha512", "/home/kim/.nuget/packages/cliwrap/3.3.1/cliwrap.3.3.1.nupkg.sha512",
"/home/kim/.nuget/packages/decimalmath.decimalex/1.0.2/decimalmath.decimalex.1.0.2.nupkg.sha512",
"/home/kim/.nuget/packages/flurl/3.0.4/flurl.3.0.4.nupkg.sha512", "/home/kim/.nuget/packages/flurl/3.0.4/flurl.3.0.4.nupkg.sha512",
"/home/kim/.nuget/packages/flurl.http/3.2.2/flurl.http.3.2.2.nupkg.sha512", "/home/kim/.nuget/packages/flurl.http/3.2.2/flurl.http.3.2.2.nupkg.sha512",
"/home/kim/.nuget/packages/microsoft.netcore.platforms/2.1.2/microsoft.netcore.platforms.2.1.2.nupkg.sha512", "/home/kim/.nuget/packages/microsoft.netcore.platforms/2.1.2/microsoft.netcore.platforms.2.1.2.nupkg.sha512",

View File

@ -1 +1 @@
16765322878053266 16769606177554988

View File

@ -1,104 +0,0 @@
using Backend.Controllers;
using Backend.Database;
using Microsoft.OpenApi.Models;
using Swashbuckle.AspNetCore.SwaggerGen;
using (var db = Db.Connect())
{
db.CreateFakeRelations();
}
var builder = WebApplication.CreateBuilder(args);
builder.Services.AddControllers(); // TODO: remove magic, specify controllers explicitly
// Learn more about configuring Swagger/OpenAPI at https://aka.ms/aspnetcore/swashbuckle
builder.Services.AddHttpContextAccessor();
builder.Services.AddEndpointsApiExplorer();
builder.Services.AddCors(o => o.AddDefaultPolicy(p => p.WithOrigins("*"))); // TODO
builder.Services.AddSwaggerGen(config =>
{
config.SwaggerDoc("v1", new OpenApiInfo{ Title = "My API", Version = "V1" });
config.OperationFilter<MyHeaderFilter>(); //Todo testing throw me out
});
var app = builder.Build();
// Configure the HTTP request pipeline.
if (app.Environment.IsDevelopment())
{
app.UseSwagger();
app.UseSwaggerUI(cfg => cfg.EnableFilter());
}
app.UseCors();
app.UseHttpsRedirection();
app.UseAuthorization();
app.Use(SetSessionUser);
app.MapControllers();
app.Run();
//================= Functions for above ===================
//Setting User for current Session
async Task SetSessionUser(HttpContext ctx, RequestDelegate next)
{
var headers = ctx.Request.Headers;
var hasToken = headers.TryGetValue("auth", out var token);
if (!ctx.Request.Path.ToString().Contains(nameof(Controller.Login)))
{
if (!hasToken)
{
ctx.Response.StatusCode = 403;
return;
}
using var db = Db.Connect();
var user = db.GetUserByToken(token.ToString());
if (user is null)
{
ctx.Response.StatusCode = 403;
return;
}
ctx.Items["User"] = user;
}
await next(ctx);
}
/// <summary>
/// This is for convenient testing! Todo throw me out?
/// Operation filter to add the requirement of the custom header
/// </summary>
public class MyHeaderFilter : IOperationFilter
{
public void Apply(OpenApiOperation operation, OperationFilterContext context)
{
operation.Parameters ??= new List<OpenApiParameter>();
operation.Parameters.Add(new OpenApiParameter
{
Name = "auth",
In = ParameterLocation.Header,
Content = new Dictionary<String, OpenApiMediaType>(),
Required = false
});
}
}

Binary file not shown.

View File

@ -167,6 +167,10 @@
"target": "Package", "target": "Package",
"version": "[3.3.1, )" "version": "[3.3.1, )"
}, },
"DecimalMath.DecimalEx": {
"target": "Package",
"version": "[1.0.2, )"
},
"System.Reactive.Linq": { "System.Reactive.Linq": {
"target": "Package", "target": "Package",
"version": "[5.0.0, )" "version": "[5.0.0, )"

View File

@ -97,6 +97,19 @@
} }
} }
}, },
"DecimalMath.DecimalEx/1.0.2": {
"type": "package",
"compile": {
"lib/netstandard2.0/DecimalEx.dll": {
"related": ".xml"
}
},
"runtime": {
"lib/netstandard2.0/DecimalEx.dll": {
"related": ".xml"
}
}
},
"Flurl/3.0.1": { "Flurl/3.0.1": {
"type": "package", "type": "package",
"compile": { "compile": {
@ -3171,6 +3184,7 @@
"framework": ".NETCoreApp,Version=v6.0", "framework": ".NETCoreApp,Version=v6.0",
"dependencies": { "dependencies": {
"CliWrap": "3.3.1", "CliWrap": "3.3.1",
"DecimalMath.DecimalEx": "1.0.2",
"System.Reactive.Linq": "5.0.0" "System.Reactive.Linq": "5.0.0"
}, },
"compile": { "compile": {
@ -3285,6 +3299,20 @@
"lib/netstandard2.1/CliWrap.xml" "lib/netstandard2.1/CliWrap.xml"
] ]
}, },
"DecimalMath.DecimalEx/1.0.2": {
"sha512": "BCii/IxT7Tx7BPZ7MtrpqVlEii/iaHi4OOXpgaPi+zrphnkbe251KKI3S+pgnTzobfn0jS/SF7bgidqOMj1oGw==",
"type": "package",
"path": "decimalmath.decimalex/1.0.2",
"files": [
".nupkg.metadata",
".signature.p7s",
"LICENSE",
"decimalmath.decimalex.1.0.2.nupkg.sha512",
"decimalmath.decimalex.nuspec",
"lib/netstandard2.0/DecimalEx.dll",
"lib/netstandard2.0/DecimalEx.xml"
]
},
"Flurl/3.0.1": { "Flurl/3.0.1": {
"sha512": "i7CuPSikVroBaWG8sPvO707Ex9C6BP5+r4JufKNU1FGMmiFgLJvNo1ttUg6ZiXIzUNknvIb1VUTIO9iEDucibg==", "sha512": "i7CuPSikVroBaWG8sPvO707Ex9C6BP5+r4JufKNU1FGMmiFgLJvNo1ttUg6ZiXIzUNknvIb1VUTIO9iEDucibg==",
"type": "package", "type": "package",

View File

@ -1,6 +1,6 @@
{ {
"version": 2, "version": 2,
"dgSpecHash": "hBEuvzJMBTZr/bRjm1IFxXYVWTs6z0tSCEYPpoau40SnlkyRKUg8tAXvQV7BiCrsk+wHmkjr257pkqzXNT6YIg==", "dgSpecHash": "MdRskQtEzVoDz9Sm7iAX4BseowH8RQwBYdJ5zAQHKrlwu1lEHilXUBfKGcTAJ2MpQBrppgcAwKnwTyQJuU6q3Q==",
"success": true, "success": true,
"projectFilePath": "/home/kim/code/innovenergy/new/csharp/app/Backend/Backend.csproj", "projectFilePath": "/home/kim/code/innovenergy/new/csharp/app/Backend/Backend.csproj",
"expectedPackageFiles": [ "expectedPackageFiles": [
@ -9,6 +9,7 @@
"/home/kim/.nuget/packages/azure.security.keyvault.certificates/4.1.0/azure.security.keyvault.certificates.4.1.0.nupkg.sha512", "/home/kim/.nuget/packages/azure.security.keyvault.certificates/4.1.0/azure.security.keyvault.certificates.4.1.0.nupkg.sha512",
"/home/kim/.nuget/packages/azure.security.keyvault.secrets/4.1.0/azure.security.keyvault.secrets.4.1.0.nupkg.sha512", "/home/kim/.nuget/packages/azure.security.keyvault.secrets/4.1.0/azure.security.keyvault.secrets.4.1.0.nupkg.sha512",
"/home/kim/.nuget/packages/cliwrap/3.3.1/cliwrap.3.3.1.nupkg.sha512", "/home/kim/.nuget/packages/cliwrap/3.3.1/cliwrap.3.3.1.nupkg.sha512",
"/home/kim/.nuget/packages/decimalmath.decimalex/1.0.2/decimalmath.decimalex.1.0.2.nupkg.sha512",
"/home/kim/.nuget/packages/flurl/3.0.1/flurl.3.0.1.nupkg.sha512", "/home/kim/.nuget/packages/flurl/3.0.1/flurl.3.0.1.nupkg.sha512",
"/home/kim/.nuget/packages/flurl.http/3.0.1/flurl.http.3.0.1.nupkg.sha512", "/home/kim/.nuget/packages/flurl.http/3.0.1/flurl.http.3.0.1.nupkg.sha512",
"/home/kim/.nuget/packages/microsoft.aspnet.cors/5.0.0/microsoft.aspnet.cors.5.0.0.nupkg.sha512", "/home/kim/.nuget/packages/microsoft.aspnet.cors/5.0.0/microsoft.aspnet.cors.5.0.0.nupkg.sha512",

View File

@ -1 +1 @@
16758719413962650 16769606178754984

View File

@ -1,203 +0,0 @@
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0

View File

@ -108,6 +108,10 @@
"target": "Package", "target": "Package",
"version": "[3.3.1, )" "version": "[3.3.1, )"
}, },
"DecimalMath.DecimalEx": {
"target": "Package",
"version": "[1.0.2, )"
},
"System.Reactive.Linq": { "System.Reactive.Linq": {
"target": "Package", "target": "Package",
"version": "[5.0.0, )" "version": "[5.0.0, )"

View File

@ -15,6 +15,19 @@
} }
} }
}, },
"DecimalMath.DecimalEx/1.0.2": {
"type": "package",
"compile": {
"lib/netstandard2.0/DecimalEx.dll": {
"related": ".xml"
}
},
"runtime": {
"lib/netstandard2.0/DecimalEx.dll": {
"related": ".xml"
}
}
},
"runtime.linux-arm.runtime.native.System.IO.Ports/7.0.0": { "runtime.linux-arm.runtime.native.System.IO.Ports/7.0.0": {
"type": "package", "type": "package",
"runtimeTargets": { "runtimeTargets": {
@ -146,6 +159,7 @@
"framework": ".NETCoreApp,Version=v6.0", "framework": ".NETCoreApp,Version=v6.0",
"dependencies": { "dependencies": {
"CliWrap": "3.3.1", "CliWrap": "3.3.1",
"DecimalMath.DecimalEx": "1.0.2",
"System.Reactive.Linq": "5.0.0" "System.Reactive.Linq": "5.0.0"
}, },
"compile": { "compile": {
@ -179,6 +193,20 @@
"lib/netstandard2.1/CliWrap.xml" "lib/netstandard2.1/CliWrap.xml"
] ]
}, },
"DecimalMath.DecimalEx/1.0.2": {
"sha512": "BCii/IxT7Tx7BPZ7MtrpqVlEii/iaHi4OOXpgaPi+zrphnkbe251KKI3S+pgnTzobfn0jS/SF7bgidqOMj1oGw==",
"type": "package",
"path": "decimalmath.decimalex/1.0.2",
"files": [
".nupkg.metadata",
".signature.p7s",
"LICENSE",
"decimalmath.decimalex.1.0.2.nupkg.sha512",
"decimalmath.decimalex.nuspec",
"lib/netstandard2.0/DecimalEx.dll",
"lib/netstandard2.0/DecimalEx.xml"
]
},
"runtime.linux-arm.runtime.native.System.IO.Ports/7.0.0": { "runtime.linux-arm.runtime.native.System.IO.Ports/7.0.0": {
"sha512": "CBvgRaF+M0xGLDv2Geb/0v0LEADheH8aK72GRAUJdnqnJVsQO60ki1XO8M3keEhnjm+T5NvLm41pNXAVYAPiSg==", "sha512": "CBvgRaF+M0xGLDv2Geb/0v0LEADheH8aK72GRAUJdnqnJVsQO60ki1XO8M3keEhnjm+T5NvLm41pNXAVYAPiSg==",
"type": "package", "type": "package",

View File

@ -1,10 +1,11 @@
{ {
"version": 2, "version": 2,
"dgSpecHash": "Nke11RxKbOWlVoBscpAV7gQaloKYo0efe9EMVqqSyJ5/YDNdEnugot+SMk4WwTtsLCvOYZZD5nsCtFwFIajyjg==", "dgSpecHash": "Qv6sJgsHepvCERYb47HYJPm/t6a2/9LRsSfrfQuAYMAiZDh/agkv6lO9ULdyFWRlCZf7RQb39DQwxcKtl+rhoQ==",
"success": true, "success": true,
"projectFilePath": "/home/kim/code/innovenergy/new/csharp/app/BmsTunnel/BmsTunnel.csproj", "projectFilePath": "/home/kim/code/innovenergy/new/csharp/app/BmsTunnel/BmsTunnel.csproj",
"expectedPackageFiles": [ "expectedPackageFiles": [
"/home/kim/.nuget/packages/cliwrap/3.4.3/cliwrap.3.4.3.nupkg.sha512", "/home/kim/.nuget/packages/cliwrap/3.4.3/cliwrap.3.4.3.nupkg.sha512",
"/home/kim/.nuget/packages/decimalmath.decimalex/1.0.2/decimalmath.decimalex.1.0.2.nupkg.sha512",
"/home/kim/.nuget/packages/runtime.linux-arm.runtime.native.system.io.ports/7.0.0/runtime.linux-arm.runtime.native.system.io.ports.7.0.0.nupkg.sha512", "/home/kim/.nuget/packages/runtime.linux-arm.runtime.native.system.io.ports/7.0.0/runtime.linux-arm.runtime.native.system.io.ports.7.0.0.nupkg.sha512",
"/home/kim/.nuget/packages/runtime.linux-arm64.runtime.native.system.io.ports/7.0.0/runtime.linux-arm64.runtime.native.system.io.ports.7.0.0.nupkg.sha512", "/home/kim/.nuget/packages/runtime.linux-arm64.runtime.native.system.io.ports/7.0.0/runtime.linux-arm64.runtime.native.system.io.ports.7.0.0.nupkg.sha512",
"/home/kim/.nuget/packages/runtime.linux-x64.runtime.native.system.io.ports/7.0.0/runtime.linux-x64.runtime.native.system.io.ports.7.0.0.nupkg.sha512", "/home/kim/.nuget/packages/runtime.linux-x64.runtime.native.system.io.ports/7.0.0/runtime.linux-x64.runtime.native.system.io.ports.7.0.0.nupkg.sha512",

View File

@ -1 +1 @@
16758719413242651 16769606177514988

View File

@ -107,6 +107,10 @@
"target": "Package", "target": "Package",
"version": "[3.3.1, )" "version": "[3.3.1, )"
}, },
"DecimalMath.DecimalEx": {
"target": "Package",
"version": "[1.0.2, )"
},
"System.Reactive.Linq": { "System.Reactive.Linq": {
"target": "Package", "target": "Package",
"version": "[5.0.0, )" "version": "[5.0.0, )"

View File

@ -15,6 +15,19 @@
} }
} }
}, },
"DecimalMath.DecimalEx/1.0.2": {
"type": "package",
"compile": {
"lib/netstandard2.0/DecimalEx.dll": {
"related": ".xml"
}
},
"runtime": {
"lib/netstandard2.0/DecimalEx.dll": {
"related": ".xml"
}
}
},
"Flurl/3.0.1": { "Flurl/3.0.1": {
"type": "package", "type": "package",
"compile": { "compile": {
@ -160,6 +173,7 @@
"framework": ".NETCoreApp,Version=v6.0", "framework": ".NETCoreApp,Version=v6.0",
"dependencies": { "dependencies": {
"CliWrap": "3.3.1", "CliWrap": "3.3.1",
"DecimalMath.DecimalEx": "1.0.2",
"System.Reactive.Linq": "5.0.0" "System.Reactive.Linq": "5.0.0"
}, },
"compile": { "compile": {
@ -208,6 +222,20 @@
"lib/netstandard2.1/CliWrap.xml" "lib/netstandard2.1/CliWrap.xml"
] ]
}, },
"DecimalMath.DecimalEx/1.0.2": {
"sha512": "BCii/IxT7Tx7BPZ7MtrpqVlEii/iaHi4OOXpgaPi+zrphnkbe251KKI3S+pgnTzobfn0jS/SF7bgidqOMj1oGw==",
"type": "package",
"path": "decimalmath.decimalex/1.0.2",
"files": [
".nupkg.metadata",
".signature.p7s",
"LICENSE",
"decimalmath.decimalex.1.0.2.nupkg.sha512",
"decimalmath.decimalex.nuspec",
"lib/netstandard2.0/DecimalEx.dll",
"lib/netstandard2.0/DecimalEx.xml"
]
},
"Flurl/3.0.1": { "Flurl/3.0.1": {
"sha512": "i7CuPSikVroBaWG8sPvO707Ex9C6BP5+r4JufKNU1FGMmiFgLJvNo1ttUg6ZiXIzUNknvIb1VUTIO9iEDucibg==", "sha512": "i7CuPSikVroBaWG8sPvO707Ex9C6BP5+r4JufKNU1FGMmiFgLJvNo1ttUg6ZiXIzUNknvIb1VUTIO9iEDucibg==",
"type": "package", "type": "package",

View File

@ -1,10 +1,11 @@
{ {
"version": 2, "version": 2,
"dgSpecHash": "UAvD9VISYqdox01NdjEo6KkLKz/OvP72h2Q5OBG5/Tc3kKihaY66bw7AtS4v3eL/TkiRinACyW60kqK3zDuCcQ==", "dgSpecHash": "9i2PFunukqYLM1MlEYMp8ZfqGsWWpgObIdBPomhb6yFXeOcdoI2L8InTM+OxlI58rvCu374fXWyF5IpxnUoHwA==",
"success": true, "success": true,
"projectFilePath": "/home/kim/code/innovenergy/new/csharp/app/Collector/Collector.csproj", "projectFilePath": "/home/kim/code/innovenergy/new/csharp/app/Collector/Collector.csproj",
"expectedPackageFiles": [ "expectedPackageFiles": [
"/home/kim/.nuget/packages/cliwrap/3.3.1/cliwrap.3.3.1.nupkg.sha512", "/home/kim/.nuget/packages/cliwrap/3.3.1/cliwrap.3.3.1.nupkg.sha512",
"/home/kim/.nuget/packages/decimalmath.decimalex/1.0.2/decimalmath.decimalex.1.0.2.nupkg.sha512",
"/home/kim/.nuget/packages/flurl/3.0.1/flurl.3.0.1.nupkg.sha512", "/home/kim/.nuget/packages/flurl/3.0.1/flurl.3.0.1.nupkg.sha512",
"/home/kim/.nuget/packages/flurl.http/3.0.1/flurl.http.3.0.1.nupkg.sha512", "/home/kim/.nuget/packages/flurl.http/3.0.1/flurl.http.3.0.1.nupkg.sha512",
"/home/kim/.nuget/packages/microsoft.netcore.platforms/2.1.2/microsoft.netcore.platforms.2.1.2.nupkg.sha512", "/home/kim/.nuget/packages/microsoft.netcore.platforms/2.1.2/microsoft.netcore.platforms.2.1.2.nupkg.sha512",

View File

@ -1 +1 @@
16758719413362651 16769606177474988

View File

@ -164,6 +164,10 @@
"target": "Package", "target": "Package",
"version": "[3.3.1, )" "version": "[3.3.1, )"
}, },
"DecimalMath.DecimalEx": {
"target": "Package",
"version": "[1.0.2, )"
},
"System.Reactive.Linq": { "System.Reactive.Linq": {
"target": "Package", "target": "Package",
"version": "[5.0.0, )" "version": "[5.0.0, )"

View File

@ -15,6 +15,19 @@
} }
} }
}, },
"DecimalMath.DecimalEx/1.0.2": {
"type": "package",
"compile": {
"lib/netstandard2.0/DecimalEx.dll": {
"related": ".xml"
}
},
"runtime": {
"lib/netstandard2.0/DecimalEx.dll": {
"related": ".xml"
}
}
},
"System.Reactive/5.0.0": { "System.Reactive/5.0.0": {
"type": "package", "type": "package",
"compile": { "compile": {
@ -109,6 +122,7 @@
"framework": ".NETCoreApp,Version=v6.0", "framework": ".NETCoreApp,Version=v6.0",
"dependencies": { "dependencies": {
"CliWrap": "3.3.1", "CliWrap": "3.3.1",
"DecimalMath.DecimalEx": "1.0.2",
"System.Reactive.Linq": "5.0.0" "System.Reactive.Linq": "5.0.0"
}, },
"compile": { "compile": {
@ -156,6 +170,20 @@
"lib/netstandard2.1/CliWrap.xml" "lib/netstandard2.1/CliWrap.xml"
] ]
}, },
"DecimalMath.DecimalEx/1.0.2": {
"sha512": "BCii/IxT7Tx7BPZ7MtrpqVlEii/iaHi4OOXpgaPi+zrphnkbe251KKI3S+pgnTzobfn0jS/SF7bgidqOMj1oGw==",
"type": "package",
"path": "decimalmath.decimalex/1.0.2",
"files": [
".nupkg.metadata",
".signature.p7s",
"LICENSE",
"decimalmath.decimalex.1.0.2.nupkg.sha512",
"decimalmath.decimalex.nuspec",
"lib/netstandard2.0/DecimalEx.dll",
"lib/netstandard2.0/DecimalEx.xml"
]
},
"System.Reactive/5.0.0": { "System.Reactive/5.0.0": {
"sha512": "erBZjkQHWL9jpasCE/0qKAryzVBJFxGHVBAvgRN1bzM0q2s1S4oYREEEL0Vb+1kA/6BKb5FjUZMp5VXmy+gzkQ==", "sha512": "erBZjkQHWL9jpasCE/0qKAryzVBJFxGHVBAvgRN1bzM0q2s1S4oYREEEL0Vb+1kA/6BKb5FjUZMp5VXmy+gzkQ==",
"type": "package", "type": "package",

View File

@ -1,10 +1,11 @@
{ {
"version": 2, "version": 2,
"dgSpecHash": "c9nLTvh2gw5hmXYEAUK4OY3AUAnUOWM2cSzskUC72XxP9VR2RIxwun4h+lRbiBjcEDMee01epatSM+z0ybkDcg==", "dgSpecHash": "J1dr8XRtPJYuBcMKzJg8b7EdgDqthiKaQMwWAK67d8s5CbjLDSve5MWdvx4Nzhx0BRA68Dhqzi04KEotO1aPgQ==",
"success": true, "success": true,
"projectFilePath": "/home/kim/code/innovenergy/new/csharp/app/CsController/CsController.csproj", "projectFilePath": "/home/kim/code/innovenergy/new/csharp/app/CsController/CsController.csproj",
"expectedPackageFiles": [ "expectedPackageFiles": [
"/home/kim/.nuget/packages/cliwrap/3.3.1/cliwrap.3.3.1.nupkg.sha512", "/home/kim/.nuget/packages/cliwrap/3.3.1/cliwrap.3.3.1.nupkg.sha512",
"/home/kim/.nuget/packages/decimalmath.decimalex/1.0.2/decimalmath.decimalex.1.0.2.nupkg.sha512",
"/home/kim/.nuget/packages/system.reactive/5.0.0/system.reactive.5.0.0.nupkg.sha512", "/home/kim/.nuget/packages/system.reactive/5.0.0/system.reactive.5.0.0.nupkg.sha512",
"/home/kim/.nuget/packages/system.reactive.linq/5.0.0/system.reactive.linq.5.0.0.nupkg.sha512", "/home/kim/.nuget/packages/system.reactive.linq/5.0.0/system.reactive.linq.5.0.0.nupkg.sha512",
"/home/kim/.nuget/packages/system.reflection.emit/4.7.0/system.reflection.emit.4.7.0.nupkg.sha512", "/home/kim/.nuget/packages/system.reflection.emit/4.7.0/system.reflection.emit.4.7.0.nupkg.sha512",

View File

@ -1 +1 @@
16758719413402651 16769606177474988

View File

@ -315,6 +315,10 @@
"target": "Package", "target": "Package",
"version": "[3.3.1, )" "version": "[3.3.1, )"
}, },
"DecimalMath.DecimalEx": {
"target": "Package",
"version": "[1.0.2, )"
},
"System.Reactive.Linq": { "System.Reactive.Linq": {
"target": "Package", "target": "Package",
"version": "[5.0.0, )" "version": "[5.0.0, )"

View File

@ -15,6 +15,19 @@
} }
} }
}, },
"DecimalMath.DecimalEx/1.0.2": {
"type": "package",
"compile": {
"lib/netstandard2.0/DecimalEx.dll": {
"related": ".xml"
}
},
"runtime": {
"lib/netstandard2.0/DecimalEx.dll": {
"related": ".xml"
}
}
},
"runtime.linux-arm.runtime.native.System.IO.Ports/7.0.0": { "runtime.linux-arm.runtime.native.System.IO.Ports/7.0.0": {
"type": "package", "type": "package",
"runtimeTargets": { "runtimeTargets": {
@ -221,6 +234,7 @@
"framework": ".NETCoreApp,Version=v6.0", "framework": ".NETCoreApp,Version=v6.0",
"dependencies": { "dependencies": {
"CliWrap": "3.3.1", "CliWrap": "3.3.1",
"DecimalMath.DecimalEx": "1.0.2",
"System.Reactive.Linq": "5.0.0" "System.Reactive.Linq": "5.0.0"
}, },
"compile": { "compile": {
@ -269,6 +283,20 @@
"lib/netstandard2.1/CliWrap.xml" "lib/netstandard2.1/CliWrap.xml"
] ]
}, },
"DecimalMath.DecimalEx/1.0.2": {
"sha512": "BCii/IxT7Tx7BPZ7MtrpqVlEii/iaHi4OOXpgaPi+zrphnkbe251KKI3S+pgnTzobfn0jS/SF7bgidqOMj1oGw==",
"type": "package",
"path": "decimalmath.decimalex/1.0.2",
"files": [
".nupkg.metadata",
".signature.p7s",
"LICENSE",
"decimalmath.decimalex.1.0.2.nupkg.sha512",
"decimalmath.decimalex.nuspec",
"lib/netstandard2.0/DecimalEx.dll",
"lib/netstandard2.0/DecimalEx.xml"
]
},
"runtime.linux-arm.runtime.native.System.IO.Ports/7.0.0": { "runtime.linux-arm.runtime.native.System.IO.Ports/7.0.0": {
"sha512": "CBvgRaF+M0xGLDv2Geb/0v0LEADheH8aK72GRAUJdnqnJVsQO60ki1XO8M3keEhnjm+T5NvLm41pNXAVYAPiSg==", "sha512": "CBvgRaF+M0xGLDv2Geb/0v0LEADheH8aK72GRAUJdnqnJVsQO60ki1XO8M3keEhnjm+T5NvLm41pNXAVYAPiSg==",
"type": "package", "type": "package",

View File

@ -1,10 +1,11 @@
{ {
"version": 2, "version": 2,
"dgSpecHash": "yrf2nH3W4biRAVVAndvH+Kzw+I+85ttiAZFlnT9j9t+ZZIHlzNQfFaAnTGlVa31oTf/i1Q2rSOq4G+/IdqUzlg==", "dgSpecHash": "2ewazRgRKz4L39xWIoJjSaXaYlWNZzdNQ3JNtlr75qvrWeWsvOlJppatBwbnYKjfISXH2UGgErcEVSB+GMCKnw==",
"success": false, "success": false,
"projectFilePath": "/home/kim/code/innovenergy/new/csharp/app/EmuMeterDriver/EmuMeterDriver.csproj", "projectFilePath": "/home/kim/code/innovenergy/new/csharp/app/EmuMeterDriver/EmuMeterDriver.csproj",
"expectedPackageFiles": [ "expectedPackageFiles": [
"/home/kim/.nuget/packages/cliwrap/3.5.0/cliwrap.3.5.0.nupkg.sha512", "/home/kim/.nuget/packages/cliwrap/3.5.0/cliwrap.3.5.0.nupkg.sha512",
"/home/kim/.nuget/packages/decimalmath.decimalex/1.0.2/decimalmath.decimalex.1.0.2.nupkg.sha512",
"/home/kim/.nuget/packages/runtime.linux-arm.runtime.native.system.io.ports/7.0.0/runtime.linux-arm.runtime.native.system.io.ports.7.0.0.nupkg.sha512", "/home/kim/.nuget/packages/runtime.linux-arm.runtime.native.system.io.ports/7.0.0/runtime.linux-arm.runtime.native.system.io.ports.7.0.0.nupkg.sha512",
"/home/kim/.nuget/packages/runtime.linux-arm64.runtime.native.system.io.ports/7.0.0/runtime.linux-arm64.runtime.native.system.io.ports.7.0.0.nupkg.sha512", "/home/kim/.nuget/packages/runtime.linux-arm64.runtime.native.system.io.ports/7.0.0/runtime.linux-arm64.runtime.native.system.io.ports.7.0.0.nupkg.sha512",
"/home/kim/.nuget/packages/runtime.linux-x64.runtime.native.system.io.ports/7.0.0/runtime.linux-x64.runtime.native.system.io.ports.7.0.0.nupkg.sha512", "/home/kim/.nuget/packages/runtime.linux-x64.runtime.native.system.io.ports/7.0.0/runtime.linux-x64.runtime.native.system.io.ports.7.0.0.nupkg.sha512",

View File

@ -1 +1 @@
16765322878053266 16769606177434988

View File

@ -159,6 +159,10 @@
"target": "Package", "target": "Package",
"version": "[3.3.1, )" "version": "[3.3.1, )"
}, },
"DecimalMath.DecimalEx": {
"target": "Package",
"version": "[1.0.2, )"
},
"System.Reactive.Linq": { "System.Reactive.Linq": {
"target": "Package", "target": "Package",
"version": "[5.0.0, )" "version": "[5.0.0, )"

View File

@ -15,6 +15,19 @@
} }
} }
}, },
"DecimalMath.DecimalEx/1.0.2": {
"type": "package",
"compile": {
"lib/netstandard2.0/DecimalEx.dll": {
"related": ".xml"
}
},
"runtime": {
"lib/netstandard2.0/DecimalEx.dll": {
"related": ".xml"
}
}
},
"System.Reactive/5.0.0": { "System.Reactive/5.0.0": {
"type": "package", "type": "package",
"compile": { "compile": {
@ -72,6 +85,7 @@
"framework": ".NETCoreApp,Version=v6.0", "framework": ".NETCoreApp,Version=v6.0",
"dependencies": { "dependencies": {
"CliWrap": "3.3.1", "CliWrap": "3.3.1",
"DecimalMath.DecimalEx": "1.0.2",
"System.Reactive.Linq": "5.0.0" "System.Reactive.Linq": "5.0.0"
}, },
"compile": { "compile": {
@ -105,6 +119,20 @@
"lib/netstandard2.1/CliWrap.xml" "lib/netstandard2.1/CliWrap.xml"
] ]
}, },
"DecimalMath.DecimalEx/1.0.2": {
"sha512": "BCii/IxT7Tx7BPZ7MtrpqVlEii/iaHi4OOXpgaPi+zrphnkbe251KKI3S+pgnTzobfn0jS/SF7bgidqOMj1oGw==",
"type": "package",
"path": "decimalmath.decimalex/1.0.2",
"files": [
".nupkg.metadata",
".signature.p7s",
"LICENSE",
"decimalmath.decimalex.1.0.2.nupkg.sha512",
"decimalmath.decimalex.nuspec",
"lib/netstandard2.0/DecimalEx.dll",
"lib/netstandard2.0/DecimalEx.xml"
]
},
"System.Reactive/5.0.0": { "System.Reactive/5.0.0": {
"sha512": "erBZjkQHWL9jpasCE/0qKAryzVBJFxGHVBAvgRN1bzM0q2s1S4oYREEEL0Vb+1kA/6BKb5FjUZMp5VXmy+gzkQ==", "sha512": "erBZjkQHWL9jpasCE/0qKAryzVBJFxGHVBAvgRN1bzM0q2s1S4oYREEEL0Vb+1kA/6BKb5FjUZMp5VXmy+gzkQ==",
"type": "package", "type": "package",

View File

@ -1,10 +1,11 @@
{ {
"version": 2, "version": 2,
"dgSpecHash": "jku2j7nKdKz7OSKmKIzLnWIlvYDz5T1ilOYj9aUrVPFn0YKrinlKrEIhfHhDV24pRZv0r4Uq18FfIi+xtsC6bw==", "dgSpecHash": "U/s4BMvyN0XHGZp5V6nYwrJuMjSDA8kadrq1PqryUUdMuh+ZcyX+yPknYtfEDHV43LGxB54pXSAxqs1pByV0OQ==",
"success": true, "success": true,
"projectFilePath": "/home/kim/code/innovenergy/new/csharp/app/FossilTui/FossilTui.csproj", "projectFilePath": "/home/kim/code/innovenergy/new/csharp/app/FossilTui/FossilTui.csproj",
"expectedPackageFiles": [ "expectedPackageFiles": [
"/home/kim/.nuget/packages/cliwrap/3.5.0/cliwrap.3.5.0.nupkg.sha512", "/home/kim/.nuget/packages/cliwrap/3.5.0/cliwrap.3.5.0.nupkg.sha512",
"/home/kim/.nuget/packages/decimalmath.decimalex/1.0.2/decimalmath.decimalex.1.0.2.nupkg.sha512",
"/home/kim/.nuget/packages/system.reactive/5.0.0/system.reactive.5.0.0.nupkg.sha512", "/home/kim/.nuget/packages/system.reactive/5.0.0/system.reactive.5.0.0.nupkg.sha512",
"/home/kim/.nuget/packages/system.reactive.linq/5.0.0/system.reactive.linq.5.0.0.nupkg.sha512", "/home/kim/.nuget/packages/system.reactive.linq/5.0.0/system.reactive.linq.5.0.0.nupkg.sha512",
"/home/kim/.nuget/packages/system.threading.tasks.extensions/4.5.4/system.threading.tasks.extensions.4.5.4.nupkg.sha512" "/home/kim/.nuget/packages/system.threading.tasks.extensions/4.5.4/system.threading.tasks.extensions.4.5.4.nupkg.sha512"

View File

@ -1 +1 @@
16765322878053266 16769606177474988

View File

@ -173,6 +173,10 @@
"target": "Package", "target": "Package",
"version": "[3.3.1, )" "version": "[3.3.1, )"
}, },
"DecimalMath.DecimalEx": {
"target": "Package",
"version": "[1.0.2, )"
},
"System.Reactive.Linq": { "System.Reactive.Linq": {
"target": "Package", "target": "Package",
"version": "[5.0.0, )" "version": "[5.0.0, )"

View File

@ -15,6 +15,19 @@
} }
} }
}, },
"DecimalMath.DecimalEx/1.0.2": {
"type": "package",
"compile": {
"lib/netstandard2.0/DecimalEx.dll": {
"related": ".xml"
}
},
"runtime": {
"lib/netstandard2.0/DecimalEx.dll": {
"related": ".xml"
}
}
},
"System.Reactive/5.0.0": { "System.Reactive/5.0.0": {
"type": "package", "type": "package",
"compile": { "compile": {
@ -109,6 +122,7 @@
"framework": ".NETCoreApp,Version=v6.0", "framework": ".NETCoreApp,Version=v6.0",
"dependencies": { "dependencies": {
"CliWrap": "3.3.1", "CliWrap": "3.3.1",
"DecimalMath.DecimalEx": "1.0.2",
"System.Reactive.Linq": "5.0.0" "System.Reactive.Linq": "5.0.0"
}, },
"compile": { "compile": {
@ -156,6 +170,20 @@
"lib/netstandard2.1/CliWrap.xml" "lib/netstandard2.1/CliWrap.xml"
] ]
}, },
"DecimalMath.DecimalEx/1.0.2": {
"sha512": "BCii/IxT7Tx7BPZ7MtrpqVlEii/iaHi4OOXpgaPi+zrphnkbe251KKI3S+pgnTzobfn0jS/SF7bgidqOMj1oGw==",
"type": "package",
"path": "decimalmath.decimalex/1.0.2",
"files": [
".nupkg.metadata",
".signature.p7s",
"LICENSE",
"decimalmath.decimalex.1.0.2.nupkg.sha512",
"decimalmath.decimalex.nuspec",
"lib/netstandard2.0/DecimalEx.dll",
"lib/netstandard2.0/DecimalEx.xml"
]
},
"System.Reactive/5.0.0": { "System.Reactive/5.0.0": {
"sha512": "erBZjkQHWL9jpasCE/0qKAryzVBJFxGHVBAvgRN1bzM0q2s1S4oYREEEL0Vb+1kA/6BKb5FjUZMp5VXmy+gzkQ==", "sha512": "erBZjkQHWL9jpasCE/0qKAryzVBJFxGHVBAvgRN1bzM0q2s1S4oYREEEL0Vb+1kA/6BKb5FjUZMp5VXmy+gzkQ==",
"type": "package", "type": "package",

View File

@ -1,10 +1,11 @@
{ {
"version": 2, "version": 2,
"dgSpecHash": "cOHONU4GCqA+dI/Rv1t6D73epwZNctGSr2+h5FghVxuDPVxvgMEDFXBxyoRYRgV0hWUgecdkllQClZSN7zPqBA==", "dgSpecHash": "Sm0ObQgf9KDH/gcYnpfHlXR+ExJ98CSzc9mICxtGxbCBsjLy5FnN0bJ7FfsvoeFMIGGAnXXn66NFzVs5mnIq0A==",
"success": false, "success": false,
"projectFilePath": "/home/kim/code/innovenergy/new/csharp/app/GuiFeeder/GuiFeeder.csproj", "projectFilePath": "/home/kim/code/innovenergy/new/csharp/app/GuiFeeder/GuiFeeder.csproj",
"expectedPackageFiles": [ "expectedPackageFiles": [
"/home/kim/.nuget/packages/cliwrap/3.3.1/cliwrap.3.3.1.nupkg.sha512", "/home/kim/.nuget/packages/cliwrap/3.3.1/cliwrap.3.3.1.nupkg.sha512",
"/home/kim/.nuget/packages/decimalmath.decimalex/1.0.2/decimalmath.decimalex.1.0.2.nupkg.sha512",
"/home/kim/.nuget/packages/system.reactive/5.0.0/system.reactive.5.0.0.nupkg.sha512", "/home/kim/.nuget/packages/system.reactive/5.0.0/system.reactive.5.0.0.nupkg.sha512",
"/home/kim/.nuget/packages/system.reactive.linq/5.0.0/system.reactive.linq.5.0.0.nupkg.sha512", "/home/kim/.nuget/packages/system.reactive.linq/5.0.0/system.reactive.linq.5.0.0.nupkg.sha512",
"/home/kim/.nuget/packages/system.reflection.emit/4.7.0/system.reflection.emit.4.7.0.nupkg.sha512", "/home/kim/.nuget/packages/system.reflection.emit/4.7.0/system.reflection.emit.4.7.0.nupkg.sha512",

View File

@ -1 +1 @@
16765322878013266 16769606177434988

View File

@ -98,6 +98,10 @@
"target": "Package", "target": "Package",
"version": "[3.3.1, )" "version": "[3.3.1, )"
}, },
"DecimalMath.DecimalEx": {
"target": "Package",
"version": "[1.0.2, )"
},
"System.Reactive.Linq": { "System.Reactive.Linq": {
"target": "Package", "target": "Package",
"version": "[5.0.0, )" "version": "[5.0.0, )"

View File

@ -15,6 +15,19 @@
} }
} }
}, },
"DecimalMath.DecimalEx/1.0.2": {
"type": "package",
"compile": {
"lib/netstandard2.0/DecimalEx.dll": {
"related": ".xml"
}
},
"runtime": {
"lib/netstandard2.0/DecimalEx.dll": {
"related": ".xml"
}
}
},
"System.Reactive/5.0.0": { "System.Reactive/5.0.0": {
"type": "package", "type": "package",
"compile": { "compile": {
@ -62,6 +75,7 @@
"framework": ".NETCoreApp,Version=v6.0", "framework": ".NETCoreApp,Version=v6.0",
"dependencies": { "dependencies": {
"CliWrap": "3.3.1", "CliWrap": "3.3.1",
"DecimalMath.DecimalEx": "1.0.2",
"System.Reactive.Linq": "5.0.0" "System.Reactive.Linq": "5.0.0"
}, },
"compile": { "compile": {
@ -94,6 +108,20 @@
"lib/netstandard2.1/CliWrap.xml" "lib/netstandard2.1/CliWrap.xml"
] ]
}, },
"DecimalMath.DecimalEx/1.0.2": {
"sha512": "BCii/IxT7Tx7BPZ7MtrpqVlEii/iaHi4OOXpgaPi+zrphnkbe251KKI3S+pgnTzobfn0jS/SF7bgidqOMj1oGw==",
"type": "package",
"path": "decimalmath.decimalex/1.0.2",
"files": [
".nupkg.metadata",
".signature.p7s",
"LICENSE",
"decimalmath.decimalex.1.0.2.nupkg.sha512",
"decimalmath.decimalex.nuspec",
"lib/netstandard2.0/DecimalEx.dll",
"lib/netstandard2.0/DecimalEx.xml"
]
},
"System.Reactive/5.0.0": { "System.Reactive/5.0.0": {
"sha512": "erBZjkQHWL9jpasCE/0qKAryzVBJFxGHVBAvgRN1bzM0q2s1S4oYREEEL0Vb+1kA/6BKb5FjUZMp5VXmy+gzkQ==", "sha512": "erBZjkQHWL9jpasCE/0qKAryzVBJFxGHVBAvgRN1bzM0q2s1S4oYREEEL0Vb+1kA/6BKb5FjUZMp5VXmy+gzkQ==",
"type": "package", "type": "package",

View File

@ -1,10 +1,11 @@
{ {
"version": 2, "version": 2,
"dgSpecHash": "tCxgCnwFnFzHL6MsnctgrTrsOK6WQa2VxHS5FWl65w7tD4THMX81cgx1rDX1NlsndB+AGdrMU8q5VH/p2JbSLA==", "dgSpecHash": "nKiQuR7HM+9Q0MXXJFrKHfrct9NGC6Bssl2ZK/w5IytlFEAOeJBLDprHJI5Gb4/LXpG4YN7PvT+e9YQkX4YhvA==",
"success": true, "success": true,
"projectFilePath": "/home/kim/code/innovenergy/new/csharp/app/Logging/Logging.csproj", "projectFilePath": "/home/kim/code/innovenergy/new/csharp/app/Logging/Logging.csproj",
"expectedPackageFiles": [ "expectedPackageFiles": [
"/home/kim/.nuget/packages/cliwrap/3.3.1/cliwrap.3.3.1.nupkg.sha512", "/home/kim/.nuget/packages/cliwrap/3.3.1/cliwrap.3.3.1.nupkg.sha512",
"/home/kim/.nuget/packages/decimalmath.decimalex/1.0.2/decimalmath.decimalex.1.0.2.nupkg.sha512",
"/home/kim/.nuget/packages/system.reactive/5.0.0/system.reactive.5.0.0.nupkg.sha512", "/home/kim/.nuget/packages/system.reactive/5.0.0/system.reactive.5.0.0.nupkg.sha512",
"/home/kim/.nuget/packages/system.reactive.linq/5.0.0/system.reactive.linq.5.0.0.nupkg.sha512", "/home/kim/.nuget/packages/system.reactive.linq/5.0.0/system.reactive.linq.5.0.0.nupkg.sha512",
"/home/kim/.nuget/packages/system.threading.tasks.extensions/4.5.4/system.threading.tasks.extensions.4.5.4.nupkg.sha512" "/home/kim/.nuget/packages/system.threading.tasks.extensions/4.5.4/system.threading.tasks.extensions.4.5.4.nupkg.sha512"

View File

@ -1 +1 @@
16758719413362651 16769606177514988

View File

@ -229,6 +229,10 @@
"target": "Package", "target": "Package",
"version": "[3.3.1, )" "version": "[3.3.1, )"
}, },
"DecimalMath.DecimalEx": {
"target": "Package",
"version": "[1.0.2, )"
},
"System.Reactive.Linq": { "System.Reactive.Linq": {
"target": "Package", "target": "Package",
"version": "[5.0.0, )" "version": "[5.0.0, )"

View File

@ -15,6 +15,19 @@
} }
} }
}, },
"DecimalMath.DecimalEx/1.0.2": {
"type": "package",
"compile": {
"lib/netstandard2.0/DecimalEx.dll": {
"related": ".xml"
}
},
"runtime": {
"lib/netstandard2.0/DecimalEx.dll": {
"related": ".xml"
}
}
},
"Flurl/3.0.2": { "Flurl/3.0.2": {
"type": "package", "type": "package",
"compile": { "compile": {
@ -186,6 +199,7 @@
"framework": ".NETCoreApp,Version=v6.0", "framework": ".NETCoreApp,Version=v6.0",
"dependencies": { "dependencies": {
"CliWrap": "3.3.1", "CliWrap": "3.3.1",
"DecimalMath.DecimalEx": "1.0.2",
"System.Reactive.Linq": "5.0.0" "System.Reactive.Linq": "5.0.0"
}, },
"compile": { "compile": {
@ -218,6 +232,20 @@
"lib/netstandard2.1/CliWrap.xml" "lib/netstandard2.1/CliWrap.xml"
] ]
}, },
"DecimalMath.DecimalEx/1.0.2": {
"sha512": "BCii/IxT7Tx7BPZ7MtrpqVlEii/iaHi4OOXpgaPi+zrphnkbe251KKI3S+pgnTzobfn0jS/SF7bgidqOMj1oGw==",
"type": "package",
"path": "decimalmath.decimalex/1.0.2",
"files": [
".nupkg.metadata",
".signature.p7s",
"LICENSE",
"decimalmath.decimalex.1.0.2.nupkg.sha512",
"decimalmath.decimalex.nuspec",
"lib/netstandard2.0/DecimalEx.dll",
"lib/netstandard2.0/DecimalEx.xml"
]
},
"Flurl/3.0.2": { "Flurl/3.0.2": {
"sha512": "1/6mqdzGCTdAekbWkVZBTylCV+8g3JUSTXRBngRVR274S+RsAYNRF79GbDoDsPfMKu8VPc9HkQWdBEAncK1PQQ==", "sha512": "1/6mqdzGCTdAekbWkVZBTylCV+8g3JUSTXRBngRVR274S+RsAYNRF79GbDoDsPfMKu8VPc9HkQWdBEAncK1PQQ==",
"type": "package", "type": "package",

View File

@ -1,10 +1,11 @@
{ {
"version": 2, "version": 2,
"dgSpecHash": "d/LI/T8eCpgIJKtA6uWehmIp7Ra7KqbDho9Qa9qWOUcsPYwjXm6VGt4mesRy0Mo1N9t2vXtyZTqD2UtDC/N8zA==", "dgSpecHash": "wJGMLcKu4YOjKxKZWKVDsAFNZ+qFJSTx0anSJi+udROWELHYtcKCrVBvSf9svSz6WxS/qLUkfMqst6vWJAmuBA==",
"success": true, "success": true,
"projectFilePath": "/home/kim/code/innovenergy/new/csharp/app/Meiringen/Meiringen.csproj", "projectFilePath": "/home/kim/code/innovenergy/new/csharp/app/Meiringen/Meiringen.csproj",
"expectedPackageFiles": [ "expectedPackageFiles": [
"/home/kim/.nuget/packages/cliwrap/3.3.1/cliwrap.3.3.1.nupkg.sha512", "/home/kim/.nuget/packages/cliwrap/3.3.1/cliwrap.3.3.1.nupkg.sha512",
"/home/kim/.nuget/packages/decimalmath.decimalex/1.0.2/decimalmath.decimalex.1.0.2.nupkg.sha512",
"/home/kim/.nuget/packages/flurl/3.0.2/flurl.3.0.2.nupkg.sha512", "/home/kim/.nuget/packages/flurl/3.0.2/flurl.3.0.2.nupkg.sha512",
"/home/kim/.nuget/packages/flurl.http/3.2.0/flurl.http.3.2.0.nupkg.sha512", "/home/kim/.nuget/packages/flurl.http/3.2.0/flurl.http.3.2.0.nupkg.sha512",
"/home/kim/.nuget/packages/google.protobuf/3.19.4/google.protobuf.3.19.4.nupkg.sha512", "/home/kim/.nuget/packages/google.protobuf/3.19.4/google.protobuf.3.19.4.nupkg.sha512",

View File

@ -1 +1 @@
16758719413362651 16769606177554988

View File

@ -233,6 +233,10 @@
"target": "Package", "target": "Package",
"version": "[3.3.1, )" "version": "[3.3.1, )"
}, },
"DecimalMath.DecimalEx": {
"target": "Package",
"version": "[1.0.2, )"
},
"System.Reactive.Linq": { "System.Reactive.Linq": {
"target": "Package", "target": "Package",
"version": "[5.0.0, )" "version": "[5.0.0, )"

View File

@ -24,6 +24,19 @@
} }
} }
}, },
"DecimalMath.DecimalEx/1.0.2": {
"type": "package",
"compile": {
"lib/netstandard2.0/DecimalEx.dll": {
"related": ".xml"
}
},
"runtime": {
"lib/netstandard2.0/DecimalEx.dll": {
"related": ".xml"
}
}
},
"Flurl/3.0.4": { "Flurl/3.0.4": {
"type": "package", "type": "package",
"compile": { "compile": {
@ -274,6 +287,7 @@
"framework": ".NETCoreApp,Version=v6.0", "framework": ".NETCoreApp,Version=v6.0",
"dependencies": { "dependencies": {
"CliWrap": "3.3.1", "CliWrap": "3.3.1",
"DecimalMath.DecimalEx": "1.0.2",
"System.Reactive.Linq": "5.0.0" "System.Reactive.Linq": "5.0.0"
}, },
"compile": { "compile": {
@ -336,6 +350,20 @@
"lib/netstandard2.1/CliWrap.xml" "lib/netstandard2.1/CliWrap.xml"
] ]
}, },
"DecimalMath.DecimalEx/1.0.2": {
"sha512": "BCii/IxT7Tx7BPZ7MtrpqVlEii/iaHi4OOXpgaPi+zrphnkbe251KKI3S+pgnTzobfn0jS/SF7bgidqOMj1oGw==",
"type": "package",
"path": "decimalmath.decimalex/1.0.2",
"files": [
".nupkg.metadata",
".signature.p7s",
"LICENSE",
"decimalmath.decimalex.1.0.2.nupkg.sha512",
"decimalmath.decimalex.nuspec",
"lib/netstandard2.0/DecimalEx.dll",
"lib/netstandard2.0/DecimalEx.xml"
]
},
"Flurl/3.0.4": { "Flurl/3.0.4": {
"sha512": "2bgCzOs3TGwRkfcijCiH+7o9Pz4pyVnt4yyLX2vD3wlMSekpmGhqe2zA4988qSMmPa6AqeekX13CY4FvsjsDJQ==", "sha512": "2bgCzOs3TGwRkfcijCiH+7o9Pz4pyVnt4yyLX2vD3wlMSekpmGhqe2zA4988qSMmPa6AqeekX13CY4FvsjsDJQ==",
"type": "package", "type": "package",

View File

@ -1,11 +1,12 @@
{ {
"version": 2, "version": 2,
"dgSpecHash": "TI3lsVsGRTJmH6CVbTwVd2DTDjreeGGON7YyzY8QAhsqlofp4JHK0yMxhwSNzuCrf8Z1mYOlbCQ+v9n0sgq6Vw==", "dgSpecHash": "PURWN6Z2AsaTF0jBKvUimx2dUETO70Z5O1PWES1dt8s6Dkt+3PHB83spJwnLOoPHUxZ35fXy20FekyUvGARJrA==",
"success": true, "success": true,
"projectFilePath": "/home/kim/code/innovenergy/new/csharp/app/OpenVpnCertificatesServer/OpenVpnCertificatesServer.csproj", "projectFilePath": "/home/kim/code/innovenergy/new/csharp/app/OpenVpnCertificatesServer/OpenVpnCertificatesServer.csproj",
"expectedPackageFiles": [ "expectedPackageFiles": [
"/home/kim/.nuget/packages/bouncycastle/1.8.9/bouncycastle.1.8.9.nupkg.sha512", "/home/kim/.nuget/packages/bouncycastle/1.8.9/bouncycastle.1.8.9.nupkg.sha512",
"/home/kim/.nuget/packages/cliwrap/3.3.1/cliwrap.3.3.1.nupkg.sha512", "/home/kim/.nuget/packages/cliwrap/3.3.1/cliwrap.3.3.1.nupkg.sha512",
"/home/kim/.nuget/packages/decimalmath.decimalex/1.0.2/decimalmath.decimalex.1.0.2.nupkg.sha512",
"/home/kim/.nuget/packages/flurl/3.0.4/flurl.3.0.4.nupkg.sha512", "/home/kim/.nuget/packages/flurl/3.0.4/flurl.3.0.4.nupkg.sha512",
"/home/kim/.nuget/packages/flurl.http/3.2.2/flurl.http.3.2.2.nupkg.sha512", "/home/kim/.nuget/packages/flurl.http/3.2.2/flurl.http.3.2.2.nupkg.sha512",
"/home/kim/.nuget/packages/microsoft.netcore.platforms/2.1.2/microsoft.netcore.platforms.2.1.2.nupkg.sha512", "/home/kim/.nuget/packages/microsoft.netcore.platforms/2.1.2/microsoft.netcore.platforms.2.1.2.nupkg.sha512",

View File

@ -1 +1 @@
16765322878013266 16769606177474988

View File

@ -163,6 +163,10 @@
"target": "Package", "target": "Package",
"version": "[3.3.1, )" "version": "[3.3.1, )"
}, },
"DecimalMath.DecimalEx": {
"target": "Package",
"version": "[1.0.2, )"
},
"System.Reactive.Linq": { "System.Reactive.Linq": {
"target": "Package", "target": "Package",
"version": "[5.0.0, )" "version": "[5.0.0, )"

View File

@ -15,6 +15,19 @@
} }
} }
}, },
"DecimalMath.DecimalEx/1.0.2": {
"type": "package",
"compile": {
"lib/netstandard2.0/DecimalEx.dll": {
"related": ".xml"
}
},
"runtime": {
"lib/netstandard2.0/DecimalEx.dll": {
"related": ".xml"
}
}
},
"Flurl/3.0.2": { "Flurl/3.0.2": {
"type": "package", "type": "package",
"compile": { "compile": {
@ -234,6 +247,7 @@
"framework": ".NETCoreApp,Version=v6.0", "framework": ".NETCoreApp,Version=v6.0",
"dependencies": { "dependencies": {
"CliWrap": "3.3.1", "CliWrap": "3.3.1",
"DecimalMath.DecimalEx": "1.0.2",
"System.Reactive.Linq": "5.0.0" "System.Reactive.Linq": "5.0.0"
}, },
"compile": { "compile": {
@ -284,6 +298,20 @@
"lib/netstandard2.1/CliWrap.xml" "lib/netstandard2.1/CliWrap.xml"
] ]
}, },
"DecimalMath.DecimalEx/1.0.2": {
"sha512": "BCii/IxT7Tx7BPZ7MtrpqVlEii/iaHi4OOXpgaPi+zrphnkbe251KKI3S+pgnTzobfn0jS/SF7bgidqOMj1oGw==",
"type": "package",
"path": "decimalmath.decimalex/1.0.2",
"files": [
".nupkg.metadata",
".signature.p7s",
"LICENSE",
"decimalmath.decimalex.1.0.2.nupkg.sha512",
"decimalmath.decimalex.nuspec",
"lib/netstandard2.0/DecimalEx.dll",
"lib/netstandard2.0/DecimalEx.xml"
]
},
"Flurl/3.0.2": { "Flurl/3.0.2": {
"sha512": "1/6mqdzGCTdAekbWkVZBTylCV+8g3JUSTXRBngRVR274S+RsAYNRF79GbDoDsPfMKu8VPc9HkQWdBEAncK1PQQ==", "sha512": "1/6mqdzGCTdAekbWkVZBTylCV+8g3JUSTXRBngRVR274S+RsAYNRF79GbDoDsPfMKu8VPc9HkQWdBEAncK1PQQ==",
"type": "package", "type": "package",

View File

@ -1,10 +1,11 @@
{ {
"version": 2, "version": 2,
"dgSpecHash": "AdnIfm2lNYa0hZdkAnUPEg0raUxomGw3BfN55kJR0l/A9D2btlf5Klc7INJwX3b5EfYHX6zPLRkpMmwP9bSczA==", "dgSpecHash": "5BTw46APqOr5EwrDgKZrsoSeSWwW4szbE+t91il2kXeIp9S3W9fmBCSQYFzwexpBevH2F6+7W7pbqkOkWz9SAg==",
"success": true, "success": true,
"projectFilePath": "/home/kim/code/innovenergy/new/csharp/app/RemoteSupportConsole/RemoteSupportConsole.csproj", "projectFilePath": "/home/kim/code/innovenergy/new/csharp/app/RemoteSupportConsole/RemoteSupportConsole.csproj",
"expectedPackageFiles": [ "expectedPackageFiles": [
"/home/kim/.nuget/packages/cliwrap/3.6.0/cliwrap.3.6.0.nupkg.sha512", "/home/kim/.nuget/packages/cliwrap/3.6.0/cliwrap.3.6.0.nupkg.sha512",
"/home/kim/.nuget/packages/decimalmath.decimalex/1.0.2/decimalmath.decimalex.1.0.2.nupkg.sha512",
"/home/kim/.nuget/packages/flurl/3.0.2/flurl.3.0.2.nupkg.sha512", "/home/kim/.nuget/packages/flurl/3.0.2/flurl.3.0.2.nupkg.sha512",
"/home/kim/.nuget/packages/flurl.http/3.2.0/flurl.http.3.2.0.nupkg.sha512", "/home/kim/.nuget/packages/flurl.http/3.2.0/flurl.http.3.2.0.nupkg.sha512",
"/home/kim/.nuget/packages/microsoft.bcl.asyncinterfaces/6.0.0/microsoft.bcl.asyncinterfaces.6.0.0.nupkg.sha512", "/home/kim/.nuget/packages/microsoft.bcl.asyncinterfaces/6.0.0/microsoft.bcl.asyncinterfaces.6.0.0.nupkg.sha512",

View File

@ -1 +1 @@
16765322878013266 16769606177594988

View File

@ -726,6 +726,10 @@
"target": "Package", "target": "Package",
"version": "[3.3.1, )" "version": "[3.3.1, )"
}, },
"DecimalMath.DecimalEx": {
"target": "Package",
"version": "[1.0.2, )"
},
"System.Reactive.Linq": { "System.Reactive.Linq": {
"target": "Package", "target": "Package",
"version": "[5.0.0, )" "version": "[5.0.0, )"

View File

@ -378,6 +378,7 @@
"framework": ".NETCoreApp,Version=v6.0", "framework": ".NETCoreApp,Version=v6.0",
"dependencies": { "dependencies": {
"CliWrap": "3.3.1", "CliWrap": "3.3.1",
"DecimalMath.DecimalEx": "1.0.2",
"System.Reactive.Linq": "5.0.0" "System.Reactive.Linq": "5.0.0"
}, },
"compile": { "compile": {

View File

@ -1,6 +1,6 @@
{ {
"version": 2, "version": 2,
"dgSpecHash": "8ZrGpi/CCtEGUWcbUHi3w8aGb6XllKy4nkfVZNHV8M6DhjiXCLpu36OFEUH0dPqzdEZtvMEpoO4bW6c6Xzrmag==", "dgSpecHash": "Dp+CqO5frfeh+Sk8YUkxWZex9Ta2zDQcbbXGy6aNkhlOfuGgWTn6xAJIAU6B48BH6ZTO6FFtQASv/UDKEpp3aw==",
"success": true, "success": true,
"projectFilePath": "/home/kim/code/innovenergy/new/csharp/app/SaliMax/SaliMax.csproj", "projectFilePath": "/home/kim/code/innovenergy/new/csharp/app/SaliMax/SaliMax.csproj",
"expectedPackageFiles": [ "expectedPackageFiles": [

View File

@ -1 +1 @@
16759449276686422 16769606177674987

View File

@ -1,27 +1,46 @@
using System.Text.Json.Nodes; using System.Text.Json.Nodes;
using DecimalMath;
using InnovEnergy.Lib.Devices.EmuMeter; using InnovEnergy.Lib.Devices.EmuMeter;
using InnovEnergy.Lib.StatusApi; using InnovEnergy.Lib.StatusApi;
using InnovEnergy.Lib.Utils; using InnovEnergy.Lib.Utils;
using static DecimalMath.DecimalEx;
using static InnovEnergy.SaliMax.Log.JsonUtil;
namespace InnovEnergy.SaliMax.Log; namespace InnovEnergy.SaliMax.Log;
public static class EmuMeter public static class EmuMeter
{ {
public static JsonObject? Log(this EmuMeterStatus? s, DeviceType type) public static JsonObject? Log(this EmuMeterStatus? s, DeviceType type, String serialNb)
{ {
if (s is null) if (s is null)
return null; return null;
return type
.CreateDevice("EmuMeter") //
.AddAcConnection(s.Frequency.Round3(), s.GetAcPhases());
var l1 = CreateAcPhase(s.CurrentL1, s.VoltageL1N, ACos(s.PowerFactorL1));
var l2 = CreateAcPhase(s.CurrentL2, s.VoltageL2N, ACos(s.PowerFactorL2));
var l3 = CreateAcPhase(s.CurrentL3, s.VoltageL3N, ACos(s.PowerFactorL3));
var ac = new JsonObject
{
["L1"] = l1,
["L2"] = l2,
["L3"] = l3,
["Frequency"] = s.Frequency
};
var status = new JsonObject
{
["Ac"] = ac,
};
return new JsonObject { [$"EmuMeter {serialNb}"] = status };
} }
private static IEnumerable<JsonObject> GetAcPhases(this EmuMeterStatus s) private static IEnumerable<JsonObject> GetAcPhases(this EmuMeterStatus s)
{ {
yield return Util.CreateAcPhase(s.CurrentL1.Round3(),s.VoltageL1N.Round3(),s.PowerFactorL1.Apply(DecimalEx.ACos).Round3()); yield return CreateAcPhase(s.CurrentL1.Round3(),s.VoltageL1N.Round3(),s.PowerFactorL1.Apply(ACos).Round3());
yield return Util.CreateAcPhase(s.CurrentL2.Round3(),s.VoltageL2N.Round3(),s.PowerFactorL2.Apply(DecimalEx.ACos).Round3()); yield return CreateAcPhase(s.CurrentL2.Round3(),s.VoltageL2N.Round3(),s.PowerFactorL2.Apply(ACos).Round3());
yield return Util.CreateAcPhase(s.CurrentL3.Round3(),s.VoltageL3N.Round3(),s.PowerFactorL3.Apply(DecimalEx.ACos).Round3()); yield return CreateAcPhase(s.CurrentL3.Round3(),s.VoltageL3N.Round3(),s.PowerFactorL3.Apply(ACos).Round3());
} }
} }

View File

@ -24,8 +24,8 @@ public static class Salimax
private static IEnumerable<JsonNode?> GetDevices(StatusRecord s) private static IEnumerable<JsonNode?> GetDevices(StatusRecord s)
{ {
yield return s.InverterStatus.Log(); yield return s.InverterStatus.Log("1234");
yield return s.DcDcStatus.Log(); yield return s.DcDcStatus.Log("3214");
yield return s.GridMeterStatus.Log(DeviceType.Grid); yield return s.GridMeterStatus.Log(DeviceType.Grid);
yield return s.AcInToAcOutMeterStatus.Log(DeviceType.AcInToAcOut); yield return s.AcInToAcOutMeterStatus.Log(DeviceType.AcInToAcOut);
yield return s.AmptStatus.Log(); yield return s.AmptStatus.Log();
@ -34,49 +34,49 @@ public static class Salimax
public static JsonArray CreateTopology() public static JsonArray CreateTopology()
{ {
var acInBusJson = Util.CreateBus var acInBusJson = JsonUtil.CreateBus
( (
name: "AcIn", name: "AcIn",
left: Util.Port(DeviceType.Grid, BusPort.Ac), left: JsonUtil.Port(DeviceType.Grid, BusPort.Ac),
top: Util.Port(DeviceType.PvOnAcIn, BusPort.Ac), top: JsonUtil.Port(DeviceType.PvOnAcIn, BusPort.Ac),
bottom: Util.Port(DeviceType.Load, BusPort.Infer), bottom: JsonUtil.Port(DeviceType.Load, BusPort.Infer),
right: Util.Port(DeviceType.AcInToAcOut, BusPort.Ac, false) right: JsonUtil.Port(DeviceType.AcInToAcOut, BusPort.Ac, false)
); );
var acOutBusJson = Util.CreateBus var acOutBusJson = JsonUtil.CreateBus
( (
name: "AcOut", name: "AcOut",
left: Util.Port(DeviceType.AcInToAcOut, BusPort.Ac, false), left: JsonUtil.Port(DeviceType.AcInToAcOut, BusPort.Ac, false),
top: Util.Port(DeviceType.PvOnAcOut, BusPort.Ac), top: JsonUtil.Port(DeviceType.PvOnAcOut, BusPort.Ac),
bottom: Util.Port(DeviceType.CriticalLoad, BusPort.Infer), bottom: JsonUtil.Port(DeviceType.CriticalLoad, BusPort.Infer),
right: Util.Port(DeviceType.Inverter, BusPort.Ac) right: JsonUtil.Port(DeviceType.Inverter, BusPort.Ac)
); );
var inverterJson = Util.CreateBus var inverterJson = JsonUtil.CreateBus
( (
name: "Inverter", name: "Inverter",
left: Util.Port(DeviceType.Inverter, BusPort.Ac), left: JsonUtil.Port(DeviceType.Inverter, BusPort.Ac),
top: Util.Port(DeviceType.None, BusPort.None), top: JsonUtil.Port(DeviceType.None, BusPort.None),
bottom: Util.Port(DeviceType.Losses, BusPort.Infer), bottom: JsonUtil.Port(DeviceType.Losses, BusPort.Infer),
right: Util.Port(DeviceType.Inverter, BusPort.Dc) right: JsonUtil.Port(DeviceType.Inverter, BusPort.Dc)
); );
var dcBusJson = Util.CreateBus var dcBusJson = JsonUtil.CreateBus
( (
name: "Dc", name: "Dc",
left: Util.Port(DeviceType.Inverter, BusPort.Dc), left: JsonUtil.Port(DeviceType.Inverter, BusPort.Dc),
top: Util.Port(DeviceType.PvOnDc, BusPort.Dc), top: JsonUtil.Port(DeviceType.PvOnDc, BusPort.Dc),
bottom: Util.Port(DeviceType.DcLoad, BusPort.Infer), bottom: JsonUtil.Port(DeviceType.DcLoad, BusPort.Infer),
right: Util.Port(DeviceType.DcDc, BusPort.Dc) right: JsonUtil.Port(DeviceType.DcDc, BusPort.Dc)
); );
var dcDcJson = Util.CreateBus var dcDcJson = JsonUtil.CreateBus
( (
name: "DcDc", name: "DcDc",
left: Util.Port(DeviceType.DcDc, BusPort.Dc), left: JsonUtil.Port(DeviceType.DcDc, BusPort.Dc),
top: Util.Port(DeviceType.None, BusPort.None), top: JsonUtil.Port(DeviceType.None, BusPort.None),
bottom: Util.Port(DeviceType.Losses, BusPort.Infer), bottom: JsonUtil.Port(DeviceType.Losses, BusPort.Infer),
right: Util.Port(DeviceType.Battery, BusPort.Dc) right: JsonUtil.Port(DeviceType.Battery, BusPort.Dc)
); );
return new JsonArray(acInBusJson, acOutBusJson, inverterJson, dcBusJson, dcDcJson); return new JsonArray(acInBusJson, acOutBusJson, inverterJson, dcBusJson, dcDcJson);

View File

@ -1,46 +1,66 @@
using System.Text.Json.Nodes; using System.Text.Json.Nodes;
using DecimalMath;
using InnovEnergy.Lib.Devices.Trumpf.TruConvertAc; using InnovEnergy.Lib.Devices.Trumpf.TruConvertAc;
using InnovEnergy.Lib.StatusApi;
using InnovEnergy.Lib.Utils; using InnovEnergy.Lib.Utils;
using static DecimalMath.DecimalEx;
using static InnovEnergy.SaliMax.Log.JsonUtil;
namespace InnovEnergy.SaliMax.Log; namespace InnovEnergy.SaliMax.Log;
public static class TruConvertAc public static class TruConvertAc
{ {
public static JsonObject? Log(this TruConvertAcStatus? s)
// TODO: remove serialNb arg, embed TruConvertDcStatus
public static JsonObject? Log(this TruConvertAcStatus? s, String serialNb)
{ {
if (s is null) if (s is null)
return null; return null;
var pwr = s.PowerAcL1 + s.PowerAcL2 + s.PowerAcL3; var dcPower = s.PowerAcL1 + s.PowerAcL2 + s.PowerAcL3;
var voltage = s.ActualDcLinkVoltageLowerHalfExt + s.ActualDcLinkVoltageUpperHalfExt; var dcVoltage = s.ActualDcLinkVoltageLowerHalfExt + s.ActualDcLinkVoltageUpperHalfExt;
var current = 0.0m; var dcCurrent = dcVoltage != 0m
if (voltage != 0) ? dcPower / dcVoltage
: 0m;
// TODO: acos quadrant
// TODO: total AC power
var l1 = CreateAcPhase(s.PhaseCurrentL1, s.GridVoltageL1, ACos(s.CosPhiL1));
var l2 = CreateAcPhase(s.PhaseCurrentL2, s.GridVoltageL2, ACos(s.CosPhiL2));
var l3 = CreateAcPhase(s.PhaseCurrentL3, s.GridVoltageL3, ACos(s.CosPhiL3));
var ac = new JsonObject
{ {
current = pwr / voltage; ["L1"] = l1,
} ["L2"] = l2,
return DeviceType ["L3"] = l3,
.Inverter ["Frequency"] = s.GridFrequency
.CreateDevice("TruConvertAc") };
.AddAcConnection(Decimal.Round(s.GridFrequency, 3), s.GetAcPhases())
.AddProp("Total Calculated Power", pwr) var dc = CreateDcPhase(dcCurrent, dcVoltage);
.AddDcConnection(Decimal.Round(current, 3), voltage)
.AddAlarms(s.Alarms) var status = new JsonObject
.AddProp("MainState", s.MainState.ToString()); {
["Ac"] = ac ,
["Dc"] = dc ,
["Warnings"] = s.Warnings.ToJsonArray() ,
["Alarms"] = s.Alarms.ToJsonArray() ,
};
return new JsonObject { [$"TruConvertAc {serialNb}"] = status };
} }
private static IEnumerable<JsonObject> GetAcPhases(this TruConvertAcStatus s) private static IEnumerable<JsonObject> GetAcPhases(this TruConvertAcStatus s)
{ {
// Math.Acos return "NaN" if the cos phi < -1 or > 1 // Math.Acos return "NaN" if the cos phi < -1 or > 1
// Decimal.Acos throw an exception // Decimal.Acos throw an exception
yield return Util.CreateAcPhase(s.PhaseCurrentL1.Round3(), s.GridVoltageL1.Round3(), yield return JsonUtil.CreateAcPhase(s.PhaseCurrentL1.Round3(), s.GridVoltageL1.Round3(),
s.CosPhiL1.Clamp(-1m, 1m).Apply(DecimalEx.ACos).Round3()); s.CosPhiL1.Clamp(-1m, 1m).Apply(ACos).Round3());
yield return Util.CreateAcPhase(s.PhaseCurrentL2.Round3(), s.GridVoltageL2.Round3(), yield return JsonUtil.CreateAcPhase(s.PhaseCurrentL2.Round3(), s.GridVoltageL2.Round3(),
s.CosPhiL2.Clamp(-1m, 1m).Apply(DecimalEx.ACos).Round3()); s.CosPhiL2.Clamp(-1m, 1m).Apply(ACos).Round3());
yield return Util.CreateAcPhase(s.PhaseCurrentL3.Round3(), s.GridVoltageL3.Round3(), yield return JsonUtil.CreateAcPhase(s.PhaseCurrentL3.Round3(), s.GridVoltageL3.Round3(),
s.CosPhiL3.Clamp(-1m, 1m).Apply(DecimalEx.ACos).Round3()); s.CosPhiL3.Clamp(-1m, 1m).Apply(ACos).Round3());
} }
} }

View File

@ -1,31 +1,43 @@
using System.Text.Json.Nodes; using System.Text.Json.Nodes;
using InnovEnergy.Lib.Devices.Trumpf.TruConvertDc; using InnovEnergy.Lib.Devices.Trumpf.TruConvertDc;
using InnovEnergy.Lib.StatusApi; using static InnovEnergy.SaliMax.Log.JsonUtil;
namespace InnovEnergy.SaliMax.Log; namespace InnovEnergy.SaliMax.Log;
using JO = JsonObject;
public static class TruConvertDc public static class TruConvertDc
{ {
public static JsonObject? Log(this TruConvertDcStatus? s) // TODO: remove serialNb arg, embed TruConvertDcStatus
public static JsonObject? Log(this TruConvertDcStatus? s, String serialNb)
{ {
if (s is null) if (s is null)
return null; return null;
var pwr = s.DcPower; var dcCurrent = s.DcLinkVoltage != 0m
var voltage = s.DcLinkVoltage; ? s.DcPower / s.DcLinkVoltage
var current = 0.0m; : 0m;
if (voltage != 0)
{
current = pwr / voltage;
}
return DeviceType return new JO
.DcDc {
.CreateDevice("TruConvertDc") {
.AddDcConnection(Decimal.Round(current, 3), s.DcLinkVoltage) $"TruConvertDc {serialNb}", new JO
.AddDc48Connection(Decimal.Round(s.BatteryCurrent, 3), Decimal.Round(s.BatteryVoltage, 3)) {
.AddWarnings(s.Warnings) { "Dc" , CreateDcPhase(dcCurrent, s.DcLinkVoltage) },
.AddAlarms(s.Alarms) { "Dc48" , CreateDcPhase(s.BatteryCurrent, s.BatteryVoltage) },
.AddProp("DC Power", s.DcPower); { "Warnings", s.Warnings.ToJsonArray() },
{ "Alarms" , s.Alarms.ToJsonArray() },
}
}
};
// return DeviceType
// .DcDc
// .CreateDevice("TruConvertDc")
// //.AddDcConnection(Decimal.Round(current, 3), s.DcLinkVoltage)
// .AddDc48Connection(Decimal.Round(s.BatteryCurrent, 3), Decimal.Round(s.BatteryVoltage, 3))
// .AddWarnings(s.Warnings)
// .AddAlarms(s.Alarms)
// .AddProp("DC Power", s.DcPower);
} }
} }

View File

@ -1,111 +0,0 @@
using System.Text.Json.Nodes;
using InnovEnergy.Lib.StatusApi;
namespace InnovEnergy.SaliMax.Log;
public static class Util
{
public static JsonObject CreateDevice(this DeviceType deviceType, String name)
{
return new JsonObject
{
{ "Name", name },
{ "Type", deviceType.ToString() }
};
}
public static JsonObject AddAcConnection(this JsonObject json, Decimal frequency, IEnumerable<JsonNode> acPhases)
{
return json.AddAcConnection(frequency, acPhases.ToArray());
}
public static JsonObject AddAcConnection(this JsonObject json, Decimal frequency, params JsonNode[] acPhases)
{
return json
.AddProp("Ac", new JsonArray(acPhases))
.AddProp("Frequency", frequency);
}
public static JsonObject AddAlarms<T>(this JsonObject json, IEnumerable<T> alarms)
{
return json.AddProp("Alarms", alarms.ToJsonArray());
}
public static JsonObject AddWarnings<T>(this JsonObject json, IEnumerable<T> warnings)
{
return json.AddProp("Warnings", warnings.ToJsonArray());
}
public static JsonObject AddProp(this JsonObject json, String key, JsonNode? value)
{
json.Add(key, value);
return json;
}
public static JsonObject AddDcConnection(this JsonObject json, Decimal current, Decimal voltage)
{
return json.AddProp("Dc", CreateDcPhase(current, voltage));
}
public static JsonObject AddDc48Connection(this JsonObject json, Decimal current, Decimal voltage)
{
return json.AddProp("Dc48", CreateDcPhase(current, voltage));
}
public static JsonObject CreateAcPhase(Decimal current, Decimal voltage, Decimal phi)
{
return CreateDcPhase(current, voltage).AddProp("Phi", phi);
}
public static JsonObject CreateDcPhase(Decimal current, Decimal voltage)
{
return new JsonObject
{
{ "Current", current },
{ "Voltage", voltage }
};
}
public static Decimal Round3(this Decimal val)
{
return Decimal.Round(val, 3);
}
public static Decimal Round0(this Decimal val)
{
return Decimal.Round(val, 0);
}
public static JsonObject CreateBus(String left, String top, String bottom, String right, String name)
{
return new JsonObject
{
{ "Name", name },
{ "Left", left },
{ "Top", top },
{ "Bottom", bottom },
{ "Right", right }
};
}
public static String Port(DeviceType dt, BusPort bp, Boolean display = true)
{
return $"{Enum.GetName(dt)}:{Enum.GetName(bp)}:{(display ? "show" : "hide")}";
}
public static JsonArray ToJsonArray<T>(this IEnumerable<T> things)
{
var jsonValues = things
.Select(t => t!.ToString())
.Select(t => JsonValue.Create(t))
.OfType<JsonNode>()
.ToArray();
return new JsonArray(jsonValues);
}
}

View File

@ -180,6 +180,10 @@
"target": "Package", "target": "Package",
"version": "[3.3.1, )" "version": "[3.3.1, )"
}, },
"DecimalMath.DecimalEx": {
"target": "Package",
"version": "[1.0.2, )"
},
"System.Reactive.Linq": { "System.Reactive.Linq": {
"target": "Package", "target": "Package",
"version": "[5.0.0, )" "version": "[5.0.0, )"

View File

@ -15,6 +15,19 @@
} }
} }
}, },
"DecimalMath.DecimalEx/1.0.2": {
"type": "package",
"compile": {
"lib/netstandard2.0/DecimalEx.dll": {
"related": ".xml"
}
},
"runtime": {
"lib/netstandard2.0/DecimalEx.dll": {
"related": ".xml"
}
}
},
"runtime.linux-arm.runtime.native.System.IO.Ports/6.0.0": { "runtime.linux-arm.runtime.native.System.IO.Ports/6.0.0": {
"type": "package", "type": "package",
"runtimeTargets": { "runtimeTargets": {
@ -193,6 +206,7 @@
"framework": ".NETCoreApp,Version=v6.0", "framework": ".NETCoreApp,Version=v6.0",
"dependencies": { "dependencies": {
"CliWrap": "3.3.1", "CliWrap": "3.3.1",
"DecimalMath.DecimalEx": "1.0.2",
"System.Reactive.Linq": "5.0.0" "System.Reactive.Linq": "5.0.0"
}, },
"compile": { "compile": {
@ -241,6 +255,20 @@
"lib/netstandard2.1/CliWrap.xml" "lib/netstandard2.1/CliWrap.xml"
] ]
}, },
"DecimalMath.DecimalEx/1.0.2": {
"sha512": "BCii/IxT7Tx7BPZ7MtrpqVlEii/iaHi4OOXpgaPi+zrphnkbe251KKI3S+pgnTzobfn0jS/SF7bgidqOMj1oGw==",
"type": "package",
"path": "decimalmath.decimalex/1.0.2",
"files": [
".nupkg.metadata",
".signature.p7s",
"LICENSE",
"decimalmath.decimalex.1.0.2.nupkg.sha512",
"decimalmath.decimalex.nuspec",
"lib/netstandard2.0/DecimalEx.dll",
"lib/netstandard2.0/DecimalEx.xml"
]
},
"runtime.linux-arm.runtime.native.System.IO.Ports/6.0.0": { "runtime.linux-arm.runtime.native.System.IO.Ports/6.0.0": {
"sha512": "75q52H7CSpgIoIDwXb9o833EvBZIXJ0mdPhz1E6jSisEXUBlSCPalC29cj3EXsjpuDwr0dj1LRXZepIQH/oL4Q==", "sha512": "75q52H7CSpgIoIDwXb9o833EvBZIXJ0mdPhz1E6jSisEXUBlSCPalC29cj3EXsjpuDwr0dj1LRXZepIQH/oL4Q==",
"type": "package", "type": "package",

View File

@ -1,10 +1,11 @@
{ {
"version": 2, "version": 2,
"dgSpecHash": "gEMk+mT1D8PWFdFmPG3TRCO0Wz423MJMmNQm5V7OjLW0dLHHs3o0lgWwpKYFTCwiV8ERVVOGTnTudPDYkTg6oQ==", "dgSpecHash": "TD9te3TyXj2RsRsD9acNtF6zR4mfpk/Q+ee530RI+gEveMrsZaBKHRdgmtFzmBLTCXR9dkJizfl4f5oKgJnQjg==",
"success": false, "success": false,
"projectFilePath": "/home/kim/code/innovenergy/new/csharp/app/TestBatteryDbus/TestBatteryDbus.csproj", "projectFilePath": "/home/kim/code/innovenergy/new/csharp/app/TestBatteryDbus/TestBatteryDbus.csproj",
"expectedPackageFiles": [ "expectedPackageFiles": [
"/home/kim/.nuget/packages/cliwrap/3.4.3/cliwrap.3.4.3.nupkg.sha512", "/home/kim/.nuget/packages/cliwrap/3.4.3/cliwrap.3.4.3.nupkg.sha512",
"/home/kim/.nuget/packages/decimalmath.decimalex/1.0.2/decimalmath.decimalex.1.0.2.nupkg.sha512",
"/home/kim/.nuget/packages/runtime.linux-arm.runtime.native.system.io.ports/6.0.0/runtime.linux-arm.runtime.native.system.io.ports.6.0.0.nupkg.sha512", "/home/kim/.nuget/packages/runtime.linux-arm.runtime.native.system.io.ports/6.0.0/runtime.linux-arm.runtime.native.system.io.ports.6.0.0.nupkg.sha512",
"/home/kim/.nuget/packages/runtime.linux-arm64.runtime.native.system.io.ports/6.0.0/runtime.linux-arm64.runtime.native.system.io.ports.6.0.0.nupkg.sha512", "/home/kim/.nuget/packages/runtime.linux-arm64.runtime.native.system.io.ports/6.0.0/runtime.linux-arm64.runtime.native.system.io.ports.6.0.0.nupkg.sha512",
"/home/kim/.nuget/packages/runtime.linux-x64.runtime.native.system.io.ports/6.0.0/runtime.linux-x64.runtime.native.system.io.ports.6.0.0.nupkg.sha512", "/home/kim/.nuget/packages/runtime.linux-x64.runtime.native.system.io.ports/6.0.0/runtime.linux-x64.runtime.native.system.io.ports.6.0.0.nupkg.sha512",

View File

@ -1 +1 @@
16765322878053266 16769606177554988

View File

@ -104,6 +104,10 @@
"target": "Package", "target": "Package",
"version": "[3.3.1, )" "version": "[3.3.1, )"
}, },
"DecimalMath.DecimalEx": {
"target": "Package",
"version": "[1.0.2, )"
},
"System.Reactive.Linq": { "System.Reactive.Linq": {
"target": "Package", "target": "Package",
"version": "[5.0.0, )" "version": "[5.0.0, )"

View File

@ -15,6 +15,19 @@
} }
} }
}, },
"DecimalMath.DecimalEx/1.0.2": {
"type": "package",
"compile": {
"lib/netstandard2.0/DecimalEx.dll": {
"related": ".xml"
}
},
"runtime": {
"lib/netstandard2.0/DecimalEx.dll": {
"related": ".xml"
}
}
},
"System.Reactive/5.0.0": { "System.Reactive/5.0.0": {
"type": "package", "type": "package",
"compile": { "compile": {
@ -62,6 +75,7 @@
"framework": ".NETCoreApp,Version=v6.0", "framework": ".NETCoreApp,Version=v6.0",
"dependencies": { "dependencies": {
"CliWrap": "3.3.1", "CliWrap": "3.3.1",
"DecimalMath.DecimalEx": "1.0.2",
"System.Reactive.Linq": "5.0.0" "System.Reactive.Linq": "5.0.0"
}, },
"compile": { "compile": {
@ -94,6 +108,20 @@
"lib/netstandard2.1/CliWrap.xml" "lib/netstandard2.1/CliWrap.xml"
] ]
}, },
"DecimalMath.DecimalEx/1.0.2": {
"sha512": "BCii/IxT7Tx7BPZ7MtrpqVlEii/iaHi4OOXpgaPi+zrphnkbe251KKI3S+pgnTzobfn0jS/SF7bgidqOMj1oGw==",
"type": "package",
"path": "decimalmath.decimalex/1.0.2",
"files": [
".nupkg.metadata",
".signature.p7s",
"LICENSE",
"decimalmath.decimalex.1.0.2.nupkg.sha512",
"decimalmath.decimalex.nuspec",
"lib/netstandard2.0/DecimalEx.dll",
"lib/netstandard2.0/DecimalEx.xml"
]
},
"System.Reactive/5.0.0": { "System.Reactive/5.0.0": {
"sha512": "erBZjkQHWL9jpasCE/0qKAryzVBJFxGHVBAvgRN1bzM0q2s1S4oYREEEL0Vb+1kA/6BKb5FjUZMp5VXmy+gzkQ==", "sha512": "erBZjkQHWL9jpasCE/0qKAryzVBJFxGHVBAvgRN1bzM0q2s1S4oYREEEL0Vb+1kA/6BKb5FjUZMp5VXmy+gzkQ==",
"type": "package", "type": "package",

View File

@ -1,10 +1,11 @@
{ {
"version": 2, "version": 2,
"dgSpecHash": "krCL4UZYz1RpwmjseSAtEAX3x8idNoLWWKrSWsPX71G0xJ5LUQ94yrUK2fHvrPhdNf1+suuL+8DGaXSPa/UfvQ==", "dgSpecHash": "v6UDRH11HL8zKRPmuAw8RDu1SeuVksziYJMA66hRywqhhoLFAUj4FQ+2/ncDuQ71+mEKVzakLsvo7K3i+CLqlQ==",
"success": true, "success": true,
"projectFilePath": "/home/kim/code/innovenergy/new/csharp/app/VenusFirmwareCiDaemon/FirmwareCiDaemon.csproj", "projectFilePath": "/home/kim/code/innovenergy/new/csharp/app/VenusFirmwareCiDaemon/FirmwareCiDaemon.csproj",
"expectedPackageFiles": [ "expectedPackageFiles": [
"/home/kim/.nuget/packages/cliwrap/3.3.1/cliwrap.3.3.1.nupkg.sha512", "/home/kim/.nuget/packages/cliwrap/3.3.1/cliwrap.3.3.1.nupkg.sha512",
"/home/kim/.nuget/packages/decimalmath.decimalex/1.0.2/decimalmath.decimalex.1.0.2.nupkg.sha512",
"/home/kim/.nuget/packages/system.reactive/5.0.0/system.reactive.5.0.0.nupkg.sha512", "/home/kim/.nuget/packages/system.reactive/5.0.0/system.reactive.5.0.0.nupkg.sha512",
"/home/kim/.nuget/packages/system.reactive.linq/5.0.0/system.reactive.linq.5.0.0.nupkg.sha512", "/home/kim/.nuget/packages/system.reactive.linq/5.0.0/system.reactive.linq.5.0.0.nupkg.sha512",
"/home/kim/.nuget/packages/system.threading.tasks.extensions/4.5.4/system.threading.tasks.extensions.4.5.4.nupkg.sha512" "/home/kim/.nuget/packages/system.threading.tasks.extensions/4.5.4/system.threading.tasks.extensions.4.5.4.nupkg.sha512"

Some files were not shown because too many files have changed in this diff Show More