/** * First treats windows as a special case: check if platform==windows. * Then tries matching based on the image name. * And then falls back to checking other types of platform. */ private OsFamily parseOsFamily(org.jclouds.ec2.domain.Image from) { if (from.getPlatform() != null && from.getPlatform().equalsIgnoreCase("windows")) { return OsFamily.WINDOWS; } OsFamily family = parseOsFamilyOrUnrecognized(from.getImageLocation()); if (family == OsFamily.UNRECOGNIZED && from.getPlatform() != null) { family = parseOsFamilyOrUnrecognized(from.getPlatform()); } return family; } }
@Override public OperatingSystem apply(String from) { checkNotNull(from, "vapp template name"); Builder builder = new OperatingSystem.Builder(); builder.description(from); if (from.equals("-Windows 2003 Std. R2 SQL 2005 Std. (x64)")) System.out.print(';'); builder.is64Bit(from.indexOf("64") != -1); from = from.replace("Red Hat Enterprise Linux", "RHEL").replace("Sun Solaris", "SOLARIS").replace( " Server", "").replace("Std. ", ""); Matcher matcher = OS_PATTERN.matcher(from); if (matcher.find()) { OsFamily osFamily = parseOsFamilyOrUnrecognized(matcher.group(1)); builder.family(osFamily); String version = (matcher.group(3) != null) ? matcher.group(2) + matcher.group(3) : matcher.group(2); builder.version(ComputeServiceUtils.parseVersionOrReturnEmptyString(osFamily, version, osVersionMap)); } else { OsFamily osFamily = parseOsFamilyOrUnrecognized(from); builder.family(osFamily); } return builder.build(); } }
/** * First treats windows as a special case: check if platform==windows. * Then tries matching based on the image name. * And then falls back to checking other types of platform. */ private OsFamily parseOsFamily(org.jclouds.ec2.domain.Image from) { if (from.getPlatform() != null && from.getPlatform().equalsIgnoreCase("windows")) { return OsFamily.WINDOWS; } OsFamily family = parseOsFamilyOrUnrecognized(from.getImageLocation()); if (family == OsFamily.UNRECOGNIZED && from.getPlatform() != null) { family = parseOsFamilyOrUnrecognized(from.getPlatform()); } return family; } }
/** * First treats windows as a special case: check if platform==windows. * Then tries matching based on the image name. * And then falls back to checking other types of platform. */ private OsFamily parseOsFamily(org.jclouds.ec2.domain.Image from) { if (from.getPlatform() != null && from.getPlatform().equalsIgnoreCase("windows")) { return OsFamily.WINDOWS; } OsFamily family = parseOsFamilyOrUnrecognized(from.getImageLocation()); if (family == OsFamily.UNRECOGNIZED && from.getPlatform() != null) { family = parseOsFamilyOrUnrecognized(from.getPlatform()); } return family; } }
/** * First treats windows as a special case: check if platform==windows. * Then tries matching based on the image name. * And then falls back to checking other types of platform. */ private OsFamily parseOsFamily(org.jclouds.ec2.domain.Image from) { if (from.getPlatform() != null && from.getPlatform().equalsIgnoreCase("windows")) { return OsFamily.WINDOWS; } OsFamily family = parseOsFamilyOrUnrecognized(from.getImageLocation()); if (family == OsFamily.UNRECOGNIZED && from.getPlatform() != null) { family = parseOsFamilyOrUnrecognized(from.getPlatform()); } return family; } }
/** * First treats windows as a special case: check if platform==windows. * Then tries matching based on the image name. * And then falls back to checking other types of platform. */ private OsFamily parseOsFamily(org.jclouds.ec2.domain.Image from) { if (from.getPlatform() != null && from.getPlatform().equalsIgnoreCase("windows")) { return OsFamily.WINDOWS; } OsFamily family = parseOsFamilyOrUnrecognized(from.getImageLocation()); if (family == OsFamily.UNRECOGNIZED && from.getPlatform() != null) { family = parseOsFamilyOrUnrecognized(from.getPlatform()); } return family; } }
@Override public OperatingSystem apply(String from) { OperatingSystem.Builder builder = OperatingSystem.builder(); OsFamily osFamily = parseOsFamilyOrUnrecognized(checkNotNull(from, "vapp template name")); builder.family(osFamily); builder.description(from); builder.is64Bit(from.indexOf("64") != -1); Matcher matcher = OS_PATTERN.matcher(from); if (matcher.find()) { builder.version(ComputeServiceUtils.parseVersionOrReturnEmptyString(osFamily, matcher.group(3), osVersionMap)); } return builder.build(); } }
@Override public OperatingSystem apply(DiskImage image) { checkNotNull(image, "disk image"); // convert to short name rhel to accommodate ComputeServiceUtils // conventions String shortOsName = image.getOsName().replace( "Red Hat Enterprise Linux", "rhel"); OsFamily osFamily = ComputeServiceUtils .parseOsFamilyOrUnrecognized(shortOsName); OperatingSystem.Builder builder = OperatingSystem.builder(); builder.name(image.getOsName()); builder.family(osFamily); builder.is64Bit(image.getOsName().contains("64bit") || image.getOsName().contains("64 bit") || image.getOsName().contains("x64")); // OsType returns guest type (hvm, pv), which aws-ec2 is mapping to arch builder.arch(image.getOsType()); Matcher m = OS_VERSION_PATTERN.matcher(image.getOsName()); if (m.matches()) { builder.version(m.group(1)); } builder.description(image.getOsName()); return builder.build(); } }
@Override public OperatingSystem apply(DiskImage image) { checkNotNull(image, "disk image"); // convert to short name rhel to accommodate ComputeServiceUtils // conventions String shortOsName = image.getOsName().replace( "Red Hat Enterprise Linux", "rhel"); OsFamily osFamily = ComputeServiceUtils .parseOsFamilyOrUnrecognized(shortOsName); OperatingSystem.Builder builder = OperatingSystem.builder(); builder.name(image.getOsName()); builder.family(osFamily); builder.is64Bit(image.getOsName().contains("64bit") || image.getOsName().contains("64 bit") || image.getOsName().contains("x64")); // OsType returns guest type (hvm, pv), which aws-ec2 is mapping to arch builder.arch(image.getOsType()); Matcher m = OS_VERSION_PATTERN.matcher(image.getOsName()); if (m.matches()) { builder.version(m.group(1)); } builder.description(image.getOsName()); return builder.build(); } }
@Override public OperatingSystem apply(DiskImage image) { checkNotNull(image, "disk image"); // convert to short name rhel to accommodate ComputeServiceUtils // conventions String shortOsName = image.getOsName().replace( "Red Hat Enterprise Linux", "rhel"); OsFamily osFamily = ComputeServiceUtils .parseOsFamilyOrUnrecognized(shortOsName); OperatingSystem.Builder builder = OperatingSystem.builder(); builder.name(image.getOsName()); builder.family(osFamily); builder.is64Bit(image.getOsName().contains("64bit") || image.getOsName().contains("64 bit") || image.getOsName().contains("x64")); // OsType returns guest type (hvm, pv), which aws-ec2 is mapping to arch builder.arch(image.getOsType()); Matcher m = OS_VERSION_PATTERN.matcher(image.getOsName()); if (m.matches()) { builder.version(m.group(1)); } builder.description(image.getOsName()); return builder.build(); } }
if (from.getOsType() != null) osBuilder.name(from.getOsType() + ""); osBuilder.family(ComputeServiceUtils.parseOsFamilyOrUnrecognized(from.getOperatingSystemDescription())); osBuilder.version(""); osBuilder.is64Bit(from.getOperatingSystemDescription().indexOf("64") != -1);