using linker.libs; using linker.messenger.action; using linker.messenger.api; using linker.messenger.forward; using linker.messenger.listen; using linker.messenger.logger; using linker.messenger.pcp; using linker.messenger.relay.client; using linker.messenger.relay.server; using linker.messenger.sforward.client; using linker.messenger.sforward.server; using linker.messenger.signin; using linker.messenger.socks5; using linker.messenger.store.file.action; using linker.messenger.store.file.api; using linker.messenger.store.file.common; using linker.messenger.store.file.forward; using linker.messenger.store.file.logger; using linker.messenger.store.file.messenger; using linker.messenger.store.file.pcp; using linker.messenger.store.file.relay; using linker.messenger.store.file.server; using linker.messenger.store.file.sforward; using linker.messenger.store.file.signIn; using linker.messenger.store.file.socks5; using linker.messenger.store.file.tunnel; using linker.messenger.store.file.tuntap; using linker.messenger.store.file.updater; using linker.messenger.sync; using linker.messenger.tuntap; using linker.messenger.tuntap.lease; using linker.messenger.updater; using linker.plugins.tunnel; using Microsoft.Extensions.DependencyInjection; namespace linker.messenger.store.file { public static class Entry { public static ServiceCollection AddStoreFile(this ServiceCollection serviceCollection) { LoggerHelper.Instance.Info("add store file"); serviceCollection.AddSingleton(); serviceCollection.AddSingleton(); serviceCollection.AddSingleton(); serviceCollection.AddSingleton(); serviceCollection.AddSingleton(); serviceCollection.AddSingleton(); serviceCollection.AddSingleton(); serviceCollection.AddSingleton(); serviceCollection.AddSingleton(); serviceCollection.AddSingleton(); serviceCollection.AddSingleton(); serviceCollection.AddSingleton(); serviceCollection.AddSingleton(); serviceCollection.AddSingleton(); serviceCollection.AddSingleton(); serviceCollection.AddSingleton(); serviceCollection.AddSingleton(); serviceCollection.AddSingleton(); serviceCollection.AddSingleton(); serviceCollection.AddSingleton(); serviceCollection.AddSingleton(); serviceCollection.AddSingleton(); serviceCollection.AddSingleton(); serviceCollection.AddSingleton(); serviceCollection.AddSingleton(); serviceCollection.AddSingleton(); serviceCollection.AddSingleton(); serviceCollection.AddSingleton(); serviceCollection.AddSingleton(); serviceCollection.AddSingleton(); serviceCollection.AddSingleton(); return serviceCollection; } public static ServiceProvider UseStoreFile(this ServiceProvider serviceProvider) { LoggerHelper.Instance.Info("use store file"); FileConfig fileConfig = serviceProvider.GetService(); RunningConfig runningConfig = serviceProvider.GetService(); IApiServer apiServer = serviceProvider.GetService(); apiServer.AddPlugins(new List { serviceProvider.GetService() }); SyncTreansfer syncTreansfer = serviceProvider.GetService(); syncTreansfer.AddSyncs(new List { serviceProvider.GetService(), serviceProvider.GetService(), }); return serviceProvider; } } }