using System; using ln.types.odb.ng; using ln.provider.data.phone; using ln.provider.data; using ln.logging; using ln.provider.netwatch.entities; using ln.manage; using System.Threading; using ln.types.threads; using ln.types.net; using ln.http; namespace ln.provider { class MainClass { 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); } public static void Main(string[] args) { 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(); //new ProviderApplication().Start(args); ManagedRoot managedRoot = new ManagedRoot(); ManagedConsole managedConsole = new ManagedConsole(managedRoot); ManagedNativeContainer layer2segments = new ManagedNativeContainer(managedRoot); ManagedNativeContainer networkDevices = new ManagedNativeContainer(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; } } }