class DefaultFieldSetFactory implements FieldSetFactory {

	private DateFormat dateFormat;

	private NumberFormat numberFormat;

	/**
	 * The {@link NumberFormat} to use for parsing numbers. If unset then
	 * {@link java.util.Locale#US} will be used.
	 * @param numberFormat the {@link NumberFormat} to use for number parsing
	 */
	public void setNumberFormat(NumberFormat numberFormat) {
		this.numberFormat = numberFormat;
	}

	/**
	 * The {@link DateFormat} to use for parsing dates. If unset the default pattern is
	 * ISO standard <code>yyyy-MM-dd</code>.
	 * @param dateFormat the {@link DateFormat} to use for date parsing
	 */
	public void setDateFormat(DateFormat dateFormat) {
		this.dateFormat = dateFormat;
	}

	/**
	 * {@inheritDoc}
	 */
	@Override
	public FieldSet create(String[] values, String[] names) {
		DefaultFieldSet fieldSet = new DefaultFieldSet(values, names);
		return enhance(fieldSet);
	}

	/**
	 * {@inheritDoc}
	 */
	@Override
	public FieldSet create(String[] values) {
		DefaultFieldSet fieldSet = new DefaultFieldSet(values);
		return enhance(fieldSet);
	}

	private FieldSet enhance(DefaultFieldSet fieldSet) {<FILL_FUNCTION_BODY>}

}

		if (dateFormat != null) {
			fieldSet.setDateFormat(dateFormat);
		}
		if (numberFormat != null) {
			fieldSet.setNumberFormat(numberFormat);
		}
		return fieldSet;
	
<no_super_class>