aboutsummaryrefslogtreecommitdiffstats
path: root/framework/src/onos/core/api/src/main/java/org/onosproject/net/config/basics/SubjectFactories.java
diff options
context:
space:
mode:
Diffstat (limited to 'framework/src/onos/core/api/src/main/java/org/onosproject/net/config/basics/SubjectFactories.java')
-rw-r--r--framework/src/onos/core/api/src/main/java/org/onosproject/net/config/basics/SubjectFactories.java16
1 files changed, 16 insertions, 0 deletions
diff --git a/framework/src/onos/core/api/src/main/java/org/onosproject/net/config/basics/SubjectFactories.java b/framework/src/onos/core/api/src/main/java/org/onosproject/net/config/basics/SubjectFactories.java
index 884f2e20..311566b3 100644
--- a/framework/src/onos/core/api/src/main/java/org/onosproject/net/config/basics/SubjectFactories.java
+++ b/framework/src/onos/core/api/src/main/java/org/onosproject/net/config/basics/SubjectFactories.java
@@ -43,6 +43,10 @@ public final class SubjectFactories {
public ApplicationId createSubject(String key) {
return coreService.registerApplication(key);
}
+ @Override
+ public String subjectKey(ApplicationId subject) {
+ return subject.name();
+ }
};
public static final SubjectFactory<DeviceId> DEVICE_SUBJECT_FACTORY =
@@ -59,6 +63,10 @@ public final class SubjectFactories {
public ConnectPoint createSubject(String key) {
return ConnectPoint.deviceConnectPoint(key);
}
+ @Override
+ public String subjectKey(ConnectPoint subject) {
+ return key(subject);
+ }
};
public static final SubjectFactory<HostId> HOST_SUBJECT_FACTORY =
@@ -78,6 +86,10 @@ public final class SubjectFactories {
return LinkKey.linkKey(ConnectPoint.deviceConnectPoint(cps[0]),
ConnectPoint.deviceConnectPoint(cps[1]));
}
+ @Override
+ public String subjectKey(LinkKey subject) {
+ return key(subject.src()) + "-" + key(subject.dst());
+ }
};
/**
@@ -90,4 +102,8 @@ public final class SubjectFactories {
coreService = service;
}
+ private static String key(ConnectPoint subject) {
+ return subject.deviceId() + "/" + subject.port();
+ }
+
}