diff options
author | CNlucius <lukai1@huawei.com> | 2016-09-13 11:40:12 +0800 |
---|---|---|
committer | CNlucius <lukai1@huawei.com> | 2016-09-13 11:41:53 +0800 |
commit | b731e2f1dd0972409b136aebc7b463dd72c9cfad (patch) | |
tree | 5107d7d80c19ad8076c2c97c2b5ef8d1cf3ab903 /framework/src/onos/apps/vtn/vtnrsc/src/main/java/org/onosproject/vtnrsc/tenantnetwork | |
parent | ee93993458266114c29271a481ef9ce7ce621b2a (diff) |
ONOSFW-171
O/S-SFC-ONOS scenario documentation
Change-Id: I51ae1cf736ea24ab6680f8edca1b2bf5dd598365
Signed-off-by: CNlucius <lukai1@huawei.com>
Diffstat (limited to 'framework/src/onos/apps/vtn/vtnrsc/src/main/java/org/onosproject/vtnrsc/tenantnetwork')
4 files changed, 0 insertions, 287 deletions
diff --git a/framework/src/onos/apps/vtn/vtnrsc/src/main/java/org/onosproject/vtnrsc/tenantnetwork/TenantNetworkService.java b/framework/src/onos/apps/vtn/vtnrsc/src/main/java/org/onosproject/vtnrsc/tenantnetwork/TenantNetworkService.java deleted file mode 100644 index e246cc4e..00000000 --- a/framework/src/onos/apps/vtn/vtnrsc/src/main/java/org/onosproject/vtnrsc/tenantnetwork/TenantNetworkService.java +++ /dev/null @@ -1,80 +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.vtnrsc.tenantnetwork; - -import org.onosproject.vtnrsc.TenantNetwork; -import org.onosproject.vtnrsc.TenantNetworkId; - -/** - * Service for interacting with the inventory of tenantNetwork. - */ -public interface TenantNetworkService { - - /** - * Returns if the tenantNetwork is existed. - * - * @param networkId tenantNetwork identifier - * @return true or false if one with the given identifier exists. - */ - boolean exists(TenantNetworkId networkId); - - /** - * Returns the number of tenantNetwork known to the system. - * - * @return number of tenantNetwork. - */ - int getNetworkCount(); - - /** - * Returns an iterable collection of the currently known tenantNetwork. - * - * @return collection of tenantNetwork. - */ - Iterable<TenantNetwork> getNetworks(); - - /** - * Returns the tenantNetwork with the identifier. - * - * @param networkId TenantNetwork identifier - * @return TenantNetwork or null if one with the given identifier is not - * known. - */ - TenantNetwork getNetwork(TenantNetworkId networkId); - - /** - * Creates tenantNetworks by networks. - * - * @param networks the collection of tenantNetworks - * @return true if all given identifiers created successfully. - */ - boolean createNetworks(Iterable<TenantNetwork> networks); - - /** - * Updates tenantNetworks by tenantNetworks. - * - * @param networks the collection of tenantNetworks - * @return true if all given identifiers updated successfully. - */ - boolean updateNetworks(Iterable<TenantNetwork> networks); - - /** - * Deletes tenantNetwork by tenantNetworkIds. - * - * @param networksIds the collection of tenantNetworkIds - * @return true if the specified tenantNetworks deleted successfully. - */ - boolean removeNetworks(Iterable<TenantNetworkId> networksIds); -} diff --git a/framework/src/onos/apps/vtn/vtnrsc/src/main/java/org/onosproject/vtnrsc/tenantnetwork/impl/TenantNetworkManager.java b/framework/src/onos/apps/vtn/vtnrsc/src/main/java/org/onosproject/vtnrsc/tenantnetwork/impl/TenantNetworkManager.java deleted file mode 100644 index 0dfc99e2..00000000 --- a/framework/src/onos/apps/vtn/vtnrsc/src/main/java/org/onosproject/vtnrsc/tenantnetwork/impl/TenantNetworkManager.java +++ /dev/null @@ -1,167 +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.vtnrsc.tenantnetwork.impl; - -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.onosproject.core.ApplicationId; -import org.onosproject.core.CoreService; -import org.onosproject.store.serializers.KryoNamespaces; -import org.onosproject.store.service.Serializer; -import org.onosproject.store.service.StorageService; -import org.onosproject.vtnrsc.DefaultTenantNetwork; -import org.onosproject.vtnrsc.PhysicalNetwork; -import org.onosproject.vtnrsc.SegmentationId; -import org.onosproject.vtnrsc.TenantId; -import org.onosproject.vtnrsc.TenantNetwork; -import org.onosproject.vtnrsc.TenantNetworkId; -import org.onosproject.vtnrsc.tenantnetwork.TenantNetworkService; -import org.slf4j.Logger; - -import java.util.Arrays; -import java.util.Collections; -import java.util.Map; - -import static com.google.common.base.Preconditions.checkNotNull; -import static org.slf4j.LoggerFactory.getLogger; - -/** - * Provides implementation of the tenantNetworkService. - */ -@Component(immediate = true) -@Service -public class TenantNetworkManager implements TenantNetworkService { - - private static final String NETWORK_ID_NULL = "Network ID cannot be null"; - private static final String NETWORK_NOT_NULL = "Network ID cannot be null"; - private static final String TENANTNETWORK = "vtn-tenant-network-store"; - private static final String VTNRSC_APP = "org.onosproject.vtnrsc"; - - protected Map<TenantNetworkId, TenantNetwork> networkIdAsKeyStore; - protected ApplicationId appId; - - private final Logger log = getLogger(getClass()); - - @Reference(cardinality = ReferenceCardinality.MANDATORY_UNARY) - protected StorageService storageService; - - @Reference(cardinality = ReferenceCardinality.MANDATORY_UNARY) - protected CoreService coreService; - - - @Activate - public void activate() { - - appId = coreService.registerApplication(VTNRSC_APP); - - networkIdAsKeyStore = storageService.<TenantNetworkId, TenantNetwork>consistentMapBuilder() - .withName(TENANTNETWORK) - .withApplicationId(appId) - .withPurgeOnUninstall() - .withSerializer(Serializer.using(Arrays.asList(KryoNamespaces.API), - TenantNetworkId.class, - DefaultTenantNetwork.class, - TenantNetwork.State.class, - TenantId.class, - TenantNetwork.Type.class, - PhysicalNetwork.class, - SegmentationId.class)) - .build().asJavaMap(); - - log.info("Started"); - } - - @Deactivate - public void deactivate() { - log.info("Stopped"); - } - - @Override - public boolean exists(TenantNetworkId networkId) { - checkNotNull(networkId, NETWORK_ID_NULL); - return networkIdAsKeyStore.containsKey(networkId); - } - - @Override - public int getNetworkCount() { - return networkIdAsKeyStore.size(); - } - - @Override - public Iterable<TenantNetwork> getNetworks() { - return Collections.unmodifiableCollection(networkIdAsKeyStore.values()); - } - - @Override - public TenantNetwork getNetwork(TenantNetworkId networkId) { - checkNotNull(networkId, NETWORK_ID_NULL); - return networkIdAsKeyStore.get(networkId); - } - - @Override - public boolean createNetworks(Iterable<TenantNetwork> networks) { - checkNotNull(networks, NETWORK_NOT_NULL); - for (TenantNetwork network : networks) { - networkIdAsKeyStore.put(network.id(), network); - if (!networkIdAsKeyStore.containsKey(network.id())) { - log.debug("The tenantNetwork is created failed which identifier was {}", network.id() - .toString()); - return false; - } - } - return true; - } - - @Override - public boolean updateNetworks(Iterable<TenantNetwork> networks) { - checkNotNull(networks, NETWORK_NOT_NULL); - for (TenantNetwork network : networks) { - if (!networkIdAsKeyStore.containsKey(network.id())) { - log.debug("The tenantNetwork is not exist whose identifier was {} ", - network.id().toString()); - return false; - } - - networkIdAsKeyStore.put(network.id(), network); - - if (!network.equals(networkIdAsKeyStore.get(network.id()))) { - log.debug("The tenantNetwork is updated failed whose identifier was {} ", - network.id().toString()); - return false; - } - - } - return true; - } - - @Override - public boolean removeNetworks(Iterable<TenantNetworkId> networkIds) { - checkNotNull(networkIds, NETWORK_NOT_NULL); - for (TenantNetworkId networkId : networkIds) { - networkIdAsKeyStore.remove(networkId); - if (networkIdAsKeyStore.containsKey(networkId)) { - log.debug("The tenantNetwork is removed failed whose identifier was {}", - networkId.toString()); - return false; - } - } - return true; - } -} diff --git a/framework/src/onos/apps/vtn/vtnrsc/src/main/java/org/onosproject/vtnrsc/tenantnetwork/impl/package-info.java b/framework/src/onos/apps/vtn/vtnrsc/src/main/java/org/onosproject/vtnrsc/tenantnetwork/impl/package-info.java deleted file mode 100644 index f381fda6..00000000 --- a/framework/src/onos/apps/vtn/vtnrsc/src/main/java/org/onosproject/vtnrsc/tenantnetwork/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. - */ - -/** - * Implementation of service for interacting with the inventory of tenant networks. - */ -package org.onosproject.vtnrsc.tenantnetwork.impl; diff --git a/framework/src/onos/apps/vtn/vtnrsc/src/main/java/org/onosproject/vtnrsc/tenantnetwork/package-info.java b/framework/src/onos/apps/vtn/vtnrsc/src/main/java/org/onosproject/vtnrsc/tenantnetwork/package-info.java deleted file mode 100644 index 1489c973..00000000 --- a/framework/src/onos/apps/vtn/vtnrsc/src/main/java/org/onosproject/vtnrsc/tenantnetwork/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 the inventory of tenant networks. - */ -package org.onosproject.vtnrsc.tenantnetwork; |