2025-02-05 15:08:38 +03:00
|
|
|
// See https://aka.ms/new-console-template for more information
|
|
|
|
|
|
2025-02-05 16:01:02 +03:00
|
|
|
|
2025-02-05 15:08:38 +03:00
|
|
|
using System.Net;
|
|
|
|
|
using System.Text;
|
|
|
|
|
using mROA.Codegen;
|
|
|
|
|
using mROA.Implementation;
|
|
|
|
|
using mROA.Implementation.Bootstrap;
|
|
|
|
|
|
|
|
|
|
var mixer = new FullMixBuilder();
|
|
|
|
|
|
|
|
|
|
mixer.Modules.Add(new FrontendContextRepository());
|
|
|
|
|
mixer.Modules.Add(new JsonFrontendSerialisationModule());
|
2025-02-05 16:01:02 +03:00
|
|
|
mixer.Modules.Add(new StreamBasedFrontendInteractionModule());
|
2025-02-05 15:08:38 +03:00
|
|
|
mixer.Modules.Add(new NetworkFrontendBridge(new IPEndPoint(IPAddress.Loopback, 4567)));
|
|
|
|
|
|
|
|
|
|
mixer.Build();
|
|
|
|
|
var context = mixer.GetModule<FrontendContextRepository>();
|
|
|
|
|
|
2025-02-05 16:01:02 +03:00
|
|
|
var factory = context.GetSingleObject(typeof(Example.Shared.IPrinterFactory)) as Example.Shared.IPrinterFactory;
|
|
|
|
|
|
2025-02-05 15:08:38 +03:00
|
|
|
|
|
|
|
|
var printer = factory.Create("Test");
|
|
|
|
|
var name = printer.Value.GetName();
|
|
|
|
|
Console.WriteLine("Printer name : {0}", name);
|
|
|
|
|
var page = printer.Value.Print("Test Page");
|
|
|
|
|
var data = page.Value.GetData();
|
|
|
|
|
Console.WriteLine("Data : {0}", Encoding.UTF8.GetString(data));
|