package ilarkesto.form;
import java.util.Collection;
import java.util.Map;
import org.apache.commons.fileupload.FileItem;
public interface FormField {
// --- creating ---
FormField setLabel(String value);
FormField setHintText(String value);
FormField setRequired(boolean required);
FormField addFormFieldChangeListener(FormFieldChangeListener listener);
// --- rendering ---
String getName();
String getLabel();
String getHintText();
boolean isRequired();
String getErrorMessage();
// --- rendering + submitting ---
String getValueAsString();
// --- submitting ---
Form getForm();
void setErrorMessage(String value);
void update(Map<String, String> data, Collection<FileItem> uploadedFiles);
void validate() throws ValidationException;
}