blob: cb3ffb4ec803dca7c0abad6588017977b0de8636 [file] [log] [blame]
Thomas Vachuska4f1a60c2014-10-28 13:39:07 -07001/*
2 * Copyright 2014 Open Networking Laboratory
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 *
8 * http://www.apache.org/licenses/LICENSE-2.0
9 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 */
tom3ea11252014-10-02 04:32:26 -070016package org.onlab.onos.net;
17
tom3ea11252014-10-02 04:32:26 -070018import java.util.Set;
19
20/**
tom44179d62014-10-02 05:31:25 -070021 * Represents an set of simple key/value string annotations.
tom3ea11252014-10-02 04:32:26 -070022 */
tomf5d85d42014-10-02 05:27:56 -070023public interface Annotations {
tom3ea11252014-10-02 04:32:26 -070024
25 /**
tomf5d85d42014-10-02 05:27:56 -070026 * Returns the set of keys for available annotations.
tom3ea11252014-10-02 04:32:26 -070027 *
28 * @return annotation keys
29 */
tomf5d85d42014-10-02 05:27:56 -070030 public Set<String> keys();
tom3ea11252014-10-02 04:32:26 -070031
32 /**
33 * Returns the value of the specified annotation.
34 *
35 * @param key annotation key
36 * @return annotation value
37 */
tomf5d85d42014-10-02 05:27:56 -070038 public String value(String key);
tom3ea11252014-10-02 04:32:26 -070039
tom3ea11252014-10-02 04:32:26 -070040}