Class ConversationParticipant
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
-
Nested Class Summary
Nested classes/interfaces inherited from class com.finconsgroup.itserr.marketplace.core.entity.AbstractUUIDEntity
com.finconsgroup.itserr.marketplace.core.entity.AbstractUUIDEntity.AbstractUUIDEntityBuilder<C extends com.finconsgroup.itserr.marketplace.core.entity.AbstractUUIDEntity,B extends com.finconsgroup.itserr.marketplace.core.entity.AbstractUUIDEntity.AbstractUUIDEntityBuilder<C, B>> -
Constructor Summary
ConstructorsConstructorDescriptionConversationParticipant(UUID conversationId, UUID userId, ParticipantRole role) ConversationParticipant(UUID conversationId, UUID userId, ParticipantRole role, UUID invitedBy) -
Method Summary
Modifier and TypeMethodDescriptionstatic ConversationParticipantcreateAdmin(UUID conversationId, UUID userId, UUID promotedBy) static ConversationParticipantcreateInvitedMember(UUID conversationId, UUID userId, UUID invitedBy) static ConversationParticipantcreateMember(UUID conversationId, UUID userId) static ConversationParticipantcreateOwner(UUID conversationId, UUID userId) voidbooleanbooleanisAdmin()booleanisMember()booleanisOwner()voidleave()voidvoidvoidvoidrejoin()Methods inherited from class com.finconsgroup.itserr.marketplace.core.entity.AbstractUUIDEntity
builder, canEqual, equals, getId, hashCode, setId, toString
-
Constructor Details
-
ConversationParticipant
-
ConversationParticipant
public ConversationParticipant(UUID conversationId, UUID userId, ParticipantRole role, UUID invitedBy)
-
-
Method Details
-
prePersist
public void prePersist()- Overrides:
prePersistin classcom.finconsgroup.itserr.marketplace.core.entity.AbstractUUIDEntity
-
createOwner
-
createMember
-
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()
-