Fired when a funnel lead has been changed, after its lead scores have been recalculated, so listeners can react and search indexes can be updated. Raised by FunnelManager.fireLeadUpdated, which is called whenever a lead's data, stage or ownership changes. Lead scoring is run first, so the lead handed to listeners already carries its new scores; if scoring fails no event is fired. It is fired inside the caller's transaction and carries that transaction, so indexing is deferred until the transaction completes. It is also a funnel event, which means it can trigger a LeadUpdatedGoal and so start or advance a journey.
Group: Journeys
Implements: IndexedItemUpdatedEvent, FunnelEvent, CommonAppEvent
Properties
| Property | Returns | Description |
|---|---|---|
| branch | Branch | Always null - a lead is owned by an organisation, not by a website branch. |
| deleted | boolean | Always false - this event is only fired for updates, never for deletions, so the lead is never removed from the search index because of it. |
| leadProfile | Profile | The profile the lead belongs to, ie the person the journey applies to. Null for an anonymous lead that has not yet been matched to a profile. |
| relatedLead | Lead | The lead this event is about, so funnel processing acts on the existing lead rather than creating a new one. |
| transaction | Transaction | The transaction the lead was updated in. Re-indexing is deferred until this transaction completes. |
| triggeredGoal | Class<? extends Goal> | The goal type this event can satisfy, always LeadUpdatedGoal, so journeys waiting on a lead update advance when it fires. |
| updatedObject | Lead | The lead that was updated, and which should be re-indexed. Never null. |
Methods
getBranch()
Returns: Branch
Always null - a lead is owned by an organisation, not by a website branch.
getUpdatedObject()
Returns: Lead
The lead that was updated, and which should be re-indexed. Never null.
isDeleted()
Returns: boolean
Always false - this event is only fired for updates, never for deletions, so the lead is never removed from the search index because of it.
getTransaction()
Returns: Transaction
The transaction the lead was updated in. Re-indexing is deferred until this transaction completes.
getLeadProfile()
Returns: Profile
The profile the lead belongs to, ie the person the journey applies to. Null for an anonymous lead that has not yet been matched to a profile.
getRelatedLead()
Returns: Lead
The lead this event is about, so funnel processing acts on the existing lead rather than creating a new one.
getTriggeredGoal()
Returns: Class<? extends Goal>
The goal type this event can satisfy, always LeadUpdatedGoal, so journeys waiting on a lead update advance when it fires.