Revision a8905c60
Added by Katja Luther over 7 years ago
cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/persistence/dao/hibernate/agent/AgentDaoImpl.java | ||
---|---|---|
181 | 181 |
|
182 | 182 |
Query query = null; |
183 | 183 |
if (pattern != null){ |
184 |
query = session.createQuery("select uuid, id, nomenclaturalTitle from " + type.getSimpleName() +" where nomenclaturalTitle like :pattern" + clazzString); |
|
184 |
query = session.createQuery("select uuid, id, nomenclaturalTitle, titlecache from " + type.getSimpleName() +" where nomenclaturalTitle like :pattern" + clazzString);
|
|
185 | 185 |
pattern = pattern + "%"; |
186 | 186 |
pattern = pattern.replace("*", "%"); |
187 | 187 |
pattern = pattern.replace("?", "_"); |
188 | 188 |
query.setParameter("pattern", pattern); |
189 | 189 |
} else { |
190 | 190 |
if (clazzString != ""){ |
191 |
query = session.createQuery("select uuid, id, nomenclaturalTitle from " + type.getSimpleName() + " where " + clazzString); |
|
191 |
query = session.createQuery("select uuid, id, nomenclaturalTitle, titleCache from " + type.getSimpleName() + " where " + clazzString);
|
|
192 | 192 |
} else{ |
193 |
query = session.createQuery("select uuid, id, nomenclaturalTitle from " + type.getSimpleName()); |
|
193 |
query = session.createQuery("select uuid, id, nomenclaturalTitle, titleCache from " + type.getSimpleName());
|
|
194 | 194 |
} |
195 | 195 |
} |
196 | 196 |
if (limit != null){ |
197 | 197 |
query.setMaxResults(limit); |
198 | 198 |
} |
199 | 199 |
|
200 |
return getUuidAndTitleCache(query); |
|
200 |
return getUuidAndAbbrevTitleCache(query);
|
|
201 | 201 |
} |
202 | 202 |
|
203 | 203 |
|
cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/persistence/dao/hibernate/common/IdentifiableDaoBase.java | ||
---|---|---|
306 | 306 |
return getUuidAndTitleCache(null, null); |
307 | 307 |
} |
308 | 308 |
|
309 |
protected <E extends IIdentifiableEntity> List<UuidAndTitleCache<E>> getUuidAndAbbrevTitleCache(Query query){ |
|
310 |
List<UuidAndTitleCache<E>> list = new ArrayList<UuidAndTitleCache<E>>(); |
|
311 |
|
|
312 |
List<Object[]> result = query.list(); |
|
313 |
|
|
314 |
for(Object[] object : result){ |
|
315 |
list.add(new UuidAndTitleCache<E>((UUID) object[0],(Integer) object[1], (String) object[3], (String) object[2])); |
|
316 |
} |
|
317 |
return list; |
|
318 |
} |
|
319 |
|
|
309 | 320 |
protected <E extends IIdentifiableEntity> List<UuidAndTitleCache<E>> getUuidAndTitleCache(Query query){ |
310 | 321 |
List<UuidAndTitleCache<E>> list = new ArrayList<UuidAndTitleCache<E>>(); |
311 | 322 |
|
cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/persistence/dao/hibernate/taxon/TaxonDaoHibernateImpl.java | ||
---|---|---|
282 | 282 |
// see FIXME in 'prepareQuery' for more details |
283 | 283 |
if (doTaxa && doSynonyms){ |
284 | 284 |
if (result[3].equals("synonym")) { |
285 |
resultObjects.add( new UuidAndTitleCache(Synonym.class, (UUID) result[0], (Integer) result[1], (String)result[2], new Boolean(result[4].toString()))); |
|
285 |
resultObjects.add( new UuidAndTitleCache(Synonym.class, (UUID) result[0], (Integer) result[1], (String)result[2], new Boolean(result[4].toString()), null));
|
|
286 | 286 |
} |
287 | 287 |
else { |
288 |
resultObjects.add( new UuidAndTitleCache(Taxon.class, (UUID) result[0], (Integer) result[1], (String)result[2], new Boolean(result[4].toString()))); |
|
288 |
resultObjects.add( new UuidAndTitleCache(Taxon.class, (UUID) result[0], (Integer) result[1], (String)result[2], new Boolean(result[4].toString()), null));
|
|
289 | 289 |
} |
290 | 290 |
}else if (doTaxa){ |
291 |
resultObjects.add( new UuidAndTitleCache(Taxon.class, (UUID) result[0], (Integer) result[1], (String)result[2], new Boolean(result[4].toString()))); |
|
291 |
resultObjects.add( new UuidAndTitleCache(Taxon.class, (UUID) result[0], (Integer) result[1], (String)result[2], new Boolean(result[4].toString()), null));
|
|
292 | 292 |
}else if (doSynonyms){ |
293 |
resultObjects.add( new UuidAndTitleCache(Synonym.class, (UUID) result[0], (Integer) result[1], (String)result[2], new Boolean(result[4].toString()))); |
|
293 |
resultObjects.add( new UuidAndTitleCache(Synonym.class, (UUID) result[0], (Integer) result[1], (String)result[2], new Boolean(result[4].toString()), null));
|
|
294 | 294 |
} |
295 | 295 |
} |
296 | 296 |
|
... | ... | |
2140 | 2140 |
Object[] result; |
2141 | 2141 |
for(int i = 0; i<resultArray.size();i++){ |
2142 | 2142 |
result = (Object[]) resultArray.get(i); |
2143 |
returnResult.add(new UuidAndTitleCache(Taxon.class, (UUID) result[0],(Integer)result[1], (String)result[2], new Boolean(result[4].toString()))); |
|
2143 |
returnResult.add(new UuidAndTitleCache(Taxon.class, (UUID) result[0],(Integer)result[1], (String)result[2], new Boolean(result[4].toString()), null));
|
|
2144 | 2144 |
} |
2145 | 2145 |
return returnResult; |
2146 | 2146 |
} |
cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/persistence/dto/UuidAndTitleCache.java | ||
---|---|---|
37 | 37 |
private UUID uuid; |
38 | 38 |
private Integer id; |
39 | 39 |
private String titleCache; |
40 |
private String abbrevTitleCache; |
|
40 | 41 |
private boolean isOrphaned; |
41 | 42 |
|
43 |
public UuidAndTitleCache(UUID uuid, Integer id, String titleCache, String abbrevTitleCache) { |
|
44 |
this.uuid = uuid; |
|
45 |
this.titleCache = titleCache; |
|
46 |
this.id = id; |
|
47 |
this.abbrevTitleCache = abbrevTitleCache; |
|
48 |
} |
|
42 | 49 |
public UuidAndTitleCache(UUID uuid, Integer id, String titleCache) { |
43 | 50 |
this.uuid = uuid; |
44 | 51 |
this.titleCache = titleCache; |
45 | 52 |
this.id = id; |
53 |
this.abbrevTitleCache = null; |
|
46 | 54 |
} |
47 | 55 |
|
56 |
public UuidAndTitleCache(Class<T> type, UUID uuid, Integer id, String titleCache, String abbrevTitleCache) { |
|
57 |
this(uuid, id, titleCache, abbrevTitleCache); |
|
58 |
this.type = type; |
|
59 |
this.isOrphaned = false; |
|
60 |
} |
|
48 | 61 |
public UuidAndTitleCache(Class<T> type, UUID uuid, Integer id, String titleCache) { |
49 |
this(uuid, id, titleCache); |
|
62 |
this(uuid, id, titleCache, null);
|
|
50 | 63 |
this.type = type; |
51 | 64 |
this.isOrphaned = false; |
52 | 65 |
} |
53 | 66 |
|
54 |
public UuidAndTitleCache(Class<T> type, UUID uuid, Integer id, String titleCache, Boolean isOrphaned) { |
|
55 |
this(type, uuid, id, titleCache); |
|
67 |
public UuidAndTitleCache(Class<T> type, UUID uuid, Integer id, String titleCache, Boolean isOrphaned, String abbrevTitleCache) {
|
|
68 |
this(type, uuid, id, titleCache, abbrevTitleCache);
|
|
56 | 69 |
this.isOrphaned = isOrphaned; |
57 | 70 |
} |
58 | 71 |
|
... | ... | |
64 | 77 |
return titleCache; |
65 | 78 |
} |
66 | 79 |
|
80 |
|
|
81 |
/** |
|
82 |
* @return the titleCache |
|
83 |
*/ |
|
84 |
public String getAbbrevTitleCache() { |
|
85 |
return abbrevTitleCache; |
|
86 |
} |
|
87 |
|
|
88 |
|
|
67 | 89 |
/** |
68 | 90 |
* @return the uuid |
69 | 91 |
*/ |
... | ... | |
87 | 109 |
|
88 | 110 |
@Override |
89 | 111 |
public String toString() { |
90 |
return "UuidAndTitleCache [type=" + type + ", uuid=" + uuid + ", id=" + id + ", titleCache=" + titleCache
|
|
91 |
+ ", isOrphaned=" + isOrphaned + "]"; |
|
112 |
return "UuidAndTitleCache [type= " + type + ", uuid= " + uuid + ", id=" + id + ", titleCache= " + titleCache
|
|
113 |
+ ", isOrphaned=" + isOrphaned + ", abbrevTitleCache= " + abbrevTitleCache +"]";
|
|
92 | 114 |
} |
93 | 115 |
|
94 | 116 |
|
Also available in: Unified diff
fix #5828: add abbrevTitleCache and titleCache to uuidAndTitleCache