@VisibleForTesting void addArgValidation(StringBuilder switchClause, OsFamily family) { if (family.equals(OsFamily.WINDOWS)) { for (String value : valueToActions.keySet()) { switchClause.append("if not \"%").append(arg).append(String.format("\" == \"%s\" ", value)); } switchClause.append("(\r\n set EXCEPTION=bad argument: %").append(arg).append(" not in "); switchClause.append(Joiner.on(" ").join(valueToActions.keySet())); switchClause.append("\r\n goto abort\r\n)\r\n"); } }
@Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (getClass() != obj.getClass()) return false; OperatingSystem other = (OperatingSystem) obj; if (arch == null) { if (other.arch != null) return false; } else if (!arch.equals(other.arch)) return false; if (description == null) { if (other.description != null) return false; } else if (!description.equals(other.description)) return false; if (family == null) { if (other.family != null) return false; } else if (!family.equals(other.family)) return false; if (is64Bit != other.is64Bit) return false; if (name == null) { if (other.name != null) return false; } else if (!name.equals(other.name)) return false; if (version == null) { if (other.version != null) return false; } else if (!version.equals(other.version)) return false; return true; }