aboutsummaryrefslogtreecommitdiffstats
path: root/framework/src/onos/apps/demo/cord-gui/src/main/java/org/onosproject/cord/gui/model/UrlFilterFunction.java
diff options
context:
space:
mode:
Diffstat (limited to 'framework/src/onos/apps/demo/cord-gui/src/main/java/org/onosproject/cord/gui/model/UrlFilterFunction.java')
-rw-r--r--framework/src/onos/apps/demo/cord-gui/src/main/java/org/onosproject/cord/gui/model/UrlFilterFunction.java93
1 files changed, 0 insertions, 93 deletions
diff --git a/framework/src/onos/apps/demo/cord-gui/src/main/java/org/onosproject/cord/gui/model/UrlFilterFunction.java b/framework/src/onos/apps/demo/cord-gui/src/main/java/org/onosproject/cord/gui/model/UrlFilterFunction.java
deleted file mode 100644
index ec1ff380..00000000
--- a/framework/src/onos/apps/demo/cord-gui/src/main/java/org/onosproject/cord/gui/model/UrlFilterFunction.java
+++ /dev/null
@@ -1,93 +0,0 @@
-/*
- * Copyright 2015 Open Networking Laboratory
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-package org.onosproject.cord.gui.model;
-
-import com.fasterxml.jackson.databind.node.ObjectNode;
-
-import static com.google.common.base.Preconditions.checkNotNull;
-
-/**
- * Specialization of XosFunction for URL filtering.
- */
-public class UrlFilterFunction extends DefaultXosFunction {
-
- private static final String LEVEL = "level";
- private static final String URI_PATTERN = "%s/%s/";
-
- /**
- * Denotes the URL filtering levels available. From most restrictive
- * to least restrictive. Note: <em>NONE</em> allows nothing;
- * <em>ALL</em> allows everything.
- */
- public enum Level { NONE, G, PG, PG_13, R, ALL }
-
- /**
- * The default URL filtering level
- */
- public static final Level DEFAULT_LEVEL = Level.G;
-
- public UrlFilterFunction() {
- super(XosFunctionDescriptor.URL_FILTER);
- }
-
- @Override
- public void applyParam(SubscriberUser user, String param, String value) {
- Memento memo = user.getMemento(descriptor());
- checkNotNull(memo, "missing memento for " + descriptor());
- UrlFilterMemento ufMemo = (UrlFilterMemento) memo;
-
- if (LEVEL.equals(param)) {
- Level newLevel = Level.valueOf(value.toUpperCase());
- ufMemo.setLevel(newLevel);
-
- // Also store the (string version) of the level
- // (not in the memento). Hackish, but that's how it is for now.
- user.setUrlFilterLevel(value);
- }
- }
-
- @Override
- public Memento createMemento() {
- return new UrlFilterMemento();
- }
-
- class UrlFilterMemento implements Memento {
- private Level level = DEFAULT_LEVEL;
-
- public ObjectNode toObjectNode() {
- ObjectNode node = MAPPER.createObjectNode();
- node.put(LEVEL, level.name());
- return node;
- }
-
- public void setLevel(Level level) {
- this.level = level;
- }
-
- public String level() {
- return level.toString();
- }
- }
-
- @Override
- public String xosUrlApply(SubscriberUser user) {
- XosFunctionDescriptor xfd = XosFunctionDescriptor.URL_FILTER;
- UrlFilterMemento memo = (UrlFilterMemento) user.getMemento(xfd);
- return String.format(URI_PATTERN, xfd.id(), memo.level());
- }
-}