static async Task Main(string[] args) { SopronTypeJsonConverter.InitializeTypes(); MessageSourceRegistry.Initialize(); var server = new Server(); var listener = new JsonListener(IPAddress.Loopback, 3131); listener.Start(); server.StartListening(); server.StartProcessing(); server.StartHandlingMessages(); server.AddListener(listener); if (Directory.Exists("sources")) { var message_source_files = Directory.GetFiles("sources", "*.json"); foreach (var file in message_source_files) { var fs = File.OpenRead(file); var obj = JToken.ReadFrom(new JsonTextReader(new StreamReader(fs))); fs.Close(); if (obj is JArray) { foreach (JObject source_obj in obj as JArray) { server.AddMessageSource(MessageSourceRegistry.GetMessageSource(source_obj)); } } else { server.AddMessageSource(MessageSourceRegistry.GetMessageSource(obj as JObject)); } } } await Task.Delay(-1); }
public void addListener(JsonListener listener) { _listeners.Add(listener); }