mirror of
				https://github.com/apache/cloudstack.git
				synced 2025-11-04 00:02:37 +01:00 
			
		
		
		
	CLOUDSTACK-7168: Revert "Fixed Coverity Issues reported" that broke CI
This reverts commit 4523490d44160b054de9e943f72db1d0ce06054a.
This commit is contained in:
		
							parent
							
								
									bb1c70b3d8
								
							
						
					
					
						commit
						c804660c74
					
				@ -225,8 +225,8 @@ public class DeployVMCmd extends BaseAsyncCreateCustomIdCmd {
 | 
			
		||||
            Iterator iter = parameterCollection.iterator();
 | 
			
		||||
            while (iter.hasNext()) {
 | 
			
		||||
                HashMap<String, String> value = (HashMap<String, String>)iter.next();
 | 
			
		||||
                for (Map.Entry<String,String> entry: value.entrySet()) {
 | 
			
		||||
                    customparameterMap.put(entry.getKey(),entry.getValue());
 | 
			
		||||
                for (String key : value.keySet()) {
 | 
			
		||||
                    customparameterMap.put(key, value.get(key));
 | 
			
		||||
                }
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
@ -18,6 +18,7 @@ package com.cloud.storage.dao;
 | 
			
		||||
 | 
			
		||||
import java.sql.PreparedStatement;
 | 
			
		||||
import java.sql.ResultSet;
 | 
			
		||||
import java.sql.SQLException;
 | 
			
		||||
import java.util.ArrayList;
 | 
			
		||||
import java.util.Date;
 | 
			
		||||
import java.util.List;
 | 
			
		||||
@ -169,25 +170,36 @@ public class VMTemplatePoolDaoImpl extends GenericDaoBase<VMTemplateStoragePoolV
 | 
			
		||||
    @Override
 | 
			
		||||
    public List<VMTemplateStoragePoolVO> listByTemplateStatus(long templateId, long datacenterId, long podId, VMTemplateStoragePoolVO.Status downloadState) {
 | 
			
		||||
        TransactionLegacy txn = TransactionLegacy.currentTxn();
 | 
			
		||||
        PreparedStatement pstmt = null;
 | 
			
		||||
        List<VMTemplateStoragePoolVO> result = new ArrayList<VMTemplateStoragePoolVO>();
 | 
			
		||||
        String sql = DOWNLOADS_STATE_DC_POD;
 | 
			
		||||
        try(PreparedStatement pstmt = txn.prepareStatement(sql);) {
 | 
			
		||||
        ResultSet rs = null;
 | 
			
		||||
        try {
 | 
			
		||||
            String sql = DOWNLOADS_STATE_DC_POD;
 | 
			
		||||
            pstmt = txn.prepareStatement(sql);
 | 
			
		||||
 | 
			
		||||
            pstmt.setLong(1, datacenterId);
 | 
			
		||||
            pstmt.setLong(2, podId);
 | 
			
		||||
            pstmt.setLong(3, templateId);
 | 
			
		||||
            pstmt.setString(4, downloadState.toString());
 | 
			
		||||
            try(ResultSet rs = pstmt.executeQuery();) {
 | 
			
		||||
                while (rs.next()) {
 | 
			
		||||
                    // result.add(toEntityBean(rs, false)); TODO: this is buggy in
 | 
			
		||||
                    // GenericDaoBase for hand constructed queries
 | 
			
		||||
                    long id = rs.getLong(1); // ID column
 | 
			
		||||
                    result.add(findById(id));
 | 
			
		||||
                }
 | 
			
		||||
            }catch (Exception e) {
 | 
			
		||||
                s_logger.warn("Exception: ", e);
 | 
			
		||||
            rs = pstmt.executeQuery();
 | 
			
		||||
            while (rs.next()) {
 | 
			
		||||
                // result.add(toEntityBean(rs, false)); TODO: this is buggy in
 | 
			
		||||
                // GenericDaoBase for hand constructed queries
 | 
			
		||||
                long id = rs.getLong(1); // ID column
 | 
			
		||||
                result.add(findById(id));
 | 
			
		||||
            }
 | 
			
		||||
        } catch (Exception e) {
 | 
			
		||||
            s_logger.warn("Exception: ", e);
 | 
			
		||||
        } finally {
 | 
			
		||||
            try {
 | 
			
		||||
                if (rs != null) {
 | 
			
		||||
                    rs.close();
 | 
			
		||||
                }
 | 
			
		||||
                if (pstmt != null) {
 | 
			
		||||
                    pstmt.close();
 | 
			
		||||
                }
 | 
			
		||||
            } catch (SQLException e) {
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
        return result;
 | 
			
		||||
 | 
			
		||||
@ -195,23 +207,34 @@ public class VMTemplatePoolDaoImpl extends GenericDaoBase<VMTemplateStoragePoolV
 | 
			
		||||
 | 
			
		||||
    public List<VMTemplateStoragePoolVO> listByHostTemplate(long hostId, long templateId) {
 | 
			
		||||
        TransactionLegacy txn = TransactionLegacy.currentTxn();
 | 
			
		||||
        PreparedStatement pstmt = null;
 | 
			
		||||
        List<VMTemplateStoragePoolVO> result = new ArrayList<VMTemplateStoragePoolVO>();
 | 
			
		||||
        String sql = HOST_TEMPLATE_SEARCH;
 | 
			
		||||
        try(PreparedStatement pstmt = txn.prepareStatement(sql);) {
 | 
			
		||||
        ResultSet rs = null;
 | 
			
		||||
        try {
 | 
			
		||||
            String sql = HOST_TEMPLATE_SEARCH;
 | 
			
		||||
            pstmt = txn.prepareStatement(sql);
 | 
			
		||||
 | 
			
		||||
            pstmt.setLong(1, hostId);
 | 
			
		||||
            pstmt.setLong(2, templateId);
 | 
			
		||||
            try(ResultSet rs = pstmt.executeQuery();) {
 | 
			
		||||
                while (rs.next()) {
 | 
			
		||||
                    // result.add(toEntityBean(rs, false)); TODO: this is buggy in
 | 
			
		||||
                    // GenericDaoBase for hand constructed queries
 | 
			
		||||
                    long id = rs.getLong(1); // ID column
 | 
			
		||||
                    result.add(findById(id));
 | 
			
		||||
                }
 | 
			
		||||
            }catch (Exception e) {
 | 
			
		||||
                s_logger.warn("Exception: ", e);
 | 
			
		||||
            rs = pstmt.executeQuery();
 | 
			
		||||
            while (rs.next()) {
 | 
			
		||||
                // result.add(toEntityBean(rs, false)); TODO: this is buggy in
 | 
			
		||||
                // GenericDaoBase for hand constructed queries
 | 
			
		||||
                long id = rs.getLong(1); // ID column
 | 
			
		||||
                result.add(findById(id));
 | 
			
		||||
            }
 | 
			
		||||
        } catch (Exception e) {
 | 
			
		||||
            s_logger.warn("Exception: ", e);
 | 
			
		||||
        } finally {
 | 
			
		||||
            try {
 | 
			
		||||
                if (rs != null) {
 | 
			
		||||
                    rs.close();
 | 
			
		||||
                }
 | 
			
		||||
                if (pstmt != null) {
 | 
			
		||||
                    pstmt.close();
 | 
			
		||||
                }
 | 
			
		||||
            } catch (SQLException e) {
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
        return result;
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -22,7 +22,6 @@ import java.sql.Connection;
 | 
			
		||||
import java.util.ArrayList;
 | 
			
		||||
import java.util.HashMap;
 | 
			
		||||
import java.util.List;
 | 
			
		||||
import java.util.Map;
 | 
			
		||||
 | 
			
		||||
import org.apache.log4j.Logger;
 | 
			
		||||
 | 
			
		||||
@ -81,8 +80,8 @@ public class Upgrade440to450 implements DbUpgrade {
 | 
			
		||||
        uniqueKeys.put("storage_pool", keys);
 | 
			
		||||
 | 
			
		||||
        s_logger.debug("Droping id_2 key from storage_pool table");
 | 
			
		||||
        for (Map.Entry<String, List<String>> entry: uniqueKeys.entrySet()) {
 | 
			
		||||
            DbUpgradeUtils.dropKeysIfExist(conn,entry.getKey(), entry.getValue(), false);
 | 
			
		||||
        for (String tableName : uniqueKeys.keySet()) {
 | 
			
		||||
            DbUpgradeUtils.dropKeysIfExist(conn, tableName, uniqueKeys.get(tableName), false);
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@ -115,21 +115,33 @@ public class DefaultEndPointSelector implements EndPointSelector {
 | 
			
		||||
        // TODO: order by rand() is slow if there are lot of hosts
 | 
			
		||||
        sbuilder.append(" ORDER by rand() limit 1");
 | 
			
		||||
        String sql = sbuilder.toString();
 | 
			
		||||
        PreparedStatement pstmt = null;
 | 
			
		||||
        ResultSet rs = null;
 | 
			
		||||
        HostVO host = null;
 | 
			
		||||
        TransactionLegacy txn = TransactionLegacy.currentTxn();
 | 
			
		||||
        try(PreparedStatement pstmt = txn.prepareStatement(sql);) {
 | 
			
		||||
 | 
			
		||||
        try {
 | 
			
		||||
            pstmt = txn.prepareStatement(sql);
 | 
			
		||||
            pstmt.setLong(1, poolId);
 | 
			
		||||
            try(ResultSet rs = pstmt.executeQuery();) {
 | 
			
		||||
                while (rs.next()) {
 | 
			
		||||
                    long id = rs.getLong(1);
 | 
			
		||||
                    host = hostDao.findById(id);
 | 
			
		||||
                }
 | 
			
		||||
            }catch (SQLException e) {
 | 
			
		||||
                s_logger.warn("can't find endpoint", e);
 | 
			
		||||
            rs = pstmt.executeQuery();
 | 
			
		||||
            while (rs.next()) {
 | 
			
		||||
                long id = rs.getLong(1);
 | 
			
		||||
                host = hostDao.findById(id);
 | 
			
		||||
            }
 | 
			
		||||
        } catch (SQLException e) {
 | 
			
		||||
            s_logger.warn("can't find endpoint", e);
 | 
			
		||||
        } finally {
 | 
			
		||||
            try {
 | 
			
		||||
                if (rs != null) {
 | 
			
		||||
                    rs.close();
 | 
			
		||||
                }
 | 
			
		||||
                if (pstmt != null) {
 | 
			
		||||
                    pstmt.close();
 | 
			
		||||
                }
 | 
			
		||||
            } catch (SQLException e) {
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        if (host == null) {
 | 
			
		||||
            return null;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
@ -1464,9 +1464,8 @@ public class VolumeServiceImpl implements VolumeService {
 | 
			
		||||
                    }
 | 
			
		||||
 | 
			
		||||
                    // Delete volumes which are not present on DB.
 | 
			
		||||
                    for (Map.Entry<Long,TemplateProp> entry : volumeInfos.entrySet()) {
 | 
			
		||||
                        Long uniqueName = entry.getKey();
 | 
			
		||||
                        TemplateProp tInfo = entry.getValue();
 | 
			
		||||
                    for (Long uniqueName : volumeInfos.keySet()) {
 | 
			
		||||
                        TemplateProp tInfo = volumeInfos.get(uniqueName);
 | 
			
		||||
 | 
			
		||||
                        //we cannot directly call expungeVolumeAsync here to
 | 
			
		||||
                        // reuse delete logic since in this case, our db does not have
 | 
			
		||||
 | 
			
		||||
@ -104,16 +104,16 @@ public class BridgeVifDriver extends VifDriverBase {
 | 
			
		||||
        String trafficLabel = nic.getName();
 | 
			
		||||
        if (nic.getType() == Networks.TrafficType.Guest) {
 | 
			
		||||
            Integer networkRateKBps = (nic.getNetworkRateMbps() != null && nic.getNetworkRateMbps().intValue() != -1) ? nic.getNetworkRateMbps().intValue() * 128 : 0;
 | 
			
		||||
            if ((nic.getBroadcastType() == Networks.BroadcastDomainType.Vlan) && (vNetId != null) && (protocol != null) && (!vNetId.equalsIgnoreCase("untagged")) ||
 | 
			
		||||
                    (nic.getBroadcastType() == Networks.BroadcastDomainType.Vxlan)) {
 | 
			
		||||
                    if (trafficLabel != null && !trafficLabel.isEmpty()) {
 | 
			
		||||
                        s_logger.debug("creating a vNet dev and bridge for guest traffic per traffic label " + trafficLabel);
 | 
			
		||||
                        String brName = createVnetBr(vNetId, trafficLabel, protocol);
 | 
			
		||||
                        intf.defBridgeNet(brName, null, nic.getMac(), getGuestNicModel(guestOsType, nicAdapter), networkRateKBps);
 | 
			
		||||
                    } else {
 | 
			
		||||
                        String brName = createVnetBr(vNetId, "private", protocol);
 | 
			
		||||
                        intf.defBridgeNet(brName, null, nic.getMac(), getGuestNicModel(guestOsType, nicAdapter), networkRateKBps);
 | 
			
		||||
                    }
 | 
			
		||||
            if (nic.getBroadcastType() == Networks.BroadcastDomainType.Vlan && !vNetId.equalsIgnoreCase("untagged") ||
 | 
			
		||||
                nic.getBroadcastType() == Networks.BroadcastDomainType.Vxlan) {
 | 
			
		||||
                if (trafficLabel != null && !trafficLabel.isEmpty()) {
 | 
			
		||||
                    s_logger.debug("creating a vNet dev and bridge for guest traffic per traffic label " + trafficLabel);
 | 
			
		||||
                    String brName = createVnetBr(vNetId, trafficLabel, protocol);
 | 
			
		||||
                    intf.defBridgeNet(brName, null, nic.getMac(), getGuestNicModel(guestOsType, nicAdapter), networkRateKBps);
 | 
			
		||||
                } else {
 | 
			
		||||
                    String brName = createVnetBr(vNetId, "private", protocol);
 | 
			
		||||
                    intf.defBridgeNet(brName, null, nic.getMac(), getGuestNicModel(guestOsType, nicAdapter), networkRateKBps);
 | 
			
		||||
                }
 | 
			
		||||
            } else {
 | 
			
		||||
                intf.defBridgeNet(_bridges.get("guest"), null, nic.getMac(), getGuestNicModel(guestOsType, nicAdapter), networkRateKBps);
 | 
			
		||||
            }
 | 
			
		||||
@ -123,8 +123,8 @@ public class BridgeVifDriver extends VifDriverBase {
 | 
			
		||||
            intf.defBridgeNet(_bridges.get("linklocal"), null, nic.getMac(), getGuestNicModel(guestOsType, nicAdapter));
 | 
			
		||||
        } else if (nic.getType() == Networks.TrafficType.Public) {
 | 
			
		||||
            Integer networkRateKBps = (nic.getNetworkRateMbps() != null && nic.getNetworkRateMbps().intValue() != -1) ? nic.getNetworkRateMbps().intValue() * 128 : 0;
 | 
			
		||||
            if ((nic.getBroadcastType() == Networks.BroadcastDomainType.Vlan) && (vNetId != null) && (protocol != null) && (!vNetId.equalsIgnoreCase("untagged")) ||
 | 
			
		||||
                    (nic.getBroadcastType() == Networks.BroadcastDomainType.Vxlan)) {
 | 
			
		||||
            if (nic.getBroadcastType() == Networks.BroadcastDomainType.Vlan && !vNetId.equalsIgnoreCase("untagged") ||
 | 
			
		||||
                nic.getBroadcastType() == Networks.BroadcastDomainType.Vxlan) {
 | 
			
		||||
                if (trafficLabel != null && !trafficLabel.isEmpty()) {
 | 
			
		||||
                    s_logger.debug("creating a vNet dev and bridge for public traffic per traffic label " + trafficLabel);
 | 
			
		||||
                    String brName = createVnetBr(vNetId, trafficLabel, protocol);
 | 
			
		||||
 | 
			
		||||
@ -1026,24 +1026,20 @@ public class ApiResponseHelper implements ResponseGenerator {
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
        IpAddress ip = ApiDBUtils.findIpAddressById(fwRule.getSourceIpAddressId());
 | 
			
		||||
        response.setPublicIpAddressId(ip.getUuid());
 | 
			
		||||
        response.setPublicIpAddress(ip.getAddress().addr());
 | 
			
		||||
 | 
			
		||||
        if (ip != null)
 | 
			
		||||
        {
 | 
			
		||||
            response.setPublicIpAddressId(ip.getUuid());
 | 
			
		||||
            response.setPublicIpAddress(ip.getAddress().addr());
 | 
			
		||||
            if (fwRule.getDestinationIpAddress() != null)
 | 
			
		||||
            {
 | 
			
		||||
                response.setDestNatVmIp(fwRule.getDestinationIpAddress().toString());
 | 
			
		||||
                UserVm vm = ApiDBUtils.findUserVmById(fwRule.getVirtualMachineId());
 | 
			
		||||
                if (vm != null) {
 | 
			
		||||
                    response.setVirtualMachineId(vm.getUuid());
 | 
			
		||||
                    response.setVirtualMachineName(vm.getHostName());
 | 
			
		||||
        if (ip != null && fwRule.getDestinationIpAddress() != null) {
 | 
			
		||||
            response.setDestNatVmIp(fwRule.getDestinationIpAddress().toString());
 | 
			
		||||
            UserVm vm = ApiDBUtils.findUserVmById(fwRule.getVirtualMachineId());
 | 
			
		||||
            if (vm != null) {
 | 
			
		||||
                response.setVirtualMachineId(vm.getUuid());
 | 
			
		||||
                response.setVirtualMachineName(vm.getHostName());
 | 
			
		||||
 | 
			
		||||
                    if (vm.getDisplayName() != null) {
 | 
			
		||||
                        response.setVirtualMachineDisplayName(vm.getDisplayName());
 | 
			
		||||
                    } else {
 | 
			
		||||
                        response.setVirtualMachineDisplayName(vm.getHostName());
 | 
			
		||||
                    }
 | 
			
		||||
                if (vm.getDisplayName() != null) {
 | 
			
		||||
                    response.setVirtualMachineDisplayName(vm.getDisplayName());
 | 
			
		||||
                } else {
 | 
			
		||||
                    response.setVirtualMachineDisplayName(vm.getHostName());
 | 
			
		||||
                }
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
@ -1075,20 +1071,18 @@ public class ApiResponseHelper implements ResponseGenerator {
 | 
			
		||||
        response.setProtocol(fwRule.getProtocol());
 | 
			
		||||
 | 
			
		||||
        IpAddress ip = ApiDBUtils.findIpAddressById(fwRule.getSourceIpAddressId());
 | 
			
		||||
        response.setPublicIpAddressId(ip.getId());
 | 
			
		||||
        response.setPublicIpAddress(ip.getAddress().addr());
 | 
			
		||||
 | 
			
		||||
        if (ip != null) {
 | 
			
		||||
            response.setPublicIpAddressId(ip.getId());
 | 
			
		||||
            response.setPublicIpAddress(ip.getAddress().addr());
 | 
			
		||||
            if (fwRule.getDestIpAddress() != null) {
 | 
			
		||||
                UserVm vm = ApiDBUtils.findUserVmById(ip.getAssociatedWithVmId());
 | 
			
		||||
                if (vm != null) {// vm might be destroyed
 | 
			
		||||
                    response.setVirtualMachineId(vm.getUuid());
 | 
			
		||||
                    response.setVirtualMachineName(vm.getHostName());
 | 
			
		||||
                    if (vm.getDisplayName() != null) {
 | 
			
		||||
                        response.setVirtualMachineDisplayName(vm.getDisplayName());
 | 
			
		||||
                    } else {
 | 
			
		||||
                        response.setVirtualMachineDisplayName(vm.getHostName());
 | 
			
		||||
                    }
 | 
			
		||||
        if (ip != null && fwRule.getDestIpAddress() != null) {
 | 
			
		||||
            UserVm vm = ApiDBUtils.findUserVmById(ip.getAssociatedWithVmId());
 | 
			
		||||
            if (vm != null) {// vm might be destroyed
 | 
			
		||||
                response.setVirtualMachineId(vm.getUuid());
 | 
			
		||||
                response.setVirtualMachineName(vm.getHostName());
 | 
			
		||||
                if (vm.getDisplayName() != null) {
 | 
			
		||||
                    response.setVirtualMachineDisplayName(vm.getDisplayName());
 | 
			
		||||
                } else {
 | 
			
		||||
                    response.setVirtualMachineDisplayName(vm.getHostName());
 | 
			
		||||
                }
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
@ -1707,9 +1701,7 @@ public class ApiResponseHelper implements ResponseGenerator {
 | 
			
		||||
 | 
			
		||||
        Map<Service, Set<Provider>> serviceProviderMap = ApiDBUtils.listNetworkOfferingServices(offering.getId());
 | 
			
		||||
        List<ServiceResponse> serviceResponses = new ArrayList<ServiceResponse>();
 | 
			
		||||
        for (Map.Entry<Service,Set<Provider>> entry : serviceProviderMap.entrySet()) {
 | 
			
		||||
            Service service = entry.getKey();
 | 
			
		||||
            Set<Provider> srvc_providers = entry.getValue();
 | 
			
		||||
        for (Service service : serviceProviderMap.keySet()) {
 | 
			
		||||
            ServiceResponse svcRsp = new ServiceResponse();
 | 
			
		||||
            // skip gateway service
 | 
			
		||||
            if (service == Service.Gateway) {
 | 
			
		||||
@ -1717,7 +1709,7 @@ public class ApiResponseHelper implements ResponseGenerator {
 | 
			
		||||
            }
 | 
			
		||||
            svcRsp.setName(service.getName());
 | 
			
		||||
            List<ProviderResponse> providers = new ArrayList<ProviderResponse>();
 | 
			
		||||
            for (Provider provider : srvc_providers) {
 | 
			
		||||
            for (Provider provider : serviceProviderMap.get(service)) {
 | 
			
		||||
                if (provider != null) {
 | 
			
		||||
                    ProviderResponse providerRsp = new ProviderResponse();
 | 
			
		||||
                    providerRsp.setName(provider.getName());
 | 
			
		||||
@ -1964,9 +1956,8 @@ public class ApiResponseHelper implements ResponseGenerator {
 | 
			
		||||
            Domain domain = ApiDBUtils.findDomainById(dedicatedDomainId);
 | 
			
		||||
            if (domain != null) {
 | 
			
		||||
                response.setDomainId(domain.getUuid());
 | 
			
		||||
                response.setDomainName(domain.getName());
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            response.setDomainName(domain.getName());
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        response.setSpecifyIpRanges(network.getSpecifyIpRanges());
 | 
			
		||||
@ -2572,10 +2563,7 @@ public class ApiResponseHelper implements ResponseGenerator {
 | 
			
		||||
 | 
			
		||||
        Map<Service, Set<Provider>> serviceProviderMap = ApiDBUtils.listVpcOffServices(offering.getId());
 | 
			
		||||
        List<ServiceResponse> serviceResponses = new ArrayList<ServiceResponse>();
 | 
			
		||||
        for (Map.Entry<Service, Set<Provider>> entry : serviceProviderMap.entrySet()) {
 | 
			
		||||
            Service service = entry.getKey();
 | 
			
		||||
            Set<Provider> srvc_providers = entry.getValue();
 | 
			
		||||
 | 
			
		||||
        for (Service service : serviceProviderMap.keySet()) {
 | 
			
		||||
            ServiceResponse svcRsp = new ServiceResponse();
 | 
			
		||||
            // skip gateway service
 | 
			
		||||
            if (service == Service.Gateway) {
 | 
			
		||||
@ -2583,7 +2571,7 @@ public class ApiResponseHelper implements ResponseGenerator {
 | 
			
		||||
            }
 | 
			
		||||
            svcRsp.setName(service.getName());
 | 
			
		||||
            List<ProviderResponse> providers = new ArrayList<ProviderResponse>();
 | 
			
		||||
            for (Provider provider : srvc_providers) {
 | 
			
		||||
            for (Provider provider : serviceProviderMap.get(service)) {
 | 
			
		||||
                if (provider != null) {
 | 
			
		||||
                    ProviderResponse providerRsp = new ProviderResponse();
 | 
			
		||||
                    providerRsp.setName(provider.getName());
 | 
			
		||||
@ -3126,6 +3114,7 @@ public class ApiResponseHelper implements ResponseGenerator {
 | 
			
		||||
        } else if (usageRecord.getUsageType() == UsageTypes.TEMPLATE || usageRecord.getUsageType() == UsageTypes.ISO) {
 | 
			
		||||
            //Template/ISO ID
 | 
			
		||||
            VMTemplateVO tmpl = _entityMgr.findByIdIncludingRemoved(VMTemplateVO.class, usageRecord.getUsageId().toString());
 | 
			
		||||
            usageRecResponse.setUsageId(tmpl.getUuid());
 | 
			
		||||
            if (tmpl != null) {
 | 
			
		||||
                usageRecResponse.setUsageId(tmpl.getUuid());
 | 
			
		||||
            }
 | 
			
		||||
@ -3400,11 +3389,10 @@ public class ApiResponseHelper implements ResponseGenerator {
 | 
			
		||||
 | 
			
		||||
        //set Lb instances information
 | 
			
		||||
        List<ApplicationLoadBalancerInstanceResponse> instanceResponses = new ArrayList<ApplicationLoadBalancerInstanceResponse>();
 | 
			
		||||
        for (Map.Entry<Ip,UserVm> entry : lbInstances.entrySet()) {
 | 
			
		||||
            Ip ip = entry.getKey();
 | 
			
		||||
            UserVm vm = entry.getValue();
 | 
			
		||||
        for (Ip ip : lbInstances.keySet()) {
 | 
			
		||||
            ApplicationLoadBalancerInstanceResponse instanceResponse = new ApplicationLoadBalancerInstanceResponse();
 | 
			
		||||
            instanceResponse.setIpAddress(ip.addr());
 | 
			
		||||
            UserVm vm = lbInstances.get(ip);
 | 
			
		||||
            instanceResponse.setId(vm.getUuid());
 | 
			
		||||
            instanceResponse.setName(vm.getInstanceName());
 | 
			
		||||
            instanceResponse.setObjectName("loadbalancerinstance");
 | 
			
		||||
 | 
			
		||||
@ -144,8 +144,10 @@ public class ApiXmlDocWriter {
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        for (String fileName : fileNames) {
 | 
			
		||||
            try(FileInputStream in = new FileInputStream(fileName);) {
 | 
			
		||||
            try {
 | 
			
		||||
                FileInputStream in = new FileInputStream(fileName);
 | 
			
		||||
                preProcessedCommands.load(in);
 | 
			
		||||
                in.close();
 | 
			
		||||
            } catch (FileNotFoundException ex) {
 | 
			
		||||
                System.out.println("Can't find file " + fileName);
 | 
			
		||||
                System.exit(2);
 | 
			
		||||
@ -593,17 +595,14 @@ public class ApiXmlDocWriter {
 | 
			
		||||
                addDir(files[i], out);
 | 
			
		||||
                continue;
 | 
			
		||||
            }
 | 
			
		||||
            try(FileInputStream in = new FileInputStream(files[i].getPath());) {
 | 
			
		||||
                out.putNextEntry(new ZipEntry(files[i].getPath().substring(pathToDir.length())));
 | 
			
		||||
                int len;
 | 
			
		||||
                while ((len = in.read(tmpBuf)) > 0) {
 | 
			
		||||
                    out.write(tmpBuf, 0, len);
 | 
			
		||||
                }
 | 
			
		||||
                out.closeEntry();
 | 
			
		||||
            }catch(IOException ex)
 | 
			
		||||
            {
 | 
			
		||||
                s_logger.error("addDir:Exception:"+ ex.getMessage(),ex);
 | 
			
		||||
            FileInputStream in = new FileInputStream(files[i].getPath());
 | 
			
		||||
            out.putNextEntry(new ZipEntry(files[i].getPath().substring(pathToDir.length())));
 | 
			
		||||
            int len;
 | 
			
		||||
            while ((len = in.read(tmpBuf)) > 0) {
 | 
			
		||||
                out.write(tmpBuf, 0, len);
 | 
			
		||||
            }
 | 
			
		||||
            out.closeEntry();
 | 
			
		||||
            in.close();
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
@ -620,7 +619,8 @@ public class ApiXmlDocWriter {
 | 
			
		||||
    private static void writeAlertTypes(String dirName) {
 | 
			
		||||
        XStream xs = new XStream();
 | 
			
		||||
        xs.alias("alert", Alert.class);
 | 
			
		||||
        try(ObjectOutputStream out = xs.createObjectOutputStream(new FileWriter(dirName + "/alert_types.xml"), "alerts");) {
 | 
			
		||||
        try {
 | 
			
		||||
            ObjectOutputStream out = xs.createObjectOutputStream(new FileWriter(dirName + "/alert_types.xml"), "alerts");
 | 
			
		||||
            for (Field f : AlertManager.class.getFields()) {
 | 
			
		||||
                if (f.getClass().isAssignableFrom(Number.class)) {
 | 
			
		||||
                    String name = f.getName().substring(11);
 | 
			
		||||
@ -628,6 +628,7 @@ public class ApiXmlDocWriter {
 | 
			
		||||
                    out.writeObject(alert);
 | 
			
		||||
                }
 | 
			
		||||
            }
 | 
			
		||||
            out.close();
 | 
			
		||||
        } catch (IOException e) {
 | 
			
		||||
            s_logger.error("Failed to create output stream to write an alert types ", e);
 | 
			
		||||
        } catch (IllegalAccessException e) {
 | 
			
		||||
 | 
			
		||||
@ -136,6 +136,7 @@ import com.cloud.storage.dao.StoragePoolHostDao;
 | 
			
		||||
import com.cloud.storage.dao.VMTemplateDao;
 | 
			
		||||
import com.cloud.user.Account;
 | 
			
		||||
import com.cloud.user.AccountManager;
 | 
			
		||||
import com.cloud.user.User;
 | 
			
		||||
import com.cloud.utils.StringUtils;
 | 
			
		||||
import com.cloud.utils.UriUtils;
 | 
			
		||||
import com.cloud.utils.component.Manager;
 | 
			
		||||
@ -322,29 +323,29 @@ public class ResourceManagerImpl extends ManagerBase implements ResourceManager,
 | 
			
		||||
 | 
			
		||||
        String eventName;
 | 
			
		||||
        for (ResourceListener l : lst) {
 | 
			
		||||
            if (event.equals(ResourceListener.EVENT_DISCOVER_BEFORE)) {
 | 
			
		||||
            if (event == ResourceListener.EVENT_DISCOVER_BEFORE) {
 | 
			
		||||
                l.processDiscoverEventBefore((Long)params[0], (Long)params[1], (Long)params[2], (URI)params[3], (String)params[4], (String)params[5],
 | 
			
		||||
                    (List<String>)params[6]);
 | 
			
		||||
                eventName = "EVENT_DISCOVER_BEFORE";
 | 
			
		||||
            } else if (event.equals(ResourceListener.EVENT_DISCOVER_AFTER)) {
 | 
			
		||||
            } else if (event == ResourceListener.EVENT_DISCOVER_AFTER) {
 | 
			
		||||
                l.processDiscoverEventAfter((Map<? extends ServerResource, Map<String, String>>)params[0]);
 | 
			
		||||
                eventName = "EVENT_DISCOVER_AFTER";
 | 
			
		||||
            } else if (event.equals(ResourceListener.EVENT_DELETE_HOST_BEFORE)) {
 | 
			
		||||
            } else if (event == ResourceListener.EVENT_DELETE_HOST_BEFORE) {
 | 
			
		||||
                l.processDeleteHostEventBefore((HostVO)params[0]);
 | 
			
		||||
                eventName = "EVENT_DELETE_HOST_BEFORE";
 | 
			
		||||
            } else if (event.equals(ResourceListener.EVENT_DELETE_HOST_AFTER)) {
 | 
			
		||||
            } else if (event == ResourceListener.EVENT_DELETE_HOST_AFTER) {
 | 
			
		||||
                l.processDeletHostEventAfter((HostVO)params[0]);
 | 
			
		||||
                eventName = "EVENT_DELETE_HOST_AFTER";
 | 
			
		||||
            } else if (event.equals(ResourceListener.EVENT_CANCEL_MAINTENANCE_BEFORE)) {
 | 
			
		||||
            } else if (event == ResourceListener.EVENT_CANCEL_MAINTENANCE_BEFORE) {
 | 
			
		||||
                l.processCancelMaintenaceEventBefore((Long)params[0]);
 | 
			
		||||
                eventName = "EVENT_CANCEL_MAINTENANCE_BEFORE";
 | 
			
		||||
            } else if (event.equals(ResourceListener.EVENT_CANCEL_MAINTENANCE_AFTER)) {
 | 
			
		||||
            } else if (event == ResourceListener.EVENT_CANCEL_MAINTENANCE_AFTER) {
 | 
			
		||||
                l.processCancelMaintenaceEventAfter((Long)params[0]);
 | 
			
		||||
                eventName = "EVENT_CANCEL_MAINTENANCE_AFTER";
 | 
			
		||||
            } else if (event.equals(ResourceListener.EVENT_PREPARE_MAINTENANCE_BEFORE)) {
 | 
			
		||||
            } else if (event == ResourceListener.EVENT_PREPARE_MAINTENANCE_BEFORE) {
 | 
			
		||||
                l.processPrepareMaintenaceEventBefore((Long)params[0]);
 | 
			
		||||
                eventName = "EVENT_PREPARE_MAINTENANCE_BEFORE";
 | 
			
		||||
            } else if (event.equals(ResourceListener.EVENT_PREPARE_MAINTENANCE_AFTER)) {
 | 
			
		||||
            } else if (event == ResourceListener.EVENT_PREPARE_MAINTENANCE_AFTER) {
 | 
			
		||||
                l.processPrepareMaintenaceEventAfter((Long)params[0]);
 | 
			
		||||
                eventName = "EVENT_PREPARE_MAINTENANCE_AFTER";
 | 
			
		||||
            } else {
 | 
			
		||||
@ -797,7 +798,7 @@ public class ResourceManagerImpl extends ManagerBase implements ResourceManager,
 | 
			
		||||
 | 
			
		||||
    @DB
 | 
			
		||||
    protected boolean doDeleteHost(final long hostId, boolean isForced, final boolean isForceDeleteStorage) {
 | 
			
		||||
        _accountMgr.getActiveUser(CallContext.current().getCallingUserId());
 | 
			
		||||
        User caller = _accountMgr.getActiveUser(CallContext.current().getCallingUserId());
 | 
			
		||||
        // Verify that host exists
 | 
			
		||||
        final HostVO host = _hostDao.findById(hostId);
 | 
			
		||||
        if (host == null) {
 | 
			
		||||
@ -1462,7 +1463,7 @@ public class ResourceManagerImpl extends ManagerBase implements ResourceManager,
 | 
			
		||||
                Map.Entry<String, ResourceStateAdapter> item = it.next();
 | 
			
		||||
                ResourceStateAdapter adapter = item.getValue();
 | 
			
		||||
 | 
			
		||||
                String msg = "Dispatching resource state event " + event + " to " + item.getKey();
 | 
			
		||||
                String msg = new String("Dispatching resource state event " + event + " to " + item.getKey());
 | 
			
		||||
                s_logger.debug(msg);
 | 
			
		||||
 | 
			
		||||
                if (event == ResourceStateAdapter.Event.CREATE_HOST_VO_FOR_CONNECTED) {
 | 
			
		||||
 | 
			
		||||
@ -1221,9 +1221,9 @@ public class ConfigurationServerImpl extends ManagerBase implements Configuratio
 | 
			
		||||
                defaultVpcNetworkOfferingProviders.put(Service.PortForwarding, Provider.VPCVirtualRouter);
 | 
			
		||||
                defaultVpcNetworkOfferingProviders.put(Service.Vpn, Provider.VPCVirtualRouter);
 | 
			
		||||
 | 
			
		||||
                for (Map.Entry<Service,Provider> entry : defaultVpcNetworkOfferingProviders.entrySet()) {
 | 
			
		||||
                     NetworkOfferingServiceMapVO offService =
 | 
			
		||||
                            new NetworkOfferingServiceMapVO(defaultNetworkOfferingForVpcNetworks.getId(), entry.getKey(), entry.getValue());
 | 
			
		||||
                for (Service service : defaultVpcNetworkOfferingProviders.keySet()) {
 | 
			
		||||
                    NetworkOfferingServiceMapVO offService =
 | 
			
		||||
                            new NetworkOfferingServiceMapVO(defaultNetworkOfferingForVpcNetworks.getId(), service, defaultVpcNetworkOfferingProviders.get(service));
 | 
			
		||||
                    _ntwkOfferingServiceMapDao.persist(offService);
 | 
			
		||||
                    s_logger.trace("Added service for the network offering: " + offService);
 | 
			
		||||
                }
 | 
			
		||||
 | 
			
		||||
@ -48,63 +48,61 @@ public class NioClient extends NioConnection {
 | 
			
		||||
    @Override
 | 
			
		||||
    protected void init() throws IOException {
 | 
			
		||||
        _selector = Selector.open();
 | 
			
		||||
        SocketChannel sch = null;
 | 
			
		||||
        InetSocketAddress addr = null;
 | 
			
		||||
        try(SocketChannel sch = SocketChannel.open();) {
 | 
			
		||||
            try {
 | 
			
		||||
                sch.configureBlocking(true);
 | 
			
		||||
                s_logger.info("Connecting to " + _host + ":" + _port);
 | 
			
		||||
 | 
			
		||||
                if (_bindAddress != null) {
 | 
			
		||||
                    s_logger.info("Binding outbound interface at " + _bindAddress);
 | 
			
		||||
        try {
 | 
			
		||||
            sch = SocketChannel.open();
 | 
			
		||||
            sch.configureBlocking(true);
 | 
			
		||||
            s_logger.info("Connecting to " + _host + ":" + _port);
 | 
			
		||||
 | 
			
		||||
                    addr = new InetSocketAddress(_bindAddress, 0);
 | 
			
		||||
                    sch.socket().bind(addr);
 | 
			
		||||
                }
 | 
			
		||||
            if (_bindAddress != null) {
 | 
			
		||||
                s_logger.info("Binding outbound interface at " + _bindAddress);
 | 
			
		||||
 | 
			
		||||
                addr = new InetSocketAddress(_host, _port);
 | 
			
		||||
                sch.connect(addr);
 | 
			
		||||
            } catch (IOException e) {
 | 
			
		||||
                _selector.close();
 | 
			
		||||
                throw e;
 | 
			
		||||
            }
 | 
			
		||||
            SSLEngine sslEngine = null;
 | 
			
		||||
            try {
 | 
			
		||||
                // Begin SSL handshake in BLOCKING mode
 | 
			
		||||
                sch.configureBlocking(true);
 | 
			
		||||
 | 
			
		||||
                SSLContext sslContext = Link.initSSLContext(true);
 | 
			
		||||
                sslEngine = sslContext.createSSLEngine(_host, _port);
 | 
			
		||||
                sslEngine.setUseClientMode(true);
 | 
			
		||||
 | 
			
		||||
                Link.doHandshake(sch, sslEngine, true);
 | 
			
		||||
                s_logger.info("SSL: Handshake done");
 | 
			
		||||
                s_logger.info("Connected to " + _host + ":" + _port);
 | 
			
		||||
            } catch (Exception e) {
 | 
			
		||||
                _selector.close();
 | 
			
		||||
                throw new IOException("SSL: Fail to init SSL! " + e);
 | 
			
		||||
                addr = new InetSocketAddress(_bindAddress, 0);
 | 
			
		||||
                sch.socket().bind(addr);
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            Task task = null;
 | 
			
		||||
            try {
 | 
			
		||||
                sch.configureBlocking(false);
 | 
			
		||||
                Link link = new Link(addr, this);
 | 
			
		||||
                link.setSSLEngine(sslEngine);
 | 
			
		||||
                SelectionKey key = sch.register(_selector, SelectionKey.OP_READ);
 | 
			
		||||
                link.setKey(key);
 | 
			
		||||
                key.attach(link);
 | 
			
		||||
                // Notice we've already connected due to the handshake, so let's get the
 | 
			
		||||
                // remaining task done
 | 
			
		||||
                task = _factory.create(Task.Type.CONNECT, link, null);
 | 
			
		||||
            } catch (Exception e) {
 | 
			
		||||
                _selector.close();
 | 
			
		||||
                throw new IOException("Fail to init NioClient! " + e);
 | 
			
		||||
            }
 | 
			
		||||
            _executor.execute(task);
 | 
			
		||||
        }catch(IOException ex)
 | 
			
		||||
        {
 | 
			
		||||
            s_logger.error("NioClient:init:Exception:"+ex.getMessage());
 | 
			
		||||
            throw new IOException("NioClient:init:Exception:"+ex.getMessage(),ex);
 | 
			
		||||
            addr = new InetSocketAddress(_host, _port);
 | 
			
		||||
            sch.connect(addr);
 | 
			
		||||
        } catch (IOException e) {
 | 
			
		||||
            _selector.close();
 | 
			
		||||
            throw e;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        SSLEngine sslEngine = null;
 | 
			
		||||
        try {
 | 
			
		||||
            // Begin SSL handshake in BLOCKING mode
 | 
			
		||||
            sch.configureBlocking(true);
 | 
			
		||||
 | 
			
		||||
            SSLContext sslContext = Link.initSSLContext(true);
 | 
			
		||||
            sslEngine = sslContext.createSSLEngine(_host, _port);
 | 
			
		||||
            sslEngine.setUseClientMode(true);
 | 
			
		||||
 | 
			
		||||
            Link.doHandshake(sch, sslEngine, true);
 | 
			
		||||
            s_logger.info("SSL: Handshake done");
 | 
			
		||||
            s_logger.info("Connected to " + _host + ":" + _port);
 | 
			
		||||
        } catch (Exception e) {
 | 
			
		||||
            _selector.close();
 | 
			
		||||
            throw new IOException("SSL: Fail to init SSL! " + e);
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        Task task = null;
 | 
			
		||||
        try {
 | 
			
		||||
            sch.configureBlocking(false);
 | 
			
		||||
            Link link = new Link(addr, this);
 | 
			
		||||
            link.setSSLEngine(sslEngine);
 | 
			
		||||
            SelectionKey key = sch.register(_selector, SelectionKey.OP_READ);
 | 
			
		||||
            link.setKey(key);
 | 
			
		||||
            key.attach(link);
 | 
			
		||||
            // Notice we've already connected due to the handshake, so let's get the
 | 
			
		||||
            // remaining task done
 | 
			
		||||
            task = _factory.create(Task.Type.CONNECT, link, null);
 | 
			
		||||
        } catch (Exception e) {
 | 
			
		||||
            _selector.close();
 | 
			
		||||
            throw new IOException("Fail to init NioClient! " + e);
 | 
			
		||||
        }
 | 
			
		||||
        _executor.execute(task);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @Override
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user