Project

General

Profile

« Previous | Next » 

Revision 892efc69

Added by Andreas Kohlbecker almost 14 years ago

merging /branches/cdmlib/SPRINT-Chichorieae1/ to trunk

View differences:

cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/persistence/dao/hibernate/reference/ReferenceDaoHibernateImpl.java
21 21
import org.springframework.beans.factory.annotation.Qualifier;
22 22
import org.springframework.stereotype.Repository;
23 23

  
24
import eu.etaxonomy.cdm.model.agent.TeamOrPersonBase;
24 25
import eu.etaxonomy.cdm.model.common.UuidAndTitleCache;
25 26
import eu.etaxonomy.cdm.model.reference.Article;
26 27
import eu.etaxonomy.cdm.model.reference.Book;
......
108 109
		List<UuidAndTitleCache<ReferenceBase>> list = new ArrayList<UuidAndTitleCache<ReferenceBase>>();
109 110
		Session session = getSession();
110 111
		
111
		Query query = session.createQuery("select uuid, title from " + type.getSimpleName());
112
		Query query = session.createQuery("select uuid, titleCache from " + type.getSimpleName());
112 113
		
113 114
		List<Object[]> result = query.list();
114 115
		
......
119 120
		return list;
120 121
	}
121 122
	
123
	@Override
124
	public List<UuidAndTitleCache<ReferenceBase>> getUuidAndTitleCache() {
125
		List<UuidAndTitleCache<ReferenceBase>> list = new ArrayList<UuidAndTitleCache<ReferenceBase>>();
126
		Session session = getSession();
127
		
128
		Query query = session.createQuery("select r.uuid, r.titleCache, ab.titleCache from " + type.getSimpleName() + " as r join r.authorTeam as ab ");//"select uuid, titleCache from " + type.getSimpleName());
129
		
130
		List<Object[]> result = query.list();
131
		
132
		for(Object[] object : result){
133
			UuidAndTitleCache<ReferenceBase> uuidAndTitleCache;
134
			String referenceTitle = (String) object[1];
135
			
136
			if(referenceTitle != null){							
137
				String teamTitle = (String) object[2];
138
				if(teamTitle != null){
139
					referenceTitle = referenceTitle.replace(teamTitle + ", ", "");
140
					referenceTitle += " - " + teamTitle;
141
				}
142
				list.add(new UuidAndTitleCache<ReferenceBase>(ReferenceBase.class, (UUID) object[0], referenceTitle));
143
			}else{
144
				logger.error("title cache of reference is null. UUID: " + object[0]);
145
			}
146
		}
147
		
148
		return list;
149
	}
150
	
122 151
	public List<ReferenceBase> getAllReferencesForPublishing(){
123 152
		List<ReferenceBase> references = getSession().createQuery("Select r from ReferenceBase r "+
124 153
				"where r.id IN "+

Also available in: Unified diff