Class Event
java.lang.Object
ru.bitel.bgbilling.kernel.base.server.logger.BGLogger
ru.bitel.bgbilling.kernel.event.common.Event
- All Implemented Interfaces:
Serializable
- Direct Known Subclasses:
ApplicationRunningEvent,CheckApplicationRunEvent,ContractDomainModifiedEvent,ContractModifiedEvent,ContractObjectStatusChangedTopicEvent,ContractPasswordChangedEvent,ContractStatusChangedEvent,ContractStatusChangedTopicEvent,ContractTariffChangedEvent,ContractTariffOptionChangedEvent,CustomerChangedEvent,CustomerCreatedEvent,CustomerDeletedEvent,DebetStatusManageAfterOpen,DirectoryItemModifiedEvent,DirectoryModifiedEvent,DispatchEvent,EventScriptLinkDeletedEvent,EventScriptLinkModifiedEvent,GeoCodeUpdateEvent,InetReloadEvent,InetServModifiedEvent,InetServRestrictionModifiedEvent,IpResourceModifiedEvent,ModulesChangedEvent,NasListModifiedEvent,PluginConfigModifiedEvent,PoolEvent,ProductModifiedEvent,ProductModifiedEvent,ProductPeriodModifiedEvent,QueueEvent,ScriptFunctionModifiedEvent,ScriptUpdatedEvent,ServerStartEvent,ServiceLinkModifiedEvent,ServiceModifiedEvent,ServicesChangedEvent,TariffTreeModifiedEvent,TariffVarModifiedEvent,TimeTypesChangedEvent,TvAccountModifiedEvent,TvReloadEvent,VoiceAccountDeviceStateModifiedEvent,VoiceAccountModifiedEvent,VoiceCostMapUpdateEvent,VoiceDevicesReloadEvent,VoiceLogProcessedEvent,VoiceOperAccountModifiedEvent,VoiceSessionFinishDeviceEvent,VoiceZoneMapUpdateEvent,WebNotificationListReadEvent,WebNotificationListUpdateEvent,XslModifiedEvent
public abstract class Event
extends ru.bitel.bgbilling.kernel.base.server.logger.BGLogger
implements Serializable
Абстрактный супер класс для всех событий.
Publisher-Subscriber событие. Может доставляться нескольким слушателям в отличие от
Если слушатель был неактивен в момент отправки - он это событие не получит.
Каждый расширяющий класс должен иметь сгенерированный serialVersionUID для совместимости с перекомпилянной версией.
Также в каждом конечном классе события должна присутствовать аннотация
Для простых полей (например, int long String и т.п.) желательно указывать аннотацию
возможно стоит делать один объект-событие (также смотри
Publisher-Subscriber событие. Может доставляться нескольким слушателям в отличие от
QueueEventЕсли слушатель был неактивен в момент отправки - он это событие не получит.
Каждый расширяющий класс должен иметь сгенерированный serialVersionUID для совместимости с перекомпилянной версией.
Также в каждом конечном классе события должна присутствовать аннотация
XmlRootElement и пустой коструктор (protected).Для простых полей (например, int long String и т.п.) желательно указывать аннотацию
XmlAttribute.
Для событий которых может быть сразу несколько (например, событие изменения баланса)возможно стоит делать один объект-событие (также смотри
PoolEvent).- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected static final intprotected static final intprotected static final int -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionintКод договора с которым произошло событие.getDestination(Class<?> clazz) Deprecated.intКод сгенерировашего событие модуля, 0 - ядроintintКод супер договора для зависимого субдоговора.getTime()longintDeprecated.intКод пользователя биллинга, сформировавшего событие.booleanvoidprepareMessage(javax.jms.Message message) protected booleanvoidsetLogFunctionProcess(boolean logFunctionProcess) voidsetMessageID(String messageID) voidtoString()protected voidMethods inherited from class ru.bitel.bgbilling.kernel.base.server.logger.BGLogger
error, error, error, getLogger, logError, logError, warn
-
Field Details
-
NO_MODULE
protected static final int NO_MODULE- See Also:
-
NO_PLUGIN
protected static final int NO_PLUGIN- See Also:
-
CONTRACT_GLOBAL
protected static final int CONTRACT_GLOBAL- See Also:
-
-
Constructor Details
-
Event
protected Event() -
Event
public Event(int moduleId, int pluginId, int contractId, int userId) Конструктор события плагина.- Parameters:
moduleId- NO_MODULE.pluginId- uid плагина.contractId- код договора, для глобальных событий должен быть = CONTRACT_GLOBAL.userId- код пользователя биллинга.
-
Event
public Event(int moduleId, int contractId, int userId) Конструктор события ядра или модуля.- Parameters:
moduleId- 0 для ядра, либо код экземпляра модуля.contractId- код договора, для глобальных событий должен быть = -1.userId- код пользователя.
-
-
Method Details
-
prepareMessage
public void prepareMessage(javax.jms.Message message) throws javax.jms.JMSException - Throws:
javax.jms.JMSException
-
getModuleId
public int getModuleId()Код сгенерировашего событие модуля, 0 - ядро- Returns:
- int
-
getContractId
public int getContractId()Код договора с которым произошло событие. Для глобальных событий должен быть = -1 (CONTRACT_GLOBAL)- Returns:
- int
-
getSuperContractId
public int getSuperContractId()Код супер договора для зависимого субдоговора. В данный момент это поле постоянно равно -1 и нигде не используется.- Returns:
-
getUserId
public int getUserId()Код пользователя биллинга, сформировавшего событие.- Returns:
- код пользователя биллинга
-
getTypeId
Deprecated.Для поддержки совместимости со старыми событиями с данным методом, который могли использовать скрипты. Использовать проверку instanceof.- Returns:
-
getGenerateTime
Deprecated.usegetTime()Время генерации события системой- Returns:
- Calendar
-
getTime
-
getTimestamp
public long getTimestamp() -
getPluginId
public int getPluginId() -
setMessageID
-
getMessageID
-
getDestination
-
isLogFunctionProcess
public boolean isLogFunctionProcess() -
setLogFunctionProcess
public void setLogFunctionProcess(boolean logFunctionProcess) -
serializeAsObject
protected boolean serializeAsObject() -
getSource
-
setSource
-
toString
-
toString
-
getTime()