All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.fluentlenium.core.proxy.FluentProxyState Maven / Gradle / Ivy

package org.fluentlenium.core.proxy;

import java.util.Optional;

/**
 * State of the element locator proxy.
 *
 * @param  type of the locator handler result
 */
public interface FluentProxyState {

    /**
     * Check if the element is present in the DOM.
     *
     * @return true if the element is present, false otherwise
     */
    boolean present();

    /**
     * Search for the element now, actually performing the search on the {@link org.openqa.selenium.WebDriver}.
     * 

* It has no effect if the element is already loaded. * * @return this object reference to chain calls. * @throws org.openqa.selenium.NoSuchElementException if the element is not present, and has never been. * @throws org.openqa.selenium.StaleElementReferenceException if the element has been present, but is not present anymore. */ T now(); /** * Search for the element now, actually performing the search on the {@link org.openqa.selenium.WebDriver}. *

* It has no effect if the element is already loaded. * * @param force force the search even if element is already loaded * @return this object reference to chain calls. * @throws org.openqa.selenium.NoSuchElementException if the element is not present, and has never been. * @throws org.openqa.selenium.StaleElementReferenceException if the element has been present, but is not present anymore. */ T now(boolean force); /** * Reset the element. Subsequent calls will perform the search again, instead of using the cached result. * * @return this object reference to chain calls. */ T reset(); /** * Check if the element is loaded. * * @return true if the element is loaded, false otherwise */ boolean loaded(); /** * Builds an optional. If underlying element is lazy, search will be perfomed when invoking this method. * * @return An optional wrapping this. * @see #present() * @see #now() */ Optional optional(); }





© 2015 - 2024 Weber Informatics LLC | Privacy Policy