java.lang.Object
com.finconsgroup.itserr.marketplace.core.entity.AbstractUUIDEntity
com.finconsgroup.itserr.marketplace.usercommunication.dm.entity.ConversationParticipant

@Entity public class ConversationParticipant extends com.finconsgroup.itserr.marketplace.core.entity.AbstractUUIDEntity
Entity representing a participant in a conversation with their role and status
  • Constructor Details

  • Method Details

    • prePersist

      public void prePersist()
      Overrides:
      prePersist in class com.finconsgroup.itserr.marketplace.core.entity.AbstractUUIDEntity
    • createOwner

      public static ConversationParticipant createOwner(UUID conversationId, UUID userId)
    • createMember

      public static ConversationParticipant createMember(UUID conversationId, UUID userId)
    • createInvitedMember

      public static ConversationParticipant createInvitedMember(UUID conversationId, UUID userId, UUID invitedBy)
    • createAdmin

      public static ConversationParticipant createAdmin(UUID conversationId, UUID userId, UUID promotedBy)
    • isOwner

      public boolean isOwner()
    • isAdmin

      public boolean isAdmin()
    • isMember

      public boolean isMember()
    • hasAdminPrivileges

      public boolean hasAdminPrivileges()
    • promoteToAdmin

      public void promoteToAdmin()
    • demoteToMember

      public void demoteToMember()
    • leave

      public void leave()
    • rejoin

      public void rejoin()
    • markAsRead

      public void markAsRead()