Package ru.kpekepsalt.ruvik.repository
Interface ConversationRepository
-
- All Superinterfaces:
org.springframework.data.repository.CrudRepository<Conversation,Long>
,org.springframework.data.jpa.repository.JpaRepository<Conversation,Long>
,org.springframework.data.repository.PagingAndSortingRepository<Conversation,Long>
,org.springframework.data.repository.query.QueryByExampleExecutor<Conversation>
,org.springframework.data.repository.Repository<Conversation,Long>
@Repository public interface ConversationRepository extends org.springframework.data.jpa.repository.JpaRepository<Conversation,Long>
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description void
establishSession(ConversationStatus status, Long id)
Session establishmentList<Conversation>
findByReceiverId(Long id)
Optional<Conversation>
findByReceiverIdAndSenderId(Long receiver, Long sender)
List<Conversation>
findBySenderId(Long id)
Optional<Conversation>
findBySessionKey(String sessionKey)
List<Conversation>
findByStatusAndReceiverId(ConversationStatus status, Long id)
List<Conversation>
findByStatusAndSenderId(ConversationStatus status, Long id)
-
Methods inherited from interface org.springframework.data.repository.CrudRepository
count, delete, deleteAll, deleteAll, deleteById, existsById, findById, save
-
Methods inherited from interface org.springframework.data.jpa.repository.JpaRepository
deleteAllInBatch, deleteInBatch, findAll, findAll, findAll, findAll, findAllById, flush, getOne, saveAll, saveAndFlush
-
-
-
-
Method Detail
-
findBySessionKey
Optional<Conversation> findBySessionKey(String sessionKey)
-
findByReceiverId
List<Conversation> findByReceiverId(Long id)
-
findBySenderId
List<Conversation> findBySenderId(Long id)
-
findByStatusAndReceiverId
List<Conversation> findByStatusAndReceiverId(ConversationStatus status, Long id)
-
findByStatusAndSenderId
List<Conversation> findByStatusAndSenderId(ConversationStatus status, Long id)
-
findByReceiverIdAndSenderId
Optional<Conversation> findByReceiverIdAndSenderId(Long receiver, Long sender)
-
establishSession
@Modifying @Query("UPDATE Conversation c SET c.oneTimeKey = \'\', c.status = :status WHERE id = :id") void establishSession(@Param("status") ConversationStatus status, @Param("id") Long id)
Session establishment- Parameters:
status
- New conversation statusid
- Conversation id
-
-