blob: cd5ddf81dd21738e54ca7c060d5441c5026f7109 [file] [log] [blame]
Jonathan Hart062a2e82014-02-03 09:41:57 -08001package net.onrc.onos.ofcontroller.networkgraph;
2
3import java.net.InetAddress;
4import java.util.Collection;
5
6import net.floodlightcontroller.util.MACAddress;
7
Yuta HIGUCHI181d34d2014-02-05 15:05:46 -08008/**
9 * Interface of Device Object exposed to the "NB" read-only Topology.
10 *
Yuta HIGUCHI8d9fddf2014-02-10 13:32:16 -080011 * TODO What a Device Object represent is unclear at the moment.
12 *
Yuta HIGUCHI181d34d2014-02-05 15:05:46 -080013 * Everything returned by these interfaces must be either Unmodifiable view,
14 * immutable object, or a copy of the original "SB" In-memory Topology.
15 *
16 */
Jonathan Hart062a2e82014-02-03 09:41:57 -080017public interface Device {
18 public MACAddress getMacAddress();
Yuta HIGUCHI181d34d2014-02-05 15:05:46 -080019
Jonathan Hart062a2e82014-02-03 09:41:57 -080020 public Collection<InetAddress> getIpAddress();
Yuta HIGUCHI181d34d2014-02-05 15:05:46 -080021
Yuta HIGUCHI8d9fddf2014-02-10 13:32:16 -080022 // Add requirement for Iteration order? Latest observed port first.
Jonathan Hart062a2e82014-02-03 09:41:57 -080023 public Iterable<Port> getAttachmentPoints();
Yuta HIGUCHI181d34d2014-02-05 15:05:46 -080024
Jonathan Hart062a2e82014-02-03 09:41:57 -080025 public long getLastSeenTime();
26}