com.atlassian.pageobjects.elements.query.webdriver
Class GenericWebDriverTimedQuery<T>

java.lang.Object
  extended by com.atlassian.pageobjects.elements.query.AbstractPollingQuery
      extended by com.atlassian.pageobjects.elements.query.AbstractTimedQuery<T>
          extended by com.atlassian.pageobjects.elements.query.webdriver.GenericWebDriverTimedQuery<T>
All Implemented Interfaces:
PollingQuery, TimedQuery<T>, ClockAware
Direct Known Subclasses:
WebDriverLocatableBasedTimedQuery, WebElementBasedTimedQuery

@NotThreadSafe
public class GenericWebDriverTimedQuery<T>
extends AbstractTimedQuery<T>

Generic, WebDriver-based implementation of TimedQuery.

It accepts a supplier of the target value and uses it to retrieve current value od the query. The functions are supposed to throw GenericWebDriverTimedQuery.InvalidValue to indicate that the current value should not be accepted as valid and returned by the query.


Nested Class Summary
static class GenericWebDriverTimedQuery.InvalidValue
           
 
Field Summary
protected  com.google.common.base.Supplier<T> valueSupplier
           
 
Fields inherited from class com.atlassian.pageobjects.elements.query.AbstractPollingQuery
defaultTimeout, interval
 
Fields inherited from interface com.atlassian.pageobjects.elements.query.PollingQuery
DEFAULT_INTERVAL
 
Constructor Summary
GenericWebDriverTimedQuery(GenericWebDriverTimedQuery<T> origin, long timeout)
           
GenericWebDriverTimedQuery(com.google.common.base.Supplier<T> supplier, Clock clock, long defTimeout, long interval, ExpirationHandler eh)
           
GenericWebDriverTimedQuery(com.google.common.base.Supplier<T> supplier, long defTimeout)
           
GenericWebDriverTimedQuery(com.google.common.base.Supplier<T> supplier, long defTimeout, long interval)
           
GenericWebDriverTimedQuery(com.google.common.base.Supplier<T> supplier, long defTimeout, long interval, ExpirationHandler eh)
           
 
Method Summary
protected  T currentValue()
          Current evaluation of the query.
protected  boolean shouldReturn(T currentEval)
          If the current evaluated query value should be returned.
 
Methods inherited from class com.atlassian.pageobjects.elements.query.AbstractTimedQuery
by, by, byDefaultTimeout, clock, expirationHandler, now, resetLastRun, toString
 
Methods inherited from class com.atlassian.pageobjects.elements.query.AbstractPollingQuery
defaultTimeout, interval
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface com.atlassian.pageobjects.elements.query.PollingQuery
defaultTimeout, interval
 

Field Detail

valueSupplier

protected final com.google.common.base.Supplier<T> valueSupplier
Constructor Detail

GenericWebDriverTimedQuery

public GenericWebDriverTimedQuery(com.google.common.base.Supplier<T> supplier,
                                  Clock clock,
                                  long defTimeout,
                                  long interval,
                                  ExpirationHandler eh)

GenericWebDriverTimedQuery

public GenericWebDriverTimedQuery(com.google.common.base.Supplier<T> supplier,
                                  long defTimeout,
                                  long interval,
                                  ExpirationHandler eh)

GenericWebDriverTimedQuery

public GenericWebDriverTimedQuery(com.google.common.base.Supplier<T> supplier,
                                  long defTimeout,
                                  long interval)

GenericWebDriverTimedQuery

public GenericWebDriverTimedQuery(com.google.common.base.Supplier<T> supplier,
                                  long defTimeout)

GenericWebDriverTimedQuery

public GenericWebDriverTimedQuery(GenericWebDriverTimedQuery<T> origin,
                                  long timeout)
Method Detail

shouldReturn

protected final boolean shouldReturn(T currentEval)
Description copied from class: AbstractTimedQuery
If the current evaluated query value should be returned.

Specified by:
shouldReturn in class AbstractTimedQuery<T>
Parameters:
currentEval - current query evaluation expires
Returns:
true, if the current query evaluation should be returned as a result of this timed query

currentValue

protected final T currentValue()
Description copied from class: AbstractTimedQuery
Current evaluation of the query.

Specified by:
currentValue in class AbstractTimedQuery<T>
Returns:
current evaluation of the query


Copyright © 2014 Atlassian. All rights reserved.