test_class.file: karate-core/src/test/java/com/intuit/karate/driver/DriverOptionsTest.java
test_class.identifier: DriverOptionsTest
test_case.body: @Test
      public void testRetry() {
          DriverOptions options = new DriverOptions(getContext(), Collections.EMPTY_MAP, null, 0, null);
          options.retry(() -> 1, x -> x < 5, "not 5", false);        
      }
test_case.class_method_signature: DriverOptionsTest.testRetry()
test_case.full_signature: @Test public void testRetry()
test_case.identifier: testRetry
test_case.invocations: getContext retry
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void testRetry()
focal_class.declarator: options
focal_class.modifier: public final
focal_class.original_string: public final Map<String, Object> options;
focal_class.type: Map<String, Object>
focal_class.var_name: options
focal_class.declarator: timeout
focal_class.modifier: public final
focal_class.original_string: public final int timeout;
focal_class.type: int
focal_class.var_name: timeout
focal_class.declarator: start
focal_class.modifier: public final
focal_class.original_string: public final boolean start;
focal_class.type: boolean
focal_class.var_name: start
focal_class.declarator: executable
focal_class.modifier: public final
focal_class.original_string: public final String executable;
focal_class.type: String
focal_class.var_name: executable
focal_class.declarator: type
focal_class.modifier: public final
focal_class.original_string: public final String type;
focal_class.type: String
focal_class.var_name: type
focal_class.declarator: port
focal_class.modifier: public final
focal_class.original_string: public final int port;
focal_class.type: int
focal_class.var_name: port
focal_class.declarator: host
focal_class.modifier: public final
focal_class.original_string: public final String host;
focal_class.type: String
focal_class.var_name: host
focal_class.declarator: pollAttempts
focal_class.modifier: public final
focal_class.original_string: public final int pollAttempts;
focal_class.type: int
focal_class.var_name: pollAttempts
focal_class.declarator: pollInterval
focal_class.modifier: public final
focal_class.original_string: public final int pollInterval;
focal_class.type: int
focal_class.var_name: pollInterval
focal_class.declarator: headless
focal_class.modifier: public final
focal_class.original_string: public final boolean headless;
focal_class.type: boolean
focal_class.var_name: headless
focal_class.declarator: showProcessLog
focal_class.modifier: public final
focal_class.original_string: public final boolean showProcessLog;
focal_class.type: boolean
focal_class.var_name: showProcessLog
focal_class.declarator: showDriverLog
focal_class.modifier: public final
focal_class.original_string: public final boolean showDriverLog;
focal_class.type: boolean
focal_class.var_name: showDriverLog
focal_class.declarator: logger
focal_class.modifier: public final
focal_class.original_string: public final Logger logger;
focal_class.type: Logger
focal_class.var_name: logger
focal_class.declarator: appender
focal_class.modifier: public final
focal_class.original_string: public final LogAppender appender;
focal_class.type: LogAppender
focal_class.var_name: appender
focal_class.declarator: processLogger
focal_class.modifier: public final
focal_class.original_string: public final Logger processLogger;
focal_class.type: Logger
focal_class.var_name: processLogger
focal_class.declarator: driverLogger
focal_class.modifier: public final
focal_class.original_string: public final Logger driverLogger;
focal_class.type: Logger
focal_class.var_name: driverLogger
focal_class.declarator: uniqueName
focal_class.modifier: public final
focal_class.original_string: public final String uniqueName;
focal_class.type: String
focal_class.var_name: uniqueName
focal_class.declarator: workingDir
focal_class.modifier: public final
focal_class.original_string: public final File workingDir;
focal_class.type: File
focal_class.var_name: workingDir
focal_class.declarator: disableNotifications
focal_class.modifier: public final
focal_class.original_string: public final boolean disableNotifications;
focal_class.type: boolean
focal_class.var_name: disableNotifications
focal_class.declarator: userAgent
focal_class.modifier: public final
focal_class.original_string: public final String userAgent;
focal_class.type: String
focal_class.var_name: userAgent
focal_class.declarator: userDataDir
focal_class.modifier: public final
focal_class.original_string: public final String userDataDir;
focal_class.type: String
focal_class.var_name: userDataDir
focal_class.declarator: processLogFile
focal_class.modifier: public final
focal_class.original_string: public final String processLogFile;
focal_class.type: String
focal_class.var_name: processLogFile
focal_class.declarator: maxPayloadSize
focal_class.modifier: public final
focal_class.original_string: public final int maxPayloadSize;
focal_class.type: int
focal_class.var_name: maxPayloadSize
focal_class.declarator: addOptions
focal_class.modifier: public final
focal_class.original_string: public final List<String> addOptions;
focal_class.type: List<String>
focal_class.var_name: addOptions
focal_class.declarator: args = new ArrayList<>()
focal_class.modifier: public final
focal_class.original_string: public final List<String> args = new ArrayList<>();
focal_class.type: List<String>
focal_class.var_name: args
focal_class.declarator: webDriverUrl
focal_class.modifier: public final
focal_class.original_string: public final String webDriverUrl;
focal_class.type: String
focal_class.var_name: webDriverUrl
focal_class.declarator: webDriverPath
focal_class.modifier: public final
focal_class.original_string: public final String webDriverPath;
focal_class.type: String
focal_class.var_name: webDriverPath
focal_class.declarator: webDriverSession
focal_class.modifier: public final
focal_class.original_string: public final Map<String, Object> webDriverSession;
focal_class.type: Map<String, Object>
focal_class.var_name: webDriverSession
focal_class.declarator: httpConfig
focal_class.modifier: public final
focal_class.original_string: public final Map<String, Object> httpConfig;
focal_class.type: Map<String, Object>
focal_class.var_name: httpConfig
focal_class.declarator: target
focal_class.modifier: public final
focal_class.original_string: public final Target target;
focal_class.type: Target
focal_class.var_name: target
focal_class.declarator: beforeStart
focal_class.modifier: public final
focal_class.original_string: public final String beforeStart;
focal_class.type: String
focal_class.var_name: beforeStart
focal_class.declarator: afterStop
focal_class.modifier: public final
focal_class.original_string: public final String afterStop;
focal_class.type: String
focal_class.var_name: afterStop
focal_class.declarator: videoFile
focal_class.modifier: public final
focal_class.original_string: public final String videoFile;
focal_class.type: String
focal_class.var_name: videoFile
focal_class.declarator: highlight
focal_class.modifier: public final
focal_class.original_string: public final boolean highlight;
focal_class.type: boolean
focal_class.var_name: highlight
focal_class.declarator: highlightDuration
focal_class.modifier: public final
focal_class.original_string: public final int highlightDuration;
focal_class.type: int
focal_class.var_name: highlightDuration
focal_class.declarator: attach
focal_class.modifier: public final
focal_class.original_string: public final String attach;
focal_class.type: String
focal_class.var_name: attach
focal_class.declarator: retryEnabled
focal_class.modifier: private
focal_class.original_string: private boolean retryEnabled;
focal_class.type: boolean
focal_class.var_name: retryEnabled
focal_class.declarator: retryInterval = null
focal_class.modifier: private
focal_class.original_string: private Integer retryInterval = null;
focal_class.type: Integer
focal_class.var_name: retryInterval
focal_class.declarator: retryCount = null
focal_class.modifier: private
focal_class.original_string: private Integer retryCount = null;
focal_class.type: Integer
focal_class.var_name: retryCount
focal_class.declarator: preSubmitHash = null
focal_class.modifier: private
focal_class.original_string: private String preSubmitHash = null;
focal_class.type: String
focal_class.var_name: preSubmitHash
focal_class.declarator: timeoutOverride
focal_class.modifier: private
focal_class.original_string: private Integer timeoutOverride;
focal_class.type: Integer
focal_class.var_name: timeoutOverride
focal_class.declarator: context
focal_class.modifier: private
focal_class.original_string: private ScenarioContext context;
focal_class.type: ScenarioContext
focal_class.var_name: context
focal_class.declarator: SCROLL_JS_FUNCTION = "function(e){ var d = window.getComputedStyle(e).display;"
              + " while(d == 'none'){ e = e.parentElement; d = window.getComputedStyle(e).display }"
              + " e.scrollIntoView({block: 'center'}) }"
