1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 package org.codelibs.fess.es.config.bsbhv;
17
18 import java.util.List;
19 import java.util.Map;
20
21 import org.codelibs.fess.es.config.allcommon.EsAbstractBehavior;
22 import org.codelibs.fess.es.config.allcommon.EsAbstractEntity.RequestOptionCall;
23 import org.codelibs.fess.es.config.bsentity.dbmeta.ThumbnailQueueDbm;
24 import org.codelibs.fess.es.config.cbean.ThumbnailQueueCB;
25 import org.codelibs.fess.es.config.exentity.ThumbnailQueue;
26 import org.dbflute.Entity;
27 import org.dbflute.bhv.readable.CBCall;
28 import org.dbflute.bhv.readable.EntityRowHandler;
29 import org.dbflute.cbean.ConditionBean;
30 import org.dbflute.cbean.result.ListResultBean;
31 import org.dbflute.cbean.result.PagingResultBean;
32 import org.dbflute.exception.IllegalBehaviorStateException;
33 import org.dbflute.optional.OptionalEntity;
34 import org.dbflute.util.DfTypeUtil;
35 import org.elasticsearch.action.bulk.BulkRequestBuilder;
36 import org.elasticsearch.action.delete.DeleteRequestBuilder;
37 import org.elasticsearch.action.index.IndexRequestBuilder;
38
39
40
41
42 public abstract class BsThumbnailQueueBhv extends EsAbstractBehavior<ThumbnailQueue, ThumbnailQueueCB> {
43
44
45
46
47 @Override
48 public String asTableDbName() {
49 return asEsIndexType();
50 }
51
52 @Override
53 protected String asEsIndex() {
54 return ".fess_config";
55 }
56
57 @Override
58 public String asEsIndexType() {
59 return "thumbnail_queue";
60 }
61
62 @Override
63 public String asEsSearchType() {
64 return "thumbnail_queue";
65 }
66
67 @Override
68 public ThumbnailQueueDbm asDBMeta() {
69 return ThumbnailQueueDbm.getInstance();
70 }
71
72 @Override
73 protected <RESULT extends ThumbnailQueue> RESULT createEntity(Map<String, Object> source, Class<? extends RESULT> entityType) {
74 try {
75 final RESULT result = entityType.newInstance();
76 result.setCreatedBy(DfTypeUtil.toString(source.get("createdBy")));
77 result.setCreatedTime(DfTypeUtil.toLong(source.get("createdTime")));
78 result.setTarget(DfTypeUtil.toString(source.get("target")));
79 result.setGenerator(DfTypeUtil.toString(source.get("generator")));
80 result.setThumbnailId(DfTypeUtil.toString(source.get("thumbnail_id")));
81 result.setPath(DfTypeUtil.toString(source.get("path")));
82 return updateEntity(source, result);
83 } catch (InstantiationException | IllegalAccessException e) {
84 final String msg = "Cannot create a new instance: " + entityType.getName();
85 throw new IllegalBehaviorStateException(msg, e);
86 }
87 }
88
89 protected <RESULT extends ThumbnailQueue> RESULT updateEntity(Map<String, Object> source, RESULT result) {
90 return result;
91 }
92
93
94
95
96 public int selectCount(CBCall<ThumbnailQueueCB> cbLambda) {
97 return facadeSelectCount(createCB(cbLambda));
98 }
99
100 public OptionalEntity<ThumbnailQueue> selectEntity(CBCall<ThumbnailQueueCB> cbLambda) {
101 return facadeSelectEntity(createCB(cbLambda));
102 }
103
104 protected OptionalEntity<ThumbnailQueue> facadeSelectEntity(ThumbnailQueueCB cb) {
105 return doSelectOptionalEntity(cb, typeOfSelectedEntity());
106 }
107
108 protected <ENTITY extends ThumbnailQueue> OptionalEntity<ENTITY> doSelectOptionalEntity(ThumbnailQueueCB cb, Class<? extends ENTITY> tp) {
109 return createOptionalEntity(doSelectEntity(cb, tp), cb);
110 }
111
112 @Override
113 public ThumbnailQueueCB newConditionBean() {
114 return new ThumbnailQueueCB();
115 }
116
117 @Override
118 protected Entity doReadEntity(ConditionBean cb) {
119 return facadeSelectEntity(downcast(cb)).orElse(null);
120 }
121
122 public ThumbnailQueue selectEntityWithDeletedCheck(CBCall<ThumbnailQueueCB> cbLambda) {
123 return facadeSelectEntityWithDeletedCheck(createCB(cbLambda));
124 }
125
126 public OptionalEntity<ThumbnailQueue> selectByPK(String id) {
127 return facadeSelectByPK(id);
128 }
129
130 protected OptionalEntity<ThumbnailQueue> facadeSelectByPK(String id) {
131 return doSelectOptionalByPK(id, typeOfSelectedEntity());
132 }
133
134 protected <ENTITY extends ThumbnailQueue> ENTITY doSelectByPK(String id, Class<? extends ENTITY> tp) {
135 return doSelectEntity(xprepareCBAsPK(id), tp);
136 }
137
138 protected ThumbnailQueueCB xprepareCBAsPK(String id) {
139 assertObjectNotNull("id", id);
140 return newConditionBean().acceptPK(id);
141 }
142
143 protected <ENTITY extends ThumbnailQueue> OptionalEntity<ENTITY> doSelectOptionalByPK(String id, Class<? extends ENTITY> tp) {
144 return createOptionalEntity(doSelectByPK(id, tp), id);
145 }
146
147 @Override
148 protected Class<? extends ThumbnailQueue> typeOfSelectedEntity() {
149 return ThumbnailQueue.class;
150 }
151
152 @Override
153 protected Class<ThumbnailQueue> typeOfHandlingEntity() {
154 return ThumbnailQueue.class;
155 }
156
157 @Override
158 protected Class<ThumbnailQueueCB> typeOfHandlingConditionBean() {
159 return ThumbnailQueueCB.class;
160 }
161
162 public ListResultBean<ThumbnailQueue> selectList(CBCall<ThumbnailQueueCB> cbLambda) {
163 return facadeSelectList(createCB(cbLambda));
164 }
165
166 public PagingResultBean<ThumbnailQueue> selectPage(CBCall<ThumbnailQueueCB> cbLambda) {
167
168 return (PagingResultBean<ThumbnailQueue>) facadeSelectList(createCB(cbLambda));
169 }
170
171 public void selectCursor(CBCall<ThumbnailQueueCB> cbLambda, EntityRowHandler<ThumbnailQueue> entityLambda) {
172 facadeSelectCursor(createCB(cbLambda), entityLambda);
173 }
174
175 public void selectBulk(CBCall<ThumbnailQueueCB> cbLambda, EntityRowHandler<List<ThumbnailQueue>> entityLambda) {
176 delegateSelectBulk(createCB(cbLambda), entityLambda, typeOfSelectedEntity());
177 }
178
179
180
181
182 public void insert(ThumbnailQueue entity) {
183 doInsert(entity, null);
184 }
185
186 public void insert(ThumbnailQueue entity, RequestOptionCall<IndexRequestBuilder> opLambda) {
187 entity.asDocMeta().indexOption(opLambda);
188 doInsert(entity, null);
189 }
190
191 public void update(ThumbnailQueue entity) {
192 doUpdate(entity, null);
193 }
194
195 public void update(ThumbnailQueue entity, RequestOptionCall<IndexRequestBuilder> opLambda) {
196 entity.asDocMeta().indexOption(opLambda);
197 doUpdate(entity, null);
198 }
199
200 public void insertOrUpdate(ThumbnailQueue entity) {
201 doInsertOrUpdate(entity, null, null);
202 }
203
204 public void insertOrUpdate(ThumbnailQueue entity, RequestOptionCall<IndexRequestBuilder> opLambda) {
205 entity.asDocMeta().indexOption(opLambda);
206 doInsertOrUpdate(entity, null, null);
207 }
208
209 public void delete(ThumbnailQueue entity) {
210 doDelete(entity, null);
211 }
212
213 public void delete(ThumbnailQueue entity, RequestOptionCall<DeleteRequestBuilder> opLambda) {
214 entity.asDocMeta().deleteOption(opLambda);
215 doDelete(entity, null);
216 }
217
218 public int queryDelete(CBCall<ThumbnailQueueCB> cbLambda) {
219 return doQueryDelete(createCB(cbLambda), null);
220 }
221
222 public int[] batchInsert(List<ThumbnailQueue> list) {
223 return batchInsert(list, null, null);
224 }
225
226 public int[] batchInsert(List<ThumbnailQueue> list, RequestOptionCall<BulkRequestBuilder> call) {
227 return batchInsert(list, call, null);
228 }
229
230 public int[] batchInsert(List<ThumbnailQueue> list, RequestOptionCall<BulkRequestBuilder> call,
231 RequestOptionCall<IndexRequestBuilder> entityCall) {
232 return doBatchInsert(new BulkList<>(list, call, entityCall), null);
233 }
234
235 public int[] batchUpdate(List<ThumbnailQueue> list) {
236 return batchUpdate(list, null, null);
237 }
238
239 public int[] batchUpdate(List<ThumbnailQueue> list, RequestOptionCall<BulkRequestBuilder> call) {
240 return batchUpdate(list, call, null);
241 }
242
243 public int[] batchUpdate(List<ThumbnailQueue> list, RequestOptionCall<BulkRequestBuilder> call,
244 RequestOptionCall<IndexRequestBuilder> entityCall) {
245 return doBatchUpdate(new BulkList<>(list, call, entityCall), null);
246 }
247
248 public int[] batchDelete(List<ThumbnailQueue> list) {
249 return batchDelete(list, null, null);
250 }
251
252 public int[] batchDelete(List<ThumbnailQueue> list, RequestOptionCall<BulkRequestBuilder> call) {
253 return batchDelete(list, call, null);
254 }
255
256 public int[] batchDelete(List<ThumbnailQueue> list, RequestOptionCall<BulkRequestBuilder> call,
257 RequestOptionCall<IndexRequestBuilder> entityCall) {
258 return doBatchDelete(new BulkList<>(list, call, entityCall), null);
259 }
260
261
262 }