Type Parameters:
T - Event object
All Known Implementing Classes:
ApplicationUpdatedEventCommand, AttachmentUpdateCommand, ContentCreateCommand, ContentManagementMultiEventsCommand, ContentPermissionChangeCommand, ContentRemoveCommand, ContentUpdateCommand, CrowdUserCreatedCommand, DirectoryEventCommandUserManagement, GlobalPermissionCommand, GroupCreatedEventCommand, GroupEventCommand, GroupMembershipsCreatedEventCommand, GroupMembershipsDeletedEventCommand, GroupMembershipsEventCommand, GroupRemovingEventCommand, MultiEventsCommand, PostUserRenamedEventCommand, SpaceEventsCommand, SpaceImportCommand, SpacePermissionChangeCommand, SpaceRemoveCommand, UserActivationEventCommandUserManagement, UserEventCommand, UserManagementMultiEventsCommand, UserRemovingEventCommand, UserSpaceImportCommand

public interface Command<T,M extends IncrementalSyncModel>
concrete Command class will be associated with an event. A Command will have 2 responsibility - Process event then put into JournalQueue. It means one event could generate multiple entry in the queue - Able to process JournalEntry back to an concrete instance of IncrementalSyncModel which we can send to client as JSON
Since:
9.3.0
  • Method Details

    • processEvent

      void processEvent(T event, Object... parameters)
      Processing an event then serialize as one or many JournalEntry
      Parameters:
      event -
    • processJournalEntries

      Collection<M> processJournalEntries(Collection<JournalEntry> journalEntries)
      Deserialize JournalEntry to JSON representable object
      Parameters:
      journalEntries -
      Returns: