* $di = new Phalcon\DI(); * * //Using a string definition * $di->set('request', 'Phalcon\Http\Request', true); * * //Using an anonymous function * $di->set('request', function(){ * return new Phalcon\Http\Request(); * }, true); * * $request = $di->getRequest(); * * */ class DI implements \Phalcon\DiInterface { protected $_services; protected $_sharedInstances; protected $_freshInstance; protected static $_default; /** * \Phalcon\DI constructor * */ public function __construct(){ } /** * Registers a service in the services container * * @param string $name * @param mixed $definition * @param boolean $shared * @return \Phalcon\DI\ServiceInterface */ public function set($name, $definition, $shared=null){ } /** * Registers an "always shared" service in the services container * * @param string $name * @param mixed $definition * @return \Phalcon\DI\ServiceInterface */ public function setShared($name, $definition){ } /** * Removes a service in the services container * * @param string $name */ public function remove($name){ } /** * Attempts to register a service in the services container * Only is successful if a service hasn't been registered previously * with the same name * * @param string $name * @param mixed $definition * @param boolean $shared * @return \Phalcon\DI\ServiceInterface */ public function attempt($name, $definition, $shared=null){ } /** * Sets a service using a raw \Phalcon\DI\Service definition * * @param string $name * @param \Phalcon\DI\ServiceInterface $rawDefinition * @return \Phalcon\DI\ServiceInterface */ public function setRaw($name, $rawDefinition){ } /** * Returns a service definition without resolving * * @param string $name * @return mixed */ public function getRaw($name){ } /** * Returns a \Phalcon\DI\Service instance * * @param string $name * @return \Phalcon\DI\ServiceInterface */ public function getService($name){ } /** * Resolves the service based on its configuration * * @param string $name * @param array $parameters * @return mixed */ public function get($name, $parameters=null){ } /** * Resolves a service, the resolved service is stored in the DI, subsequent requests for this service will return the same instance * * @param string $name * @param array $parameters * @return mixed */ public function getShared($name, $parameters=null){ } /** * Check whether the DI contains a service by a name * * @param string $name * @return boolean */ public function has($name){ } /** * Check whether the last service obtained via getShared produced a fresh instance or an existing one * * @return boolean */ public function wasFreshInstance(){ } /** * Return the services registered in the DI * * @return \Phalcon\DI\Service[] */ public function getServices(){ } /** * Check if a service is registered using the array syntax. * Alias for \Phalcon\Di::has() * * @param string $name * @return boolean */ public function offsetExists($name){ } /** * Allows to register a shared service using the array syntax. * Alias for \Phalcon\Di::setShared() * * * $di['request'] = new \Phalcon\Http\Request(); * * * @param string $name * @param mixed $definition */ public function offsetSet($name, $definition){ } /** * Allows to obtain a shared service using the array syntax. * Alias for \Phalcon\Di::getShared() * * * var_dump($di['request']); * * * @param string $name * @return mixed */ public function offsetGet($name, $parameters=null){ } /** * Removes a service from the services container using the array syntax. * Alias for \Phalcon\Di::remove() * * @param string $name */ public function offsetUnset($name){ } /** * Magic method to get or set services using setters/getters * * @param string $method * @param array $arguments * @return mixed */ public function __call($method, $arguments=null){ } /** * Set a default dependency injection container to be obtained into static methods * * @param \Phalcon\DiInterface $dependencyInjector */ public static function setDefault($dependencyInjector){ } /** * Return the lastest DI created * * @return \Phalcon\DiInterface */ public static function getDefault(){ } /** * Resets the internal default DI */ public static function reset(){ } } }