Modularisierung: WSS-/Alchemy-Listener ins Copytrading-Modul verschoben
Beide Listener sind copytrading-spezifisch (überwachen die getrackten Master- Trader bzw. Auto-Redeem nach Copytrading-Settings) und werden jetzt vom Modul besessen statt von der App. Reiner Move, keine Logikänderung. - services/AlchemyWebsocketService.cs + services/PolymarketWssClient.cs -> src/PolyTrader.Modules.CopyTrading/Services/ (Namespace bleibt transitional). - CopyTradingModule.RegisterServices registriert nun beide Hosted Services sowie IBlockchainWssClientFactory->AlchemyWssClientFactory (Core-WSS-Infra, nur vom Copytrading-Blockchain-Listener genutzt). - Program.cs: die drei Registrierungen entfernt (WSS-Factory + 2 Hosted Services) + ungenutztes using PolyTrader.Core.Streaming. - WSS-Verbindungsinfrastruktur (AlchemyWssClient/BlockchainWss) bleibt in Core. DI-Auflösung unverändert (gleicher Container). Build grün, --smoke-ui grün. Laufzeit-Verifikation der WSS-Verbindungen: Server-Test. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 4.8
parent
1b51872f00
commit
3456fd9768
@@ -9,7 +9,6 @@ using Microsoft.Extensions.Hosting;
|
||||
using Microsoft.Extensions.Options;
|
||||
using PolyTrader.Core.Configuration;
|
||||
using PolyTrader.Core.DependencyInjection;
|
||||
using PolyTrader.Core.Streaming;
|
||||
using PolyTrader.Core.Modularity;
|
||||
using PolyTrader.Modules.CopyTrading;
|
||||
using PolyTrader.Modules.CopyTrading.Persistence;
|
||||
@@ -79,7 +78,6 @@ internal static class Program
|
||||
};
|
||||
services.Configure<DatabaseOptions>(context.Configuration.GetSection(DatabaseOptions.SectionName));
|
||||
services.AddCorePersistence(databaseOptions);
|
||||
services.AddSingleton<IBlockchainWssClientFactory, AlchemyWssClientFactory>();
|
||||
services.AddSingleton((IServiceProvider sp) => ServerSettings.Load("server_settings.xml"));
|
||||
services.AddSingleton<TradingState>();
|
||||
services.AddSingleton(delegate(IServiceProvider sp)
|
||||
@@ -124,11 +122,9 @@ internal static class Program
|
||||
module.RegisterServices(services, context.Configuration);
|
||||
}
|
||||
|
||||
services.AddHostedService<AlchemyWebsocketService>();
|
||||
services.AddHostedService<PersistenceService>();
|
||||
services.AddHostedService<MarketSyncService>();
|
||||
services.AddHostedService<MasterTraderAnalyticsJob>();
|
||||
services.AddHostedService<PolymarketWssClient>();
|
||||
services.AddHostedService((IServiceProvider sp) => sp.GetRequiredService<MullvadVpnService>());
|
||||
services.AddHostedService((IServiceProvider sp) => sp.GetRequiredService<ThreemaService>());
|
||||
services.AddSingleton<PolyTraderSharp.Ui.ShellUiHost>();
|
||||
|
||||
Reference in New Issue
Block a user