当前位置: 首页>>代码示例>>Java>>正文


Java Pod.getId方法代码示例

本文整理汇总了Java中com.cloud.dc.Pod.getId方法的典型用法代码示例。如果您正苦于以下问题:Java Pod.getId方法的具体用法?Java Pod.getId怎么用?Java Pod.getId使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在com.cloud.dc.Pod的用法示例。


在下文中一共展示了Pod.getId方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: findStoragePool

import com.cloud.dc.Pod; //导入方法依赖的package包/类
@Override
public StoragePool findStoragePool(final DiskProfile dskCh, final DataCenter dc, final Pod pod, final Long clusterId, final Long hostId, final VirtualMachine vm, final
Set<StoragePool> avoid) {
    Long podId = null;
    if (pod != null) {
        podId = pod.getId();
    } else if (clusterId != null) {
        final Cluster cluster = _entityMgr.findById(Cluster.class, clusterId);
        if (cluster != null) {
            podId = cluster.getPodId();
        }
    }

    final VirtualMachineProfile profile = new VirtualMachineProfileImpl(vm);
    for (final StoragePoolAllocator allocator : _storagePoolAllocators) {

        final ExcludeList avoidList = new ExcludeList();
        for (final StoragePool pool : avoid) {
            avoidList.addPool(pool.getId());
        }
        final DataCenterDeployment plan = new DataCenterDeployment(dc.getId(), podId, clusterId, hostId, null, null);

        final List<StoragePool> poolList = allocator.allocateToPool(dskCh, profile, plan, avoidList, 1);
        if (poolList != null && !poolList.isEmpty()) {
            return (StoragePool) dataStoreMgr.getDataStore(poolList.get(0).getId(), DataStoreRole.Primary);
        }
    }
    return null;
}
 
开发者ID:MissionCriticalCloud,项目名称:cosmic,代码行数:30,代码来源:VolumeOrchestrator.java

示例2: reserve

import com.cloud.dc.Pod; //导入方法依赖的package包/类
@Override
public void reserve(final NicProfile nic, final Network network, final VirtualMachineProfile vm, final DeployDestination dest, final ReservationContext context)
        throws InsufficientVirtualNetworkCapacityException, InsufficientAddressCapacityException {
    if (!_sNwMgr.isStorageIpRangeAvailable(dest.getZone().getId())) {
        super.reserve(nic, network, vm, dest, context);
        return;
    }

    final Pod pod = dest.getPod();
    final Integer vlan;

    final StorageNetworkIpAddressVO ip = _sNwMgr.acquireIpAddress(pod.getId());
    if (ip == null) {
        throw new InsufficientAddressCapacityException("Unable to get a storage network ip address", Pod.class, pod.getId());
    }

    vlan = ip.getVlan();
    nic.setIPv4Address(ip.getIpAddress());
    nic.setMacAddress(NetUtils.long2Mac(NetUtils.createSequenceBasedMacAddress(ip.getMac())));
    nic.setFormat(AddressFormat.Ip4);
    nic.setIPv4Netmask(ip.getNetmask());
    nic.setBroadcastType(BroadcastDomainType.Storage);
    nic.setIPv4Gateway(ip.getGateway());
    if (vlan != null) {
        nic.setBroadcastUri(BroadcastDomainType.Storage.toUri(vlan));
    } else {
        nic.setBroadcastUri(null);
    }
    nic.setIsolationUri(null);
    s_logger.debug("Allocated a storage nic " + nic + " for " + vm);
}
 
开发者ID:MissionCriticalCloud,项目名称:cosmic,代码行数:32,代码来源:StorageNetworkGuru.java

示例3: reserve

import com.cloud.dc.Pod; //导入方法依赖的package包/类
@Override
public void reserve(final NicProfile nic, final Network config, final VirtualMachineProfile vm, final DeployDestination dest, final ReservationContext context)
        throws InsufficientVirtualNetworkCapacityException, InsufficientAddressCapacityException {

    final Pod pod = dest.getPod();

    Pair<String, Long> ip = null;

    _ipAllocDao.releaseIpAddress(nic.getId());
    final DataCenterIpAddressVO vo = _ipAllocDao.takeIpAddress(dest.getZone().getId(), dest.getPod().getId(), nic.getId(), context.getReservationId());

    if (vo != null) {
        ip = new Pair<>(vo.getIpAddress(), vo.getMacAddress());
    }

    if (ip == null) {
        throw new InsufficientAddressCapacityException("Unable to get a management ip address", Pod.class, pod.getId());
    }

    nic.setIPv4Address(ip.first());
    nic.setMacAddress(NetUtils.long2Mac(NetUtils.createSequenceBasedMacAddress(ip.second())));
    nic.setIPv4Gateway(pod.getGateway());
    nic.setFormat(AddressFormat.Ip4);
    final String netmask = NetUtils.getCidrNetmask(pod.getCidrSize());
    nic.setIPv4Netmask(netmask);
    nic.setBroadcastType(BroadcastDomainType.Native);
    nic.setBroadcastUri(null);
    nic.setIsolationUri(null);

    s_logger.debug("Allocated a nic " + nic + " for " + vm);
}
 
