public static WebElement findElementLazily(GrapheneContext context, final By by, final GrapheneProxy.FutureTarget searchContextFuture, final int indexInList) { return findElement(context, new GrapheneProxy.FutureTarget() { @Override public Object getTarget() { List<WebElement> elements = dropProxyAndFindElements(by, (SearchContext) searchContextFuture.getTarget()); if (elements.size() > indexInList) { return elements.get(indexInList); } return null; } }); }
@Override public Object intercept(final InvocationContext context) throws Throwable { GrapheneProxy.FutureTarget future = new GrapheneProxy.FutureTarget() { @Override public Object getTarget() { return context.getProxy(); } }; if (methodsEqual(context.getMethod(), SearchContext.class.getDeclaredMethod("findElement", By.class))) { return WebElementUtils.findElement(context.getGrapheneContext(), (By) context.getArguments()[0], future); } else if (methodsEqual(context.getMethod(), SearchContext.class.getDeclaredMethod("findElements", By.class))) { return WebElementUtils.findElementsLazily(context.getGrapheneContext(), (By) context.getArguments()[0], future); } else { return context.invoke(); } }
@Override public Object intercept(final InvocationContext context) throws Throwable { GrapheneProxy.FutureTarget future = new GrapheneProxy.FutureTarget() { @Override public Object getTarget() { return context.getProxy(); } }; if (methodsEqual(context.getMethod(), SearchContext.class.getDeclaredMethod("findElement", By.class))) { return WebElementUtils.findElement(context.getGrapheneContext(), (By) context.getArguments()[0], future); } else if (methodsEqual(context.getMethod(), SearchContext.class.getDeclaredMethod("findElements", By.class))) { return WebElementUtils.findElementsLazily(context.getGrapheneContext(), (By) context.getArguments()[0], future); } else { return context.invoke(); } }
public static WebElement findElementLazily(GrapheneContext context, final By by, final GrapheneProxy.FutureTarget searchContextFuture, final int indexInList) { return findElement(context, new GrapheneProxy.FutureTarget() { @Override public Object getTarget() { List<WebElement> elements = dropProxyAndFindElements(by, (SearchContext) searchContextFuture.getTarget()); if (elements.size() > indexInList) { return elements.get(indexInList); } return null; } }); }
public static WebElement findElementLazily(final By by, final SearchContext searchContext, final int indexInList) { return findElement(getContext(searchContext), new GrapheneProxy.FutureTarget() { @Override public Object getTarget() { List<WebElement> elements = dropProxyAndFindElements(by, searchContext); if (elements.size() > indexInList) { return elements.get(indexInList); } return null; } }); }
public static WebElement findElementLazily(final By by, final SearchContext searchContext) { return findElement(getContext(searchContext), new GrapheneProxy.FutureTarget() { @Override public Object getTarget() { try { return dropProxyAndFindElement(by, searchContext); } catch (NoSuchElementException ex) { throw new NoSuchElementException((by instanceof ByIdOrName ? EMPTY_FIND_BY_WARNING : "") + ex.getMessage(), ex); } } }); }
public static WebElement findElementLazily(final By by, final SearchContext searchContext, final int indexInList) { return findElement(getContext(searchContext), new GrapheneProxy.FutureTarget() { @Override public Object getTarget() { List<WebElement> elements = dropProxyAndFindElements(by, searchContext); if (elements.size() > indexInList) { return elements.get(indexInList); } return null; } }); }
public static WebElement findElementLazily(final By by, final SearchContext searchContext) { return findElement(getContext(searchContext), new GrapheneProxy.FutureTarget() { @Override public Object getTarget() { try { return dropProxyAndFindElement(by, searchContext); } catch (NoSuchElementException ex) { throw new NoSuchElementException((by instanceof ByIdOrName ? EMPTY_FIND_BY_WARNING : "") + ex.getMessage(), ex); } } }); }
public static WebElement findElement(GrapheneContext context, final By by, final GrapheneProxy.FutureTarget searchContextFuture) { // Here the web element has to be found to ensure that SearchContext throws // NoSuchElementException if there is no element with the given By locator. dropProxyAndFindElement(by, (SearchContext) searchContextFuture.getTarget()); return findElement(context, new GrapheneProxy.FutureTarget() { @Override public Object getTarget() { return dropProxyAndFindElement(by, (SearchContext) searchContextFuture.getTarget()); } }); }
public static WebElement findElement(GrapheneContext context, final By by, final GrapheneProxy.FutureTarget searchContextFuture) { // Here the web element has to be found to ensure that SearchContext throws // NoSuchElementException if there is no element with the given By locator. dropProxyAndFindElement(by, (SearchContext) searchContextFuture.getTarget()); return findElement(context, new GrapheneProxy.FutureTarget() { @Override public Object getTarget() { return dropProxyAndFindElement(by, (SearchContext) searchContextFuture.getTarget()); } }); }