Subversion Repositories SmartDukaan

Rev

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