开发者ID:MissionCriticalCloud,项目名称:cosmic,代码行数:32,代码来源:PodBasedNetworkGuru.java

示例4: findStoragePool

import com.cloud.dc.Pod; //导入方法依赖的package包/类
@Override
public StoragePool findStoragePool(DiskProfile dskCh, DataCenter dc, Pod pod, Long clusterId, Long hostId, VirtualMachine vm, final Set<StoragePool> avoid) {
    Long podId = null;
    if (pod != null) {
        podId = pod.getId();
    } else if (clusterId != null) {
        Cluster cluster = _entityMgr.findById(Cluster.class, clusterId);
        if (cluster != null) {
            podId = cluster.getPodId();
        }
    }

    VirtualMachineProfile profile = new VirtualMachineProfileImpl(vm);
    for (StoragePoolAllocator allocator : _storagePoolAllocators) {

        ExcludeList avoidList = new ExcludeList();
        for (StoragePool pool : avoid) {
            avoidList.addPool(pool.getId());
        }
        DataCenterDeployment plan = new DataCenterDeployment(dc.getId(), podId, clusterId, hostId, null, null);

        final List<StoragePool> poolList = allocator.allocateToPool(dskCh, profile, plan, avoidList, 1);
        if (poolList != null && !poolList.isEmpty()) {
            return (StoragePool)dataStoreMgr.getDataStore(poolList.get(0).getId(), DataStoreRole.Primary);
        }
    }
    return null;
}
 
开发者ID:apache,项目名称:cloudstack,代码行数:29,代码来源:VolumeOrchestrator.java

示例5: reserve

import com.cloud.dc.Pod; //导入方法依赖的package包/类
@Override
public void reserve(NicProfile nic, Network network, VirtualMachineProfile vm, DeployDestination dest, ReservationContext context)
    throws InsufficientVirtualNetworkCapacityException, InsufficientAddressCapacityException {
    if (!_sNwMgr.isStorageIpRangeAvailable(dest.getDataCenter().getId())) {
        super.reserve(nic, network, vm, dest, context);
        return;
    }

    Pod pod = dest.getPod();
    Integer vlan = null;

    StorageNetworkIpAddressVO ip = _sNwMgr.acquireIpAddress(pod.getId());
    if (ip == null) {
        throw new InsufficientAddressCapacityException("Unable to get a storage network ip address", Pod.class, pod.getId());
    }

    vlan = ip.getVlan();
    nic.setIPv4Address(ip.getIpAddress());
    nic.setMacAddress(NetUtils.long2Mac(NetUtils.createSequenceBasedMacAddress(ip.getMac(), NetworkModel.MACIdentifier.value())));
    nic.setFormat(AddressFormat.Ip4);
    nic.setIPv4Netmask(ip.getNetmask());
    nic.setBroadcastType(BroadcastDomainType.Storage);
    nic.setIPv4Gateway(ip.getGateway());
    if (vlan != null) {
        nic.setBroadcastUri(BroadcastDomainType.Storage.toUri(vlan));
    } else {
        nic.setBroadcastUri(null);
    }
    nic.setIsolationUri(null);
    s_logger.debug("Allocated a storage nic " + nic + " for " + vm);
}
 
开发者ID:apache,项目名称:cloudstack,代码行数:32,代码来源:StorageNetworkGuru.java

示例6: reserve

import com.cloud.dc.Pod; //导入方法依赖的package包/类
@Override
public void reserve(NicProfile nic, Network config, VirtualMachineProfile vm, DeployDestination dest, ReservationContext context)
    throws InsufficientVirtualNetworkCapacityException, InsufficientAddressCapacityException {
    Pod pod = dest.getPod();

    boolean forSystemVms = vm.getType().equals(VirtualMachine.Type.ConsoleProxy) || vm.getType().equals(VirtualMachine.Type.SecondaryStorageVm);
    PrivateAllocationData result = _dcDao.allocatePrivateIpAddress(dest.getDataCenter().getId(), dest.getPod().getId(), nic.getId(), context.getReservationId(), forSystemVms);
    if (result == null) {
        throw new InsufficientAddressCapacityException("Unable to get a management ip address", Pod.class, pod.getId());
    }
    Integer vlan = result.getVlan();

    nic.setIPv4Address(result.getIpAddress());
    nic.setMacAddress(NetUtils.long2Mac(NetUtils.createSequenceBasedMacAddress(result.getMacAddress(), NetworkModel.MACIdentifier.value())));
    nic.setIPv4Gateway(pod.getGateway());
    nic.setFormat(AddressFormat.Ip4);
    String netmask = NetUtils.getCidrNetmask(pod.getCidrSize());
    nic.setIPv4Netmask(netmask);
    nic.setBroadcastType(BroadcastDomainType.Native);
    if (vlan != null) {
        nic.setBroadcastUri(BroadcastDomainType.Native.toUri(vlan));
    } else {
        nic.setBroadcastUri(null);
    }
    nic.setIsolationUri(null);

    s_logger.debug("Allocated a nic " + nic + " for " + vm);
}
 
开发者ID:apache,项目名称:cloudstack,代码行数:29,代码来源:PodBasedNetworkGuru.java


注:本文中的com.cloud.dc.Pod.getId方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。