1 package com.atlassian.pageobjects.elements;
2
3 import java.util.Iterator;
4 import java.util.List;
5
6 import org.openqa.selenium.By;
7
8 import com.atlassian.pageobjects.elements.timeout.TimeoutType;
9
10
11
12
13
14
15
16 public class PageElementIterableImpl implements Iterable<PageElement>
17 {
18 private final PageElementFinder finder;
19 private final Class<? extends PageElement> fieldType;
20 private final By by;
21 private final TimeoutType timeoutType;
22
23 public PageElementIterableImpl(PageElementFinder finder, Class<? extends PageElement> fieldType, By by, TimeoutType timeoutType)
24 {
25 super();
26 this.finder = finder;
27 this.fieldType = fieldType;
28 this.by = by;
29 this.timeoutType = timeoutType;
30 }
31
32 public Iterator<PageElement> iterator()
33 {
34 List<? extends PageElement> pageElements = finder.findAll(by, fieldType, timeoutType);
35 return (Iterator<PageElement>) pageElements.iterator();
36 }
37 }