Subversion Repositories SmartDukaan

Rev

Rev 25837 | Rev 25846 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
23172 ashik.ali 1
package com.spice.profitmandi.dao.repository;
2
 
3
import java.util.List;
4
import java.util.Map;
5
import java.util.Set;
23329 ashik.ali 6
 
25796 tejbeer 7
import javax.persistence.criteria.CriteriaBuilder;
8
import javax.persistence.criteria.Predicate;
9
import javax.persistence.criteria.Root;
23405 amit.gupta 10
import javax.swing.SortOrder;
11
 
23172 ashik.ali 12
import org.springframework.stereotype.Repository;
25640 tejbeer 13
import org.springframework.util.MultiValueMap;
23172 ashik.ali 14
 
25837 amit.gupta 15
import com.spice.profitmandi.dao.entity.dtr.InsurancePolicy;
16
 
23172 ashik.ali 17
@Repository
18
public interface GenericRepository {
25640 tejbeer 19
	public final String IS_NULL = "IS_NULL";
20
	public final String IS_NOT_NULL = "IS_NOT_NULL";
21
 
23172 ashik.ali 22
	public <T> void persist(Object object);
25640 tejbeer 23
 
24105 govind 24
	public <T> void delete(Object object);
25640 tejbeer 25
 
23339 ashik.ali 26
	public <T> List<T> selectAllOrderByDesc(Class<T> clazz, String orderByDescKey);
25640 tejbeer 27
 
23269 ashik.ali 28
	public <T> long selectCount(Class<T> clazz);
25640 tejbeer 29
 
23344 ashik.ali 30
	public <T> long selectCountByNotNull(Class<T> clazz, String notNullKey);
25640 tejbeer 31
 
23418 ashik.ali 32
	public <T> long selectCountByEqual(Class<T> clazz, String key, Object value);
25640 tejbeer 33
 
23504 ashik.ali 34
	public <T> long selectCountByEquals(Class<T> clazz, Map<String, Object> objectParams);
25640 tejbeer 35
 
23418 ashik.ali 36
	public <T> long selectCountByIn(Class<T> clazz, String key, List<?> in);
25640 tejbeer 37
 
38
	public <T> long selectCountByEqualBetween(Class<T> clazz, String key, Object value, String betweenKey,
39
			Object betweenValue1, Object betweenValue2);
40
 
41
	// public <T> List<T> selectAllPaginated(Class<T> clazz, int offset, int limit);
23269 ashik.ali 42
	public <T> List<T> selectAllOrderByDescPaginated(Class<T> clazz, String orderByDescKey, int offset, int limit);
25640 tejbeer 43
 
44
	public <T> List<T> selectAllNotNullOrderByDescPaginated(Class<T> clazz, String notNullKey, String orderByDescKey,
45
			int offset, int limit);
46
 
23781 ashik.ali 47
	public <T> List<T> selectAllNotNullOrderByDesc(Class<T> clazz, String notNullKey, String orderByDescKey);
25640 tejbeer 48
 
23172 ashik.ali 49
	public <T> T selectById(Class<T> clazz, int id);
25640 tejbeer 50
 
51
	public <U, T> List<U> selectAllDistinctOrderByDesc(Class<T> clazz, Class<U> selector, String selectorKey,
52
			String orderByDescKey);
53
 
54
	public <U, T> List<U> selectAllDistinctByNotInOrderByDesc(Class<T> clazz, Class<U> selector, String selectorKey,
55
			Map<String, List<?>> listParams, String orderByDescKey);
56
 
23339 ashik.ali 57
	public <T> List<T> selectAllByInsOrderByDesc(Class<T> clazz, Map<String, List<?>> listMap, String orderByDescKey);
25640 tejbeer 58
 
59
	public <U, T> List<U> selectAllByInsOrderByDesc(Class<T> clazz, Class<U> selector, String selectorKey,
60
			Map<String, List<?>> listMap, String orderByDescKey);
61
 
23339 ashik.ali 62
	public <T> List<T> selectAllByInOrderByDesc(Class<T> clazz, String key, List<?> in, String orderByDescKey);
25640 tejbeer 63
 
64
	public <T> List<T> selectAllByInOrderByDescPaginated(Class<T> clazz, String key, List<?> in, String orderByDescKey,
65
			int offset, int limit);
66
 
67
	public <U, T> List<U> selectAllByInOrderByDesc(Class<T> clazz, Class<U> selector, String selectorKey, String inKey,
68
			List<?> in, String orderByDescKey);
69
 
70
	public <T> List<T> selectAllByEqualsOrderByDesc(Class<T> clazz, Map<String, Object> objectMap,
71
			String orderByDescKey);
72
 
73
	public <U, T> List<U> selectAllByEqualsOrderBy(Class<T> clazz, Class<U> selector, String selectorKey,
74
			Map<String, Object> objectMap, String orderByKey, SortOrder sortOrder);
75
 
23339 ashik.ali 76
	public <T> List<T> selectAllByEqualOrderByDesc(Class<T> clazz, String key, Object value, String orderByDescKey);
25640 tejbeer 77
 
23418 ashik.ali 78
	public <T> List<T> selectAllByNotNull(Class<T> clazz, String notNullParams);
25640 tejbeer 79
 
23574 ashik.ali 80
	public <T> T selectByNotNull(Class<T> clazz, String notNullKey);
25640 tejbeer 81
 
23574 ashik.ali 82
	public <T> T selectByEqualNotNull(Class<T> clazz, String key, Object value, String notNullKey);
23845 ashik.ali 83
 
25640 tejbeer 84
	// public <T> List<T> selectAllByEqualGtOrderByDesc(Class<T> clazz, String key,
85
	// Object value, String gtKey, Object gtValue, String orderByDescKey);
86
 
87
	public <T> List<T> selectAllByEqualOrderByDescPaginated(Class<T> clazz, String key, Object value,
88
			String orderByDescKey, int offset, int limit);
89
 
90
	public <T, U> List<U> selectAllByEqualOrderByDescPaginated(Class<T> clazz, Class<U> selector, String selectorKey,
91
			String key, Object value, String orderByDescKey, int offset, int limit);
92
 
93
	public <U, T> List<U> selectAllByEqualOrderByDesc(Class<T> clazz, Class<U> selector, String selectorKey, String key,
94
			Object value, String orderByDescKey);
95
 
96
	public <T> List<T> selectAllByInsEqualsOrderBy(Class<T> clazz, Map<String, List<?>> listMap,
97
			Map<String, Object> objectMap, String orderByKey, SortOrder sortOrder);
98
 
99
	public <T> List<T> selectAllByInsEqualsGtOrderBy(Class<T> clazz, Map<String, List<?>> listMap,
100
			Map<String, Object> objectMap, String gtKey, Object gtValue, String orderByKey, SortOrder sortOrder);
101
 
102
	public <U, T> List<U> selectAllByInsEqualsOrderByDesc(Class<T> clazz, Class<U> selector, String selectorKey,
103
			Map<String, List<?>> listMap, Map<String, Object> objectMap, String orderByDescKey);
104
 
105
	public <T> List<T> selectAllByInEqualOrderByDesc(Class<T> clazz, String inKey, List<?> in, String key, Object value,
106
			String orderByDescKey);
107
 
108
	public <U, T> List<U> selectAllByInEqualOrderByDesc(Class<T> clazz, Class<U> selector, String selectorKey,
109
			String inKey, List<?> in, String key, Object value, String orderByDescKey);
110
 
111
	public <T> List<T> selectAllByInEqualOrderBysDesc(Class<T> clazz, String inKey, List<?> in, String key,
112
			Object value, Set<String> orderBysDesc);
113
 
114
	public <T> List<T> selectAllByEqualGtOrderByDesc(Class<T> clazz, String key, Object value, String gtKey,
115
			Object gtValue, String orderByDescKey);
116
 
117
	public <T, U> List<U> selectAllByEqualGtOrderByDesc(Class<T> clazz, Class<U> selector, String selectorKey,
118
			String key, Object value, String gtKey, Object gtValue, String orderByDescKey);
119
 
120
	public <T> List<T> selectAllByInsEqualsNullsOrderByDesc(Class<T> clazz, Map<String, List<?>> listMap,
121
			Map<String, Object> objectMap, Set<String> nullParams, String orderByDescKey);
122
 
123
	public <T> List<T> selectAllByEqualsNullNotNullGeLeOrderByDesc(Class<T> clazz, Map<String, Object> objectMap,
124
			Set<String> nullParams, Set<String> notNullParams, Map<String, Object> geParams,
125
			Map<String, Object> leParams, String orderByDescKey);
126
 
23431 ashik.ali 127
	public <T> T selectByNullNotNull(Class<T> clazz, String nullKey, String notNullKey);
25640 tejbeer 128
	// public <T> List<T> selectAllByInsEqualsNullNotNullGtGeLtLe(Class<T> clazz,
129
	// Map<String, List<?>> listMap, Map<String, Object> objectMap, Set<String>
130
	// nullParams, Set<String> notNullParams, Map<String, Object> gtParams,
131
	// Map<String, Object> geParams, Map<String, Object> ltParams, Map<String,
132
	// Object> leParams);
133
 
134
	public <T> List<T> selectAllByEqualBetweenOrderByDesc(Class<T> clazz, String key, Object value, String betweenKey,
135
			Object betweenValue1, Object betweenValue2, String orderByDescKey);
136
 
137
	public <T> long selectCountByEqualsBetween(Class<T> clazz, Map<String, Object> objectParams, String betweenKey,
138
			Object betweenValue1, Object betweenValue2);
139
 
23546 ashik.ali 140
	public <T> double selectSumByEqualBetween(Class<T> clazz, String sumKey, Map<String, Object> objectParams,
141
			String betweenKey, Object betweenValue1, Object betweenValue2);
25640 tejbeer 142
 
143
	public <T> List<T> selectAllByEqualBetweenOrderByDescPaginated(Class<T> clazz, String key, Object value,
144
			String betweenKey, Object betweenValue1, Object betweenValue2, String orderByDescKey, int offset,
145
			int limit);
146
 
147
	// public <U, T> List<U> selectAllByParams(Class<T> clazz, Class<U> selector,
148
	// String selectorKey, Map<String, List<?>> listMap, Map<String, Object>
149
	// objectMap, Set<String> nullParams, Set<String> notNullParams, Map<String,
150
	// Object> gtParams, Map<String, Object> geParams, Map<String, Object> ltParams,
151
	// Map<String, Object> leParams);
152
	public <T> List<T> selectAllByInBetweenOrderByDesc(Class<T> clazz, String key, List<?> values, String betweenKey,
153
			Object betweenValue1, Object betweenValue2, String orderByDescKey);
154
 
23269 ashik.ali 155
	public <T> T selectByEquals(Class<T> clazz, Map<String, Object> objectMap);
25796 tejbeer 156
 
25640 tejbeer 157
	public <T> T selectFirstByEquals(Class<T> clazz, Map<String, Object> objectMap);
158
 
159
	// public <T> List<T> selectAllByEqualsWithOrOrderByDescPaginated(Class<T>
160
	// clazz, Map<String, Object> objectMap, String orderByDescKey, int offset, int
161
	// limit);
162
 
163
	public <T> List<T> selectAllByEqualsWithOrOrderByPaginated(Class<T> clazz, Map<String, Object> objectMap,
164
			String orderByDescKey, SortOrder sortOrder, int offset, int limit);
165
 
166
	public <T> List<T> selectAllByEqualsOrderByPaginated(Class<T> clazz, Map<String, Object> objectMap,
167
			String orderByDescKey, SortOrder sortOrder, int offset, int limit);
168
 
23269 ashik.ali 169
	public <T> T selectByEqual(Class<T> clazz, String key, Object value);
23884 amit.gupta 170
 
25640 tejbeer 171
	public <T> List<T> selectByInEqualNullNotNull(Class<T> clazz, String inKey, List<?> inList, String equalKey,
172
			Object equalValue, String nullKey, String notNullKey);
173
 
23269 ashik.ali 174
	public <T> T selectByBetween(Class<T> clazz, String key, Object value1, Object value2);
25640 tejbeer 175
 
176
	public <U, T> U selectByBetween(Class<T> clazz, Class<U> selector, String selectorKey, String key, Object value1,
177
			Object value2);
178
 
23269 ashik.ali 179
	public <T> T selectByGeLe(Class<T> clazz, String geKey, Object geValue, String leKey, Object leValue);
25640 tejbeer 180
 
181
	public <U, T> U selectByGeLe(Class<T> clazz, Class<U> selector, String selectorKey, String geKey, Object geValue,
182
			String leKey, Object leValue);
183
 
184
	// public <T> T selectByParams(Class<T> clazz, Map<String, Object> objectMap,
185
	// Set<String> nullParams, Set<String> notNullParams, Map<String, Object>
186
	// gtParams, Map<String, Object> geParams, Map<String, Object> ltParams,
187
	// Map<String, Object> leParams);
188
	// public <U, T> U selectByParams(Class<T> clazz, Class<U> selector, String
189
	// selectorKey, Map<String, Object> objectMap, Set<String> nullParams,
190
	// Set<String> notNullParams, Map<String, Object> gtParams, Map<String, Object>
191
	// geParams, Map<String, Object> ltParams, Map<String, Object> leParams);
192
 
193
	public <T> List<T> selectAllByBetweenOrderByDesc(Class<T> clazz, String betweenKey, Object betweenValue1,
194
			Object betweenValue2, String orderByDescKey);
195
 
23172 ashik.ali 196
	public <T> boolean isExistById(Class<T> clazz, int id);
25640 tejbeer 197
 
23269 ashik.ali 198
	public <T> boolean isExistByEqual(Class<T> clazz, String key, Object value);
25640 tejbeer 199
 
23269 ashik.ali 200
	public <T> boolean isExistByEquals(Class<T> clazz, Map<String, Object> objectMap);
25640 tejbeer 201
 
202
	public <U, T> List<U> selectAllOrderByDesc(Class<T> clazz, Class<U> selector, String selectorKey,
203
			String orderByDescKey);
204
 
205
	public <U, T> List<U> selectAllOrderByDescPaginated(Class<T> clazz, Class<U> selector, String selectorKey,
206
			String orderByDescKey, int offset, int limit);
207
 
208
	public <T, V> List<T> selectAllByEqualBetweenWithJoinEqualOrderByDescPaginated(Class<T> clazz, String key,
209
			Object value, String betweenKey, Object betweenValue1, Object betweenValue2, String clazzJoinKey,
210
			String joinClazzKey, Class<V> joinClazz, String joinKey, Object joinValue, String orderByDescKey,
211
			int offset, int limit);
212
 
213
	public <T, V> V selectByEqualsWithJoinEqual(Class<T> clazz, Map<String, Object> objectParams, String clazzJoinKey,
214
			String joinClazzKey, Class<V> joinClazz, String joinKey, Object joinValue);
215
 
216
	public <T, V, X> List<T> selectAllByEqualBetweenWithJoinJoinEqualOrderByDescPaginated(Class<T> clazz,
217
			String equalKey, Object equalValue, String betweenKey, Object betweenValue1, Object betweenValue2,
218
			String clazzJoinKey, String joinClazzKey, Class<V> joinClazz1, String joinClazz1Key, String joinClazz2Key,
219
			Class<X> joinClazz2, String join2Key, Object join2Value, String orderByDescKey, int offset, int limit);
220
 
221
	public <T, V> List<T> selectAllByEqualBetweenWithJoinLikesOrderByDescPaginated(Class<T> clazz, String key,
222
			Object value, String betweenKey, Object betweenValue1, Object betweenValue2, String clazzJoinKey,
223
			String joinClazzKey, Class<V> joinClazz, Map<String, String> joinLikes, String orderByDescKey, int offset,
224
			int limit);
225
 
226
	public <T, V> List<T> selectAllByEqualWithJoinLikesOrderByDescPaginated(Class<T> clazz, String key, Object value,
227
			String clazzJoinKey, String joinClazzKey, Class<V> joinClazz, Map<String, String> joinLikes,
228
			String orderByDescKey, int offset, int limit);
229
 
230
	public <T, V> List<T> selectAllByEqualGtWithJoinLikesOrderByDescPaginated(Class<T> clazz, String key, Object value,
231
			String gtKey, Object gtValue, String clazzJoinKey, String joinClazzKey, Class<V> joinClazz,
232
			Map<String, String> joinLikes, String orderByDescKey, int offset, int limit);
233
 
234
	public <T, V> long selectCountByEqualBetweenWithJoinEqual(Class<T> clazz, String key, Object value,
235
			String betweenKey, Object betweenValue1, Object betweenValue2, String clazzJoinKey, String joinClazzKey,
236
			Class<V> joinClazz, String joinKey, Object joinValue);
237
 
238
	public <T, V, X> long selectCountByEqualBetweenWithJoinJoinEqual(Class<T> clazz, String equalKey, Object equalValue,
239
			String betweenKey, Object betweenValue1, Object betweenValue2, String clazzJoinKey, String joinClazzKey,
240
			Class<V> joinClazz1, String joinClazz1Key, String joinClazz2Key, Class<X> joinClazz2, String join2Key,
241
			Object join2Value);
242
 
23297 ashik.ali 243
	public <T, V> long selectCountByEqualBetweenWithJoinLikes(Class<T> clazz, String key, Object value,
244
			String betweenKey, Object betweenValue1, Object betweenValue2, String clazzJoinKey, String joinClazzKey,
245
			Class<V> joinClazz, Map<String, String> joinLikes);
25640 tejbeer 246
 
247
	public <T, V> long selectCountByEqualWithJoinLikes(Class<T> clazz, String key, Object value, String clazzJoinKey,
248
			String joinClazzKey, Class<V> joinClazz, Map<String, String> joinLikes);
249
 
250
	public <T, V> long selectCountByEqualGtWithJoinLikes(Class<T> clazz, String key, Object value, String gtKey,
251
			Object gtValue, String clazzJoinKey, String joinClazzKey, Class<V> joinClazz,
252
			Map<String, String> joinLikes);
253
 
254
	public <T, V> V selectByEqualWithJoin(Class<T> clazz, String key, Object value, String clazzJoinKey,
255
			String joinClazzKey, Class<V> joinClazz);
256
 
257
	public <T, U, V> List<U> selectAllByEqualWithJoinOrderByDesc(Class<T> clazz, String key, Object value,
258
			String clazzJoinKey, String joinClazzKey, Class<V> joinClazz, Class<U> selector, String selectorKey,
259
			String orderByDescKey);
260
	// public <T, V> List<T> selectAllByEqualsWithJoin(Class<T> clazz, Map<String,
261
	// Object> clazzObjectParams, String clazzJoinKey, String joinClazzKey, Class<V>
262
	// joinClazz, Map<String, Object> joinClazzObjectParams);
263
 
23226 ashik.ali 264
	public <T> int deleteById(Class<T> clazz, int id);
25640 tejbeer 265
 
23269 ashik.ali 266
	public <T> int deleteByEquals(Class<T> clazz, Map<String, Object> objectMap);
25640 tejbeer 267
 
23269 ashik.ali 268
	public <T> int deleteByEqual(Class<T> clazz, String key, Object value);
25640 tejbeer 269
 
23269 ashik.ali 270
	public <T> int updateById(Class<T> clazz, String key, Object value, int id);
25640 tejbeer 271
 
23269 ashik.ali 272
	public <T> int updateByEquals(Class<T> clazz, String key, Object value, Map<String, Object> objectParams);
23569 govind 273
 
25640 tejbeer 274
	public <U, T> List<U> selectAllDistinctByEqualsIns(Class<T> clazz, Class<U> selector, String selectorKey,
275
			Map<String, Object> eqParams, Map<String, List<?>> inParams, String orderByKey, SortOrder sortOrder);
276
 
23569 govind 277
	public <T> List<T> selectAllByFoFoId(Class<T> clazz, String key, Object value, String orderByDescKey);
278
 
25640 tejbeer 279
	public <T> List<T> selectAllByEqualGtOrderByAsc(Class<T> clazz, String key, Object value, String gtKey,
280
			Object gtValue, String orderByDescKey);
281
 
23580 govind 282
	public <T> List<T> selectAllByNullAndNotNull(Class<T> clazz, String nullKey, String notNullKey);
283
 
25640 tejbeer 284
	public <T> List<T> selectAllByEqualsOrderByAsc(Class<T> clazz, Map<String, Object> objectMap,
285
			String orderByDescKey);
23767 amit.gupta 286
 
23851 ashik.ali 287
	public <X extends Comparable<? super X>, T> X selectMaxFieldValue(Class<T> class1, Class<X> class2, String field);
25640 tejbeer 288
 
289
	public <T, V> List<V> selectGroupBySum(Class<T> class1, Class<V> class2, Map<String, Object> equalsParam,
290
			String groupByField, String aggregateField);
291
 
292
	public <T> List<T> selectAllByLikesOrderBy(Class<T> class1, int count, String sortKey, SortOrder sortOrder,
293
			Map<String, String>... andLikesMap);
294
 
24598 amit.gupta 295
	<T> List<T> selectDuplicate(Class<T> class1, List<String> groupBy, Map<String, ?> paramsMap);
25640 tejbeer 296
 
297
	<T> List<T> selectAllByInEqualOrderByDescForUpdate(Class<T> clazz, String inKey, List<?> in, String key,
298
			Object value, String orderByDescKey);
299
 
25026 amit.gupta 300
	<T> List<T> selectAllByInsEqualsOrderByForUpdate(Class<T> clazz, Map<String, List<?>> listMap,
301
			Map<String, Object> objectMap, String orderByDescKey, SortOrder sortOrder);
25640 tejbeer 302
 
25069 amit.gupta 303
	public <T> T selectByIdForUpdate(Class<T> class1, int id);
25640 tejbeer 304
 
25300 tejbeer 305
	<T> List<T> selectAllByEqualsForUpdate(Class<T> clazz, Map<String, Object> objectMap);
25640 tejbeer 306
 
25796 tejbeer 307
	public <T> List<T> selectAllByEqualsOrOrderBy(Class<T> clazz, MultiValueMap<String, Object> equalMap,
308
			String orderByDescKey, SortOrder sortOrder);
25652 amit.gupta 309
 
25796 tejbeer 310
	<T> double selectAvgByEqualBetween(Class<T> clazz, String avgKey, Map<String, Object> objectParams,
311
			String betweenKey, Object betweenValue1, Object betweenValue2);
312
 
313
	public <T> Predicate prepareEqualPredicate(CriteriaBuilder builder, Root<T> root, Map<String, Object> objectParams);
314
 
315
	public <T> Predicate prepareNotInPredicate(CriteriaBuilder builder, Root<T> root, Map<String, List<?>> listParams);
316
 
317
	public <T> void joinWithItem(Class<T> joinClass, String joinField);
25837 amit.gupta 318
 
25845 amit.gupta 319
	<T> Map<Object, Integer> selectGroupByCount(Class<T> class1, Map<String, Object> equalsParams,
25837 amit.gupta 320
			String aggregateKey);
23172 ashik.ali 321
}