Package org.drools.core.audit
Class WorkingMemoryLogger
- java.lang.Object
-
- org.drools.core.audit.WorkingMemoryLogger
-
- All Implemented Interfaces:
EventListener
,org.kie.api.event.kiebase.KieBaseEventListener
,org.kie.api.event.process.ProcessEventListener
,org.kie.api.event.rule.AgendaEventListener
,org.kie.api.event.rule.RuleRuntimeEventListener
- Direct Known Subclasses:
WorkingMemoryConsoleLogger
,WorkingMemoryFileLogger
,WorkingMemoryInMemoryLogger
public abstract class WorkingMemoryLogger extends Object implements org.kie.api.event.rule.RuleRuntimeEventListener, org.kie.api.event.rule.AgendaEventListener, org.kie.api.event.process.ProcessEventListener, org.kie.api.event.kiebase.KieBaseEventListener
A logger of events generated by a working memory. It listens to the events generated by the working memory and creates associated log event (containing a snapshot of the state of the working event at that time). Filters can be used to filter out unwanted events. Subclasses of this class should implement the logEventCreated(LogEvent) method and store this information, like for example log to file or database.
-
-
Constructor Summary
Constructors Constructor Description WorkingMemoryLogger()
WorkingMemoryLogger(WorkingMemory workingMemory)
Creates a new working memory logger for the given working memory.WorkingMemoryLogger(org.kie.api.event.KieRuntimeEventManager session)
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description void
addFilter(ILogEventFilter filter)
Adds the given filter to the list of filters for this event log.void
afterFunctionRemoved(org.kie.api.event.kiebase.AfterFunctionRemovedEvent event)
void
afterKieBaseLocked(org.kie.api.event.kiebase.AfterKieBaseLockedEvent event)
void
afterKieBaseUnlocked(org.kie.api.event.kiebase.AfterKieBaseUnlockedEvent event)
void
afterKiePackageAdded(org.kie.api.event.kiebase.AfterKiePackageAddedEvent event)
void
afterKiePackageRemoved(org.kie.api.event.kiebase.AfterKiePackageRemovedEvent event)
void
afterMatchFired(org.kie.api.event.rule.AfterMatchFiredEvent event)
void
afterNodeLeft(org.kie.api.event.process.ProcessNodeLeftEvent event)
void
afterNodeTriggered(org.kie.api.event.process.ProcessNodeTriggeredEvent event)
void
afterProcessAdded(org.kie.api.event.kiebase.AfterProcessAddedEvent event)
void
afterProcessCompleted(org.kie.api.event.process.ProcessCompletedEvent event)
void
afterProcessRemoved(org.kie.api.event.kiebase.AfterProcessRemovedEvent event)
void
afterProcessStarted(org.kie.api.event.process.ProcessStartedEvent event)
void
afterRuleAdded(org.kie.api.event.kiebase.AfterRuleAddedEvent event)
void
afterRuleFlowGroupActivated(org.kie.api.event.rule.RuleFlowGroupActivatedEvent event)
void
afterRuleFlowGroupDeactivated(org.kie.api.event.rule.RuleFlowGroupDeactivatedEvent event)
void
afterRuleRemoved(org.kie.api.event.kiebase.AfterRuleRemovedEvent event)
void
afterVariableChanged(org.kie.api.event.process.ProcessVariableChangedEvent event)
void
agendaGroupPopped(org.kie.api.event.rule.AgendaGroupPoppedEvent event)
void
agendaGroupPushed(org.kie.api.event.rule.AgendaGroupPushedEvent event)
void
beforeFunctionRemoved(org.kie.api.event.kiebase.BeforeFunctionRemovedEvent event)
void
beforeKieBaseLocked(org.kie.api.event.kiebase.BeforeKieBaseLockedEvent event)
void
beforeKieBaseUnlocked(org.kie.api.event.kiebase.BeforeKieBaseUnlockedEvent event)
void
beforeKiePackageAdded(org.kie.api.event.kiebase.BeforeKiePackageAddedEvent event)
void
beforeKiePackageRemoved(org.kie.api.event.kiebase.BeforeKiePackageRemovedEvent event)
void
beforeMatchFired(org.kie.api.event.rule.BeforeMatchFiredEvent event)
void
beforeNodeLeft(org.kie.api.event.process.ProcessNodeLeftEvent event)
void
beforeNodeTriggered(org.kie.api.event.process.ProcessNodeTriggeredEvent event)
void
beforeProcessAdded(org.kie.api.event.kiebase.BeforeProcessAddedEvent event)
void
beforeProcessCompleted(org.kie.api.event.process.ProcessCompletedEvent event)
void
beforeProcessRemoved(org.kie.api.event.kiebase.BeforeProcessRemovedEvent event)
void
beforeProcessStarted(org.kie.api.event.process.ProcessStartedEvent event)
void
beforeRuleAdded(org.kie.api.event.kiebase.BeforeRuleAddedEvent event)
void
beforeRuleFlowGroupActivated(org.kie.api.event.rule.RuleFlowGroupActivatedEvent event)
void
beforeRuleFlowGroupDeactivated(org.kie.api.event.rule.RuleFlowGroupDeactivatedEvent event)
void
beforeRuleRemoved(org.kie.api.event.kiebase.BeforeRuleRemovedEvent event)
void
beforeVariableChanged(org.kie.api.event.process.ProcessVariableChangedEvent event)
void
clearFilters()
Clears all filters of this event log.abstract void
logEventCreated(LogEvent logEvent)
This method is invoked every time a new log event is created.void
matchCancelled(org.kie.api.event.rule.MatchCancelledEvent event)
void
matchCreated(org.kie.api.event.rule.MatchCreatedEvent event)
void
objectDeleted(org.kie.api.event.rule.ObjectDeletedEvent event)
void
objectInserted(org.kie.api.event.rule.ObjectInsertedEvent event)
void
objectUpdated(org.kie.api.event.rule.ObjectUpdatedEvent event)
void
readExternal(ObjectInput in)
void
removeFilter(ILogEventFilter filter)
Removes the given filter from the list of filters for this event log.void
writeExternal(ObjectOutput out)
-
-
-
Constructor Detail
-
WorkingMemoryLogger
public WorkingMemoryLogger()
-
WorkingMemoryLogger
public WorkingMemoryLogger(WorkingMemory workingMemory)
Creates a new working memory logger for the given working memory.- Parameters:
workingMemory
-
-
WorkingMemoryLogger
public WorkingMemoryLogger(org.kie.api.event.KieRuntimeEventManager session)
-
-
Method Detail
-
readExternal
public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException
- Throws:
IOException
ClassNotFoundException
-
writeExternal
public void writeExternal(ObjectOutput out) throws IOException
- Throws:
IOException
-
logEventCreated
public abstract void logEventCreated(LogEvent logEvent)
This method is invoked every time a new log event is created. Subclasses should implement this method and store the event, like for example log to a file or database.- Parameters:
logEvent
-
-
addFilter
public void addFilter(ILogEventFilter filter)
Adds the given filter to the list of filters for this event log. A log event must be accepted by all the filters to be entered in the event log.- Parameters:
filter
- The filter that should be added.
-
removeFilter
public void removeFilter(ILogEventFilter filter)
Removes the given filter from the list of filters for this event log. If the given filter was not a filter of this event log, nothing happens.- Parameters:
filter
- The filter that should be removed.
-
clearFilters
public void clearFilters()
Clears all filters of this event log.
-
objectInserted
public void objectInserted(org.kie.api.event.rule.ObjectInsertedEvent event)
- Specified by:
objectInserted
in interfaceorg.kie.api.event.rule.RuleRuntimeEventListener
- See Also:
RuleRuntimeEventListener
-
objectUpdated
public void objectUpdated(org.kie.api.event.rule.ObjectUpdatedEvent event)
- Specified by:
objectUpdated
in interfaceorg.kie.api.event.rule.RuleRuntimeEventListener
- See Also:
RuleRuntimeEventListener
-
objectDeleted
public void objectDeleted(org.kie.api.event.rule.ObjectDeletedEvent event)
- Specified by:
objectDeleted
in interfaceorg.kie.api.event.rule.RuleRuntimeEventListener
- See Also:
RuleRuntimeEventListener
-
matchCreated
public void matchCreated(org.kie.api.event.rule.MatchCreatedEvent event)
- Specified by:
matchCreated
in interfaceorg.kie.api.event.rule.AgendaEventListener
- See Also:
AgendaEventListener
-
matchCancelled
public void matchCancelled(org.kie.api.event.rule.MatchCancelledEvent event)
- Specified by:
matchCancelled
in interfaceorg.kie.api.event.rule.AgendaEventListener
- See Also:
AgendaEventListener
-
beforeMatchFired
public void beforeMatchFired(org.kie.api.event.rule.BeforeMatchFiredEvent event)
- Specified by:
beforeMatchFired
in interfaceorg.kie.api.event.rule.AgendaEventListener
- See Also:
AgendaEventListener
-
afterMatchFired
public void afterMatchFired(org.kie.api.event.rule.AfterMatchFiredEvent event)
- Specified by:
afterMatchFired
in interfaceorg.kie.api.event.rule.AgendaEventListener
- See Also:
AgendaEventListener
-
agendaGroupPopped
public void agendaGroupPopped(org.kie.api.event.rule.AgendaGroupPoppedEvent event)
- Specified by:
agendaGroupPopped
in interfaceorg.kie.api.event.rule.AgendaEventListener
-
agendaGroupPushed
public void agendaGroupPushed(org.kie.api.event.rule.AgendaGroupPushedEvent event)
- Specified by:
agendaGroupPushed
in interfaceorg.kie.api.event.rule.AgendaEventListener
-
beforeRuleFlowGroupActivated
public void beforeRuleFlowGroupActivated(org.kie.api.event.rule.RuleFlowGroupActivatedEvent event)
- Specified by:
beforeRuleFlowGroupActivated
in interfaceorg.kie.api.event.rule.AgendaEventListener
-
afterRuleFlowGroupActivated
public void afterRuleFlowGroupActivated(org.kie.api.event.rule.RuleFlowGroupActivatedEvent event)
- Specified by:
afterRuleFlowGroupActivated
in interfaceorg.kie.api.event.rule.AgendaEventListener
-
beforeRuleFlowGroupDeactivated
public void beforeRuleFlowGroupDeactivated(org.kie.api.event.rule.RuleFlowGroupDeactivatedEvent event)
- Specified by:
beforeRuleFlowGroupDeactivated
in interfaceorg.kie.api.event.rule.AgendaEventListener
-
afterRuleFlowGroupDeactivated
public void afterRuleFlowGroupDeactivated(org.kie.api.event.rule.RuleFlowGroupDeactivatedEvent event)
- Specified by:
afterRuleFlowGroupDeactivated
in interfaceorg.kie.api.event.rule.AgendaEventListener
-
beforeProcessStarted
public void beforeProcessStarted(org.kie.api.event.process.ProcessStartedEvent event)
- Specified by:
beforeProcessStarted
in interfaceorg.kie.api.event.process.ProcessEventListener
-
afterProcessStarted
public void afterProcessStarted(org.kie.api.event.process.ProcessStartedEvent event)
- Specified by:
afterProcessStarted
in interfaceorg.kie.api.event.process.ProcessEventListener
-
beforeProcessCompleted
public void beforeProcessCompleted(org.kie.api.event.process.ProcessCompletedEvent event)
- Specified by:
beforeProcessCompleted
in interfaceorg.kie.api.event.process.ProcessEventListener
-
afterProcessCompleted
public void afterProcessCompleted(org.kie.api.event.process.ProcessCompletedEvent event)
- Specified by:
afterProcessCompleted
in interfaceorg.kie.api.event.process.ProcessEventListener
-
beforeNodeTriggered
public void beforeNodeTriggered(org.kie.api.event.process.ProcessNodeTriggeredEvent event)
- Specified by:
beforeNodeTriggered
in interfaceorg.kie.api.event.process.ProcessEventListener
-
afterNodeTriggered
public void afterNodeTriggered(org.kie.api.event.process.ProcessNodeTriggeredEvent event)
- Specified by:
afterNodeTriggered
in interfaceorg.kie.api.event.process.ProcessEventListener
-
beforeNodeLeft
public void beforeNodeLeft(org.kie.api.event.process.ProcessNodeLeftEvent event)
- Specified by:
beforeNodeLeft
in interfaceorg.kie.api.event.process.ProcessEventListener
-
afterNodeLeft
public void afterNodeLeft(org.kie.api.event.process.ProcessNodeLeftEvent event)
- Specified by:
afterNodeLeft
in interfaceorg.kie.api.event.process.ProcessEventListener
-
beforeVariableChanged
public void beforeVariableChanged(org.kie.api.event.process.ProcessVariableChangedEvent event)
- Specified by:
beforeVariableChanged
in interfaceorg.kie.api.event.process.ProcessEventListener
-
afterVariableChanged
public void afterVariableChanged(org.kie.api.event.process.ProcessVariableChangedEvent event)
- Specified by:
afterVariableChanged
in interfaceorg.kie.api.event.process.ProcessEventListener
-
afterKiePackageAdded
public void afterKiePackageAdded(org.kie.api.event.kiebase.AfterKiePackageAddedEvent event)
- Specified by:
afterKiePackageAdded
in interfaceorg.kie.api.event.kiebase.KieBaseEventListener
-
afterKiePackageRemoved
public void afterKiePackageRemoved(org.kie.api.event.kiebase.AfterKiePackageRemovedEvent event)
- Specified by:
afterKiePackageRemoved
in interfaceorg.kie.api.event.kiebase.KieBaseEventListener
-
beforeKieBaseLocked
public void beforeKieBaseLocked(org.kie.api.event.kiebase.BeforeKieBaseLockedEvent event)
- Specified by:
beforeKieBaseLocked
in interfaceorg.kie.api.event.kiebase.KieBaseEventListener
-
afterKieBaseLocked
public void afterKieBaseLocked(org.kie.api.event.kiebase.AfterKieBaseLockedEvent event)
- Specified by:
afterKieBaseLocked
in interfaceorg.kie.api.event.kiebase.KieBaseEventListener
-
beforeKieBaseUnlocked
public void beforeKieBaseUnlocked(org.kie.api.event.kiebase.BeforeKieBaseUnlockedEvent event)
- Specified by:
beforeKieBaseUnlocked
in interfaceorg.kie.api.event.kiebase.KieBaseEventListener
-
afterKieBaseUnlocked
public void afterKieBaseUnlocked(org.kie.api.event.kiebase.AfterKieBaseUnlockedEvent event)
- Specified by:
afterKieBaseUnlocked
in interfaceorg.kie.api.event.kiebase.KieBaseEventListener
-
afterRuleAdded
public void afterRuleAdded(org.kie.api.event.kiebase.AfterRuleAddedEvent event)
- Specified by:
afterRuleAdded
in interfaceorg.kie.api.event.kiebase.KieBaseEventListener
-
afterRuleRemoved
public void afterRuleRemoved(org.kie.api.event.kiebase.AfterRuleRemovedEvent event)
- Specified by:
afterRuleRemoved
in interfaceorg.kie.api.event.kiebase.KieBaseEventListener
-
beforeFunctionRemoved
public void beforeFunctionRemoved(org.kie.api.event.kiebase.BeforeFunctionRemovedEvent event)
- Specified by:
beforeFunctionRemoved
in interfaceorg.kie.api.event.kiebase.KieBaseEventListener
-
beforeKiePackageAdded
public void beforeKiePackageAdded(org.kie.api.event.kiebase.BeforeKiePackageAddedEvent event)
- Specified by:
beforeKiePackageAdded
in interfaceorg.kie.api.event.kiebase.KieBaseEventListener
-
beforeKiePackageRemoved
public void beforeKiePackageRemoved(org.kie.api.event.kiebase.BeforeKiePackageRemovedEvent event)
- Specified by:
beforeKiePackageRemoved
in interfaceorg.kie.api.event.kiebase.KieBaseEventListener
-
beforeRuleAdded
public void beforeRuleAdded(org.kie.api.event.kiebase.BeforeRuleAddedEvent event)
- Specified by:
beforeRuleAdded
in interfaceorg.kie.api.event.kiebase.KieBaseEventListener
-
beforeRuleRemoved
public void beforeRuleRemoved(org.kie.api.event.kiebase.BeforeRuleRemovedEvent event)
- Specified by:
beforeRuleRemoved
in interfaceorg.kie.api.event.kiebase.KieBaseEventListener
-
afterFunctionRemoved
public void afterFunctionRemoved(org.kie.api.event.kiebase.AfterFunctionRemovedEvent event)
- Specified by:
afterFunctionRemoved
in interfaceorg.kie.api.event.kiebase.KieBaseEventListener
-
beforeProcessAdded
public void beforeProcessAdded(org.kie.api.event.kiebase.BeforeProcessAddedEvent event)
- Specified by:
beforeProcessAdded
in interfaceorg.kie.api.event.kiebase.KieBaseEventListener
-
afterProcessAdded
public void afterProcessAdded(org.kie.api.event.kiebase.AfterProcessAddedEvent event)
- Specified by:
afterProcessAdded
in interfaceorg.kie.api.event.kiebase.KieBaseEventListener
-
beforeProcessRemoved
public void beforeProcessRemoved(org.kie.api.event.kiebase.BeforeProcessRemovedEvent event)
- Specified by:
beforeProcessRemoved
in interfaceorg.kie.api.event.kiebase.KieBaseEventListener
-
afterProcessRemoved
public void afterProcessRemoved(org.kie.api.event.kiebase.AfterProcessRemovedEvent event)
- Specified by:
afterProcessRemoved
in interfaceorg.kie.api.event.kiebase.KieBaseEventListener
-
-