free text search: better querying for 'isNotNull' and code harmonization
[cdmlib.git] / cdmlib-model / src / main / java / eu / etaxonomy / cdm / model / description / IModifiable.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
11 package eu.etaxonomy.cdm.model.description;
12
13 import java.util.Set;
14
15 import eu.etaxonomy.cdm.model.common.IVersionableEntity;
16
17 /**
18 * @author n.hoffmann
19 * @created Sep 15, 2010
20 * @version 1.0
21 */
22 public interface IModifiable extends IVersionableEntity {
23
24 /**
25 * Returns the set of {@link Modifier modifiers} used to qualify the validity
26 * of <i>this</i> state data. This is only metainformation.
27 */
28 public Set<Modifier> getModifiers();
29
30 /**
31 * Adds a {@link Modifier modifier} to the set of {@link #getModifiers() modifiers}
32 * used to qualify the validity of <i>this</i> state data.
33 *
34 * @param modifier the modifier to be added to <i>this</i> state data
35 * @see #getModifiers()
36 */
37 public void addModifier(Modifier modifier);
38 /**
39 * Removes one element from the set of {@link #getModifiers() modifiers}
40 * used to qualify the validity of <i>this</i> state data.
41 *
42 * @param modifier the modifier which should be removed
43 * @see #getModifiers()
44 * @see #addModifier(Modifier)
45 */
46 public void removeModifier(Modifier modifier);
47 }