List of usage examples for com.amazonaws.services.ec2.model InstanceNetworkInterfaceAttachment getDeviceIndex
public Integer getDeviceIndex()
The index of the device on the instance for the network interface attachment.
From source file:org.occiware.clouddriver.util.InstanceDataFactory.java
License:Apache License
/** * * @param instance/*from w ww .j av a 2 s .c o m*/ * @return */ private static List<NetworkInterfaceDO> buildNetworkInterfacesDatas(Instance instance) { List<InstanceNetworkInterface> netInts = instance.getNetworkInterfaces(); InstanceNetworkInterfaceAssociation netIntAsso; InstanceNetworkInterfaceAttachment netIntAttach; List<GroupIdentifier> groupIdentifiers; List<NetworkInterfaceDO> networkInterfaceDOs = new ArrayList<>(); NetworkInterfaceDO netDO; List<InstancePrivateIpAddress> ipAddresses; List<InstanceIpv6Address> ipv6Addresses; for (InstanceNetworkInterface netInt : netInts) { netDO = new NetworkInterfaceDO(); netDO.setDescription(netInt.getDescription()); netDO.setMacAddress(netInt.getMacAddress()); netDO.setNetworkInterfaceId(netInt.getNetworkInterfaceId()); netDO.setOwnerId(netInt.getOwnerId()); netDO.setPrivateDnsName(netInt.getPrivateDnsName()); netDO.setPrivateIpAddress(netInt.getPrivateIpAddress()); netDO.setSourceDestCheck(netInt.getSourceDestCheck()); netDO.setStatus(netInt.getStatus()); netDO.setSubnetId(netInt.getSubnetId()); netDO.setVpcId(netInt.getVpcId()); netIntAsso = netInt.getAssociation(); if (netIntAsso != null) { NetAssociationDO associationDO = new NetAssociationDO(); associationDO.setIpOwnerId(netIntAsso.getIpOwnerId()); associationDO.setPublicDnsName(netIntAsso.getPublicDnsName()); associationDO.setPublicIp(netIntAsso.getPublicIp()); netDO.setNetAssociation(associationDO); } netIntAttach = netInt.getAttachment(); if (netIntAttach != null) { netDO.setAttachmentId(netIntAttach.getAttachmentId()); netDO.setAttachTime(netIntAttach.getAttachTime()); netDO.setDeleteOnTermination(netIntAttach.getDeleteOnTermination()); netDO.setDeviceIndex(netIntAttach.getDeviceIndex()); netDO.setAttachmentStatus(netIntAttach.getStatus()); } groupIdentifiers = netInt.getGroups(); if (groupIdentifiers != null && !groupIdentifiers.isEmpty()) { List<GroupIdentifierDO> grpDOs = buildSecurityGroupsDatas(groupIdentifiers); netDO.setSecurityGroups(grpDOs); } ipv6Addresses = netInt.getIpv6Addresses(); if (ipv6Addresses != null && !ipv6Addresses.isEmpty()) { List<String> ipv6AddressesStr = new ArrayList<>(); for (InstanceIpv6Address ipv6Address : ipv6Addresses) { ipv6AddressesStr.add(ipv6Address.getIpv6Address()); } netDO.setIpv6Addresses(ipv6AddressesStr); } ipAddresses = netInt.getPrivateIpAddresses(); if (ipAddresses != null && !ipAddresses.isEmpty()) { List<IpAddressDO> ipAddressDOs = new ArrayList<>(); IpAddressDO addressDO; InstanceNetworkInterfaceAssociation netAsso; for (InstancePrivateIpAddress ipAddress : ipAddresses) { addressDO = new IpAddressDO(); addressDO.setPrimary(ipAddress.isPrimary()); addressDO.setPrivateDnsName(ipAddress.getPrivateDnsName()); addressDO.setPrivateIpAddress(ipAddress.getPrivateIpAddress()); netAsso = ipAddress.getAssociation(); if (netAsso != null) { NetAssociationDO associationDO = new NetAssociationDO(); associationDO.setIpOwnerId(netAsso.getIpOwnerId()); associationDO.setPublicDnsName(netAsso.getPublicDnsName()); associationDO.setPublicIp(netAsso.getPublicIp()); addressDO.setNetAssociation(associationDO); } ipAddressDOs.add(addressDO); } netDO.setIpAddresses(ipAddressDOs); } networkInterfaceDOs.add(netDO); } return networkInterfaceDOs; }