http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/7bd8bec6/server/test/com/cloud/vpc/MockNetworkModelImpl.java ---------------------------------------------------------------------- diff --cc server/test/com/cloud/vpc/MockNetworkModelImpl.java index 312f9e6,0000000..8097c34 mode 100644,000000..100644 --- a/server/test/com/cloud/vpc/MockNetworkModelImpl.java +++ b/server/test/com/cloud/vpc/MockNetworkModelImpl.java @@@ -1,826 -1,0 +1,832 @@@ +// 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.vpc; + +import java.util.ArrayList; +import java.util.List; +import java.util.Map; +import java.util.Set; + +import javax.ejb.Local; +import javax.inject.Inject; +import javax.naming.ConfigurationException; + +import com.cloud.dc.Vlan; +import com.cloud.exception.InsufficientAddressCapacityException; +import com.cloud.hypervisor.Hypervisor.HypervisorType; +import com.cloud.network.IpAddress; +import com.cloud.network.Network; +import com.cloud.network.Network.Capability; +import com.cloud.network.Network.GuestType; +import com.cloud.network.Network.Provider; +import com.cloud.network.Network.Service; +import com.cloud.network.NetworkModel; +import com.cloud.network.Networks.TrafficType; +import com.cloud.network.PhysicalNetwork; +import com.cloud.network.PhysicalNetworkSetupInfo; +import com.cloud.network.PublicIpAddress; +import com.cloud.network.addr.PublicIp; +import com.cloud.network.dao.IPAddressVO; +import com.cloud.network.dao.NetworkVO; +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.offerings.NetworkOfferingVO; +import com.cloud.offerings.dao.NetworkOfferingServiceMapDao; +import com.cloud.user.Account; +import com.cloud.utils.component.Manager; +import com.cloud.utils.component.ManagerBase; +import com.cloud.vm.Nic; +import com.cloud.vm.NicProfile; +import com.cloud.vm.VirtualMachine; + +@Local(value = {NetworkModel.class}) +public class MockNetworkModelImpl extends ManagerBase implements NetworkModel { + + @Inject + NetworkOfferingServiceMapDao _ntwkOfferingSrvcDao; + /* (non-Javadoc) + * @see com.cloud.utils.component.Manager#configure(java.lang.String, java.util.Map) + */ + @Override + public boolean configure(String name, Map<String, Object> params) throws ConfigurationException { + return true; + } + + /* (non-Javadoc) + * @see com.cloud.utils.component.Manager#start() + */ + @Override + public boolean start() { + return true; + } + + /* (non-Javadoc) + * @see com.cloud.utils.component.Manager#stop() + */ + @Override + public boolean stop() { + return true; + } + + /* (non-Javadoc) + * @see com.cloud.utils.component.Manager#getName() + */ + @Override + public String getName() { + return "MockNetworkModelImpl"; + } + + /* (non-Javadoc) + * @see com.cloud.network.NetworkModel#listPublicIpsAssignedToGuestNtwk(long, long, java.lang.Boolean) + */ + @Override + public List<IPAddressVO> listPublicIpsAssignedToGuestNtwk(long accountId, long associatedNetworkId, + Boolean sourceNat) { + // TODO Auto-generated method stub + return null; + } + + /* (non-Javadoc) + * @see com.cloud.network.NetworkModel#getSystemAccountNetworkOfferings(java.lang.String[]) + */ + @Override + public List<NetworkOfferingVO> getSystemAccountNetworkOfferings(String... offeringNames) { + // TODO Auto-generated method stub + return null; + } + + /* (non-Javadoc) + * @see com.cloud.network.NetworkModel#getNics(long) + */ + @Override + public List<? extends Nic> getNics(long vmId) { + // TODO Auto-generated method stub + return null; + } + + /* (non-Javadoc) + * @see com.cloud.network.NetworkModel#getNextAvailableMacAddressInNetwork(long) + */ + @Override + public String getNextAvailableMacAddressInNetwork(long networkConfigurationId) + throws InsufficientAddressCapacityException { + // TODO Auto-generated method stub + return null; + } + + + + /* (non-Javadoc) + * @see com.cloud.network.NetworkModel#getPublicIpAddress(long) + */ + @Override + public PublicIpAddress getPublicIpAddress(long ipAddressId) { + // TODO Auto-generated method stub + return null; + } + + /* (non-Javadoc) + * @see com.cloud.network.NetworkModel#listPodVlans(long) + */ + @Override + public List<? extends Vlan> listPodVlans(long podId) { + // TODO Auto-generated method stub + return null; + } + + /* (non-Javadoc) + * @see com.cloud.network.NetworkModel#listNetworksUsedByVm(long, boolean) + */ + @Override + public List<NetworkVO> listNetworksUsedByVm(long vmId, boolean isSystem) { + // TODO Auto-generated method stub + return null; + } + + /* (non-Javadoc) + * @see com.cloud.network.NetworkModel#getNicInNetwork(long, long) + */ + @Override + public Nic getNicInNetwork(long vmId, long networkId) { + // TODO Auto-generated method stub + return null; + } + + /* (non-Javadoc) + * @see com.cloud.network.NetworkModel#getNicsForTraffic(long, com.cloud.network.Networks.TrafficType) + */ + @Override + public List<? extends Nic> getNicsForTraffic(long vmId, TrafficType type) { + // TODO Auto-generated method stub + return null; + } + + /* (non-Javadoc) + * @see com.cloud.network.NetworkModel#getDefaultNetworkForVm(long) + */ + @Override + public Network getDefaultNetworkForVm(long vmId) { + // TODO Auto-generated method stub + return null; + } + + /* (non-Javadoc) + * @see com.cloud.network.NetworkModel#getDefaultNic(long) + */ + @Override + public Nic getDefaultNic(long vmId) { + // TODO Auto-generated method stub + return null; + } + + /* (non-Javadoc) + * @see com.cloud.network.NetworkModel#getUserDataUpdateProvider(com.cloud.network.Network) + */ + @Override + public UserDataServiceProvider getUserDataUpdateProvider(Network network) { + // TODO Auto-generated method stub + return null; + } + + /* (non-Javadoc) + * @see com.cloud.network.NetworkModel#networkIsConfiguredForExternalNetworking(long, long) + */ + @Override + public boolean networkIsConfiguredForExternalNetworking(long zoneId, long networkId) { + // TODO Auto-generated method stub + return false; + } + + /* (non-Javadoc) + * @see com.cloud.network.NetworkModel#getNetworkServiceCapabilities(long, com.cloud.network.Network.Service) + */ + @Override + public Map<Capability, String> getNetworkServiceCapabilities(long networkId, Service service) { + // TODO Auto-generated method stub + return null; + } + + /* (non-Javadoc) + * @see com.cloud.network.NetworkModel#areServicesSupportedByNetworkOffering(long, com.cloud.network.Network.Service[]) + */ + @Override + public boolean areServicesSupportedByNetworkOffering(long networkOfferingId, Service... services) { + return (_ntwkOfferingSrvcDao.areServicesSupportedByNetworkOffering(networkOfferingId, services)); + } + + /* (non-Javadoc) + * @see com.cloud.network.NetworkModel#getNetworkWithSecurityGroupEnabled(java.lang.Long) + */ + @Override + public NetworkVO getNetworkWithSecurityGroupEnabled(Long zoneId) { + // TODO Auto-generated method stub + return null; + } + + /* (non-Javadoc) + * @see com.cloud.network.NetworkModel#getIpOfNetworkElementInVirtualNetwork(long, long) + */ + @Override + public String getIpOfNetworkElementInVirtualNetwork(long accountId, long dataCenterId) { + // TODO Auto-generated method stub + return null; + } + + /* (non-Javadoc) + * @see com.cloud.network.NetworkModel#listNetworksForAccount(long, long, com.cloud.network.Network.GuestType) + */ + @Override + public List<NetworkVO> listNetworksForAccount(long accountId, long zoneId, GuestType type) { + // TODO Auto-generated method stub + return null; + } + + /* (non-Javadoc) + * @see com.cloud.network.NetworkModel#listAllNetworksInAllZonesByType(com.cloud.network.Network.GuestType) + */ + @Override + public List<NetworkVO> listAllNetworksInAllZonesByType(GuestType type) { + // TODO Auto-generated method stub + return null; + } + + /* (non-Javadoc) + * @see com.cloud.network.NetworkModel#getGlobalGuestDomainSuffix() + */ + @Override + public String getGlobalGuestDomainSuffix() { + // TODO Auto-generated method stub + return null; + } + + /* (non-Javadoc) + * @see com.cloud.network.NetworkModel#getStartIpAddress(long) + */ + @Override + public String getStartIpAddress(long networkId) { + // TODO Auto-generated method stub + return null; + } + + /* (non-Javadoc) + * @see com.cloud.network.NetworkModel#getIpInNetwork(long, long) + */ + @Override + public String getIpInNetwork(long vmId, long networkId) { + // TODO Auto-generated method stub + return null; + } + + /* (non-Javadoc) + * @see com.cloud.network.NetworkModel#getIpInNetworkIncludingRemoved(long, long) + */ + @Override + public String getIpInNetworkIncludingRemoved(long vmId, long networkId) { + // TODO Auto-generated method stub + return null; + } + + /* (non-Javadoc) + * @see com.cloud.network.NetworkModel#getPodIdForVlan(long) + */ + @Override + public Long getPodIdForVlan(long vlanDbId) { + // TODO Auto-generated method stub + return null; + } + + /* (non-Javadoc) + * @see com.cloud.network.NetworkModel#listNetworkOfferingsForUpgrade(long) + */ + @Override + public List<Long> listNetworkOfferingsForUpgrade(long networkId) { + // TODO Auto-generated method stub + return null; + } + + /* (non-Javadoc) + * @see com.cloud.network.NetworkModel#isSecurityGroupSupportedInNetwork(com.cloud.network.Network) + */ + @Override + public boolean isSecurityGroupSupportedInNetwork(Network network) { + // TODO Auto-generated method stub + return false; + } + + /* (non-Javadoc) + * @see com.cloud.network.NetworkModel#isProviderSupportServiceInNetwork(long, com.cloud.network.Network.Service, com.cloud.network.Network.Provider) + */ + @Override + public boolean isProviderSupportServiceInNetwork(long networkId, Service service, Provider provider) { + // TODO Auto-generated method stub + return false; + } + + /* (non-Javadoc) + * @see com.cloud.network.NetworkModel#isProviderEnabledInPhysicalNetwork(long, java.lang.String) + */ + @Override + public boolean isProviderEnabledInPhysicalNetwork(long physicalNetowrkId, String providerName) { + // TODO Auto-generated method stub + return false; + } + + /* (non-Javadoc) + * @see com.cloud.network.NetworkModel#getNetworkTag(com.cloud.hypervisor.Hypervisor.HypervisorType, com.cloud.network.Network) + */ + @Override + public String getNetworkTag(HypervisorType hType, Network network) { + // TODO Auto-generated method stub + return null; + } + + /* (non-Javadoc) + * @see com.cloud.network.NetworkModel#getElementServices(com.cloud.network.Network.Provider) + */ + @Override + public List<Service> getElementServices(Provider provider) { + // TODO Auto-generated method stub + return null; + } + + /* (non-Javadoc) + * @see com.cloud.network.NetworkModel#canElementEnableIndividualServices(com.cloud.network.Network.Provider) + */ + @Override + public boolean canElementEnableIndividualServices(Provider provider) { + // TODO Auto-generated method stub + return false; + } + + /* (non-Javadoc) + * @see com.cloud.network.NetworkModel#areServicesSupportedInNetwork(long, com.cloud.network.Network.Service[]) + */ + @Override + public boolean areServicesSupportedInNetwork(long networkId, Service... services) { + // TODO Auto-generated method stub + return false; + } + + /* (non-Javadoc) + * @see com.cloud.network.NetworkModel#isNetworkSystem(com.cloud.network.Network) + */ + @Override + public boolean isNetworkSystem(Network network) { + // TODO Auto-generated method stub + return false; + } + + /* (non-Javadoc) + * @see com.cloud.network.NetworkModel#getNetworkOfferingServiceCapabilities(com.cloud.offering.NetworkOffering, com.cloud.network.Network.Service) + */ + @Override + public Map<Capability, String> getNetworkOfferingServiceCapabilities(NetworkOffering offering, Service service) { + // TODO Auto-generated method stub + return null; + } + + /* (non-Javadoc) + * @see com.cloud.network.NetworkModel#getPhysicalNetworkId(com.cloud.network.Network) + */ + @Override + public Long getPhysicalNetworkId(Network network) { + // TODO Auto-generated method stub + return null; + } + + /* (non-Javadoc) + * @see com.cloud.network.NetworkModel#getAllowSubdomainAccessGlobal() + */ + @Override + public boolean getAllowSubdomainAccessGlobal() { + // TODO Auto-generated method stub + return false; + } + + /* (non-Javadoc) + * @see com.cloud.network.NetworkModel#isProviderForNetwork(com.cloud.network.Network.Provider, long) + */ + @Override + public boolean isProviderForNetwork(Provider provider, long networkId) { + // TODO Auto-generated method stub + return false; + } + + /* (non-Javadoc) + * @see com.cloud.network.NetworkModel#isProviderForNetworkOffering(com.cloud.network.Network.Provider, long) + */ + @Override + public boolean isProviderForNetworkOffering(Provider provider, long networkOfferingId) { + // TODO Auto-generated method stub + return false; + } + + /* (non-Javadoc) + * @see com.cloud.network.NetworkModel#canProviderSupportServices(java.util.Map) + */ + @Override + public void canProviderSupportServices(Map<Provider, Set<Service>> providersMap) { + // TODO Auto-generated method stub + + } + + /* (non-Javadoc) + * @see com.cloud.network.NetworkModel#getPhysicalNetworkInfo(long, com.cloud.hypervisor.Hypervisor.HypervisorType) + */ + @Override + public List<PhysicalNetworkSetupInfo> getPhysicalNetworkInfo(long dcId, HypervisorType hypervisorType) { + // TODO Auto-generated method stub + return null; + } + + /* (non-Javadoc) + * @see com.cloud.network.NetworkModel#canAddDefaultSecurityGroup() + */ + @Override + public boolean canAddDefaultSecurityGroup() { + // TODO Auto-generated method stub + return false; + } + + /* (non-Javadoc) + * @see com.cloud.network.NetworkModel#listNetworkOfferingServices(long) + */ + @Override + public List<Service> listNetworkOfferingServices(long networkOfferingId) { + if (networkOfferingId == 2) { + return new ArrayList<Service>(); + } + + List<Service> services = new ArrayList<Service>(); + services.add(Service.SourceNat); + return services; + + } + + /* (non-Javadoc) + * @see com.cloud.network.NetworkModel#areServicesEnabledInZone(long, com.cloud.offering.NetworkOffering, java.util.List) + */ + @Override + public boolean areServicesEnabledInZone(long zoneId, NetworkOffering offering, List<Service> services) { + // TODO Auto-generated method stub + return false; + } + + /* (non-Javadoc) + * @see com.cloud.network.NetworkModel#checkIpForService(com.cloud.network.IPAddressVO, com.cloud.network.Network.Service, java.lang.Long) + */ + @Override + public boolean checkIpForService(IpAddress ip, Service service, Long networkId) { + // TODO Auto-generated method stub + return false; + } + + /* (non-Javadoc) + * @see com.cloud.network.NetworkModel#checkCapabilityForProvider(java.util.Set, com.cloud.network.Network.Service, com.cloud.network.Network.Capability, java.lang.String) + */ + @Override + public void checkCapabilityForProvider(Set<Provider> providers, Service service, Capability cap, String capValue) { + // TODO Auto-generated method stub + + } + + /* (non-Javadoc) + * @see com.cloud.network.NetworkModel#getDefaultUniqueProviderForService(java.lang.String) + */ + @Override + public Provider getDefaultUniqueProviderForService(String serviceName) { + // TODO Auto-generated method stub + return null; + } + + /* (non-Javadoc) + * @see com.cloud.network.NetworkModel#checkNetworkPermissions(com.cloud.user.Account, com.cloud.network.Network) + */ + @Override + public void checkNetworkPermissions(Account owner, Network network) { + // TODO Auto-generated method stub + + } + + /* (non-Javadoc) + * @see com.cloud.network.NetworkModel#getDefaultManagementTrafficLabel(long, com.cloud.hypervisor.Hypervisor.HypervisorType) + */ + @Override + public String getDefaultManagementTrafficLabel(long zoneId, HypervisorType hypervisorType) { + // TODO Auto-generated method stub + return null; + } + + /* (non-Javadoc) + * @see com.cloud.network.NetworkModel#getDefaultStorageTrafficLabel(long, com.cloud.hypervisor.Hypervisor.HypervisorType) + */ + @Override + public String getDefaultStorageTrafficLabel(long zoneId, HypervisorType hypervisorType) { + // TODO Auto-generated method stub + return null; + } + + /* (non-Javadoc) + * @see com.cloud.network.NetworkModel#getDefaultPublicTrafficLabel(long, com.cloud.hypervisor.Hypervisor.HypervisorType) + */ + @Override + public String getDefaultPublicTrafficLabel(long dcId, HypervisorType vmware) { + // TODO Auto-generated method stub + return null; + } + + /* (non-Javadoc) + * @see com.cloud.network.NetworkModel#getDefaultGuestTrafficLabel(long, com.cloud.hypervisor.Hypervisor.HypervisorType) + */ + @Override + public String getDefaultGuestTrafficLabel(long dcId, HypervisorType vmware) { + // TODO Auto-generated method stub + return null; + } + + /* (non-Javadoc) + * @see com.cloud.network.NetworkModel#getElementImplementingProvider(java.lang.String) + */ + @Override + public NetworkElement getElementImplementingProvider(String providerName) { + // TODO Auto-generated method stub + return null; + } + + /* (non-Javadoc) + * @see com.cloud.network.NetworkModel#getAccountNetworkDomain(long, long) + */ + @Override + public String getAccountNetworkDomain(long accountId, long zoneId) { + // TODO Auto-generated method stub + return null; + } + + /* (non-Javadoc) + * @see com.cloud.network.NetworkModel#getDefaultNetworkDomain() + */ + @Override + public String getDefaultNetworkDomain() { + // TODO Auto-generated method stub + return null; + } + + /* (non-Javadoc) + * @see com.cloud.network.NetworkModel#getNtwkOffDistinctProviders(long) + */ + @Override + public List<Provider> getNtwkOffDistinctProviders(long ntwkOffId) { + return new ArrayList<Provider>(); + } + + /* (non-Javadoc) + * @see com.cloud.network.NetworkModel#listPublicIpsAssignedToAccount(long, long, java.lang.Boolean) + */ + @Override + public List<IPAddressVO> listPublicIpsAssignedToAccount(long accountId, long dcId, Boolean sourceNat) { + // TODO Auto-generated method stub + return null; + } + + /* (non-Javadoc) + * @see com.cloud.network.NetworkModel#getPhysicalNtwksSupportingTrafficType(long, com.cloud.network.Networks.TrafficType) + */ + @Override + public List<? extends PhysicalNetwork> getPhysicalNtwksSupportingTrafficType(long zoneId, TrafficType trafficType) { + // TODO Auto-generated method stub + return null; + } + + /* (non-Javadoc) + * @see com.cloud.network.NetworkModel#isPrivateGateway(com.cloud.vm.Nic) + */ + @Override + public boolean isPrivateGateway(Nic guestNic) { + // TODO Auto-generated method stub + return false; + } + + /* (non-Javadoc) + * @see com.cloud.network.NetworkModel#getNetworkCapabilities(long) + */ + @Override + public Map<Service, Map<Capability, String>> getNetworkCapabilities(long networkId) { + // TODO Auto-generated method stub + return null; + } + + /* (non-Javadoc) + * @see com.cloud.network.NetworkModel#getSystemNetworkByZoneAndTrafficType(long, com.cloud.network.Networks.TrafficType) + */ + @Override + public Network getSystemNetworkByZoneAndTrafficType(long zoneId, TrafficType trafficType) { + // TODO Auto-generated method stub + return null; + } + + /* (non-Javadoc) + * @see com.cloud.network.NetworkModel#getDedicatedNetworkDomain(long) + */ + @Override + public Long getDedicatedNetworkDomain(long networkId) { + // TODO Auto-generated method stub + return null; + } + + /* (non-Javadoc) + * @see com.cloud.network.NetworkModel#getNetworkOfferingServiceProvidersMap(long) + */ + @Override + public Map<Service, Set<Provider>> getNetworkOfferingServiceProvidersMap(long networkOfferingId) { + // TODO Auto-generated method stub + return null; + } + + /* (non-Javadoc) + * @see com.cloud.network.NetworkModel#listSupportedNetworkServiceProviders(java.lang.String) + */ + @Override + public List<? extends Provider> listSupportedNetworkServiceProviders(String serviceName) { + // TODO Auto-generated method stub + return null; + } + + /* (non-Javadoc) + * @see com.cloud.network.NetworkModel#listNetworksByVpc(long) + */ + @Override + public List<? extends Network> listNetworksByVpc(long vpcId) { + // TODO Auto-generated method stub + return null; + } + + /* (non-Javadoc) + * @see com.cloud.network.NetworkModel#canUseForDeploy(com.cloud.network.Network) + */ + @Override + public boolean canUseForDeploy(Network network) { + // TODO Auto-generated method stub + return false; + } + + /* (non-Javadoc) + * @see com.cloud.network.NetworkModel#getExclusiveGuestNetwork(long) + */ + @Override + public Network getExclusiveGuestNetwork(long zoneId) { + // TODO Auto-generated method stub + return null; + } + + /* (non-Javadoc) + * @see com.cloud.network.NetworkModel#findPhysicalNetworkId(long, java.lang.String, com.cloud.network.Networks.TrafficType) + */ + @Override + public long findPhysicalNetworkId(long zoneId, String tag, TrafficType trafficType) { + // TODO Auto-generated method stub + return 0; + } + + /* (non-Javadoc) + * @see com.cloud.network.NetworkModel#getNetworkRate(long, java.lang.Long) + */ + @Override + public Integer getNetworkRate(long networkId, Long vmId) { + // TODO Auto-generated method stub + return null; + } + + /* (non-Javadoc) + * @see com.cloud.network.NetworkModel#isVmPartOfNetwork(long, long) + */ + @Override + public boolean isVmPartOfNetwork(long vmId, long ntwkId) { + // TODO Auto-generated method stub + return false; + } + + /* (non-Javadoc) + * @see com.cloud.network.NetworkModel#getDefaultPhysicalNetworkByZoneAndTrafficType(long, com.cloud.network.Networks.TrafficType) + */ + @Override + public PhysicalNetwork getDefaultPhysicalNetworkByZoneAndTrafficType(long zoneId, TrafficType trafficType) { + // TODO Auto-generated method stub + return null; + } + + /* (non-Javadoc) + * @see com.cloud.network.NetworkModel#getNetwork(long) + */ + @Override + public Network getNetwork(long networkId) { + // TODO Auto-generated method stub + return null; + } + + /* (non-Javadoc) + * @see com.cloud.network.NetworkModel#getIp(long) + */ + @Override + public IpAddress getIp(long sourceIpAddressId) { + // TODO Auto-generated method stub + return null; + } + + /* (non-Javadoc) + * @see com.cloud.network.NetworkModel#isNetworkAvailableInDomain(long, long) + */ + @Override + public boolean isNetworkAvailableInDomain(long networkId, long domainId) { + // TODO Auto-generated method stub + return false; + } + + /* (non-Javadoc) + * @see com.cloud.network.NetworkModel#getNicProfile(com.cloud.vm.VirtualMachine, long, java.lang.String) + */ + @Override + public NicProfile getNicProfile(VirtualMachine vm, long networkId, String broadcastUri) { + // TODO Auto-generated method stub + return null; + } + + /* (non-Javadoc) + * @see com.cloud.network.NetworkModel#getAvailableIps(com.cloud.network.Network, java.lang.String) + */ + @Override + public Set<Long> getAvailableIps(Network network, String requestedIp) { + // TODO Auto-generated method stub + return null; + } + + /* (non-Javadoc) + * @see com.cloud.network.NetworkModel#getDomainNetworkDomain(long, long) + */ + @Override + public String getDomainNetworkDomain(long domainId, long zoneId) { + // TODO Auto-generated method stub + return null; + } + + /* (non-Javadoc) + * @see com.cloud.network.NetworkModel#getIpToServices(java.util.List, boolean, boolean) + */ + @Override + public Map<PublicIpAddress, Set<Service>> getIpToServices(List<? extends PublicIpAddress> publicIps, boolean rulesRevoked, + boolean includingFirewall) { + // TODO Auto-generated method stub + return null; + } + + /* (non-Javadoc) + * @see com.cloud.network.NetworkModel#getProviderToIpList(com.cloud.network.Network, java.util.Map) + */ + @Override + public Map<Provider, ArrayList<PublicIpAddress>> getProviderToIpList(Network network, + Map<PublicIpAddress, Set<Service>> ipToServices) { + // TODO Auto-generated method stub + return null; + } + + /* (non-Javadoc) + * @see com.cloud.network.NetworkModel#getSourceNatIpAddressForGuestNetwork(com.cloud.user.Account, com.cloud.network.Network) + */ + @Override + public PublicIpAddress getSourceNatIpAddressForGuestNetwork(Account owner, Network guestNetwork) { + // TODO Auto-generated method stub + return null; + } + + /* (non-Javadoc) + * @see com.cloud.network.NetworkModel#isNetworkInlineMode(com.cloud.network.Network) + */ + @Override + public boolean isNetworkInlineMode(Network network) { + // TODO Auto-generated method stub + return false; + } + ++ @Override ++ public Vlan getVlanForNetwork(long networkId) { ++ // TODO Auto-generated method stub ++ return null; ++ } ++ +}
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/7bd8bec6/setup/db/create-schema.sql ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/7bd8bec6/utils/pom.xml ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/7bd8bec6/utils/src/com/cloud/utils/net/NetUtils.java ---------------------------------------------------------------------- diff --cc utils/src/com/cloud/utils/net/NetUtils.java index 005fe23,fdda5b8..deb1d05 --- a/utils/src/com/cloud/utils/net/NetUtils.java +++ b/utils/src/com/cloud/utils/net/NetUtils.java @@@ -36,7 -39,12 +36,11 @@@ import java.util.regex.Matcher import java.util.regex.Pattern; import org.apache.log4j.Logger; -import org.apache.log4j.xml.DOMConfigurator; + import com.googlecode.ipv6.IPv6Address; + import com.googlecode.ipv6.IPv6AddressRange; + import com.googlecode.ipv6.IPv6Network; + import com.cloud.utils.IteratorUtil; import com.cloud.utils.Pair; import com.cloud.utils.script.Script; @@@ -1115,7 -1143,117 +1119,117 @@@ public class NetUtils s_logger.warn("Icmp code should be within 0-15 range"); return false; } - + return true; } + + public static boolean isValidIpv6(String ip) { + try { + IPv6Address address = IPv6Address.fromString(ip); + } catch (IllegalArgumentException ex) { + return false; + } + return true; + } + + public static boolean isValidIp6Cidr(String ip6Cidr) { + try { + IPv6Network network = IPv6Network.fromString(ip6Cidr); + } catch (IllegalArgumentException ex) { + return false; + } + return true; + } + + public static int getIp6CidrSize(String ip6Cidr) { + IPv6Network network = null; + try { + network = IPv6Network.fromString(ip6Cidr); + } catch (IllegalArgumentException ex) { + return 0; + } + return network.getNetmask().asPrefixLength(); + } + + //FIXME: only able to cover lower 32 bits + public static String getIp6FromRange(String ip6Range) { + String[] ips = ip6Range.split("-"); + String startIp = ips[0]; + IPv6Address start = IPv6Address.fromString(startIp); + // Find a random number based on lower 32 bits + long gap = countIp6InRange(ip6Range); + if (gap > Integer.MAX_VALUE) { + gap = Integer.MAX_VALUE; + } + int next = _rand.nextInt((int)(gap)); + // And a number based on the difference of lower 32 bits + IPv6Address ip = start.add(next); + return ip.toString(); + } + + //RFC3315, section 9.4 + public static String getDuidLL(String macAddress) { + String duid = "00:03:00:01:" + macAddress; + return duid; + } + + //FIXME: only able to cover lower 64 bits + public static long countIp6InRange(String ip6Range) { + String[] ips = ip6Range.split("-"); + String startIp = ips[0]; + String endIp = null; + if (ips.length > 1) { + endIp = ips[1]; + } + IPv6Address start, end; + try { + start = IPv6Address.fromString(startIp); + end = IPv6Address.fromString(endIp); + } catch (IllegalArgumentException ex) { + return 0; + } + long startLow = start.getLowBits(), endLow = end.getLowBits(); + if (startLow > endLow) { + return 0; + } + return endLow - startLow + 1; + } + + public static boolean isIp6InRange(String ip6, String ip6Range) { + String[] ips = ip6Range.split("-"); + String startIp = ips[0]; + String endIp = null; + if (ips.length > 1) { + endIp = ips[1]; + } + IPv6Address start = IPv6Address.fromString(startIp); + IPv6Address end = IPv6Address.fromString(endIp); + IPv6Address ip = IPv6Address.fromString(ip6); + if (start.compareTo(ip) <= 0 && end.compareTo(ip) >= 0) { + return true; + } + return false; + } + + public static boolean isIp6RangeOverlap(String ipRange1, String ipRange2) { + String[] ips = ipRange1.split("-"); + String startIp1 = ips[0]; + String endIp1 = null; + if (ips.length > 1) { + endIp1 = ips[1]; + } + IPv6Address start1 = IPv6Address.fromString(startIp1); + IPv6Address end1 = IPv6Address.fromString(endIp1); + IPv6AddressRange range1 = IPv6AddressRange.fromFirstAndLast(start1, end1); + ips = ipRange2.split("-"); + String startIp2 = ips[0]; + String endIp2 = null; + if (ips.length > 1) { + endIp2 = ips[1]; + } + IPv6Address start2 = IPv6Address.fromString(startIp2); + IPv6Address end2 = IPv6Address.fromString(endIp2); + IPv6AddressRange range2 = IPv6AddressRange.fromFirstAndLast(start2, end2); + return range1.overlaps(range2); + } } http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/7bd8bec6/utils/test/com/cloud/utils/net/NetUtilsTest.java ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/7bd8bec6/utils/test/com/cloud/utils/xmlobject/TestXmlObject.java ---------------------------------------------------------------------- diff --cc utils/test/com/cloud/utils/xmlobject/TestXmlObject.java index f94c68c,0000000..eabc316 mode 100755,000000..100755 --- a/utils/test/com/cloud/utils/xmlobject/TestXmlObject.java +++ b/utils/test/com/cloud/utils/xmlobject/TestXmlObject.java @@@ -1,29 -1,0 +1,33 @@@ +package com.cloud.utils.xmlobject; + +import static org.junit.Assert.*; + +import java.util.List; + +import org.junit.Test; + +public class TestXmlObject { + + void p(String str) { + System.out.println(str); + } + + @Test + public void test() { ++ ++ // deprecated, since we no longer use component.xml.in any more ++ /* + XmlObject xo = XmlObjectParser.parseFromFile("z:/components.xml.in"); + p(xo.getTag()); + p((String) xo.get("system-integrity-checker.checker").toString()); + List<XmlObject> lst = xo.get("management-server.adapters"); + for (XmlObject x : lst) { + List<XmlObject> lst1 = x.getAsList("adapter"); + for (XmlObject y : lst1) { + p(y.toString()); + } + } ++ */ + } + +}
