You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cloudstack.apache.org by ch...@apache.org on 2013/01/10 00:50:01 UTC

[2/16] git commit: Network-refactor: move readonly interface NetworkModel into api project so that plugins can stop depending on the server project Network-refactor: accidentally injected NetworkModel twice (revert one of them)

Network-refactor: move readonly interface NetworkModel into api project so that plugins can stop depending on the server project
Network-refactor: accidentally injected NetworkModel twice (revert one of them)

Signed-off-by: Chiradeep Vittal <ch...@apache.org>


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

Branch: refs/heads/network-refactor
Commit: 0c3001530ff85adb37205693727498953f13cc8c
Parents: 5042642
Author: Chiradeep Vittal <ch...@apache.org>
Authored: Tue Jan 8 14:14:30 2013 -0800
Committer: Chiradeep Vittal <ch...@apache.org>
Committed: Wed Jan 9 15:49:01 2013 -0800

----------------------------------------------------------------------
 api/src/com/cloud/network/NetworkModel.java        |  245 +++++++++++++++
 .../network/guru/NiciraNvpGuestNetworkGuru.java    |    3 +-
 server/src/com/cloud/network/NetworkModel.java     |  245 ---------------
 3 files changed, 246 insertions(+), 247 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/0c300153/api/src/com/cloud/network/NetworkModel.java