focal_class.modifier: public static final
focal_class.original_string: public static final String SCROLL_JS_FUNCTION = "function(e){ var d = window.getComputedStyle(e).display;"
              + " while(d == 'none'){ e = e.parentElement; d = window.getComputedStyle(e).display }"
              + " e.scrollIntoView({block: 'center'}) }";
focal_class.type: String
focal_class.var_name: SCROLL_JS_FUNCTION
focal_class.declarator: KARATE_REF_GENERATOR = "function(e){"
              + " if (!document._karate) document._karate = { seq: (new Date()).getTime() };"
              + " var ref = 'ref' + document._karate.seq++; document._karate[ref] = e; return ref }"
focal_class.modifier: public static final
focal_class.original_string: public static final String KARATE_REF_GENERATOR = "function(e){"
              + " if (!document._karate) document._karate = { seq: (new Date()).getTime() };"
              + " var ref = 'ref' + document._karate.seq++; document._karate[ref] = e; return ref }";
focal_class.type: String
focal_class.var_name: KARATE_REF_GENERATOR
focal_class.declarator: DOCUMENT = "document"
focal_class.modifier: private static final
focal_class.original_string: private static final String DOCUMENT = "document";
focal_class.type: String
focal_class.var_name: DOCUMENT
focal_class.declarator: HIGHLIGHT_FN = "function(e){ var old = e.getAttribute('style');"
              + " e.setAttribute('style', 'background: yellow; border: 2px solid red;');"
              + " setTimeout(function(){ e.setAttribute('style', old) }, %d) }"
