ln.provider/Program.cs

72 lines
2.4 KiB
C#
Raw Normal View History

2019-09-02 07:22:55 +02:00
using System;
using ln.types.odb.ng;
using ln.provider.data.phone;
using ln.provider.data;
using ln.logging;
2020-01-07 08:53:53 +01:00
using ln.provider.netwatch.entities;
using ln.manage;
using System.Threading;
using ln.types.threads;
using ln.types.net;
2020-01-07 21:48:07 +01:00
using ln.http;
2019-09-02 07:22:55 +02:00
namespace ln.provider
{
class MainClass
{
2020-01-07 21:48:07 +01:00
public static HttpResponse LogRequest(HttpRequest request)
{
Logging.Log(LogLevel.INFO, "Request: {0}",request);
foreach (String pName in request.ParameterNames)
{
Logging.Log(LogLevel.INFO, "Request Parameter: {0} = {1}", pName, request.GetParameter(pName));
}
return new HttpResponse(request);
}
2019-09-02 07:22:55 +02:00
public static void Main(string[] args)
{
2020-01-07 21:48:07 +01:00
SimpleHttpRouter restRouter = new SimpleHttpRouter();
restRouter.AddSimpleRoute("/:arg1/:arg2", new RouterTarget(LogRequest));
SimpleHttpRouter simpleHttpRouter = new SimpleHttpRouter();
simpleHttpRouter.AddSimpleRoute("/*", new RouterTarget(LogRequest));
simpleHttpRouter.AddSimpleRoute("/api/v1/*", restRouter);
HTTPServer hTTPServer = new HTTPServer(new Endpoint(IPv6.ANY,8888),simpleHttpRouter);
hTTPServer.Start();
2020-01-07 08:53:53 +01:00
//new ProviderApplication().Start(args);
ManagedRoot managedRoot = new ManagedRoot();
ManagedConsole managedConsole = new ManagedConsole(managedRoot);
ManagedNativeContainer<Layer2Segment> layer2segments = new ManagedNativeContainer<Layer2Segment>(managedRoot);
ManagedNativeContainer<NetworkDevice> networkDevices = new ManagedNativeContainer<NetworkDevice>(managedRoot);
IManagedObject nd0 = networkDevices.CreateManagedObject();
nd0.Enabled = true;
IManagedObject nd1 = networkDevices.CreateManagedObject();
nd1.SetValue("IPAddresses", new IPv6[] { IPv6.Parse("10.118.254.1"), IPv6.Parse("10.118.2.1") });
nd1.Enabled = true;
IManagedObject nd2 = networkDevices.CreateManagedObject();
nd2.Enabled = true;
Thread.Sleep(5000);
nd1.Enabled = false;
Thread.Sleep(5000);
Console.WriteLine(managedConsole.Export());
Thread.Sleep(5000);
nd0.Enabled = false;
nd1.Enabled = false;
nd2.Enabled = false;
2019-09-02 07:22:55 +02:00
}
}
}