blob: 2b9c976f4bc994b4f8536130fde1d30a9cf62159 [file] [log] [blame]
package net.onrc.onos.core.topology;
import static com.google.common.base.Preconditions.checkNotNull;
import java.util.Collection;
import net.floodlightcontroller.util.MACAddress;
import net.onrc.onos.core.util.Dpid;
import net.onrc.onos.core.util.LinkTuple;
import net.onrc.onos.core.util.OnosInstanceId;
import net.onrc.onos.core.util.PortNumber;
import net.onrc.onos.core.util.SwitchPort;
/**
* Wrapper to access {@link ImmutableInternalTopology} as {@link MutableInternalTopology}.
*/
public final class ImmutableInternalTopologyWrapper implements MutableInternalTopology {
private final ImmutableInternalTopology wrapped;
/**
* Constructor.
*
* @param toWrap {@link ImmutableInternalTopology} to wrap
*/
public ImmutableInternalTopologyWrapper(ImmutableInternalTopology toWrap) {
this.wrapped = checkNotNull(toWrap);
}
@Override
public void acquireReadLock() {
// no-op
}
@Override
public void releaseReadLock() {
// no-op
}
@Override
public SwitchData getSwitchData(Dpid dpid) {
return wrapped.getSwitchData(dpid);
}
@Override
public Collection<SwitchData> getAllSwitchDataEntries() {
return wrapped.getAllSwitchDataEntries();
}
@Override
public PortData getPortData(SwitchPort port) {
return wrapped.getPortData(port);
}
@Override
public PortData getPortData(Dpid dpid, PortNumber portNumber) {
return wrapped.getPortData(dpid, portNumber);
}
@Override
public Collection<PortData> getPortDataEntries(Dpid dpid) {
return wrapped.getPortDataEntries(dpid);
}
@Override
public Collection<PortData> getAllPortDataEntries() {
return wrapped.getAllPortDataEntries();
}
@Override
public LinkData getLinkData(LinkTuple linkId) {
return wrapped.getLinkData(linkId);
}
@Override
public LinkData getLinkData(LinkTuple linkId, String type) {
return wrapped.getLinkData(linkId, type);
}
@Override
public Collection<LinkData> getLinkDataEntries(LinkTuple linkId) {
return wrapped.getLinkDataEntries(linkId);
}
@Override
public Collection<LinkData> getAllLinkDataEntries() {
return wrapped.getAllLinkDataEntries();
}
@Override
public HostData getHostData(MACAddress mac) {
return wrapped.getHostData(mac);
}
@Override
public Collection<HostData> getAllHostDataEntries() {
return wrapped.getAllHostDataEntries();
}
@Override
public Collection<LinkData> getLinkDataEntriesFrom(SwitchPort srcPort) {
return wrapped.getLinkDataEntriesFrom(srcPort);
}
@Override
public Collection<LinkData> getLinkDataEntriesTo(SwitchPort dstPort) {
return wrapped.getLinkDataEntriesTo(dstPort);
}
@Override
public Collection<HostData> getHostDataEntries(SwitchPort port) {
return wrapped.getHostDataEntries(port);
}
@Override
public OnosInstanceId getSwitchMaster(Dpid dpid) {
return wrapped.getSwitchMaster(dpid);
}
}