найден просто какой то невероятный баг с неправильным исполнением команд на уровне модуля исполнения

This commit is contained in:
2025-02-14 23:14:10 +03:00
parent 809cc05b0a
commit 56759ccd2e
6 changed files with 17 additions and 8 deletions
+4
View File
@@ -12,21 +12,25 @@ public class PrinterFactory : IPrinterFactory
public SharedObject<IPrinter> Create(string printerName)
{
Console.WriteLine("Creating printer");
return new Printer { Name = printerName };
}
public void Register(SharedObject<IPrinter> printer)
{
Console.WriteLine("Registered printer");
_printers.Add(printer.Value);
}
public SharedObject<IPrinter> GetPrinterByName(string printerName)
{
Console.WriteLine("Getting printer");
return new SharedObject<IPrinter>(_printers.Find(i => i.GetName() == printerName)!);
}
public string[] CollectAllNames()
{
Console.WriteLine("Collecting all printers");
return _printers.Select(i => i.GetName()).ToArray();
}
}
+6 -4
View File
@@ -28,13 +28,15 @@ var factory = context.GetSingleObject(typeof(IPrinterFactory)) as IPrinterFactor
var printer = factory.Create("Test");
// var name = printer.Value.GetName();
// Console.WriteLine("Printer name : {0}", name);
var name = printer.Value.GetName();
Console.WriteLine("Printer name : {0}", name);
Console.WriteLine("Registered printer");
factory.Register(new SharedObject<IPrinter>(new ClientBasedPrinter()));
// var names = factory.CollectAllNames();
Console.WriteLine("Collecting all printers");
var names = factory.CollectAllNames();
Console.ReadLine();
// var page = await printer.Value.Print("Test Page", new CancellationToken());
// var data = page.Value.GetData();
// Console.WriteLine("Data : {0}", Encoding.UTF8.GetString(data));
+1 -1
View File
@@ -17,7 +17,7 @@
<RepositoryUrl>https://github.com/YaslePoy/mROA</RepositoryUrl>
<RepositoryType>git</RepositoryType>
<GeneratePackageOnBuild>True</GeneratePackageOnBuild>
<Version>1.0.7</Version>
<Version>1.2.0</Version>
</PropertyGroup>
<ItemGroup>
+2 -1
View File
@@ -141,7 +141,8 @@ namespace {Namespace}
sb.AppendLine(
$"\t\tvar defaultCallRequestCodegen = new DefaultCallRequest {{ CommandId = {index}, ObjectId = id }};");
}
sb.AppendLine("\t\tSystem.Console.WriteLine(System.Text.Json.JsonSerializer.Serialize(defaultCallRequestCodegen));");
//Post created request
sb.AppendLine("\t\tserialisationModule.PostCallRequest(defaultCallRequestCodegen);");
@@ -14,6 +14,7 @@ public class BasicExecutionModule : IExecuteModule
public ICommandExecution Execute(ICallRequest command, IContextRepository _contextRepo)
{
Console.WriteLine($"Executing command: {command.CommandId}");
if (_methodRepo is null)
throw new NullReferenceException("Method repository was not defined");
@@ -1,4 +1,5 @@
using System.Text.Json;
using System.Text;
using System.Text.Json;
using mROA.Abstract;
namespace mROA.Implementation.Backend;
@@ -15,7 +16,7 @@ public class JsonSerialisationModule : ISerialisationModule
var ownership = TransmissionConfig.OwnershipRepository as MultiClientOwnershipRepository ?? throw new Exception("Set ownership repository type is incorrect");
ownership.RegisterOwnership(clientId);
NetworkMessage input = JsonSerializer.Deserialize<NetworkMessage>(message)!;
Console.WriteLine(Encoding.Default.GetString(input.Data));
if (input.SchemaId == MessageType.CallRequest)
{
var command = JsonSerializer.Deserialize<DefaultCallRequest>(input.Data)!;