Project

General

Profile

Download (1.16 KB) Statistics
| Branch: | Tag: | Revision:
1

    
2
package eu.etaxonomy.taxeditor.editor.view.derivate.handler;
3

    
4
import eu.etaxonomy.cdm.model.molecular.DnaSample;
5
import eu.etaxonomy.cdm.model.occurrence.DerivationEventType;
6
import eu.etaxonomy.cdm.model.occurrence.DerivedUnit;
7
import eu.etaxonomy.cdm.model.occurrence.FieldUnit;
8
import eu.etaxonomy.cdm.model.occurrence.SpecimenOrObservationType;
9

    
10
public class AddTissueSampleHandler extends AbstractAddDerivativeHandler{
11

    
12
    @Override
13
    protected boolean isAllowed(Object derivative) {
14
        if (derivative instanceof FieldUnit || (derivative instanceof DerivedUnit
15
                && ((DerivedUnit) derivative).getRecordBasis().equals(SpecimenOrObservationType.PreservedSpecimen))) {
16
            return true;
17
        }
18
        return false;
19
    }
20

    
21

    
22
    /**
23
     * {@inheritDoc}
24
     */
25
    @Override
26
    protected DerivedUnit createDerivative() {
27
        DnaSample dnaSample = DnaSample.NewInstance();
28
        dnaSample.setRecordBasis(SpecimenOrObservationType.TissueSample);
29
        return dnaSample;
30
    }
31

    
32
    /**
33
     * {@inheritDoc}
34
     */
35
    @Override
36
    protected DerivationEventType getDerivationeType() {
37
        return DerivationEventType.PREPARATION();
38
    }
39

    
40
}
(8-8/18)