@Override public Method getMethod() { return method == null ? following.getMethod() : method; }
@Override public Method getMethod() { return method == null ? following.getMethod() : method; }
@Override public Object intercept(InvocationContext context) throws Throwable { if (context.getMethod().getName().equals(GET_METHOD_NAME)) { tryToLoadPage((WebDriver) context.getTarget(), String.valueOf(context.getArguments()[0])); return null;// skip any other interceptors } else { return context.invoke();// invoke method normally } }
@Override public Object intercept(final InvocationContext originalContext) throws Throwable { Collection<Interceptor> interceptors = this.interceptors.get(originalContext.getMethod());
@Override public Object intercept(final InvocationContext originalContext) throws Throwable { Collection<Interceptor> interceptors = this.interceptors.get(originalContext.getMethod());
@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(); } }
@Override public Object intercept(InvocationContext context) throws Throwable { List<Interceptor> previouslyRegistered = interceptorRegistryService.unregisterAll(); Object result = context.invoke(); if(previouslyRegistered.isEmpty()) { return result; } Method interceptedMethod = context.getMethod(); if (isInterceptedMethodAllowed(interceptedMethod)) { When when = When.ON_EVERY_ACTION; takeScreenshot.getMetaData() .setOptionalDescription(interceptedMethod.getName() + Integer.toString(counter++)); DefaultFileNameBuilder nameBuilder = new DefaultFileNameBuilder(); String screenshotName = nameBuilder .withMetaData(takeScreenshot.getMetaData()) .withStage(when) .withResourceIdentifier( ResourceIdentifierFactory.getResoruceIdentifier(takeScreenshot.getMetaData(), when)) .build(); takeScreenshot.setFileName(screenshotName); takeScreenshot.setWhen(When.ON_EVERY_ACTION); takeScreenshotAndReport(); } interceptorRegistryService.registerAll(previouslyRegistered); return result; }
@Override public Object intercept(InvocationContext context) throws Throwable { List<Interceptor> previouslyRegistered = interceptorRegistryService.unregisterAll(); Object result = context.invoke(); if(previouslyRegistered.isEmpty()) { return result; } Method interceptedMethod = context.getMethod(); if (isInterceptedMethodAllowed(interceptedMethod)) { When when = When.ON_EVERY_ACTION; takeScreenshot.getMetaData() .setOptionalDescription(interceptedMethod.getName() + Integer.toString(counter++)); DefaultFileNameBuilder nameBuilder = new DefaultFileNameBuilder(); String screenshotName = nameBuilder .withMetaData(takeScreenshot.getMetaData()) .withStage(when) .withResourceIdentifier( ResourceIdentifierFactory.getResoruceIdentifier(takeScreenshot.getMetaData(), when)) .build(); takeScreenshot.setFileName(screenshotName); takeScreenshot.setWhen(When.ON_EVERY_ACTION); takeScreenshotAndReport(); } interceptorRegistryService.registerAll(previouslyRegistered); return result; }