Phpxcore:php4:newmodule:gateway

Материал из phpXCoreWiki.

Перейти к: навигация, поиск

Back

Содержание

[править] Назначение

Gateway предназначен для взаимодействия модулей.

[править] Конфигурация

Изменения в modules.run.xml

<xstaticpages enabled='true' seo='info'>
         <run>
             <!-- ... -->
             <gateway>XStaticPagesGateway</gateway>
         </run>
    </xstaticpages>

[править] Реализация

/**
 * Class MyGateway
 *
 * gateway for work with MyModule
 */
class MyGateway extends XModuleGateway 
{
 
	/**
	 * run
	 *
	 * @class   XModuleGateway 
	 * @access  public
	 * @return  void  
	 */
	function run()
	{
        //данный метод вызывается всегда при инициализации gateway
        //переопределять его не обязательно
	    return true;
	}
 
	/**
	 * example
	 * 
	 * @access  public
	 * @return  void  
	 */
	function example()
	{
	    return rand();
	}
}


[править] Использование

/**
 * module name: xusers
 * method name: getXUser
 * params:      1
 */       
$XUser =& $this->gateway->runGatewayMethod('xusers', 'getXUser', 1);
 
/* alternative */
 
/**
 * module name: xusers
 */
$XUserGateway =& $this->gateway->getGateway('xusers');
 
/* @var $XUserGateway XUsersGateway */
$XUserGateway -> getXUser(1);
123