focal_class.modifier: private static final
focal_class.original_string: private static final String HIGHLIGHT_FN = "function(e){ var old = e.getAttribute('style');"
              + " e.setAttribute('style', 'background: yellow; border: 2px solid red;');"
              + " setTimeout(function(){ e.setAttribute('style', old) }, %d) }";
focal_class.type: String
focal_class.var_name: HIGHLIGHT_FN
focal_class.file: karate-core/src/main/java/com/intuit/karate/driver/DriverOptions.java
focal_class.identifier: DriverOptions
focal_class.class_method_signature: DriverOptions.setContext(ScenarioContext context)
focal_class.full_signature: public void setContext(ScenarioContext context)
focal_class.identifier: setContext
focal_class.modifiers: public
focal_class.parameters: (ScenarioContext context)
focal_class.return: void
focal_class.signature: void setContext(ScenarioContext context)
focal_class.class_method_signature: DriverOptions.getContext()
focal_class.full_signature: public ScenarioContext getContext()
focal_class.identifier: getContext
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: ScenarioContext
focal_class.signature: ScenarioContext getContext()
focal_class.class_method_signature: DriverOptions.isRetryEnabled()
focal_class.full_signature: public boolean isRetryEnabled()
focal_class.identifier: isRetryEnabled
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: boolean
focal_class.signature: boolean isRetryEnabled()
focal_class.class_method_signature: DriverOptions.getPreSubmitHash()
focal_class.full_signature: public String getPreSubmitHash()
focal_class.identifier: getPreSubmitHash
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: String
focal_class.signature: String getPreSubmitHash()
focal_class.class_method_signature: DriverOptions.setPreSubmitHash(String preSubmitHash)
focal_class.full_signature: public void setPreSubmitHash(String preSubmitHash)
focal_class.identifier: setPreSubmitHash
focal_class.modifiers: public
focal_class.parameters: (String preSubmitHash)
focal_class.return: void
focal_class.signature: void setPreSubmitHash(String preSubmitHash)
focal_class.class_method_signature: DriverOptions.get(String key, T defaultValue)
focal_class.full_signature: private T get(String key, T defaultValue)
focal_class.identifier: get
focal_class.modifiers: private
focal_class.parameters: (String key, T defaultValue)
focal_class.return: T
focal_class.signature: T get(String key, T defaultValue)
focal_class.class_method_signature: DriverOptions.DriverOptions(ScenarioContext context, Map<String, Object> options, LogAppender appender, int defaultPort, String defaultExecutable)
focal_class.full_signature: public  DriverOptions(ScenarioContext context, Map<String, Object> options, LogAppender appender, int defaultPort, String defaultExecutable)
focal_class.identifier: DriverOptions
focal_class.modifiers: public
focal_class.parameters: (ScenarioContext context, Map<String, Object> options, LogAppender appender, int defaultPort, String defaultExecutable)
focal_class.signature:  DriverOptions(ScenarioContext context, Map<String, Object> options, LogAppender appender, int defaultPort, String defaultExecutable)
focal_class.class_method_signature: DriverOptions.resolvePort(int defaultPort)
focal_class.full_signature: private int resolvePort(int defaultPort)
focal_class.identifier: resolvePort
focal_class.modifiers: private
focal_class.parameters: (int defaultPort)
focal_class.return: int
focal_class.signature: int resolvePort(int defaultPort)
focal_class.class_method_signature: DriverOptions.getHttp()
focal_class.full_signature: public Http getHttp()
focal_class.identifier: getHttp
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: Http
focal_class.signature: Http getHttp()
focal_class.class_method_signature: DriverOptions.getUrlBase()
focal_class.full_signature: private String getUrlBase()
focal_class.identifier: getUrlBase
focal_class.modifiers: private
focal_class.parameters: ()
focal_class.return: String
focal_class.signature: String getUrlBase()
focal_class.class_method_signature: DriverOptions.arg(String arg)
focal_class.full_signature: public void arg(String arg)
focal_class.identifier: arg
focal_class.modifiers: public
focal_class.parameters: (String arg)
focal_class.return: void
focal_class.signature: void arg(String arg)
focal_class.class_method_signature: DriverOptions.startProcess()
focal_class.full_signature: public Command startProcess()
focal_class.identifier: startProcess
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: Command
focal_class.signature: Command startProcess()
focal_class.class_method_signature: DriverOptions.start(ScenarioContext context, Map<String, Object> options, LogAppender appender)
focal_class.full_signature: public static Driver start(ScenarioContext context, Map<String, Object> options, LogAppender appender)
focal_class.identifier: start
focal_class.modifiers: public static
focal_class.parameters: (ScenarioContext context, Map<String, Object> options, LogAppender appender)
focal_class.return: Driver
focal_class.signature: Driver start(ScenarioContext context, Map<String, Object> options, LogAppender appender)
focal_class.class_method_signature: DriverOptions.getSession(String browserName)
focal_class.full_signature: private Map<String, Object> getSession(String browserName)
focal_class.identifier: getSession
focal_class.modifiers: private
focal_class.parameters: (String browserName)
focal_class.return: Map<String, Object>
focal_class.signature: Map<String, Object> getSession(String browserName)
focal_class.class_method_signature: DriverOptions.getWebDriverSessionPayload()
focal_class.full_signature: public Map<String, Object> getWebDriverSessionPayload()
focal_class.identifier: getWebDriverSessionPayload
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: Map<String, Object>
focal_class.signature: Map<String, Object> getWebDriverSessionPayload()
focal_class.class_method_signature: DriverOptions.preProcessWildCard(String locator)
focal_class.full_signature: public static String preProcessWildCard(String locator)
focal_class.identifier: preProcessWildCard
focal_class.modifiers: public static
focal_class.parameters: (String locator)
focal_class.return: String
focal_class.signature: String preProcessWildCard(String locator)
focal_class.class_method_signature: DriverOptions.selector(String locator)
focal_class.full_signature: public static String selector(String locator)
focal_class.identifier: selector
focal_class.modifiers: public static
focal_class.parameters: (String locator)
focal_class.return: String
focal_class.signature: String selector(String locator)
focal_class.class_method_signature: DriverOptions.selector(String locator, String contextNode)
focal_class.full_signature: public static String selector(String locator, String contextNode)
focal_class.identifier: selector
focal_class.modifiers: public static
focal_class.parameters: (String locator, String contextNode)
focal_class.return: String
focal_class.signature: String selector(String locator, String contextNode)
focal_class.class_method_signature: DriverOptions.setTimeout(Integer timeout)
focal_class.full_signature: public void setTimeout(Integer timeout)
focal_class.identifier: setTimeout
focal_class.modifiers: public
focal_class.parameters: (Integer timeout)
focal_class.return: void
focal_class.signature: void setTimeout(Integer timeout)
focal_class.class_method_signature: DriverOptions.getTimeout()
focal_class.full_signature: public int getTimeout()
focal_class.identifier: getTimeout
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: int
focal_class.signature: int getTimeout()
focal_class.class_method_signature: DriverOptions.setRetryInterval(Integer retryInterval)
focal_class.full_signature: public void setRetryInterval(Integer retryInterval)
focal_class.identifier: setRetryInterval
focal_class.modifiers: public
focal_class.parameters: (Integer retryInterval)
focal_class.return: void
focal_class.signature: void setRetryInterval(Integer retryInterval)
focal_class.class_method_signature: DriverOptions.getRetryInterval()
focal_class.full_signature: public int getRetryInterval()
focal_class.identifier: getRetryInterval
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: int
focal_class.signature: int getRetryInterval()
focal_class.class_method_signature: DriverOptions.getRetryCount()
focal_class.full_signature: public int getRetryCount()
focal_class.identifier: getRetryCount
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: int
focal_class.signature: int getRetryCount()
focal_class.class_method_signature: DriverOptions.retry(Supplier<T> action, Predicate<T> condition, String logDescription, boolean failWithException)
focal_class.full_signature: public T retry(Supplier<T> action, Predicate<T> condition, String logDescription, boolean failWithException)
focal_class.identifier: retry
focal_class.modifiers: public
focal_class.parameters: (Supplier<T> action, Predicate<T> condition, String logDescription, boolean failWithException)
focal_class.return: T
focal_class.signature: T retry(Supplier<T> action, Predicate<T> condition, String logDescription, boolean failWithException)
focal_class.class_method_signature: DriverOptions.wrapInFunctionInvoke(String text)
focal_class.full_signature: public static String wrapInFunctionInvoke(String text)
focal_class.identifier: wrapInFunctionInvoke
focal_class.modifiers: public static
focal_class.parameters: (String text)
focal_class.return: String
focal_class.signature: String wrapInFunctionInvoke(String text)
focal_class.class_method_signature: DriverOptions.highlightFn(int millis)
focal_class.full_signature: private static String highlightFn(int millis)
focal_class.identifier: highlightFn
focal_class.modifiers: private static
focal_class.parameters: (int millis)
focal_class.return: String
focal_class.signature: String highlightFn(int millis)
focal_class.class_method_signature: DriverOptions.highlight(String locator, int millis)
focal_class.full_signature: public String highlight(String locator, int millis)
focal_class.identifier: highlight
focal_class.modifiers: public
focal_class.parameters: (String locator, int millis)
focal_class.return: String
focal_class.signature: String highlight(String locator, int millis)
focal_class.class_method_signature: DriverOptions.highlightAll(String locator, int millis)
focal_class.full_signature: public String highlightAll(String locator, int millis)
focal_class.identifier: highlightAll
focal_class.modifiers: public
focal_class.parameters: (String locator, int millis)
focal_class.return: String
focal_class.signature: String highlightAll(String locator, int millis)
focal_class.class_method_signature: DriverOptions.optionSelector(String locator, String text)
focal_class.full_signature: public String optionSelector(String locator, String text)
focal_class.identifier: optionSelector
focal_class.modifiers: public
focal_class.parameters: (String locator, String text)
focal_class.return: String
focal_class.signature: String optionSelector(String locator, String text)
focal_class.class_method_signature: DriverOptions.optionSelector(String id, int index)
focal_class.full_signature: public String optionSelector(String id, int index)
focal_class.identifier: optionSelector
focal_class.modifiers: public
focal_class.parameters: (String id, int index)
focal_class.return: String
focal_class.signature: String optionSelector(String id, int index)
focal_class.class_method_signature: DriverOptions.fun(String expression)
focal_class.full_signature: private String fun(String expression)
focal_class.identifier: fun
focal_class.modifiers: private
focal_class.parameters: (String expression)
focal_class.return: String
focal_class.signature: String fun(String expression)
focal_class.class_method_signature: DriverOptions.scriptSelector(String locator, String expression)
focal_class.full_signature: public String scriptSelector(String locator, String expression)
focal_class.identifier: scriptSelector
focal_class.modifiers: public
focal_class.parameters: (String locator, String expression)
focal_class.return: String
focal_class.signature: String scriptSelector(String locator, String expression)
focal_class.class_method_signature: DriverOptions.scriptSelector(String locator, String expression, String contextNode)
focal_class.full_signature: public String scriptSelector(String locator, String expression, String contextNode)
focal_class.identifier: scriptSelector
focal_class.modifiers: public
focal_class.parameters: (String locator, String expression, String contextNode)
focal_class.return: String
focal_class.signature: String scriptSelector(String locator, String expression, String contextNode)
focal_class.class_method_signature: DriverOptions.scriptAllSelector(String locator, String expression)
focal_class.full_signature: public String scriptAllSelector(String locator, String expression)
focal_class.identifier: scriptAllSelector
focal_class.modifiers: public
focal_class.parameters: (String locator, String expression)
focal_class.return: String
focal_class.signature: String scriptAllSelector(String locator, String expression)
focal_class.class_method_signature: DriverOptions.scriptAllSelector(String locator, String expression, String contextNode)
focal_class.full_signature: public String scriptAllSelector(String locator, String expression, String contextNode)
focal_class.identifier: scriptAllSelector
focal_class.modifiers: public
focal_class.parameters: (String locator, String expression, String contextNode)
focal_class.return: String
focal_class.signature: String scriptAllSelector(String locator, String expression, String contextNode)
focal_class.class_method_signature: DriverOptions.sleep()
focal_class.full_signature: public void sleep()
focal_class.identifier: sleep
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void sleep()
focal_class.class_method_signature: DriverOptions.sleep(int millis)
focal_class.full_signature: public void sleep(int millis)
focal_class.identifier: sleep
focal_class.modifiers: public
focal_class.parameters: (int millis)
focal_class.return: void
focal_class.signature: void sleep(int millis)
focal_class.class_method_signature: DriverOptions.waitForPort(String host, int port)
focal_class.full_signature: private boolean waitForPort(String host, int port)
focal_class.identifier: waitForPort
focal_class.modifiers: private
focal_class.parameters: (String host, int port)
focal_class.return: boolean
focal_class.signature: boolean waitForPort(String host, int port)
focal_class.class_method_signature: DriverOptions.newMapWithSelectedKeys(Map<String, Object> map, String... keys)
focal_class.full_signature: public Map<String, Object> newMapWithSelectedKeys(Map<String, Object> map, String... keys)
focal_class.identifier: newMapWithSelectedKeys
focal_class.modifiers: public
focal_class.parameters: (Map<String, Object> map, String... keys)
focal_class.return: Map<String, Object>
focal_class.signature: Map<String, Object> newMapWithSelectedKeys(Map<String, Object> map, String... keys)
focal_class.class_method_signature: DriverOptions.embedPngImage(byte[] bytes)
focal_class.full_signature: public void embedPngImage(byte[] bytes)
focal_class.identifier: embedPngImage
focal_class.modifiers: public
focal_class.parameters: (byte[] bytes)
focal_class.return: void
focal_class.signature: void embedPngImage(byte[] bytes)
focal_class.class_method_signature: DriverOptions.embedContent(Embed embed)
focal_class.full_signature: public void embedContent(Embed embed)
focal_class.identifier: embedContent
focal_class.modifiers: public
focal_class.parameters: (Embed embed)
focal_class.return: void
focal_class.signature: void embedContent(Embed embed)
focal_class.class_method_signature: DriverOptions.disableRetry()
focal_class.full_signature: public void disableRetry()
focal_class.identifier: disableRetry
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void disableRetry()
focal_class.class_method_signature: DriverOptions.enableRetry(Integer count, Integer interval)
focal_class.full_signature: public void enableRetry(Integer count, Integer interval)
focal_class.identifier: enableRetry
focal_class.modifiers: public
focal_class.parameters: (Integer count, Integer interval)
focal_class.return: void
focal_class.signature: void enableRetry(Integer count, Integer interval)
focal_class.class_method_signature: DriverOptions.waitUntil(Driver driver, String locator, String expression)
focal_class.full_signature: public Element waitUntil(Driver driver, String locator, String expression)
focal_class.identifier: waitUntil
focal_class.modifiers: public
focal_class.parameters: (Driver driver, String locator, String expression)
focal_class.return: Element
focal_class.signature: Element waitUntil(Driver driver, String locator, String expression)
focal_class.class_method_signature: DriverOptions.waitForUrl(Driver driver, String expected)
focal_class.full_signature: public String waitForUrl(Driver driver, String expected)
focal_class.identifier: waitForUrl
focal_class.modifiers: public
focal_class.parameters: (Driver driver, String expected)
focal_class.return: String
focal_class.signature: String waitForUrl(Driver driver, String expected)
focal_class.class_method_signature: DriverOptions.waitForAny(Driver driver, String... locators)
focal_class.full_signature: public Element waitForAny(Driver driver, String... locators)
focal_class.identifier: waitForAny
focal_class.modifiers: public
focal_class.parameters: (Driver driver, String... locators)
focal_class.return: Element
focal_class.signature: Element waitForAny(Driver driver, String... locators)
focal_class.class_method_signature: DriverOptions.optional(Driver driver, String locator)
focal_class.full_signature: public Element optional(Driver driver, String locator)
focal_class.identifier: optional
focal_class.modifiers: public
focal_class.parameters: (Driver driver, String locator)
focal_class.return: Element
focal_class.signature: Element optional(Driver driver, String locator)
focal_class.class_method_signature: DriverOptions.karateLocator(String karateRef)
focal_class.full_signature: public static String karateLocator(String karateRef)
focal_class.identifier: karateLocator
focal_class.modifiers: public static
focal_class.parameters: (String karateRef)
focal_class.return: String
focal_class.signature: String karateLocator(String karateRef)
focal_class.class_method_signature: DriverOptions.focusJs(String locator)
focal_class.full_signature: public String focusJs(String locator)
focal_class.identifier: focusJs
focal_class.modifiers: public
focal_class.parameters: (String locator)
focal_class.return: String
focal_class.signature: String focusJs(String locator)
focal_class.class_method_signature: DriverOptions.findAll(Driver driver, String locator)
focal_class.full_signature: public List<Element> findAll(Driver driver, String locator)
focal_class.identifier: findAll
focal_class.modifiers: public
focal_class.parameters: (Driver driver, String locator)
focal_class.return: List<Element>
focal_class.signature: List<Element> findAll(Driver driver, String locator)
focal_method.body: public <T> T retry(Supplier<T> action, Predicate<T> condition, String logDescription, boolean failWithException) {
          long startTime = System.currentTimeMillis();
          int count = 0, max = getRetryCount();
          T result;
          boolean success;
          do {
              if (count > 0) {
                  logger.debug("{} - retry #{}", logDescription, count);
                  sleep();
              }
              result = action.get();
              success = condition.test(result);
          } while (!success && count++ < max);
          if (!success) {
              long elapsedTime = System.currentTimeMillis() - startTime;
              String message = logDescription + ": failed after " + (count - 1) + " retries and " + elapsedTime + " milliseconds";
              logger.warn(message);
              if (failWithException) {
                  throw new RuntimeException(message);
              }
          }
          return result;
      }
focal_method.class_method_signature: DriverOptions.retry(Supplier<T> action, Predicate<T> condition, String logDescription, boolean failWithException)
focal_method.full_signature: public T retry(Supplier<T> action, Predicate<T> condition, String logDescription, boolean failWithException)
focal_method.identifier: retry
focal_method.invocations: currentTimeMillis getRetryCount debug sleep get test currentTimeMillis warn
focal_method.modifiers: public
focal_method.parameters: (Supplier<T> action, Predicate<T> condition, String logDescription, boolean failWithException)
focal_method.return: T
focal_method.signature: T retry(Supplier<T> action, Predicate<T> condition, String logDescription, boolean failWithException)