![JAR search and dependency download from the Maven repository](/logo.png)
com.g2forge.gearbox.browser.operation.ChangeWait Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of gb-browser Show documentation
Show all versions of gb-browser Show documentation
Library for browsing websites, screen scraping & automation.
package com.g2forge.gearbox.browser.operation;
import org.openqa.selenium.By;
import com.g2forge.alexandria.java.core.marker.ISingleton;
import com.g2forge.alexandria.java.function.IFunction1;
import com.g2forge.gearbox.browser.IBrowsable;
import com.g2forge.gearbox.browser.IBrowser;
import com.g2forge.gearbox.browser.IElement;
public class ChangeWait implements IFunction1, ISingleton {
protected static class Wrapper extends LoadWait.Wrapper {
protected IElement original = null;
public Wrapper(IBrowser browser) {
super(browser);
}
public IElement getHTML(IBrowser browser) {
return browser.find(By.tagName("html"));
}
@Override
public void post() {
browser.operation().until(b -> !getHTML(b).equals(original));
super.post();
}
@Override
public void pre() {
super.pre();
original = getHTML(browser);
}
}
protected static final ChangeWait INSTANCE = new ChangeWait();
public static ChangeWait create() {
return INSTANCE;
}
@Override
public IOperationWrapper apply(IBrowsable browsable) {
return new Wrapper(browsable.getBrowser());
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy