blob: 95ab44002c3c83187131e61a71efd915c6f852d1 [file] [log] [blame]
package net.onrc.onos.ofcontroller.networkgraph;
import java.util.Collection;
import net.onrc.onos.ofcontroller.util.FlowEntry;
/**
* Interface of Switch Object exposed to the "NB" read-only Topology.
*
* Everything returned by these interfaces must be either Unmodifiable view,
* immutable object, or a copy of the original "SB" In-memory Topology.
*
*/
public interface Switch {
public Long getDpid();
public Collection<Port> getPorts();
public Port getPort(Long number);
// Flows
public Collection<FlowEntry> getFlowEntries();
// Graph traversal API
public Iterable<Switch> getNeighbors();
public Iterable<Link> getOutgoingLinks();
public Iterable<Link> getIncomingLinks();
public Link getLinkToNeighbor(Long dpid);
public Collection<Device> getDevices();
}