Interface ProjectEventRepository
-
- All Superinterfaces:
org.springframework.data.repository.CrudRepository<ProjectEvent,java.lang.Long>
,IridaJpaRepository<ProjectEvent,java.lang.Long>
,org.springframework.data.jpa.repository.JpaSpecificationExecutor<ProjectEvent>
,org.springframework.data.repository.PagingAndSortingRepository<ProjectEvent,java.lang.Long>
,org.springframework.data.repository.Repository<ProjectEvent,java.lang.Long>
,org.springframework.data.repository.history.RevisionRepository<ProjectEvent,java.lang.Long,java.lang.Integer>
public interface ProjectEventRepository extends IridaJpaRepository<ProjectEvent,java.lang.Long>
Repository for storing events that occurred on a project
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.String
GET_EVENTS_FOR_USER
Query to get events for the specified user
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description org.springframework.data.domain.Page<ProjectEvent>
getAllProjectsEvents(org.springframework.data.domain.Pageable pageable)
Get the events for all projectsorg.springframework.data.domain.Page<ProjectEvent>
getEventsForProject(Project project, org.springframework.data.domain.Pageable pageable)
Get the events for a given projectorg.springframework.data.domain.Page<ProjectEvent>
getEventsForUser(User user, org.springframework.data.domain.Pageable pageable)
Get the events on all projects for a given userjava.util.List<ProjectEvent>
getEventsForUserAfterDate(User user, java.util.Date startTime)
-
Methods inherited from interface org.springframework.data.repository.CrudRepository
count, delete, deleteAll, deleteAll, deleteAllById, deleteById, existsById, findAll, findAllById, findById, save, saveAll
-
Methods inherited from interface org.springframework.data.jpa.repository.JpaSpecificationExecutor
count, exists, findAll, findAll, findAll, findOne
-
-
-
-
Field Detail
-
GET_EVENTS_FOR_USER
static final java.lang.String GET_EVENTS_FOR_USER
Query to get events for the specified user- See Also:
- Constant Field Values
-
-
Method Detail
-
getEventsForProject
@Query("FROM ProjectEvent e WHERE e.project=?1") org.springframework.data.domain.Page<ProjectEvent> getEventsForProject(Project project, org.springframework.data.domain.Pageable pageable)
Get the events for a given project- Parameters:
project
- The project to get events forpageable
- the page description for what we should load.- Returns:
- A List of
ProjectEvent
s
-
getAllProjectsEvents
@Query("FROM ProjectEvent e") org.springframework.data.domain.Page<ProjectEvent> getAllProjectsEvents(org.springframework.data.domain.Pageable pageable)
Get the events for all projects- Parameters:
pageable
- the page description for what we should load.- Returns:
- A List of
ProjectEvent
s
-
getEventsForUser
@Query("SELECT e FROM ProjectEvent e INNER JOIN e.project as p WHERE ((p in (select puj.project from ProjectUserJoin puj where puj.user = :forUser)) or (p in (select ugpj.project from UserGroupJoin ugj, UserGroupProjectJoin ugpj where ugj.group = ugpj.userGroup and ugj.user = :forUser)))") org.springframework.data.domain.Page<ProjectEvent> getEventsForUser(@Param("forUser") User user, org.springframework.data.domain.Pageable pageable)
Get the events on all projects for a given user- Parameters:
user
- TheUser
to get events forpageable
- the page description for what we should load.- Returns:
- A List of
ProjectEvent
s
-
getEventsForUserAfterDate
@Query("SELECT e FROM ProjectEvent e INNER JOIN e.project as p WHERE ((p in (select puj.project from ProjectUserJoin puj where puj.user = :forUser)) or (p in (select ugpj.project from UserGroupJoin ugj, UserGroupProjectJoin ugpj where ugj.group = ugpj.userGroup and ugj.user = :forUser))) AND e.createdDate > :startTime") java.util.List<ProjectEvent> getEventsForUserAfterDate(@Param("forUser") User user, @Param("startTime") java.util.Date startTime)
- Parameters:
user
- TheUser
to get events forstartTime
- TheDate
to get events after- Returns:
- a List of
ProjectEvent
s
-
-