Project

General

Profile

« Previous | Next » 

Revision 64cf9d1d

Added by Andreas Müller about 5 years ago

ref #6794 fix early setting of termType during term loading

View differences:

cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/common/DefinedTermBase.java
393 393

  
394 394

  
395 395
    @Override
396
    public T readCsvLine(Class<T> termClass, List<String> csvLine, Map<UUID,DefinedTermBase> terms, boolean abbrevAsId) {
396
    public T readCsvLine(Class<T> termClass, List<String> csvLine, TermType termType, Map<UUID,DefinedTermBase> terms, boolean abbrevAsId) {
397 397
        try {
398
            T newInstance = getInstance(termClass);
398
            T newInstance = getInstance(termClass, termType);
399 399
            readCsvLine(newInstance, csvLine, Language.CSV_LANGUAGE(), abbrevAsId);
400 400
            readIsPartOf(newInstance, csvLine, terms);
401 401
            return newInstance;
......
448 448
    }
449 449

  
450 450

  
451
    private  <T extends DefinedTermBase> T getInstance(Class<? extends DefinedTermBase> termClass) {
451
    private  <T extends DefinedTermBase> T getInstance(Class<? extends DefinedTermBase> termClass, TermType termType) {
452 452
        try {
453 453
            Constructor<T> c = ((Class<T>)termClass).getDeclaredConstructor();
454 454
            c.setAccessible(true);
455 455
            T termInstance = c.newInstance();
456
            termInstance.setTermType(termType);
456 457
            return termInstance;
457 458
        } catch (Exception e) {
458 459
            throw new RuntimeException(e);

Also available in: Unified diff