103 lines
2.8 KiB
C#
103 lines
2.8 KiB
C#
// /**
|
|
// * File: SkyScannerHttpManagement.cs
|
|
// * Author: haraldwolff
|
|
// *
|
|
// * This file and it's content is copyrighted by the Author and / or copyright holder.
|
|
// * Any use wihtout proper permission is illegal and may lead to legal actions.
|
|
// *
|
|
// *
|
|
// **/
|
|
using System;
|
|
using ln.http.resources;
|
|
using ln.logging;
|
|
using System.Threading;
|
|
using ln.logging;
|
|
namespace ln.skyscanner.http
|
|
{
|
|
public class SkyScannerHttpManagement : JsonCallResource
|
|
{
|
|
public SkyScanner SkyScanner { get; }
|
|
|
|
public SkyScannerHttpManagement(Resource container,SkyScanner skyScanner)
|
|
: base(container, "management")
|
|
{
|
|
SkyScanner = skyScanner;
|
|
}
|
|
public SkyScannerHttpManagement(Resource container, string name, SkyScanner skyScanner)
|
|
: base(container, name)
|
|
{
|
|
SkyScanner = skyScanner;
|
|
}
|
|
/*
|
|
[Callable]
|
|
public SkyScannerStatistics GetStatistics()
|
|
{
|
|
SkyScannerStatistics statistics = new SkyScannerStatistics(SkyScanner);
|
|
return statistics;
|
|
}
|
|
|
|
[Callable]
|
|
public void StartCrawler()
|
|
{
|
|
Logging.Log(LogLevel.INFO, "Management: StartCrawler() called");
|
|
SkyScanner.ConveniencePool.Enqueue(() => SkyScanner.StartCrawler());
|
|
}
|
|
[Callable]
|
|
public void StopCrawler()
|
|
{
|
|
Logging.Log(LogLevel.INFO, "Management: StopCrawler() called");
|
|
SkyScanner.ConveniencePool.Enqueue(() => SkyScanner.StopCrawler());
|
|
}
|
|
|
|
[Callable]
|
|
public void Shutdown()
|
|
{
|
|
Thread thread = new Thread(()=>SkyScanner.Stop());
|
|
thread.Start();
|
|
}
|
|
|
|
[Callable]
|
|
public MemoryLogger.LogEntry[] GetLogEntries()
|
|
{
|
|
return SkyScanner.MemoryLogger.GetLogEntries();
|
|
}
|
|
[Callable]
|
|
public MemoryLogger.LogEntry[] GetLogEntries(String _maxLogLevel)
|
|
{
|
|
return SkyScanner.MemoryLogger.GetLogEntries((LogLevel)int.Parse(_maxLogLevel));
|
|
}
|
|
|
|
|
|
|
|
public class SkyScannerStatistics
|
|
{
|
|
public SkyScannerState States;
|
|
public string ServerTime;
|
|
|
|
public SkyScannerStatistics(SkyScanner skyScanner)
|
|
{
|
|
ServerTime = DateTime.Now.ToString();
|
|
|
|
States.Crawler = skyScanner.CrawlerStatus;
|
|
|
|
States.Checks = ComponentState.STOPPED;
|
|
States.Dispatcher = ComponentState.STOPPED;
|
|
|
|
|
|
States.Manager = ComponentState.STARTED;
|
|
}
|
|
|
|
}
|
|
public struct SkyScannerState
|
|
{
|
|
public ComponentState HttpServer;
|
|
public ComponentState Crawler;
|
|
public ComponentState Manager;
|
|
public ComponentState Checks;
|
|
public ComponentState Dispatcher;
|
|
}
|
|
|
|
*/
|
|
}
|
|
}
|