Package ru.kpekepsalt.ruvik.service.Impl
Class ConversationServiceImpl
- java.lang.Object
-
- ru.kpekepsalt.ruvik.service.Impl.ConversationServiceImpl
-
- All Implemented Interfaces:
ConversationService
@Service public class ConversationServiceImpl extends Object implements ConversationService
Service for conversation operations
-
-
Constructor Summary
Constructors Constructor Description ConversationServiceImpl()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
establishSession(Long id)
Establish session of conversation with given idConversation
findById(Long id)
Search conversation by idConversation
findByReceiverIdAndSenderId(Long receiver, Long sender)
Search conversation between receiver and senderConversation
findBySession(String sessionKey)
Search conversation by session keyList<Conversation>
findByStatusAndReceiverId(ConversationStatus status, Long id)
Search conversations by status and receiver idvoid
initiate(String login, SessionInitialInformationDto sessionInitialInformationDto, VoidActionFunctional userNotFound, VoidActionFunctional alreadyInitiated, VoidParamActionFunctional<ConversationDto> onSuccess)
Initiates conversation with receiverConversation
save(Conversation conversation)
Saves conversation data
-
-
-
Method Detail
-
save
public Conversation save(Conversation conversation) throws DataValidityException
Description copied from interface:ConversationService
Saves conversation data- Specified by:
save
in interfaceConversationService
- Parameters:
conversation
- Conversation to save- Returns:
- Saved conversation
- Throws:
DataValidityException
-
findBySession
public Conversation findBySession(String sessionKey)
Description copied from interface:ConversationService
Search conversation by session key- Specified by:
findBySession
in interfaceConversationService
- Parameters:
sessionKey
- Conversation session key- Returns:
- Found conversation or null if not exists
-
findByStatusAndReceiverId
public List<Conversation> findByStatusAndReceiverId(ConversationStatus status, Long id)
Description copied from interface:ConversationService
Search conversations by status and receiver id- Specified by:
findByStatusAndReceiverId
in interfaceConversationService
- Parameters:
status
- Conversation statusid
- Receiver id- Returns:
- List of found conversation
-
findByReceiverIdAndSenderId
public Conversation findByReceiverIdAndSenderId(Long receiver, Long sender)
Description copied from interface:ConversationService
Search conversation between receiver and sender- Specified by:
findByReceiverIdAndSenderId
in interfaceConversationService
- Parameters:
receiver
- Receiver idsender
- Sender id- Returns:
- Found conversation or null if not exists
-
findById
public Conversation findById(Long id)
Description copied from interface:ConversationService
Search conversation by id- Specified by:
findById
in interfaceConversationService
- Parameters:
id
- Conversation id- Returns:
- Found conversation or null if not exists
-
establishSession
public void establishSession(Long id)
Description copied from interface:ConversationService
Establish session of conversation with given id- Specified by:
establishSession
in interfaceConversationService
- Parameters:
id
- Conversation id
-
initiate
public void initiate(String login, SessionInitialInformationDto sessionInitialInformationDto, VoidActionFunctional userNotFound, VoidActionFunctional alreadyInitiated, VoidParamActionFunctional<ConversationDto> onSuccess) throws DataValidityException
Description copied from interface:ConversationService
Initiates conversation with receiver- Specified by:
initiate
in interfaceConversationService
- Parameters:
login
- Receiver loginsessionInitialInformationDto
- Session information datauserNotFound
- Action if user won't be foundalreadyInitiated
- Action if conversation has been already initiatedonSuccess
- Action if conversation successfully initiated- Throws:
DataValidityException
-
-