Nextcloud PHP API (master)

IAppContainer extends ContainerInterface, IContainer

This is a tagging interface for a container that belongs to an app

The interface currently extends IContainer, but this interface is deprecated as of Nextcloud 20, thus this interface won't extend it anymore once that was removed. So migrate to the ContainerInterface only.

Tags
deprecated
20.0.0
since
6.0.0

Table of Contents

Methods

getAppName()  : string
used to return the appname of the set application
getServer()  : IServerContainer
query()  : mixed
Look up a service for a given name in the container.
registerAlias()  : mixed
Shortcut for returning a service from a service under a different key, e.g. to tell the container to return a class when queried for an interface
registerCapability()  : mixed
Register a capability
registerMiddleWare()  : bool
registerParameter()  : void
A value is stored in the container with it's corresponding name
registerService()  : void
A service is registered in the container where a closure is passed in which will actually create the service on demand.
resolve()  : stdClass

Methods

getAppName()

used to return the appname of the set application

public getAppName() : string
Tags
since
6.0.0
deprecated
20.0.0
Return values
string

the name of your application

query()

Look up a service for a given name in the container.

public query(string $name[, bool $autoload = true ]) : mixed
Parameters
$name : string
$autoload : bool = true

Should we try to autoload the service. If we are trying to resolve built in types this makes no sense for example

Tags
template

T

psalm-param

string|class-string<T> $name

psalm-return

($name is class-string ? T : mixed)

throws
ContainerExceptionInterface

if the query could not be resolved

throws
NotFoundExceptionInterface

if the name could not be found within the container

throws
QueryException

if the query could not be resolved

since
6.0.0
deprecated
20.0.0

use \Psr\Container\ContainerInterface::get

registerAlias()

Shortcut for returning a service from a service under a different key, e.g. to tell the container to return a class when queried for an interface

public registerAlias(string $alias, string $target) : mixed
Parameters
$alias : string

the alias that should be registered

$target : string

the target that should be resolved instead

Tags
since
8.2.0
deprecated
20.0.0

use \OCP\AppFramework\Bootstrap\IRegistrationContext::registerServiceAlias

registerCapability()

Register a capability

public registerCapability(string $serviceName) : mixed
Parameters
$serviceName : string

e.g. 'OCA\Files\Capabilities'

Tags
since
8.2.0
deprecated
20.0.0

use \OCP\AppFramework\Bootstrap\IRegistrationContext::registerCapability

registerMiddleWare()

public registerMiddleWare(string $middleWare) : bool
Parameters
$middleWare : string
Tags
since
6.0.0
deprecated
20.0.0

use \OCP\AppFramework\Bootstrap\IRegistrationContext::registerMiddleware

Return values
bool

registerParameter()

A value is stored in the container with it's corresponding name

public registerParameter(string $name, mixed $value) : void
Parameters
$name : string
$value : mixed
Tags
since
6.0.0
deprecated
20.0.0

use \OCP\AppFramework\Bootstrap\IRegistrationContext::registerParameter

registerService()

A service is registered in the container where a closure is passed in which will actually create the service on demand.

public registerService(string $name, Closure $closure[, bool $shared = true ]) : void

In case the parameter $shared is set to true (the default usage) the once created service will remain in memory and be reused on subsequent calls. In case the parameter is false the service will be recreated on every call.

Parameters
$name : string
$closure : Closure
$shared : bool = true
Tags
since
6.0.0
deprecated
20.0.0

use \OCP\AppFramework\Bootstrap\IRegistrationContext::registerService

resolve()

public resolve(string $name) : stdClass
Parameters
$name : string

the class name to resolve

Tags
template

T

If a parameter is not registered in the container try to instantiate it by using reflection to find out how to build the class

psalm-param

string|class-string<T> $name

psalm-return

($name is class-string ? T : mixed)

since
8.2.0
deprecated
20.0.0

use \Psr\Container\ContainerInterface::get

throws
ContainerExceptionInterface

if the class could not be found or instantiated

throws
QueryException

if the class could not be found or instantiated

Return values
stdClass

        
On this page

Search results