59
59
using MediaBrowser . Controller . Drawing ;
60
60
using MediaBrowser . Controller . Dto ;
61
61
using MediaBrowser . Controller . Entities ;
62
+ using MediaBrowser . Controller . IO ;
62
63
using MediaBrowser . Controller . Library ;
63
64
using MediaBrowser . Controller . LiveTv ;
64
65
using MediaBrowser . Controller . MediaEncoding ;
@@ -269,7 +270,6 @@ public virtual string OperatingSystemDisplayName
269
270
protected readonly SimpleInjector . Container Container = new SimpleInjector . Container ( ) ;
270
271
271
272
protected ISystemEvents SystemEvents { get ; set ; }
272
- protected IMemoryStreamFactory MemoryStreamFactory { get ; set ; }
273
273
274
274
/// <summary>
275
275
/// Gets the server configuration manager.
@@ -429,7 +429,6 @@ public ApplicationHost(ServerApplicationPaths applicationPaths,
429
429
networkManager . LocalSubnetsFn = GetConfiguredLocalSubnets ;
430
430
EnvironmentInfo = environmentInfo ;
431
431
SystemEvents = systemEvents ;
432
- MemoryStreamFactory = new MemoryStreamProvider ( ) ;
433
432
434
433
ApplicationPaths = applicationPaths ;
435
434
LogManager = logManager ;
@@ -526,6 +525,11 @@ private Tuple<Assembly, string> GetAssembly(Type type)
526
525
return new Tuple < Assembly , string > ( assembly , path ) ;
527
526
}
528
527
528
+ public virtual IStreamHelper CreateStreamHelper ( )
529
+ {
530
+ return new StreamHelper ( ) ;
531
+ }
532
+
529
533
public virtual bool SupportsAutoRunAtStartup
530
534
{
531
535
get
@@ -859,9 +863,11 @@ protected virtual void OnLoggerLoaded(bool isFirstLoad)
859
863
860
864
protected virtual IHttpClient CreateHttpClient ( )
861
865
{
862
- return new HttpClientManager . HttpClientManager ( ApplicationPaths , LogManager . GetLogger ( "HttpClient" ) , FileSystemManager , MemoryStreamFactory , GetDefaultUserAgent ) ;
866
+ return new HttpClientManager . HttpClientManager ( ApplicationPaths , LogManager . GetLogger ( "HttpClient" ) , FileSystemManager , GetDefaultUserAgent ) ;
863
867
}
864
868
869
+ public static IStreamHelper StreamHelper { get ; set ; }
870
+
865
871
/// <summary>
866
872
/// Registers resources that classes will depend on
867
873
/// </summary>
@@ -873,7 +879,6 @@ protected void RegisterResources()
873
879
RegisterSingleInstance < IApplicationPaths > ( ApplicationPaths ) ;
874
880
875
881
RegisterSingleInstance ( JsonSerializer ) ;
876
- RegisterSingleInstance ( MemoryStreamFactory ) ;
877
882
RegisterSingleInstance ( SystemEvents ) ;
878
883
879
884
RegisterSingleInstance ( LogManager , false ) ;
@@ -902,6 +907,10 @@ protected void RegisterResources()
902
907
TimerFactory = new TimerFactory ( ) ;
903
908
RegisterSingleInstance ( TimerFactory ) ;
904
909
910
+ var streamHelper = CreateStreamHelper ( ) ;
911
+ ApplicationHost . StreamHelper = streamHelper ;
912
+ RegisterSingleInstance ( streamHelper ) ;
913
+
905
914
RegisterSingleInstance ( CryptographyProvider ) ;
906
915
907
916
SocketFactory = new SocketFactory ( LogManager . GetLogger ( "SocketFactory" ) ) ;
@@ -918,7 +927,7 @@ protected void RegisterResources()
918
927
ZipClient = new ZipClient ( FileSystemManager ) ;
919
928
RegisterSingleInstance ( ZipClient ) ;
920
929
921
- HttpResultFactory = new HttpResultFactory ( LogManager , FileSystemManager , JsonSerializer , MemoryStreamFactory ) ;
930
+ HttpResultFactory = new HttpResultFactory ( LogManager , FileSystemManager , JsonSerializer ) ;
922
931
RegisterSingleInstance ( HttpResultFactory ) ;
923
932
924
933
RegisterSingleInstance < IServerApplicationHost > ( this ) ;
@@ -947,11 +956,11 @@ protected void RegisterResources()
947
956
// This is only needed for disposal purposes. If removing this, make sure to have the manager handle disposing it
948
957
RegisterSingleInstance ( UserRepository ) ;
949
958
950
- var displayPreferencesRepo = new SqliteDisplayPreferencesRepository ( LogManager . GetLogger ( "SqliteDisplayPreferencesRepository" ) , JsonSerializer , ApplicationPaths , MemoryStreamFactory , FileSystemManager ) ;
959
+ var displayPreferencesRepo = new SqliteDisplayPreferencesRepository ( LogManager . GetLogger ( "SqliteDisplayPreferencesRepository" ) , JsonSerializer , ApplicationPaths , FileSystemManager ) ;
951
960
DisplayPreferencesRepository = displayPreferencesRepo ;
952
961
RegisterSingleInstance ( DisplayPreferencesRepository ) ;
953
962
954
- var itemRepo = new SqliteItemRepository ( ServerConfigurationManager , this , JsonSerializer , LogManager . GetLogger ( "SqliteItemRepository" ) , MemoryStreamFactory , assemblyInfo , FileSystemManager , EnvironmentInfo , TimerFactory ) ;
963
+ var itemRepo = new SqliteItemRepository ( ServerConfigurationManager , this , JsonSerializer , LogManager . GetLogger ( "SqliteItemRepository" ) , assemblyInfo , FileSystemManager , EnvironmentInfo , TimerFactory ) ;
955
964
ItemRepository = itemRepo ;
956
965
RegisterSingleInstance ( ItemRepository ) ;
957
966
@@ -975,11 +984,11 @@ protected void RegisterResources()
975
984
CertificateInfo = GetCertificateInfo ( true ) ;
976
985
Certificate = GetCertificate ( CertificateInfo ) ;
977
986
978
- HttpServer = HttpServerFactory . CreateServer ( this , LogManager , ServerConfigurationManager , NetworkManager , MemoryStreamFactory , "Emby" , "web/index.html" , textEncoding , SocketFactory , CryptographyProvider , JsonSerializer , XmlSerializer , EnvironmentInfo , Certificate , FileSystemManager , SupportsDualModeSockets ) ;
987
+ HttpServer = HttpServerFactory . CreateServer ( this , LogManager , ServerConfigurationManager , NetworkManager , streamHelper , "Emby" , "web/index.html" , textEncoding , SocketFactory , CryptographyProvider , JsonSerializer , XmlSerializer , EnvironmentInfo , Certificate , FileSystemManager , SupportsDualModeSockets ) ;
979
988
HttpServer . GlobalResponse = LocalizationManager . GetLocalizedString ( "StartupEmbyServerIsLoading" ) ;
980
989
RegisterSingleInstance ( HttpServer , false ) ;
981
990
982
- ServerManager = new ServerManager . ServerManager ( this , JsonSerializer , LogManager . GetLogger ( "ServerManager" ) , ServerConfigurationManager , MemoryStreamFactory , textEncoding ) ;
991
+ ServerManager = new ServerManager . ServerManager ( this , JsonSerializer , LogManager . GetLogger ( "ServerManager" ) , ServerConfigurationManager , textEncoding ) ;
983
992
RegisterSingleInstance ( ServerManager ) ;
984
993
985
994
ImageProcessor = GetImageProcessor ( ) ;
@@ -1012,7 +1021,7 @@ protected void RegisterResources()
1012
1021
SubtitleManager = new SubtitleManager ( LogManager . GetLogger ( "SubtitleManager" ) , FileSystemManager , LibraryMonitor , MediaSourceManager , ServerConfigurationManager , LocalizationManager ) ;
1013
1022
RegisterSingleInstance ( SubtitleManager ) ;
1014
1023
1015
- ProviderManager = new ProviderManager ( HttpClient , SubtitleManager , ServerConfigurationManager , LibraryMonitor , LogManager , FileSystemManager , ApplicationPaths , ( ) => LibraryManager , JsonSerializer , MemoryStreamFactory ) ;
1024
+ ProviderManager = new ProviderManager ( HttpClient , SubtitleManager , ServerConfigurationManager , LibraryMonitor , LogManager , FileSystemManager , ApplicationPaths , ( ) => LibraryManager , JsonSerializer ) ;
1016
1025
RegisterSingleInstance ( ProviderManager ) ;
1017
1026
1018
1027
DtoService = new DtoService ( LogManager . GetLogger ( "DtoService" ) , LibraryManager , UserDataManager , ItemRepository , ImageProcessor , ServerConfigurationManager , FileSystemManager , ProviderManager , ( ) => ChannelManager , SyncManager , this , ( ) => DeviceManager , ( ) => MediaSourceManager , ( ) => LiveTvManager ) ;
@@ -1072,7 +1081,7 @@ protected void RegisterResources()
1072
1081
AuthService = new AuthService ( UserManager , authContext , ServerConfigurationManager , ConnectManager , SessionManager , NetworkManager ) ;
1073
1082
RegisterSingleInstance < IAuthService > ( AuthService ) ;
1074
1083
1075
- SubtitleEncoder = new SubtitleEncoder ( LibraryManager , LogManager . GetLogger ( "SubtitleEncoder" ) , ApplicationPaths , FileSystemManager , MediaEncoder , JsonSerializer , HttpClient , MediaSourceManager , MemoryStreamFactory , ProcessFactory , textEncoding ) ;
1084
+ SubtitleEncoder = new SubtitleEncoder ( LibraryManager , LogManager . GetLogger ( "SubtitleEncoder" ) , ApplicationPaths , FileSystemManager , MediaEncoder , JsonSerializer , HttpClient , MediaSourceManager , ProcessFactory , textEncoding ) ;
1076
1085
RegisterSingleInstance ( SubtitleEncoder ) ;
1077
1086
1078
1087
RegisterSingleInstance ( CreateResourceFileManager ( ) ) ;
@@ -1289,7 +1298,6 @@ private void RegisterMediaEncoder(IAssemblyInfo assemblyInfo)
1289
1298
( ) => MediaSourceManager ,
1290
1299
HttpClient ,
1291
1300
ZipClient ,
1292
- MemoryStreamFactory ,
1293
1301
ProcessFactory ,
1294
1302
( Environment . ProcessorCount > 2 ? 14000 : 40000 ) ,
1295
1303
EnvironmentInfo . OperatingSystem == MediaBrowser . Model . System . OperatingSystem . Windows ,
@@ -1307,7 +1315,7 @@ private void RegisterMediaEncoder(IAssemblyInfo assemblyInfo)
1307
1315
/// <returns>Task{IUserRepository}.</returns>
1308
1316
private IUserRepository GetUserRepository ( )
1309
1317
{
1310
- var repo = new SqliteUserRepository ( LogManager . GetLogger ( "SqliteUserRepository" ) , ApplicationPaths , JsonSerializer , MemoryStreamFactory ) ;
1318
+ var repo = new SqliteUserRepository ( LogManager . GetLogger ( "SqliteUserRepository" ) , ApplicationPaths , JsonSerializer ) ;
1311
1319
1312
1320
repo . Initialize ( ) ;
1313
1321
0 commit comments