Project

General

Profile

Download (3.07 KB) Statistics
| Branch: | Tag: | Revision:
1
/**
2
 * Copyright (C) 2014 EDIT
3
 * European Distributed Institute of Taxonomy
4
 * http://www.e-taxonomy.eu
5
 *
6
 * The contents of this file are subject to the Mozilla Public License Version 1.1
7
 * See LICENSE.TXT at the top of this package for the full license terms.
8
 */
9
package eu.etaxonomy.taxeditor.ui.dialog.selection;
10

    
11
import java.util.UUID;
12

    
13
import org.eclipse.swt.widgets.Shell;
14

    
15
import eu.etaxonomy.cdm.api.conversation.ConversationHolder;
16
import eu.etaxonomy.cdm.api.service.molecular.IAmplificationService;
17
import eu.etaxonomy.cdm.hibernate.HibernateProxyHelper;
18
import eu.etaxonomy.cdm.model.molecular.Amplification;
19
import eu.etaxonomy.taxeditor.model.MessagingUtils;
20
import eu.etaxonomy.taxeditor.newWizard.AbstractNewEntityWizard;
21
import eu.etaxonomy.taxeditor.newWizard.NewAmplificationWizard;
22
import eu.etaxonomy.taxeditor.store.CdmStore;
23

    
24
/**
25
 * @author pplitzner
26
 * @date 11.03.2014
27
 *
28
 */
29
public class AmplificationSelectionDialog extends
30
AbstractFilteredCdmResourceSelectionDialog<Amplification> {
31

    
32
    public static Amplification select(Shell shell, ConversationHolder conversation, Amplification amplification){
33
        AmplificationSelectionDialog dialog = new AmplificationSelectionDialog(shell, conversation,
34
                "Choose Amplification", false, AmplificationSelectionDialog.class.getCanonicalName(), amplification);
35
        return getSelectionFromDialog(dialog);
36
    }
37

    
38
    /**
39
     * <p>Constructor for FilteredDerivedUnitSelectionDialog.</p>
40
     */
41
    protected AmplificationSelectionDialog(Shell shell, ConversationHolder conversation, String title,
42
            boolean multi, String settings, Amplification cdmObject) {
43
        super(shell, conversation, title, multi, settings, cdmObject);
44
    }
45

    
46
    /** {@inheritDoc} */
47
    @Override
48
    protected Amplification getPersistentObject(UUID uuid) {
49
        Object object = CdmStore.getService(IAmplificationService.class).load(uuid);
50

    
51
        Amplification amplification = (Amplification) HibernateProxyHelper.deproxy(object);
52

    
53
        if(amplification != null){
54
            return amplification;
55
        }
56
        MessagingUtils.error(this.getClass(), "Selected element is not an amplification", null);
57
        return null;
58
    }
59

    
60
    /** {@inheritDoc} */
61
    @Override
62
    protected void search() {
63
        model = CdmStore.getService(IAmplificationService.class).getAmplificationUuidAndLabelCache();
64
    }
65

    
66
    /* (non-Javadoc)
67
     * @see eu.etaxonomy.taxeditor.ui.dialog.selection.AbstractFilteredCdmResourceSelectionDialog#getTitle(eu.etaxonomy.cdm.model.common.ICdmBase)
68
     */
69
    @Override
70
    protected String getTitle(Amplification cdmObject) {
71
        if(cdmObject!=null){
72
            return cdmObject.getLabelCache();
73
        }
74
        return super.getTitle(cdmObject);
75
    }
76

    
77
    /** {@inheritDoc} */
78
    @Override
79
    protected AbstractNewEntityWizard getNewEntityWizard(String parameter) {
80
        return new NewAmplificationWizard();
81
    }
82

    
83
    /** {@inheritDoc} */
84
    @Override
85
    protected String[] getNewWizardText() {
86
        String[] result = new String[1];
87
        result[0] = "Amplification";
88
        return result;
89
    }
90
}
(5-5/40)