Subversion Repositories SmartDukaan

Rev

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