Committed by
Gerrit Code Review
CORD Subscriber GUI - Added CDN function. Added backend boolean to filter out 'i…
…nternet' when talking to XOS. Change-Id: I076b9966c38589636968eef3dcaa203ba57f4eba
Showing
3 changed files
with
48 additions
and
11 deletions
| ... | @@ -59,9 +59,12 @@ public class XosManager { | ... | @@ -59,9 +59,12 @@ public class XosManager { |
| 59 | String uriFmt = subId(subscriberId) + "services/%s/%s"; | 59 | String uriFmt = subId(subscriberId) + "services/%s/%s"; |
| 60 | Set<XosFunctionDescriptor> inBundle = bundle.descriptor().functions(); | 60 | Set<XosFunctionDescriptor> inBundle = bundle.descriptor().functions(); |
| 61 | for (XosFunctionDescriptor xfd: XosFunctionDescriptor.values()) { | 61 | for (XosFunctionDescriptor xfd: XosFunctionDescriptor.values()) { |
| 62 | - String uri = String.format(uriFmt, xfd.id(), inBundle.contains(xfd)); | 62 | + // only process the functions that have a real back-end on XOS |
| 63 | - String result = xosUtils.putRest(uri); | 63 | + if (xfd.backend()) { |
| 64 | - // TODO: convert JSON result to object and check (if we care) | 64 | + String uri = String.format(uriFmt, xfd.id(), inBundle.contains(xfd)); |
| 65 | + String result = xosUtils.putRest(uri); | ||
| 66 | + // TODO: convert JSON result to object and check (if we care) | ||
| 67 | + } | ||
| 65 | } | 68 | } |
| 66 | } | 69 | } |
| 67 | 70 | ... | ... |
| ... | @@ -26,30 +26,45 @@ public enum XosFunctionDescriptor { | ... | @@ -26,30 +26,45 @@ public enum XosFunctionDescriptor { |
| 26 | */ | 26 | */ |
| 27 | INTERNET("internet", | 27 | INTERNET("internet", |
| 28 | "Internet", | 28 | "Internet", |
| 29 | - "Basic internet connectivity."), | 29 | + "Basic internet connectivity.", |
| 30 | + false), | ||
| 30 | 31 | ||
| 31 | /** | 32 | /** |
| 32 | * Firewall function. | 33 | * Firewall function. |
| 33 | */ | 34 | */ |
| 34 | FIREWALL("firewall", | 35 | FIREWALL("firewall", |
| 35 | "Firewall", | 36 | "Firewall", |
| 36 | - "Normal firewall protection."), | 37 | + "Normal firewall protection.", |
| 38 | + true), | ||
| 37 | 39 | ||
| 38 | /** | 40 | /** |
| 39 | * URL Filtering function (parental controls). | 41 | * URL Filtering function (parental controls). |
| 40 | */ | 42 | */ |
| 41 | URL_FILTER("url_filter", | 43 | URL_FILTER("url_filter", |
| 42 | "Parental Control", | 44 | "Parental Control", |
| 43 | - "Variable levels of URL filtering."); | 45 | + "Variable levels of URL filtering.", |
| 46 | + true), | ||
| 47 | + | ||
| 48 | + /** | ||
| 49 | + * Content Distribution function. | ||
| 50 | + */ | ||
| 51 | + CDN("cdn", | ||
| 52 | + "CDN", | ||
| 53 | + "Content Distribution Network service.", | ||
| 54 | + true); | ||
| 55 | + | ||
| 44 | 56 | ||
| 45 | private final String id; | 57 | private final String id; |
| 46 | private final String displayName; | 58 | private final String displayName; |
| 47 | private final String description; | 59 | private final String description; |
| 60 | + private final boolean backend; | ||
| 48 | 61 | ||
| 49 | - XosFunctionDescriptor(String id, String displayName, String description) { | 62 | + XosFunctionDescriptor(String id, String displayName, String description, |
| 63 | + boolean backend) { | ||
| 50 | this.id = id; | 64 | this.id = id; |
| 51 | this.displayName = displayName; | 65 | this.displayName = displayName; |
| 52 | this.description = description; | 66 | this.description = description; |
| 67 | + this.backend = backend; | ||
| 53 | } | 68 | } |
| 54 | 69 | ||
| 55 | /** | 70 | /** |
| ... | @@ -79,4 +94,13 @@ public enum XosFunctionDescriptor { | ... | @@ -79,4 +94,13 @@ public enum XosFunctionDescriptor { |
| 79 | return description; | 94 | return description; |
| 80 | } | 95 | } |
| 81 | 96 | ||
| 97 | + /** | ||
| 98 | + * Returns true if this function is supported by the XOS backend. | ||
| 99 | + * | ||
| 100 | + * @return true if backend function exists | ||
| 101 | + */ | ||
| 102 | + public boolean backend() { | ||
| 103 | + return backend; | ||
| 104 | + } | ||
| 105 | + | ||
| 82 | } | 106 | } | ... | ... |
| ... | @@ -19,8 +19,7 @@ package org.onosproject.cord.gui.model; | ... | @@ -19,8 +19,7 @@ package org.onosproject.cord.gui.model; |
| 19 | 19 | ||
| 20 | import org.junit.Test; | 20 | import org.junit.Test; |
| 21 | 21 | ||
| 22 | -import static org.junit.Assert.assertEquals; | 22 | +import static org.junit.Assert.*; |
| 23 | -import static org.junit.Assert.assertTrue; | ||
| 24 | import static org.onosproject.cord.gui.model.XosFunctionDescriptor.*; | 23 | import static org.onosproject.cord.gui.model.XosFunctionDescriptor.*; |
| 25 | 24 | ||
| 26 | /** | 25 | /** |
| ... | @@ -30,7 +29,7 @@ public class XosFunctionDescriptorTest { | ... | @@ -30,7 +29,7 @@ public class XosFunctionDescriptorTest { |
| 30 | 29 | ||
| 31 | @Test | 30 | @Test |
| 32 | public void numberOfFunctions() { | 31 | public void numberOfFunctions() { |
| 33 | - assertEquals("unexpected constant count", 3, values().length); | 32 | + assertEquals("unexpected constant count", 4, values().length); |
| 34 | } | 33 | } |
| 35 | 34 | ||
| 36 | @Test | 35 | @Test |
| ... | @@ -38,6 +37,7 @@ public class XosFunctionDescriptorTest { | ... | @@ -38,6 +37,7 @@ public class XosFunctionDescriptorTest { |
| 38 | assertEquals("wrong id", "internet", INTERNET.id()); | 37 | assertEquals("wrong id", "internet", INTERNET.id()); |
| 39 | assertEquals("wrong display", "Internet", INTERNET.displayName()); | 38 | assertEquals("wrong display", "Internet", INTERNET.displayName()); |
| 40 | assertTrue("wrong desc", INTERNET.description().startsWith("Basic")); | 39 | assertTrue("wrong desc", INTERNET.description().startsWith("Basic")); |
| 40 | + assertFalse("wrong backend", INTERNET.backend()); | ||
| 41 | } | 41 | } |
| 42 | 42 | ||
| 43 | @Test | 43 | @Test |
| ... | @@ -45,12 +45,22 @@ public class XosFunctionDescriptorTest { | ... | @@ -45,12 +45,22 @@ public class XosFunctionDescriptorTest { |
| 45 | assertEquals("wrong id", "firewall", FIREWALL.id()); | 45 | assertEquals("wrong id", "firewall", FIREWALL.id()); |
| 46 | assertEquals("wrong display", "Firewall", FIREWALL.displayName()); | 46 | assertEquals("wrong display", "Firewall", FIREWALL.displayName()); |
| 47 | assertTrue("wrong desc", FIREWALL.description().startsWith("Normal")); | 47 | assertTrue("wrong desc", FIREWALL.description().startsWith("Normal")); |
| 48 | + assertTrue("wrong backend", FIREWALL.backend()); | ||
| 48 | } | 49 | } |
| 49 | 50 | ||
| 50 | @Test | 51 | @Test |
| 51 | - public void urlFiltering() { | 52 | + public void urlFilter() { |
| 52 | assertEquals("wrong id", "url_filter", URL_FILTER.id()); | 53 | assertEquals("wrong id", "url_filter", URL_FILTER.id()); |
| 53 | assertEquals("wrong display", "Parental Control", URL_FILTER.displayName()); | 54 | assertEquals("wrong display", "Parental Control", URL_FILTER.displayName()); |
| 54 | assertTrue("wrong desc", URL_FILTER.description().startsWith("Variable")); | 55 | assertTrue("wrong desc", URL_FILTER.description().startsWith("Variable")); |
| 56 | + assertTrue("wrong backend", URL_FILTER.backend()); | ||
| 57 | + } | ||
| 58 | + | ||
| 59 | + @Test | ||
| 60 | + public void cdn() { | ||
| 61 | + assertEquals("wrong id", "cdn", CDN.id()); | ||
| 62 | + assertEquals("wrong display", "CDN", CDN.displayName()); | ||
| 63 | + assertTrue("wrong desc", CDN.description().startsWith("Content")); | ||
| 64 | + assertTrue("wrong backend", CDN.backend()); | ||
| 55 | } | 65 | } |
| 56 | } | 66 | } | ... | ... |
-
Please register or login to post a comment