summaryrefslogtreecommitdiffstats
path: root/framework/src/onos/apps/vtn/sfcmgr/src/main/java/org/onosproject/sfc/manager
diff options
context:
space:
mode:
Diffstat (limited to 'framework/src/onos/apps/vtn/sfcmgr/src/main/java/org/onosproject/sfc/manager')
-rw-r--r--framework/src/onos/apps/vtn/sfcmgr/src/main/java/org/onosproject/sfc/manager/NshSpiIdGenerators.java51
-rw-r--r--framework/src/onos/apps/vtn/sfcmgr/src/main/java/org/onosproject/sfc/manager/SfcService.java91
-rw-r--r--framework/src/onos/apps/vtn/sfcmgr/src/main/java/org/onosproject/sfc/manager/impl/SfcManager.java186
-rw-r--r--framework/src/onos/apps/vtn/sfcmgr/src/main/java/org/onosproject/sfc/manager/impl/package-info.java20
-rw-r--r--framework/src/onos/apps/vtn/sfcmgr/src/main/java/org/onosproject/sfc/manager/package-info.java20
5 files changed, 0 insertions, 368 deletions
diff --git a/framework/src/onos/apps/vtn/sfcmgr/src/main/java/org/onosproject/sfc/manager/NshSpiIdGenerators.java b/framework/src/onos/apps/vtn/sfcmgr/src/main/java/org/onosproject/sfc/manager/NshSpiIdGenerators.java
deleted file mode 100644
index 1dbe8c8f..00000000
--- a/framework/src/onos/apps/vtn/sfcmgr/src/main/java/org/onosproject/sfc/manager/NshSpiIdGenerators.java
+++ /dev/null
@@ -1,51 +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.sfc.manager;
-
-import java.util.concurrent.atomic.AtomicInteger;
-
-/**
- * Unique NSH SPI Id generator for NSH header.
- */
-public final class NshSpiIdGenerators {
-
- private static final AtomicInteger NSH_SPI_ID_GEN = new AtomicInteger();
- private static final int MAX_NSH_SPI_ID = 0x7FFFFFFF;
- private static int nshSpiId;
-
- /**
- * Default constructor.
- */
- private NshSpiIdGenerators() {
- }
-
- /**
- * Get the next NSH SPI id.
- *
- * @return NSH SPI id
- */
- public static int create() {
- do {
- if (nshSpiId >= MAX_NSH_SPI_ID) {
- if (NSH_SPI_ID_GEN.get() >= MAX_NSH_SPI_ID) {
- NSH_SPI_ID_GEN.set(0);
- }
- }
- nshSpiId = NSH_SPI_ID_GEN.incrementAndGet();
- } while (nshSpiId > MAX_NSH_SPI_ID);
- return nshSpiId;
- }
-}
diff --git a/framework/src/onos/apps/vtn/sfcmgr/src/main/java/org/onosproject/sfc/manager/SfcService.java b/framework/src/onos/apps/vtn/sfcmgr/src/main/java/org/onosproject/sfc/manager/SfcService.java
deleted file mode 100644
index 4af2d47c..00000000
--- a/framework/src/onos/apps/vtn/sfcmgr/src/main/java/org/onosproject/sfc/manager/SfcService.java
+++ /dev/null
@@ -1,91 +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.sfc.manager;
-
-import org.onosproject.vtnrsc.PortPair;
-import org.onosproject.vtnrsc.PortPairGroup;
-import org.onosproject.vtnrsc.FlowClassifier;
-import org.onosproject.vtnrsc.PortChain;
-
-/**
- * SFC application that applies flows to the device.
- */
-public interface SfcService {
-
- /**
- * When port-pair is created, check whether Forwarding Rule needs to be
- * updated in OVS.
- *
- * @param portPair port-pair
- */
- void onPortPairCreated(PortPair portPair);
-
- /**
- * When port-pair is deleted, check whether Forwarding Rule needs to be
- * updated in OVS.
- *
- * @param portPair port-pair
- */
- void onPortPairDeleted(PortPair portPair);
-
- /**
- * When port-pair-group is created, check whether Forwarding Rule needs to
- * be updated in OVS.
- *
- * @param portPairGroup port-pair-group
- */
- void onPortPairGroupCreated(PortPairGroup portPairGroup);
-
- /**
- * When port-pair-group is deleted, check whether Forwarding Rule needs to
- * be updated in OVS.
- *
- * @param portPairGroup port-pair-group
- */
- void onPortPairGroupDeleted(PortPairGroup portPairGroup);
-
- /**
- * When flow-classifier is created, check whether Forwarding Rule needs to
- * be updated in OVS.
- *
- * @param flowClassifier flow-classifier
- */
- void onFlowClassifierCreated(FlowClassifier flowClassifier);
-
- /**
- * When flow-classifier is deleted, check whether Forwarding Rule needs to
- * be updated in OVS.
- *
- * @param flowClassifier flow-classifier
- */
- void onFlowClassifierDeleted(FlowClassifier flowClassifier);
-
- /**
- * When port-chain is created, check whether Forwarding Rule needs to be
- * updated in OVS.
- *
- * @param portChain port-chain
- */
- void onPortChainCreated(PortChain portChain);
-
- /**
- * When port-chain is deleted, check whether Forwarding Rule needs to be
- * updated in OVS.
- *
- * @param portChain port-chain
- */
- void onPortChainDeleted(PortChain portChain);
-}
diff --git a/framework/src/onos/apps/vtn/sfcmgr/src/main/java/org/onosproject/sfc/manager/impl/SfcManager.java b/framework/src/onos/apps/vtn/sfcmgr/src/main/java/org/onosproject/sfc/manager/impl/SfcManager.java
deleted file mode 100644
index 4df07929..00000000
--- a/framework/src/onos/apps/vtn/sfcmgr/src/main/java/org/onosproject/sfc/manager/impl/SfcManager.java
+++ /dev/null
@@ -1,186 +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.sfc.manager.impl;
-
-import static org.slf4j.LoggerFactory.getLogger;
-
-import org.apache.felix.scr.annotations.Activate;
-import org.apache.felix.scr.annotations.Component;
-import org.apache.felix.scr.annotations.Deactivate;
-import org.apache.felix.scr.annotations.Reference;
-import org.apache.felix.scr.annotations.ReferenceCardinality;
-import org.apache.felix.scr.annotations.Service;
-import org.onlab.util.KryoNamespace;
-import org.onosproject.core.ApplicationId;
-import org.onosproject.core.CoreService;
-import org.onosproject.sfc.manager.SfcService;
-import org.onosproject.vtnrsc.PortPair;
-import org.onosproject.vtnrsc.PortPairId;
-import org.onosproject.vtnrsc.PortPairGroup;
-import org.onosproject.vtnrsc.PortPairGroupId;
-import org.onosproject.vtnrsc.FlowClassifier;
-import org.onosproject.vtnrsc.FlowClassifierId;
-import org.onosproject.vtnrsc.PortChain;
-import org.onosproject.vtnrsc.PortChainId;
-import org.onosproject.vtnrsc.TenantId;
-import org.onosproject.vtnrsc.event.VtnRscEvent;
-import org.onosproject.vtnrsc.event.VtnRscListener;
-import org.onosproject.vtnrsc.service.VtnRscService;
-
-import org.slf4j.Logger;
-
-/**
- * Provides implementation of SFC Service.
- */
-@Component(immediate = true)
-@Service
-public class SfcManager implements SfcService {
-
- private final Logger log = getLogger(getClass());
- private static final String APP_ID = "org.onosproject.app.vtn";
-
- @Reference(cardinality = ReferenceCardinality.MANDATORY_UNARY)
- protected VtnRscService vtnRscService;
-
- @Reference(cardinality = ReferenceCardinality.MANDATORY_UNARY)
- protected CoreService coreService;
-
- protected ApplicationId appId;
-
- private final VtnRscListener vtnRscListener = new InnerVtnRscListener();
-
- @Activate
- public void activate() {
- appId = coreService.registerApplication(APP_ID);
-
- vtnRscService.addListener(vtnRscListener);
-
- KryoNamespace.Builder serializer = KryoNamespace.newBuilder()
- .register(TenantId.class)
- .register(PortPairId.class)
- .register(PortPairGroupId.class)
- .register(FlowClassifierId.class)
- .register(PortChainId.class);
-
- log.info("Started");
- }
-
- @Deactivate
- public void deactivate() {
- vtnRscService.removeListener(vtnRscListener);
-
- log.info("Stopped");
- }
-
- /*
- * Handle events.
- */
- private class InnerVtnRscListener implements VtnRscListener {
- @Override
- public void event(VtnRscEvent event) {
-
- if (VtnRscEvent.Type.PORT_PAIR_PUT == event.type()) {
- PortPair portPair = (PortPair) event.subject();
- onPortPairCreated(portPair);
- } else if (VtnRscEvent.Type.PORT_PAIR_DELETE == event.type()) {
- PortPair portPair = (PortPair) event.subject();
- onPortPairDeleted(portPair);
- } else if (VtnRscEvent.Type.PORT_PAIR_UPDATE == event.type()) {
- PortPair portPair = (PortPair) event.subject();
- onPortPairDeleted(portPair);
- onPortPairCreated(portPair);
- } else if (VtnRscEvent.Type.PORT_PAIR_GROUP_PUT == event.type()) {
- PortPairGroup portPairGroup = (PortPairGroup) event.subject();
- onPortPairGroupCreated(portPairGroup);
- } else if (VtnRscEvent.Type.PORT_PAIR_GROUP_DELETE == event.type()) {
- PortPairGroup portPairGroup = (PortPairGroup) event.subject();
- onPortPairGroupDeleted(portPairGroup);
- } else if (VtnRscEvent.Type.PORT_PAIR_GROUP_UPDATE == event.type()) {
- PortPairGroup portPairGroup = (PortPairGroup) event.subject();
- onPortPairGroupDeleted(portPairGroup);
- onPortPairGroupCreated(portPairGroup);
- } else if (VtnRscEvent.Type.FLOW_CLASSIFIER_PUT == event.type()) {
- FlowClassifier flowClassifier = (FlowClassifier) event.subject();
- onFlowClassifierCreated(flowClassifier);
- } else if (VtnRscEvent.Type.FLOW_CLASSIFIER_DELETE == event.type()) {
- FlowClassifier flowClassifier = (FlowClassifier) event.subject();
- onFlowClassifierDeleted(flowClassifier);
- } else if (VtnRscEvent.Type.FLOW_CLASSIFIER_UPDATE == event.type()) {
- FlowClassifier flowClassifier = (FlowClassifier) event.subject();
- onFlowClassifierDeleted(flowClassifier);
- onFlowClassifierCreated(flowClassifier);
- } else if (VtnRscEvent.Type.PORT_CHAIN_PUT == event.type()) {
- PortChain portChain = (PortChain) event.subject();
- onPortChainCreated(portChain);
- } else if (VtnRscEvent.Type.PORT_CHAIN_DELETE == event.type()) {
- PortChain portChain = (PortChain) event.subject();
- onPortChainDeleted(portChain);
- } else if (VtnRscEvent.Type.PORT_CHAIN_UPDATE == event.type()) {
- PortChain portChain = (PortChain) event.subject();
- onPortChainDeleted(portChain);
- onPortChainCreated(portChain);
- }
- }
- }
-
- @Override
- public void onPortPairCreated(PortPair portPair) {
- log.debug("onPortPairCreated");
- // TODO: Modify forwarding rule on port-pair creation.
- }
-
- @Override
- public void onPortPairDeleted(PortPair portPair) {
- log.debug("onPortPairDeleted");
- // TODO: Modify forwarding rule on port-pair deletion.
- }
-
- @Override
- public void onPortPairGroupCreated(PortPairGroup portPairGroup) {
- log.debug("onPortPairGroupCreated");
- // TODO: Modify forwarding rule on port-pair-group creation.
- }
-
- @Override
- public void onPortPairGroupDeleted(PortPairGroup portPairGroup) {
- log.debug("onPortPairGroupDeleted");
- // TODO: Modify forwarding rule on port-pair-group deletion.
- }
-
- @Override
- public void onFlowClassifierCreated(FlowClassifier flowClassifier) {
- log.debug("onFlowClassifierCreated");
- // TODO: Modify forwarding rule on flow-classifier creation.
- }
-
- @Override
- public void onFlowClassifierDeleted(FlowClassifier flowClassifier) {
- log.debug("onFlowClassifierDeleted");
- // TODO: Modify forwarding rule on flow-classifier deletion.
- }
-
- @Override
- public void onPortChainCreated(PortChain portChain) {
- log.debug("onPortChainCreated");
- //TODO: Apply forwarding rule on port-chain creation.
- }
-
- @Override
- public void onPortChainDeleted(PortChain portChain) {
- log.debug("onPortChainDeleted");
- //TODO: Apply forwarding rule on port-chain deletion.
- }
-}
diff --git a/framework/src/onos/apps/vtn/sfcmgr/src/main/java/org/onosproject/sfc/manager/impl/package-info.java b/framework/src/onos/apps/vtn/sfcmgr/src/main/java/org/onosproject/sfc/manager/impl/package-info.java
deleted file mode 100644
index 7161380a..00000000
--- a/framework/src/onos/apps/vtn/sfcmgr/src/main/java/org/onosproject/sfc/manager/impl/package-info.java
+++ /dev/null
@@ -1,20 +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.
- */
-
-/**
- * SFC Service manager for interacting with SFC.
- */
-package org.onosproject.sfc.manager.impl;
diff --git a/framework/src/onos/apps/vtn/sfcmgr/src/main/java/org/onosproject/sfc/manager/package-info.java b/framework/src/onos/apps/vtn/sfcmgr/src/main/java/org/onosproject/sfc/manager/package-info.java
deleted file mode 100644
index 1dd0f5a0..00000000
--- a/framework/src/onos/apps/vtn/sfcmgr/src/main/java/org/onosproject/sfc/manager/package-info.java
+++ /dev/null
@@ -1,20 +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.
- */
-
-/**
- * Service for interacting with SFC.
- */
-package org.onosproject.sfc.manager;