Project

General

Profile

« Previous | Next » 

Revision 52fdf04f

Added by Katja Luther about 8 years ago

fix #5604

View differences:

eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/newWizard/NewTaxonNodeWizard.java
42 42
    @Override
43 43
    public void addPages() {
44 44
        taxonNodePage = new TaxonNodeWizardPage(formFactory, getConversationHolder(), getEntity(), wizardPageListener);
45

  
45 46
        addPage(taxonNodePage);
46 47
    }
47 48

  
......
72 73
                } else {
73 74
                    taxonNode = CdmStore.getService(ITaxonNodeService.class).save(taxonNode);
74 75
                }*/
75
            	generatedTaxonNodeUuid = result.getCdmEntity().getUuid();
76
            	TaxonNode taxonNode = CdmStore.getService(ITaxonNodeService.class).load(generatedTaxonNodeUuid);
77
            	taxonNode.getTaxon().setSec(sec);
78
            	CdmStore.getService(ITaxonNodeService.class).merge(taxonNode, true);
79
                Set<CdmBase> affectedObjects = new HashSet<CdmBase>();
80
                if (result.getUpdatedObjects().iterator().hasNext()){
81
                	TaxonNode parentNode = (TaxonNode)result.getUpdatedObjects().iterator().next();
82
                	if(parentNode.getParent() == null) {
83
                        affectedObjects.add(taxonNode.getClassification());
76
                if (result.isOk()){
77
                	generatedTaxonNodeUuid = result.getCdmEntity().getUuid();
78
                	TaxonNode taxonNode = CdmStore.getService(ITaxonNodeService.class).load(generatedTaxonNodeUuid);
79
                	taxonNode.getTaxon().setSec(sec);
80
                	CdmStore.getService(ITaxonNodeService.class).merge(taxonNode, true);
81
                    Set<CdmBase> affectedObjects = new HashSet<CdmBase>();
82
                    if (result.getUpdatedObjects().iterator().hasNext()){
83
                    	TaxonNode parentNode = (TaxonNode)result.getUpdatedObjects().iterator().next();
84
                    	if(parentNode.getParent() == null) {
85
                            affectedObjects.add(taxonNode.getClassification());
86
                        }
87
                    	affectedObjects.add(parentNode);
88
                    }
89
                    if(CdmStore.getCurrentSessionManager().isRemoting()) {
90
                        CdmApplicationState.getCurrentDataChangeService()
91
                            .fireChangeEvent(new CdmChangeEvent(Action.Create, affectedObjects, NewTaxonNodeWizard.class), true);
92
                    }
93
                }else{
94
                    if (!result.isOk()){
95
                        if (!result.getExceptions().isEmpty()){
96
                            MessagingUtils.error(getClass(), "Taxon could not be created", result.getExceptions().iterator().next());
97
                        }else{
98
                            MessagingUtils.warn(getClass(), "Taxon could not be created");
99
                        }
84 100
                    }
85
                	affectedObjects.add(parentNode);
86
                }
87

  
88
                if(CdmStore.getCurrentSessionManager().isRemoting()) {
89
                    CdmApplicationState.getCurrentDataChangeService()
90
                        .fireChangeEvent(new CdmChangeEvent(Action.Create, affectedObjects, NewTaxonNodeWizard.class), true);
91 101
                }
92 102
            }catch(IllegalArgumentException e){
93 103
                MessagingUtils.warningDialog("Taxon already exists in classfication", getClass(), e.getMessage());

Also available in: Unified diff