Interface WorkflowEventProvider

All Superinterfaces:
Provider
All Known Implementing Classes:
AbstractWorkflowEventProvider, ClientAuthenticatedWorkflowEventProvider, ClientCreatedWorkflowEventProvider, UserAuthenticatedWorkflowEventProvider, UserCreatedWorkflowEventProvider, UserFedIdentityAddedWorkflowEventProvider, UserFedIdentityRemovedWorkflowEventProvider, UserGroupMembershipAddedWorkflowEventProvider, UserGroupMembershipRemovedWorkflowEventProvider, UserRoleGrantedWorkflowEventProvider, UserRoleRevokedWorkflowEventProvider

public interface WorkflowEventProvider extends Provider
Defines a provider interface for handling and converting events into workflow events.

Implementations of this interface are responsible for determining whether specific events (user events, admin events, or provider events) are supported, converting them to workflow events, and evaluating workflow conditions based on these events.
  • Method Details

    • getSupportedResourceType

      ResourceType getSupportedResourceType()
      Returns the ResourceType that this event provider is capable of handling.
      Returns:
      the supported ResourceType for this event provider implementation
    • create

      WorkflowEvent create(Event event)
      Creates a WorkflowEvent from a user Event.
      Parameters:
      event - the user event to convert
      Returns:
      a WorkflowEvent representing the given event, or null if the event is not supported
    • create

      WorkflowEvent create(AdminEvent adminEvent)
      Creates a WorkflowEvent from an AdminEvent.
      Parameters:
      adminEvent - the admin event to convert
      Returns:
      a WorkflowEvent representing the given admin event, or null if the event is not supported
    • create

      WorkflowEvent create(ProviderEvent providerEvent)
      Creates a WorkflowEvent from a ProviderEvent.
      Parameters:
      providerEvent - the provider event to convert
      Returns:
      a WorkflowEvent representing the given provider event, or null if the event is not supported
    • supports

      boolean supports(Event event)
      Determines whether this provider supports the given user Event.
      Parameters:
      event - the user event to check
      Returns:
      true if the event is supported, false otherwise
    • supports

      boolean supports(AdminEvent adminEvent)
      Determines whether this provider supports the given AdminEvent.
      Parameters:
      adminEvent - the admin event to check
      Returns:
      true if the event is supported, false otherwise
    • supports

      boolean supports(ProviderEvent providerEvent)
      Determines whether this provider supports the given ProviderEvent.
      Parameters:
      providerEvent - the provider event to check
      Returns:
      true if the event is supported, false otherwise
    • evaluate

      boolean evaluate(WorkflowExecutionContext context)
      Evaluates whether the event in the workflow execution context matches this provider's criteria.

      Implementations should inspect the workflow event in the provided context and return true when the event matches the provider's specific conditions.
      Parameters:
      context - the execution context for the workflow evaluation
      Returns:
      true if the event matches the criteria, false otherwise
    • close

      default void close()
      Specified by:
      close in interface Provider