Project

General

Profile

Download (2.7 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.IMediaService;
17
import eu.etaxonomy.cdm.hibernate.HibernateProxyHelper;
18
import eu.etaxonomy.cdm.model.media.Media;
19
import eu.etaxonomy.taxeditor.model.MessagingUtils;
20
import eu.etaxonomy.taxeditor.newWizard.AbstractNewEntityWizard;
21
import eu.etaxonomy.taxeditor.store.CdmStore;
22

    
23
/**
24
 * @author pplitzner
25
 * @date 11.03.2014
26
 *
27
 */
28
public class MediaSelectionDialog extends
29
AbstractFilteredCdmResourceSelectionDialog<Media> {
30

    
31
    public static Media select(Shell shell, ConversationHolder conversation, Media media){
32
        MediaSelectionDialog dialog = new MediaSelectionDialog(shell, conversation,
33
                "Choose Media", false, MediaSelectionDialog.class.getCanonicalName(), media);
34
        return getSelectionFromDialog(dialog);
35
    }
36

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

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

    
50
        Media media = (Media) HibernateProxyHelper.deproxy(object);
51

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

    
59
    /** {@inheritDoc} */
60
    @Override
61
    protected void search() {
62
        model = CdmStore.getService(IMediaService.class).getUuidAndTitleCache(null, null);
63
    }
64

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

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

    
82
    /** {@inheritDoc} */
83
    @Override
84
    protected String getNewWizardLinkText() {
85
        return "";
86
    }
87
}
(17-17/38)