Revision 40d48f6f
Added by Katja Luther over 3 years ago
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/name/TypeDesignationSection.java | ||
---|---|---|
25 | 25 |
import eu.etaxonomy.cdm.api.conversation.ConversationHolder; |
26 | 26 |
import eu.etaxonomy.cdm.api.service.INameService; |
27 | 27 |
import eu.etaxonomy.cdm.api.service.UpdateResult; |
28 |
import eu.etaxonomy.cdm.api.service.name.TypeDesignationComparator; |
|
28 |
import eu.etaxonomy.cdm.api.service.name.TypeDesignationStatusComparator;
|
|
29 | 29 |
import eu.etaxonomy.cdm.hibernate.HibernateProxyHelper; |
30 | 30 |
import eu.etaxonomy.cdm.model.name.NameTypeDesignation; |
31 | 31 |
import eu.etaxonomy.cdm.model.name.Rank; |
... | ... | |
164 | 164 |
|
165 | 165 |
@Override |
166 | 166 |
public Comparator<TypeDesignationBase> getComparator() { |
167 |
return new TypeDesignationComparator(); |
|
167 |
return new Comparator<TypeDesignationBase>(){ |
|
168 |
|
|
169 |
//TODO: this is only a workaround to avoid a cdmlib hotfix this needs to be reverted for next release!! |
|
170 |
private TypeDesignationStatusComparator statusComparator = new TypeDesignationStatusComparator(); |
|
171 |
|
|
172 |
@SuppressWarnings("unchecked") |
|
173 |
@Override |
|
174 |
public int compare(TypeDesignationBase o1, TypeDesignationBase o2) { |
|
175 |
|
|
176 |
if (o1 == null && o2 == null){ |
|
177 |
return 0; |
|
178 |
} |
|
179 |
if(o1==null){ |
|
180 |
return 1; |
|
181 |
} |
|
182 |
if(o2==null){ |
|
183 |
return -1; |
|
184 |
} |
|
185 |
int result = 0; |
|
186 |
if(o1.getTypeStatus()==null ){ |
|
187 |
if (o2.getTypeStatus() != null){ |
|
188 |
return 1; |
|
189 |
} |
|
190 |
} |
|
191 |
if (o2.getTypeStatus() == null){ |
|
192 |
return -1; |
|
193 |
} |
|
194 |
if(result == 0 && (o1.getTypeStatus() == null || o2.getTypeStatus() == null)){ |
|
195 |
return o1.getUuid().compareTo(o2.getUuid()); |
|
196 |
} |
|
197 |
return statusComparator.compare(o1.getTypeStatus(), o2.getTypeStatus()) ; |
|
198 |
} |
|
199 |
}; |
|
168 | 200 |
} |
169 | 201 |
|
170 | 202 |
@Override |
Also available in: Unified diff
ref #9356: hotfix solution