Class isp api::EventEntry

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

Класс isp_api::EventEntry

Особый тип действия, которое никогда не может быть вызвано пользователем

#include <action.h> 

Описание:

class isp_api::EventEntry

Данный класс предназначен для описания "фиктивных", "виртуальных" действий, к которым могут быть привязаны события. При вызове функции, к которой привязано действие, происходит вызов всех его событий.

//пример использования 
#define AUTH_ACTION "authenticate" 
 
EventEntry *authMethod; 
 
class AuthenPrivate { 
public: 
    Authen AuthenPrivate::Authenticate(Session &ses) { 
        ForEachI(authMethod->events(), event) { 
            (*event)->BeforeExecute(ses); 
    } 
}; 
 
MODULE_INIT(session, "") { 
    authMethod = new EventEntry(AUTH_ACTION); 
} 

Родители:


Открытые члены (кратко)

EventEntry ( const string &name )

Конструктор класса

Приватные члены (кратко)

virtual string type () const

Возвращает тип реализуемой функции


virtual void Execute ( Session &ses )

Метод, вызываемый при выполнении действия


virtual bool Authorize ( const Authen & )

Проверка авторизации

Конструкторы

EventEntry ( const string &name )

Конструктор класса

Аргументы:
[in] - name Имя функции, к которой привязано данное действие

Методы

virtual string type () const

Данный метод является приватным

Возвращает тип реализуемой функции

Может переопределяться в дочерних классах для сообщения типа реализуемой функции, например: "list", "form"

Returned: Должен возвращать тип функции в строковом виде (например: "list", "form")

virtual void Execute ( Session &ses )

Данный метод является приватным

Метод, вызываемый при выполнении действия

Метод должен быть реализован в классе-потомке

Аргументы:
[in/out] ses Текущая сессия
See also: isp_api::Session

virtual bool Authorize ( const Authen & )

Данный метод является приватным

Проверка авторизации

Стандартная реализация выполняет проверку уровня пользователя и вызывает метод CheckAccess()

Returned: Возвращает true в случае успеха, иначе возвращает false