blob: 423bca23294a4fc1ce5479d299840d63ee3f4a5b [file] [log] [blame]
tomf5d85d42014-10-02 05:27:56 -07001package org.onlab.onos.net;
2
3import java.util.Set;
4
5/**
tom44179d62014-10-02 05:31:25 -07006 * Represents an set of sparse key/value string annotations capable of carrying
7 * annotation keys tagged for removal.
tomf5d85d42014-10-02 05:27:56 -07008 */
9public interface SparseAnnotations extends Annotations {
10
11 /**
12 * {@inheritDoc}
13 * <p/>
14 * Note that this set includes keys for any attributes tagged for removal.
15 */
16 @Override
17 public Set<String> keys();
18
19 /**
20 * Indicates whether the specified key has been tagged as removed. This is
21 * used to for merging sparse annotation sets.
22 *
23 * @param key annotation key
24 * @return true if the previous annotation has been tagged for removal
25 */
26 public boolean isRemoved(String key);
27
28}