/**
* Form that divides submit-events to inital and resubmit.
* @author igor vaynberg
*/
abstract class ResubmitSafeForm extends Form
{
private boolean submitted;
private static final long serialVersionUID = 1L;
public ResubmitSafeForm(final String id)
{
super(id);
}
public ResubmitSafeForm(final String id, final IModel model)
{
super(id, model);
}
protected abstract void onInitialSubmit();
protected abstract void onResubmit();
protected final void onSubmitted()
{
if (!this.submitted)
{
onInitialSubmit();
this.submitted = true;
}
else
{
onResubmit();
}
}
}