private String getInputFor(ParameterType t, BulkParameterFactory f) { if (t.getType().isEnum()) { final StringBuilder ret = new StringBuilder(); ret.append("<select name=\"").append(t.name()).append("\">"); for (final Object o : t.getType().getEnumConstants()) { if (o.equals(f.getParam(t))) { ret.append("<option selected=\"selected\">"); } else { ret.append("<option>"); } ret.append(o.toString()).append("</option>"); } ret.append("</select>"); return ret.toString(); } else if (t.getType().equals(Double.class)) { return "<input name=\"" + t.name() + "\" value=\"" + f.getParam(t) + "\" type=\"number\" step=\"any\" />"; } else if (t.getType().equals(Integer.class)) { return "<input name=\"" + t.name() + "\" value=\"" + f.getParam(t) + "\" type=\"number\" step=\"1\" />"; } else { return "Invalid type: " + t.getType(); } }
private Properties parametersToProperties(BulkParameterFactory f) { final Properties ret = new Properties(); for (final ParameterType type : ParameterType.values()) { ret.setProperty(type.name(), f.getParam(type).toString()); } return ret; }
private BulkParameterFactory getParameters(PrintWriter w, HttpServletRequest request) { BulkParameterFactory f = BulkParameterFactory.forCommercial(); for (final ParameterType t : ParameterType.values()) { final String param = request.getParameter(t.name()); if (param != null && !param.isEmpty()) { try { f = f.copyWithChangedParam(t, t.parse(param)); } catch (final RuntimeException e) { this.printParseError(w, t.toString(), e); } } } return f; }