Construct GraphDescription with online/active Device/Link only
Change-Id: I9312c0c8ae190bf0200bd040823b6f7a3e7a15e1
diff --git a/core/api/src/test/java/org/onlab/onos/net/device/DeviceServiceAdapter.java b/core/api/src/test/java/org/onlab/onos/net/device/DeviceServiceAdapter.java
index 6b4ed3b..3d2d74f 100644
--- a/core/api/src/test/java/org/onlab/onos/net/device/DeviceServiceAdapter.java
+++ b/core/api/src/test/java/org/onlab/onos/net/device/DeviceServiceAdapter.java
@@ -21,6 +21,9 @@
import org.onlab.onos.net.Port;
import org.onlab.onos.net.PortNumber;
+import com.google.common.base.Predicate;
+import com.google.common.collect.FluentIterable;
+
import java.util.List;
/**
@@ -38,6 +41,18 @@
}
@Override
+ public Iterable<Device> getAvailableDevices() {
+ return FluentIterable.from(getDevices())
+ .filter(new Predicate<Device>() {
+
+ @Override
+ public boolean apply(Device input) {
+ return isAvailable(input.id());
+ }
+ });
+ }
+
+ @Override
public Device getDevice(DeviceId deviceId) {
return null;
}
diff --git a/core/api/src/test/java/org/onlab/onos/net/link/LinkServiceAdapter.java b/core/api/src/test/java/org/onlab/onos/net/link/LinkServiceAdapter.java
index 0e25e2a..b22f0a5 100644
--- a/core/api/src/test/java/org/onlab/onos/net/link/LinkServiceAdapter.java
+++ b/core/api/src/test/java/org/onlab/onos/net/link/LinkServiceAdapter.java
@@ -20,6 +20,10 @@
import org.onlab.onos.net.ConnectPoint;
import org.onlab.onos.net.DeviceId;
import org.onlab.onos.net.Link;
+import org.onlab.onos.net.Link.State;
+
+import com.google.common.base.Predicate;
+import com.google.common.collect.FluentIterable;
/**
* Test adapter for link service.
@@ -36,6 +40,18 @@
}
@Override
+ public Iterable<Link> getActiveLinks() {
+ return FluentIterable.from(getLinks())
+ .filter(new Predicate<Link>() {
+
+ @Override
+ public boolean apply(Link input) {
+ return input.state() == State.ACTIVE;
+ }
+ });
+ }
+
+ @Override
public Set<Link> getDeviceLinks(DeviceId deviceId) {
return null;
}