6969use  OCP \ISession ;
7070use  OCP \IURLGenerator ;
7171use  OCP \IUserSession ;
72+ use  Psr \Container \ContainerInterface ;
7273
74+ /** 
75+  * @deprecated 20.0.0 
76+  */ 
7377class  DIContainer extends  SimpleContainer implements  IAppContainer {
7478
7579	/** 
@@ -116,58 +120,59 @@ public function __construct($appName, $urlParams = [], ServerContainer $server =
116120			return  $ this getServer ()->getUserFolder ();
117121		});
118122
119- 		$ this registerService (IAppData::class, function  (SimpleContainer $ c
120- 			return  $ this getServer ()->getAppDataDir ($ cquery ('AppName ' ));
123+ 		$ this registerService (IAppData::class, function  (ContainerInterface $ c
124+ 			return  $ this getServer ()->getAppDataDir ($ cget ('AppName ' ));
121125		});
122126
123- 		$ this registerService (IL10N ::class, function  ($ c
124- 			return  $ this getServer ()->getL10N ($ cquery ('AppName ' ));
127+ 		$ this registerService (IL10N ::class, function  (ContainerInterface   $ c
128+ 			return  $ this getServer ()->getL10N ($ cget ('AppName ' ));
125129		});
126130
127131		// Log wrapper 
128- 		$ this registerService (ILogger::class, function  ($ c
129- 			return  new  OC \AppFramework \Logger ($ this server ->query (ILogger::class), $ cquery ('AppName ' ));
132+ 		$ this registerService (ILogger::class, function  (ContainerInterface   $ c
133+ 			return  new  OC \AppFramework \Logger ($ this server ->query (ILogger::class), $ cget ('AppName ' ));
130134		});
131135
132136		$ this registerService (IServerContainer::class, function  () {
133137			return  $ this getServer ();
134138		});
135139		$ this registerAlias ('ServerContainer ' , IServerContainer::class);
136140
137- 		$ this registerService (\OCP \WorkflowEngine \IManager::class, function  ($ c
138- 			return  $ cquery (Manager::class);
141+ 		$ this registerService (\OCP \WorkflowEngine \IManager::class, function  (ContainerInterface   $ c
142+ 			return  $ cget (Manager::class);
139143		});
140144
141- 		$ this registerService (\ OCP \ AppFramework \IAppContainer ::class, function  ($ c
145+ 		$ this registerService (ContainerInterface ::class, function  (ContainerInterface   $ c
142146			return  $ c
143147		});
148+ 		$ this registerAlias (IAppContainer::class, ContainerInterface::class);
144149
145150		// commonly used attributes 
146- 		$ this registerService ('UserId ' , function  ($ c
147- 			return  $ cquery (IUserSession::class)->getSession ()->get ('user_id ' );
151+ 		$ this registerService ('UserId ' , function  (ContainerInterface   $ c
152+ 			return  $ cget (IUserSession::class)->getSession ()->get ('user_id ' );
148153		});
149154
150- 		$ this registerService ('WebRoot ' , function  ($ c
151- 			return  $ cquery ( ' ServerContainer ' getWebRoot ();
155+ 		$ this registerService ('WebRoot ' , function  (ContainerInterface   $ c
156+ 			return  $ cget (IServerContainer::class )->getWebRoot ();
152157		});
153158
154- 		$ this registerService ('OC_Defaults ' , function  ($ c
155- 			return  $ cgetServer ( )->getThemingDefaults ();
159+ 		$ this registerService ('OC_Defaults ' , function  (ContainerInterface   $ c
160+ 			return  $ cget (IServerContainer::class )->getThemingDefaults ();
156161		});
157162
158- 		$ this registerService ('Protocol ' , function  ($ c
163+ 		$ this registerService ('Protocol ' , function  (ContainerInterface   $ c
159164			/** @var \OC\Server $server */ 
160- 			$ server$ cquery ( ' ServerContainer ' 
165+ 			$ server$ cget (IServerContainer::class );
161166			$ protocol$ servergetRequest ()->getHttpProtocol ();
162167			return  new  Http ($ _SERVER $ protocol
163168		});
164169
165- 		$ this registerService ('Dispatcher ' , function  ($ c
170+ 		$ this registerService ('Dispatcher ' , function  (ContainerInterface   $ c
166171			return  new  Dispatcher (
167- 				$ c[ 'Protocol ' ] ,
168- 				$ c[ ' MiddlewareDispatcher ' ] ,
169- 				$ cquery (IControllerMethodReflector::class),
170- 				$ c[ ' Request ' ] 
172+ 				$ c-> get ( 'Protocol ' ) ,
173+ 				$ c-> get ( MiddlewareDispatcher::class) ,
174+ 				$ cget (IControllerMethodReflector::class),
175+ 				$ c-> get (IRequest::class) 
171176			);
172177		});
173178
@@ -181,48 +186,49 @@ public function __construct($appName, $urlParams = [], ServerContainer $server =
181186		/** 
182187		 * Middleware 
183188		 */ 
184- 		$ this registerService ('MiddlewareDispatcher ' , function  (SimpleContainer $ c
185- 			$ server$ this getServer ();
189+ 		$ this registerAlias ('MiddlewareDispatcher ' , MiddlewareDispatcher::class);
190+ 		$ this registerService (MiddlewareDispatcher::class, function  (ContainerInterface $ c
191+ 			$ server$ this getServer ();
186192
187193			$ dispatchernew  MiddlewareDispatcher ();
188194
189195			$ dispatcherregisterMiddleware (
190- 				$ cquery (OC \AppFramework \Middleware \CompressionMiddleware::class)
196+ 				$ cget (OC \AppFramework \Middleware \CompressionMiddleware::class)
191197			);
192198
193- 			$ dispatcherregisterMiddleware ($ cquery (OC \AppFramework \Middleware \NotModifiedMiddleware::class));
199+ 			$ dispatcherregisterMiddleware ($ cget (OC \AppFramework \Middleware \NotModifiedMiddleware::class));
194200
195201			$ dispatcherregisterMiddleware (
196- 				$ cquery (OC \AppFramework \Middleware \Security \ReloadExecutionMiddleware::class)
202+ 				$ cget (OC \AppFramework \Middleware \Security \ReloadExecutionMiddleware::class)
197203			);
198204
199205			$ dispatcherregisterMiddleware (
200206				new  OC \AppFramework \Middleware \Security \SameSiteCookieMiddleware (
201- 					$ cquery (IRequest::class),
202- 					$ cquery (IControllerMethodReflector::class)
207+ 					$ cget (IRequest::class),
208+ 					$ cget (IControllerMethodReflector::class)
203209				)
204210			);
205211			$ dispatcherregisterMiddleware (
206212				new  CORSMiddleware (
207- 					$ cquery (IRequest::class),
208- 					$ cquery (IControllerMethodReflector::class),
209- 					$ cquery (IUserSession::class),
210- 					$ cquery (OC \Security \Bruteforce \Throttler::class)
213+ 					$ cget (IRequest::class),
214+ 					$ cget (IControllerMethodReflector::class),
215+ 					$ cget (IUserSession::class),
216+ 					$ cget (OC \Security \Bruteforce \Throttler::class)
211217				)
212218			);
213219			$ dispatcherregisterMiddleware (
214220				new  OCSMiddleware (
215- 					$ cquery (IRequest::class)
221+ 					$ cget (IRequest::class)
216222				)
217223			);
218224
219225			$ securityMiddlewarenew  SecurityMiddleware (
220- 				$ cquery (IRequest::class),
221- 				$ cquery (IControllerMethodReflector::class),
222- 				$ cquery (INavigationManager::class),
223- 				$ cquery (IURLGenerator::class),
224- 				$ servergetLogger ( ),
225- 				$ c[ 'AppName ' ] ,
226+ 				$ cget (IRequest::class),
227+ 				$ cget (IControllerMethodReflector::class),
228+ 				$ cget (INavigationManager::class),
229+ 				$ cget (IURLGenerator::class),
230+ 				$ serverquery (ILogger::class ),
231+ 				$ c-> get ( 'AppName ' ) ,
226232				$ servergetUserSession ()->isLoggedIn (),
227233				$ servergetGroupManager ()->isAdmin ($ this getUserId ()),
228234				$ servergetUserSession ()->getUser () !== null  && $ serverquery (ISubAdmin::class)->isSubAdmin ($ servergetUserSession ()->getUser ()),
@@ -242,71 +248,71 @@ public function __construct($appName, $urlParams = [], ServerContainer $server =
242248			);
243249			$ dispatcherregisterMiddleware (
244250				new  OC \AppFramework \Middleware \Security \PasswordConfirmationMiddleware (
245- 					$ cquery (IControllerMethodReflector::class),
246- 					$ cquery (ISession::class),
247- 					$ cquery (IUserSession::class),
248- 					$ cquery (ITimeFactory::class)
251+ 					$ cget (IControllerMethodReflector::class),
252+ 					$ cget (ISession::class),
253+ 					$ cget (IUserSession::class),
254+ 					$ cget (ITimeFactory::class)
249255				)
250256			);
251257			$ dispatcherregisterMiddleware (
252258				new  TwoFactorMiddleware (
253- 					$ cquery (OC \Authentication \TwoFactorAuth \Manager::class),
254- 					$ cquery (IUserSession::class),
255- 					$ cquery (ISession::class),
256- 					$ cquery (IURLGenerator::class),
257- 					$ cquery (IControllerMethodReflector::class),
258- 					$ cquery (IRequest::class)
259+ 					$ cget (OC \Authentication \TwoFactorAuth \Manager::class),
260+ 					$ cget (IUserSession::class),
261+ 					$ cget (ISession::class),
262+ 					$ cget (IURLGenerator::class),
263+ 					$ cget (IControllerMethodReflector::class),
264+ 					$ cget (IRequest::class)
259265				)
260266			);
261267			$ dispatcherregisterMiddleware (
262268				new  OC \AppFramework \Middleware \Security \BruteForceMiddleware (
263- 					$ cquery (IControllerMethodReflector::class),
264- 					$ cquery (OC \Security \Bruteforce \Throttler::class),
265- 					$ cquery (IRequest::class)
269+ 					$ cget (IControllerMethodReflector::class),
270+ 					$ cget (OC \Security \Bruteforce \Throttler::class),
271+ 					$ cget (IRequest::class)
266272				)
267273			);
268274			$ dispatcherregisterMiddleware (
269275				new  RateLimitingMiddleware (
270- 					$ cquery (IRequest::class),
271- 					$ cquery (IUserSession::class),
272- 					$ cquery (IControllerMethodReflector::class),
273- 					$ cquery (OC \Security \RateLimiting \Limiter::class)
276+ 					$ cget (IRequest::class),
277+ 					$ cget (IUserSession::class),
278+ 					$ cget (IControllerMethodReflector::class),
279+ 					$ cget (OC \Security \RateLimiting \Limiter::class)
274280				)
275281			);
276282			$ dispatcherregisterMiddleware (
277283				new  OC \AppFramework \Middleware \PublicShare \PublicShareMiddleware (
278- 					$ cquery (IRequest::class),
279- 					$ cquery (ISession::class),
280- 					$ cquery (\OCP \IConfig::class)
284+ 					$ cget (IRequest::class),
285+ 					$ cget (ISession::class),
286+ 					$ cget (\OCP \IConfig::class)
281287				)
282288			);
283289			$ dispatcherregisterMiddleware (
284- 				$ cquery (\OC \AppFramework \Middleware \AdditionalScriptsMiddleware::class)
290+ 				$ cget (\OC \AppFramework \Middleware \AdditionalScriptsMiddleware::class)
285291			);
286292
287293			foreach  ($ this middleWares  as  $ middleWare
288- 				$ dispatcherregisterMiddleware ($ cquery ($ middleWare
294+ 				$ dispatcherregisterMiddleware ($ cget ($ middleWare
289295			}
290296
291297			$ dispatcherregisterMiddleware (
292298				new  SessionMiddleware (
293- 					$ cquery (IControllerMethodReflector::class),
294- 					$ cquery (ISession::class)
299+ 					$ cget (IControllerMethodReflector::class),
300+ 					$ cget (ISession::class)
295301				)
296302			);
297303			return  $ dispatcher
298304		});
299305
300- 		$ this registerService (IAppConfig::class, function  (SimpleContainer $ c
306+ 		$ this registerService (IAppConfig::class, function  (ContainerInterface $ c
301307			return  new  OC \AppFramework \Services \AppConfig (
302- 				$ cquery (IConfig::class),
303- 				$ cquery ('AppName ' )
308+ 				$ cget (IConfig::class),
309+ 				$ cget ('AppName ' )
304310			);
305311		});
306- 		$ this registerService (IInitialState::class, function  (SimpleContainer $ c
312+ 		$ this registerService (IInitialState::class, function  (ContainerInterface $ c
307313			return  new  OC \AppFramework \Services \InitialState (
308- 				$ cquery (IInitialStateService::class),
309- 				$ cquery ('AppName ' )
314+ 				$ cget (IInitialStateService::class),
315+ 				$ cget ('AppName ' )
310316			);
311317		});
312318	}
@@ -396,6 +402,18 @@ public function registerCapability($serviceName) {
396402		});
397403	}
398404
405+ 	public  function  has ($ idbool  {
406+ 		if  (parent ::has ($ id
407+ 			return  true ;
408+ 		}
409+ 
410+ 		if  ($ this server ->has ($ idtrue )) {
411+ 			return  true ;
412+ 		}
413+ 
414+ 		return  false ;
415+ 	}
416+ 
399417	public  function  query (string  $ namebool  $ autoloadtrue ) {
400418		try  {
401419			return  $ this queryNoFallback ($ name
@@ -421,14 +439,12 @@ public function queryNoFallback($name) {
421439
422440		if  ($ this offsetExists ($ name
423441			return  parent ::query ($ name
424- 		} else  {
425- 			if  ($ this 'AppName ' ] === 'settings '  && strpos ($ name'OC \\Settings \\' ) === 0 ) {
426- 				return  parent ::query ($ name
427- 			} elseif  ($ this 'AppName ' ] === 'core '  && strpos ($ name'OC \\Core \\' ) === 0 ) {
428- 				return  parent ::query ($ name
429- 			} elseif  (strpos ($ nameOC \AppFramework \App::buildAppNamespace ($ this 'AppName ' ]) . '\\' ) === 0 ) {
430- 				return  parent ::query ($ name
431- 			}
442+ 		} elseif  ($ this 'AppName ' ] === 'settings '  && strpos ($ name'OC \\Settings \\' ) === 0 ) {
443+ 			return  parent ::query ($ name
444+ 		} elseif  ($ this 'AppName ' ] === 'core '  && strpos ($ name'OC \\Core \\' ) === 0 ) {
445+ 			return  parent ::query ($ name
446+ 		} elseif  (strpos ($ nameOC \AppFramework \App::buildAppNamespace ($ this 'AppName ' ]) . '\\' ) === 0 ) {
447+ 			return  parent ::query ($ name
432448		}
433449
434450		throw  new  QueryException ('Could not resolve  '  . $ name'! '  .
0 commit comments