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-services/src/main/java/eu/etaxonomy/cdm/api/service/TaxonTreeServiceImpl.java
19 19
import java.util.TreeMap;
20 20
import java.util.UUID;
21 21

  
22
import javax.swing.tree.TreeNode;
23

  
22 24
import org.apache.log4j.Logger;
23 25
import org.springframework.beans.factory.annotation.Autowired;
24 26
import org.springframework.stereotype.Service;
......
30 32
import eu.etaxonomy.cdm.model.description.TaxonDescription;
31 33
import eu.etaxonomy.cdm.model.media.Media;
32 34
import eu.etaxonomy.cdm.model.media.MediaRepresentation;
35
import eu.etaxonomy.cdm.model.media.MediaUtils;
33 36
import eu.etaxonomy.cdm.model.name.Rank;
34 37
import eu.etaxonomy.cdm.model.taxon.ITreeNode;
35 38
import eu.etaxonomy.cdm.model.taxon.Taxon;
......
74 77
		TaxonomicTree tree = dao.load(taxonomicTreeUuid);
75 78
		TaxonNode node = tree.getNode(taxon);
76 79
	
77
		return loadTaxonNode(node, propertyPaths);
80
		return loadTaxonNode(node.getUuid(), propertyPaths);
78 81
	}
79 82
	
83
	@Deprecated // use loadTaxonNode(UUID, List<String>) instead 
80 84
	public TaxonNode loadTaxonNode(TaxonNode taxonNode, List<String> propertyPaths){
81 85
		return taxonNodeDao.load(taxonNode.getUuid(), propertyPaths);
82 86
	}
83 87
	
88
	public TaxonNode loadTaxonNode(UUID taxonNodeUuid, List<String> propertyPaths){
89
		return taxonNodeDao.load(taxonNodeUuid, propertyPaths);
90
	}
91
	
84 92
	/*
85 93
	 * (non-Javadoc)
86 94
	 * @see eu.etaxonomy.cdm.api.service.ITaxonTreeService#loadRankSpecificRootNodes(eu.etaxonomy.cdm.model.taxon.TaxonomicTree, eu.etaxonomy.cdm.model.name.Rank, java.util.List)
......
110 118
		List<TaxonNode> pathToRoot = new ArrayList<TaxonNode>();
111 119
		pathToRoot.add(thisNode);
112 120
		
113
		ITreeNode parentNode = thisNode.getParent();
114
		while(parentNode instanceof TaxonNode){
115
			TaxonNode parent = (TaxonNode) parentNode;
121
		TaxonNode parentNode = thisNode.getParent();
122
		while(parentNode != null){
123
			TaxonNode parent = parentNode;
116 124
			Rank parentNodeRank = parent.getTaxon().getName().getRank();
117 125
			// stop if the next parent is higher than the baseRank
118 126
			if(baseRank != null && baseRank.isLower(parentNodeRank)){
119 127
				break;
120 128
			}
121
			pathToRoot.add(parent);
122
			parentNode = parent.getParent();
129
			pathToRoot.add(parentNode);
130
			parentNode = parentNode.getParent();
123 131
		}
124 132
		
125 133
		// initialize and invert order of nodes in list
......
150 158
	 */
151 159
	public List<TaxonNode> loadChildNodesOfTaxonNode(TaxonNode taxonNode,
152 160
			List<String> propertyPaths) {
161
		taxonNode = taxonNodeDao.load(taxonNode.getUuid());
153 162
		List<TaxonNode> childNodes = new ArrayList<TaxonNode>(taxonNode.getChildNodes());
154
		Collections.sort(childNodes, taxonNodeComparator);
155 163
		defaultBeanInitializer.initializeAll(childNodes, propertyPaths);
164
		Collections.sort(childNodes, taxonNodeComparator);
156 165
		return childNodes;
157 166
	}
158 167
	
......
299 308
								taxonMedia.add(media);
300 309
								
301 310
								//find the best matching representation
302
								mediaRepresentations.add(media.findBestMatchingRepresentation(size, height, widthOrDuration, mimeTypes));
311
								mediaRepresentations.add(MediaUtils.findBestMatchingRepresentation(media,size, height, widthOrDuration, mimeTypes));
303 312
								
304 313
							}
305 314
						}

Also available in: Unified diff