You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cloudstack.apache.org by hu...@apache.org on 2012/07/30 15:18:13 UTC

[3/3] git commit: When cleaning up or setting ip associations the NiciraNvpElement should be ignored. Implemented a generic ConnectivyProvider interface work around the dependency from server to nicira-plugin.

When cleaning up or setting ip associations the NiciraNvpElement should be ignored.
Implemented a generic ConnectivyProvider interface work around the dependency from server to nicira-plugin.


Project: http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/commit/236f63fd
Tree: http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/tree/236f63fd
Diff: http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/diff/236f63fd

Branch: refs/heads/master
Commit: 236f63fd34a66eb6025731bad4def4c6f0f1ab5f
Parents: 969b94e
Author: Hugo Trippaers <ht...@schubergphilis.com>
Authored: Mon Jul 30 15:07:03 2012 +0200
Committer: Hugo Trippaers <ht...@schubergphilis.com>
Committed: Mon Jul 30 15:17:35 2012 +0200

----------------------------------------------------------------------
 .../network/element/ConnectivityProvider.java      |   21 +++++++++++++++
 .../cloud/network/element/NiciraNvpElement.java    |    2 +-
 .../src/com/cloud/network/NetworkManagerImpl.java  |    5 +++
 3 files changed, 27 insertions(+), 1 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/236f63fd/api/src/com/cloud/network/element/ConnectivityProvider.java
----------------------------------------------------------------------
diff --git a/api/src/com/cloud/network/element/ConnectivityProvider.java b/api/src/com/cloud/network/element/ConnectivityProvider.java
new file mode 100644
index 0000000..81cac03
--- /dev/null
+++ b/api/src/com/cloud/network/element/ConnectivityProvider.java
@@ -0,0 +1,21 @@
+// Licensed to the Apache Software Foundation (ASF) under one
+// or more contributor license agreements.  See the NOTICE file
+// distributed with this work for additional information
+// regarding copyright ownership.  The ASF licenses this file
+// to you 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 com.cloud.network.element;
+
+public interface ConnectivityProvider extends NetworkElement {
+
+}

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/236f63fd/plugins/network-elements/nicira-nvp/src/com/cloud/network/element/NiciraNvpElement.java
----------------------------------------------------------------------
diff --git a/plugins/network-elements/nicira-nvp/src/com/cloud/network/element/NiciraNvpElement.java b/plugins/network-elements/nicira-nvp/src/com/cloud/network/element/NiciraNvpElement.java
index ba4b961..ff9d020 100644
--- a/plugins/network-elements/nicira-nvp/src/com/cloud/network/element/NiciraNvpElement.java
+++ b/plugins/network-elements/nicira-nvp/src/com/cloud/network/element/NiciraNvpElement.java
@@ -90,7 +90,7 @@ import com.cloud.vm.VirtualMachineProfile;
 import com.cloud.vm.dao.NicDao;
 
 @Local(value = NetworkElement.class)
-public class NiciraNvpElement extends AdapterBase implements NetworkElement, NiciraNvpElementService, ResourceStateAdapter {
+public class NiciraNvpElement extends AdapterBase implements ConnectivityProvider, NiciraNvpElementService, ResourceStateAdapter {
     private static final Logger s_logger = Logger.getLogger(NiciraNvpElement.class);
     
     private static final Map<Service, Map<Capability, String>> capabilities = setCapabilities();

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/236f63fd/server/src/com/cloud/network/NetworkManagerImpl.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/network/NetworkManagerImpl.java b/server/src/com/cloud/network/NetworkManagerImpl.java
index 83acc9b..2556588 100755
--- a/server/src/com/cloud/network/NetworkManagerImpl.java
+++ b/server/src/com/cloud/network/NetworkManagerImpl.java
@@ -126,6 +126,7 @@ import com.cloud.network.dao.PhysicalNetworkServiceProviderDao;
 import com.cloud.network.dao.PhysicalNetworkServiceProviderVO;
 import com.cloud.network.dao.PhysicalNetworkTrafficTypeDao;
 import com.cloud.network.dao.PhysicalNetworkTrafficTypeVO;
+import com.cloud.network.element.ConnectivityProvider;
 import com.cloud.network.element.DhcpServiceProvider;
 import com.cloud.network.element.FirewallServiceProvider;
 import com.cloud.network.element.IpDeployer;
@@ -913,6 +914,10 @@ public class NetworkManagerImpl implements NetworkManager, NetworkService, Manag
                     deployer = ((PortForwardingServiceProvider) element).getIpDeployer(network);
                 } else if (element instanceof RemoteAccessVPNServiceProvider) {
                     deployer = ((RemoteAccessVPNServiceProvider) element).getIpDeployer(network);
+                } else if (element instanceof ConnectivityProvider) {
+                    // Nothing to do
+                    s_logger.debug("ConnectivityProvider " + element.getClass().getSimpleName() + " has no ip associations");
+                    continue;
                 } else {
                     throw new CloudRuntimeException("Fail to get ip deployer for element: " + element);
                 }