Project

General

Profile

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

    
12
import java.util.Collection;
13
import java.util.Collections;
14

    
15
import eu.etaxonomy.cdm.api.conversation.ConversationHolder;
16
import eu.etaxonomy.cdm.model.media.Media;
17
import eu.etaxonomy.cdm.model.molecular.Sequence;
18
import eu.etaxonomy.cdm.model.molecular.SingleRead;
19
import eu.etaxonomy.taxeditor.ui.element.CdmFormFactory;
20
import eu.etaxonomy.taxeditor.ui.element.ICdmFormElement;
21
import eu.etaxonomy.taxeditor.ui.section.AbstractEntityCollectionElement;
22
import eu.etaxonomy.taxeditor.ui.section.AbstractEntityCollectionSection;
23

    
24
/**
25
 * @author pplitzner
26
 * @date 03.03.2014
27
 *
28
 */
29
public class SequenceContigFileCollectionDetailSection extends AbstractEntityCollectionSection<Sequence, Media> {
30

    
31
    /**
32
     * @param formFactory
33
     * @param conversation
34
     * @param parentElement
35
     * @param title
36
     * @param style
37
     */
38
    public SequenceContigFileCollectionDetailSection(CdmFormFactory formFactory, ConversationHolder conversation,
39
            ICdmFormElement parentElement, int style) {
40
        super(formFactory, conversation, parentElement, "Contig File", style);
41
    }
42

    
43

    
44

    
45
    /* (non-Javadoc)
46
     * @see eu.etaxonomy.taxeditor.ui.section.AbstractEntityCollectionSection#getCollection(java.lang.Object)
47
     */
48
    @Override
49
    public Collection<Media> getCollection(Sequence entity) {
50
        if(entity.getContigFile()!=null){
51
            return Collections.singleton(entity.getContigFile());
52
        }
53
        return Collections.EMPTY_LIST;
54
    }
55

    
56
    /* (non-Javadoc)
57
     * @see eu.etaxonomy.taxeditor.ui.section.AbstractEntityCollectionSection#createNewElement()
58
     */
59
    @Override
60
    public Media createNewElement() {
61
        if(getEntity().getContigFile()==null){
62
            return Media.NewInstance();
63
        }
64
        return null;
65
    }
66

    
67
    /* (non-Javadoc)
68
     * @see eu.etaxonomy.taxeditor.ui.section.AbstractEntityCollectionSection#addElement(java.lang.Object)
69
     */
70
    @Override
71
    public void addElement(Media element) {
72
        if(getEntity().getContigFile()==null){
73
            getEntity().setContigFile(element);
74
        }
75
    }
76

    
77
    /* (non-Javadoc)
78
     * @see eu.etaxonomy.taxeditor.ui.section.AbstractEntityCollectionSection#removeElement(java.lang.Object)
79
     */
80
    @Override
81
    public void removeElement(Media element) {
82
        getEntity().setContigFile(null);
83
    }
84

    
85
    /* (non-Javadoc)
86
     * @see eu.etaxonomy.taxeditor.ui.section.AbstractEntityCollectionSection#getEmptyString()
87
     */
88
    @Override
89
    public String getEmptyString() {
90
        return "No contig file yet";
91
    }
92

    
93
    /* (non-Javadoc)
94
     * @see eu.etaxonomy.taxeditor.ui.section.AbstractEntityCollectionSection#getTooltipString()
95
     */
96
    @Override
97
    protected String getTooltipString() {
98
        return "Add a contig file";
99
    }
100
}
(21-21/30)