/**
* This is the confirm handler we use and the supporting code to abstract it
*/
public final class Confirm {
public static final Confirm CLICK_OK = new Confirm("Click OK");
public static final Confirm CLICK_CANCEL = new Confirm("Click Cancel");
public static final Confirm DEFAULT = CLICK_OK;
private final String type_;
private Confirm(final String type) {
this.type_ = type;
}
public String toString() {
return this.type_;
}
}
public class HtmlUnitConfirmHandler implements ConfirmHandler {
private final boolean response_;
private final WebBrowser browser;
public HtmlUnitConfirmHandler(final Confirm response, final WebBrowser parent) {
if (Confirm.CLICK_OK.equals(response)) {
this.response_ = true;
} else if (Confirm.CLICK_CANCEL.equals(response)) {
this.response_ = false;
} else {
this.response_ = true;
}
this.browser = parent;
}
public boolean handleConfirm(final Page page, final String message) {
this.browser.setLastConfirmMessage(message);
page.getEnclosingWindow().getWebClient().setConfirmHandler(null);
return this.response_;
}
}