----------------------------------------------------------------------
diff --git a/api/src/com/cloud/network/NetworkModel.java b/api/src/com/cloud/network/NetworkModel.java
new file mode 100644
index 0000000..f53cfbd
--- /dev/null
+++ b/api/src/com/cloud/network/NetworkModel.java
@@ -0,0 +1,245 @@
+// 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;
+
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+
+import com.cloud.dc.Vlan;
+import com.cloud.exception.InsufficientAddressCapacityException;
+import com.cloud.hypervisor.Hypervisor.HypervisorType;
+import com.cloud.network.Network.Capability;
+import com.cloud.network.Network.Provider;
+import com.cloud.network.Network.Service;
+import com.cloud.network.Networks.TrafficType;
+import com.cloud.network.element.NetworkElement;
+import com.cloud.network.element.UserDataServiceProvider;
+import com.cloud.network.rules.FirewallRule;
+import com.cloud.offering.NetworkOffering;
+import com.cloud.user.Account;
+import com.cloud.vm.Nic;
+import com.cloud.vm.NicProfile;
+import com.cloud.vm.VirtualMachine;
+
+
+public interface NetworkModel {
+
+    /**
+     * Lists IP addresses that belong to VirtualNetwork VLANs
+     * 
+     * @param accountId
+     *            - account that the IP address should belong to
+     * @param associatedNetworkId
+     *            TODO
+     * @param sourceNat
+     *            - (optional) true if the IP address should be a source NAT address
+     * @return - list of IP addresses
+     */
+    List<? extends IpAddress> listPublicIpsAssignedToGuestNtwk(long accountId, long associatedNetworkId, Boolean sourceNat);
+
+    List<? extends NetworkOffering> getSystemAccountNetworkOfferings(String... offeringNames);
+
+    List<? extends Nic> getNics(long vmId);
+
+    String getNextAvailableMacAddressInNetwork(long networkConfigurationId) throws InsufficientAddressCapacityException;
+
+    boolean validateRule(FirewallRule rule);
+
+    PublicIpAddress getPublicIpAddress(long ipAddressId);
+
+    List<? extends Vlan> listPodVlans(long podId);
+
+    List<? extends Network> listNetworksUsedByVm(long vmId, boolean isSystem);
+
+    Nic getNicInNetwork(long vmId, long networkId);
+
+    List<? extends Nic> getNicsForTraffic(long vmId, TrafficType type);
+
+    Network getDefaultNetworkForVm(long vmId);
+
+    Nic getDefaultNic(long vmId);
+
+    UserDataServiceProvider getUserDataUpdateProvider(Network network);
+
+    boolean networkIsConfiguredForExternalNetworking(long zoneId, long networkId);
+
+    Map<Capability, String> getNetworkServiceCapabilities(long networkId, Service service);
+
+    boolean areServicesSupportedByNetworkOffering(long networkOfferingId, Service... services);
+
+    Network getNetworkWithSecurityGroupEnabled(Long zoneId);
+
+    String getIpOfNetworkElementInVirtualNetwork(long accountId, long dataCenterId);
+
+    List<? extends Network> listNetworksForAccount(long accountId, long zoneId, Network.GuestType type);
+
+    List<? extends Network> listAllNetworksInAllZonesByType(Network.GuestType type);
+
+    String getGlobalGuestDomainSuffix();
+
+    String getStartIpAddress(long networkId);
+
+    String getIpInNetwork(long vmId, long networkId);
+
+    String getIpInNetworkIncludingRemoved(long vmId, long networkId);
+
+    Long getPodIdForVlan(long vlanDbId);
+
+    List<Long> listNetworkOfferingsForUpgrade(long networkId);
+
+    boolean isSecurityGroupSupportedInNetwork(Network network);
+
+    boolean isProviderSupportServiceInNetwork(long networkId, Service service, Provider provider);
+
+    boolean isProviderEnabledInPhysicalNetwork(long physicalNetowrkId, String providerName);
+
+    String getNetworkTag(HypervisorType hType, Network network);
+
+    List<Service> getElementServices(Provider provider);
+
+    boolean canElementEnableIndividualServices(Provider provider);
+
+    boolean areServicesSupportedInNetwork(long networkId, Service... services);
+
+    boolean isNetworkSystem(Network network);
+
+    Map<Capability, String> getNetworkOfferingServiceCapabilities(NetworkOffering offering, Service service);
+
+    Long getPhysicalNetworkId(Network network);
+
+    boolean getAllowSubdomainAccessGlobal();
+
+    boolean isProviderForNetwork(Provider provider, long networkId);
+
+    boolean isProviderForNetworkOffering(Provider provider, long networkOfferingId);
+
+    void canProviderSupportServices(Map<Provider, Set<Service>> providersMap);
+
+    List<PhysicalNetworkSetupInfo> getPhysicalNetworkInfo(long dcId, HypervisorType hypervisorType);
+
+    boolean canAddDefaultSecurityGroup();
+
+    List<Service> listNetworkOfferingServices(long networkOfferingId);
+
+    boolean areServicesEnabledInZone(long zoneId, NetworkOffering offering, List<Service> services);
+
+    Map<PublicIpAddress, Set<Service>> getIpToServices(List<? extends PublicIpAddress> publicIps, boolean rulesRevoked,
+            boolean includingFirewall);
+
+    Map<Provider, ArrayList<PublicIpAddress>> getProviderToIpList(Network network, Map<PublicIpAddress, Set<Service>> ipToServices);
+
+    boolean checkIpForService(IpAddress ip, Service service, Long networkId);
+
+    void checkCapabilityForProvider(Set<Provider> providers, Service service, Capability cap, String capValue);
+
+    Provider getDefaultUniqueProviderForService(String serviceName);
+
+    void checkNetworkPermissions(Account owner, Network network);
+
+    String getDefaultManagementTrafficLabel(long zoneId, HypervisorType hypervisorType);
+
+    String getDefaultStorageTrafficLabel(long zoneId, HypervisorType hypervisorType);
+
+    String getDefaultPublicTrafficLabel(long dcId, HypervisorType vmware);
+
+    String getDefaultGuestTrafficLabel(long dcId, HypervisorType vmware);
+
+    /**
+     * @param providerName
+     * @return
+     */
+    NetworkElement getElementImplementingProvider(String providerName);
+
+    /**
+     * @param accountId
+     * @param zoneId
+     * @return
+     */
+    String getAccountNetworkDomain(long accountId, long zoneId);
+
+    /**
+     * @return
+     */
+    String getDefaultNetworkDomain();
+
+    /**
+     * @param ntwkOffId
+     * @return
+     */
+    List<Provider> getNtwkOffDistinctProviders(long ntwkOffId);
+
+    /**
+     * @param accountId
+     * @param dcId
+     * @param sourceNat
+     * @return
+     */
+    List<? extends IpAddress> listPublicIpsAssignedToAccount(long accountId, long dcId, Boolean sourceNat);
+
+    /**
+     * @param zoneId
+     * @param trafficType
+     * @return
+     */
+    List<? extends PhysicalNetwork> getPhysicalNtwksSupportingTrafficType(long zoneId, TrafficType trafficType);
+
+    /**
+     * @param guestNic
+     * @return
+     */
+    boolean isPrivateGateway(Nic guestNic);
+
+    Map<Service, Map<Capability, String>> getNetworkCapabilities(long networkId);
+
+    Network getSystemNetworkByZoneAndTrafficType(long zoneId, TrafficType trafficType);
+
+    Long getDedicatedNetworkDomain(long networkId);
+
+    Map<Service, Set<Provider>> getNetworkOfferingServiceProvidersMap(long networkOfferingId);
+
+    List<? extends Provider> listSupportedNetworkServiceProviders(String serviceName);
+
+    List<? extends Network> listNetworksByVpc(long vpcId);
+
+    boolean canUseForDeploy(Network network);
+
+    Network getExclusiveGuestNetwork(long zoneId);
+
+    long findPhysicalNetworkId(long zoneId, String tag, TrafficType trafficType);
+
+    Integer getNetworkRate(long networkId, Long vmId);
+
+    boolean isVmPartOfNetwork(long vmId, long ntwkId);
+
+    PhysicalNetwork getDefaultPhysicalNetworkByZoneAndTrafficType(long zoneId, TrafficType trafficType);
+
+    Network getNetwork(long networkId);
+
+    IpAddress getIp(long sourceIpAddressId);
+
+    boolean isNetworkAvailableInDomain(long networkId, long domainId);
+
+    NicProfile getNicProfile(VirtualMachine vm, long networkId, String broadcastUri);
+
+    Set<Long> getAvailableIps(Network network, String requestedIp);
+
+    String getDomainNetworkDomain(long domainId, long zoneId);
+
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/0c300153/plugins/network-elements/nicira-nvp/src/com/cloud/network/guru/NiciraNvpGuestNetworkGuru.java
----------------------------------------------------------------------
diff --git a/plugins/network-elements/nicira-nvp/src/com/cloud/network/guru/NiciraNvpGuestNetworkGuru.java b/plugins/network-elements/nicira-nvp/src/com/cloud/network/guru/NiciraNvpGuestNetworkGuru.java
index 02916f9..d7b8cfb 100644
--- a/plugins/network-elements/nicira-nvp/src/com/cloud/network/guru/NiciraNvpGuestNetworkGuru.java
+++ b/plugins/network-elements/nicira-nvp/src/com/cloud/network/guru/NiciraNvpGuestNetworkGuru.java
@@ -70,8 +70,7 @@ import com.cloud.vm.VirtualMachineProfile;
 public class NiciraNvpGuestNetworkGuru extends GuestNetworkGuru {
     private static final Logger s_logger = Logger.getLogger(NiciraNvpGuestNetworkGuru.class);
     
-    @Inject 
-    NetworkModel _externalNetworkManager;
+   
     @Inject
     NetworkModel _networkModel;
     @Inject

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/0c300153/server/src/com/cloud/network/NetworkModel.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/network/NetworkModel.java b/server/src/com/cloud/network/NetworkModel.java
deleted file mode 100644
index f53cfbd..0000000
--- a/server/src/com/cloud/network/NetworkModel.java
+++ /dev/null
@@ -1,245 +0,0 @@
-// 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;
-
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-
-import com.cloud.dc.Vlan;
-import com.cloud.exception.InsufficientAddressCapacityException;
-import com.cloud.hypervisor.Hypervisor.HypervisorType;
-import com.cloud.network.Network.Capability;
-import com.cloud.network.Network.Provider;
-import com.cloud.network.Network.Service;
-import com.cloud.network.Networks.TrafficType;
-import com.cloud.network.element.NetworkElement;
-import com.cloud.network.element.UserDataServiceProvider;
-import com.cloud.network.rules.FirewallRule;
-import com.cloud.offering.NetworkOffering;
-import com.cloud.user.Account;
-import com.cloud.vm.Nic;
-import com.cloud.vm.NicProfile;
-import com.cloud.vm.VirtualMachine;
-
-
-public interface NetworkModel {
-
-    /**
-     * Lists IP addresses that belong to VirtualNetwork VLANs
-     * 
-     * @param accountId
-     *            - account that the IP address should belong to
-     * @param associatedNetworkId
-     *            TODO
-     * @param sourceNat
-     *            - (optional) true if the IP address should be a source NAT address
-     * @return - list of IP addresses
-     */
-    List<? extends IpAddress> listPublicIpsAssignedToGuestNtwk(long accountId, long associatedNetworkId, Boolean sourceNat);
-
-    List<? extends NetworkOffering> getSystemAccountNetworkOfferings(String... offeringNames);
-
-    List<? extends Nic> getNics(long vmId);
-
-    String getNextAvailableMacAddressInNetwork(long networkConfigurationId) throws InsufficientAddressCapacityException;
-
-    boolean validateRule(FirewallRule rule);
-
-    PublicIpAddress getPublicIpAddress(long ipAddressId);
-
-    List<? extends Vlan> listPodVlans(long podId);
-
-    List<? extends Network> listNetworksUsedByVm(long vmId, boolean isSystem);
-
-    Nic getNicInNetwork(long vmId, long networkId);
-
-    List<? extends Nic> getNicsForTraffic(long vmId, TrafficType type);
-
-    Network getDefaultNetworkForVm(long vmId);
-
-    Nic getDefaultNic(long vmId);
-
-    UserDataServiceProvider getUserDataUpdateProvider(Network network);
-
-    boolean networkIsConfiguredForExternalNetworking(long zoneId, long networkId);
-
-    Map<Capability, String> getNetworkServiceCapabilities(long networkId, Service service);
-
-    boolean areServicesSupportedByNetworkOffering(long networkOfferingId, Service... services);
-
-    Network getNetworkWithSecurityGroupEnabled(Long zoneId);
-
-    String getIpOfNetworkElementInVirtualNetwork(long accountId, long dataCenterId);
-
-    List<? extends Network> listNetworksForAccount(long accountId, long zoneId, Network.GuestType type);
-
-    List<? extends Network> listAllNetworksInAllZonesByType(Network.GuestType type);
-
-    String getGlobalGuestDomainSuffix();
-
-    String getStartIpAddress(long networkId);
-
-    String getIpInNetwork(long vmId, long networkId);
-
-    String getIpInNetworkIncludingRemoved(long vmId, long networkId);
-
-    Long getPodIdForVlan(long vlanDbId);
-
-    List<Long> listNetworkOfferingsForUpgrade(long networkId);
-
-    boolean isSecurityGroupSupportedInNetwork(Network network);
-
-    boolean isProviderSupportServiceInNetwork(long networkId, Service service, Provider provider);
-
-    boolean isProviderEnabledInPhysicalNetwork(long physicalNetowrkId, String providerName);
-
-    String getNetworkTag(HypervisorType hType, Network network);
-
-    List<Service> getElementServices(Provider provider);
-
-    boolean canElementEnableIndividualServices(Provider provider);
-
-    boolean areServicesSupportedInNetwork(long networkId, Service... services);
-
-    boolean isNetworkSystem(Network network);
-
-    Map<Capability, String> getNetworkOfferingServiceCapabilities(NetworkOffering offering, Service service);
-
-    Long getPhysicalNetworkId(Network network);
-
-    boolean getAllowSubdomainAccessGlobal();
-
-    boolean isProviderForNetwork(Provider provider, long networkId);
-
-    boolean isProviderForNetworkOffering(Provider provider, long networkOfferingId);
-
-    void canProviderSupportServices(Map<Provider, Set<Service>> providersMap);
-
-    List<PhysicalNetworkSetupInfo> getPhysicalNetworkInfo(long dcId, HypervisorType hypervisorType);
-
-    boolean canAddDefaultSecurityGroup();
-
-    List<Service> listNetworkOfferingServices(long networkOfferingId);
-
-    boolean areServicesEnabledInZone(long zoneId, NetworkOffering offering, List<Service> services);
-
-    Map<PublicIpAddress, Set<Service>> getIpToServices(List<? extends PublicIpAddress> publicIps, boolean rulesRevoked,
-            boolean includingFirewall);
-
-    Map<Provider, ArrayList<PublicIpAddress>> getProviderToIpList(Network network, Map<PublicIpAddress, Set<Service>> ipToServices);
-
-    boolean checkIpForService(IpAddress ip, Service service, Long networkId);
-
-    void checkCapabilityForProvider(Set<Provider> providers, Service service, Capability cap, String capValue);
-
-    Provider getDefaultUniqueProviderForService(String serviceName);
-
-    void checkNetworkPermissions(Account owner, Network network);
-
-    String getDefaultManagementTrafficLabel(long zoneId, HypervisorType hypervisorType);
-
-    String getDefaultStorageTrafficLabel(long zoneId, HypervisorType hypervisorType);
-
-    String getDefaultPublicTrafficLabel(long dcId, HypervisorType vmware);
-
-    String getDefaultGuestTrafficLabel(long dcId, HypervisorType vmware);
-
-    /**
-     * @param providerName
-     * @return
-     */
-    NetworkElement getElementImplementingProvider(String providerName);
-
-    /**
-     * @param accountId
-     * @param zoneId
-     * @return
-     */
-    String getAccountNetworkDomain(long accountId, long zoneId);
-
-    /**
-     * @return
-     */
-    String getDefaultNetworkDomain();
-
-    /**
-     * @param ntwkOffId
-     * @return
-     */
-    List<Provider> getNtwkOffDistinctProviders(long ntwkOffId);
-
-    /**
-     * @param accountId
-     * @param dcId
-     * @param sourceNat
-     * @return
-     */
-    List<? extends IpAddress> listPublicIpsAssignedToAccount(long accountId, long dcId, Boolean sourceNat);
-
-    /**
-     * @param zoneId
-     * @param trafficType
-     * @return
-     */
-    List<? extends PhysicalNetwork> getPhysicalNtwksSupportingTrafficType(long zoneId, TrafficType trafficType);
-
-    /**
-     * @param guestNic
-     * @return
-     */
-    boolean isPrivateGateway(Nic guestNic);
-
-    Map<Service, Map<Capability, String>> getNetworkCapabilities(long networkId);
-
-    Network getSystemNetworkByZoneAndTrafficType(long zoneId, TrafficType trafficType);
-
-    Long getDedicatedNetworkDomain(long networkId);
-
-    Map<Service, Set<Provider>> getNetworkOfferingServiceProvidersMap(long networkOfferingId);
-
-    List<? extends Provider> listSupportedNetworkServiceProviders(String serviceName);
-
-    List<? extends Network> listNetworksByVpc(long vpcId);
-
-    boolean canUseForDeploy(Network network);
-
-    Network getExclusiveGuestNetwork(long zoneId);
-
-    long findPhysicalNetworkId(long zoneId, String tag, TrafficType trafficType);
-
-    Integer getNetworkRate(long networkId, Long vmId);
-
-    boolean isVmPartOfNetwork(long vmId, long ntwkId);
-
-    PhysicalNetwork getDefaultPhysicalNetworkByZoneAndTrafficType(long zoneId, TrafficType trafficType);
-
-    Network getNetwork(long networkId);
-
-    IpAddress getIp(long sourceIpAddressId);
-
-    boolean isNetworkAvailableInDomain(long networkId, long domainId);
-
-    NicProfile getNicProfile(VirtualMachine vm, long networkId, String broadcastUri);
-
-    Set<Long> getAvailableIps(Network network, String requestedIp);
-
-    String getDomainNetworkDomain(long domainId, long zoneId);
-
-}
\ No newline at end of file