1 package net.avcompris.commons3.api;
2
3 import javax.annotation.Nullable;
4
5 public interface UserSessionsQuery extends EntitiesQuery<UserSessionFiltering, UserSessionFiltering.Field> {
6
7 @Override
8 SortBy[] getSortBys();
9
10 @Override
11 Expand[] getExpands();
12
13 UserSessionsQuery setFiltering(@Nullable UserSessionFiltering filtering);
14
15 UserSessionsQuery setSortBys(SortBy... sortBys);
16
17 UserSessionsQuery setExpands(Expand... expands);
18
19 enum SortBy {
20
21 SORT_BY_USERNAME, SORT_BY_USERNAME_DESC,
22 SORT_BY_USER_SESSION_ID, SORT_BY_USER_SESSION_ID_DESC,
23 SORT_BY_CREATED_AT, SORT_BY_CREATED_AT_DESC,
24 SORT_BY_UPDATED_AT, SORT_BY_UPDATED_AT_DESC,
25 SORT_BY_EXPIRES_AT, SORT_BY_EXPIRES_AT_DESC,
26 SORT_BY_EXPIRED_AT, SORT_BY_EXPIRED_AT_DESC,
27 }
28
29 interface Expand {
30
31 }
32
33 UserSessionsQuery setStart(@Nullable Integer start);
34
35 UserSessionsQuery setLimit(@Nullable Integer limit);
36 }