Merge branch 'release/3.12.0'
[taxeditor.git] / eu.etaxonomy.taxeditor.bulkeditor / src / main / java / eu / etaxonomy / taxeditor / annotatedlineeditor / IEntityContainer.java
1 // $Id$
2 /**
3 * Copyright (C) 2007 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.annotatedlineeditor;
11
12 import java.util.Set;
13
14 /**
15 * <p>IEntityContainer interface.</p>
16 *
17 * @author p.ciardelli
18 * @created 25.06.2009
19 * @version 1.0
20 * @param <T>
21 */
22 public interface IEntityContainer<T> {
23
24 /**
25 * <p>getEntity</p>
26 *
27 * @param <T> a T object.
28 * @return a T object.
29 */
30 T getEntity();
31
32 void setEntity(Object entity);
33
34 /**
35 * <p>getEditableText</p>
36 *
37 * @return a {@link java.lang.String} object.
38 */
39 String getEditableText();
40
41 /**
42 * <p>getAttachedEntities</p>
43 *
44 * @return a {@link java.util.Set} object.
45 */
46 Set<T> getAttachedEntities();
47
48 /**
49 * <p>markAsMerged</p>
50 *
51 * @param mergeTarget a T object.
52 */
53 void markAsMerged(T mergeTarget);
54
55 /**
56 * <p>markAsDeleted</p>
57 */
58 void markAsDeleted();
59
60 /**
61 * <p>markAsNew</p>
62 *
63 * @param isNew a boolean.
64 */
65 void markAsNew(boolean isNew);
66
67 /**
68 * <p>isMarkedAsMerged</p>
69 *
70 * @return a boolean.
71 */
72 boolean isMarkedAsMerged();
73
74 /**
75 * <p>isMarkedAsDeleted</p>
76 *
77 * @return a boolean.
78 */
79 boolean isMarkedAsDeleted();
80
81 /**
82 * <p>isMarkedAsNew</p>
83 *
84 * @return a boolean.
85 */
86 boolean isMarkedAsNew();
87
88 /**
89 * <p>setText</p>
90 *
91 * @param text a {@link java.lang.String} object.
92 */
93 void setText(String text);
94
95 /**
96 * <p>getMergeTarget</p>
97 *
98 * @return a T object.
99 */
100 T getMergeTarget();
101
102 /**
103 * <p>isDirty</p>
104 *
105 * @return a boolean.
106 */
107 boolean isDirty();
108
109 /**
110 * <p>setDirty</p>
111 *
112 * @param dirty a boolean.
113 */
114 void setDirty(boolean dirty);
115 }