Package com.codeborne.selenide.impl
Class SelenidePageFactory
java.lang.Object
com.codeborne.selenide.impl.SelenidePageFactory
- All Implemented Interfaces:
PageObjectFactory
@ParametersAreNonnullByDefault
public class SelenidePageFactory
extends Object
implements PageObjectFactory
Factory class to make using Page Objects simpler and easier.
- See Also:
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected ElementsCollectioncreateElementsCollection(Driver driver, WebElementSource searchContext, org.openqa.selenium.By selector, Field field, String alias) createElementsContainer(Driver driver, WebElementSource searchContext, Field field, org.openqa.selenium.By selector) createElementsContainerList(Driver driver, WebElementSource searchContext, Field field, Type[] genericTypes, org.openqa.selenium.By selector) protected ObjectcreateFieldValue(Driver driver, WebElementSource searchContext, Object page, Type[] genericTypes, Field field) final Objectdecorate(ClassLoader loader, Driver driver, WebElementSource searchContext, Field field, org.openqa.selenium.By selector) decorate(ClassLoader loader, Driver driver, WebElementSource searchContext, Field field, org.openqa.selenium.By selector, Type[] genericTypes) protected SelenideElementdecorateWebElement(Driver driver, WebElementSource searchContext, org.openqa.selenium.By selector, Field field, String alias) protected org.openqa.selenium.support.pagefactory.DefaultFieldDecoratordefaultFieldDecorator(Driver driver, WebElementSource searchContext) protected org.openqa.selenium.ByfindSelector(Driver driver, Field field) protected ObjectgetFieldValue(Object page, Field field) protected Class<?>getListGenericType(Field field, Type[] genericTypes) protected intvoidinitElements(Driver driver, WebElementSource searchContext, Object page, Type[] genericTypes) Similar to the other "initElements" methods, but takes anFieldDecoratorwhich is used for decorating each of the fields.initElementsContainer(Driver driver, Field field, WebElementSource self, Class<?> type, Type[] genericTypes) protected voidinitField(Driver driver, WebElementSource searchContext, Object page, Type[] genericTypes, Field field) protected voidinitFields(Driver driver, WebElementSource searchContext, Object page, Class<?> proxyIn, Type[] genericTypes) protected booleanisDecoratableList(Field field, Type[] genericTypes, Class<?> type) <PageObjectClass>
PageObjectClass<PageObjectClass,T extends PageObjectClass>
PageObjectClassprotected voidsetFieldValue(Object page, Field field, Object value) protected booleanshouldCache(Field field)
-
Constructor Details
-
SelenidePageFactory
public SelenidePageFactory()
-
-
Method Details
-
page
@CheckReturnValue @Nonnull public <PageObjectClass> PageObjectClass page(Driver driver, Class<PageObjectClass> pageObjectClass) - Specified by:
pagein interfacePageObjectFactory
-
page
@CheckReturnValue @Nonnull public <PageObjectClass,T extends PageObjectClass> PageObjectClass page(Driver driver, T pageObject) - Specified by:
pagein interfacePageObjectFactory
-
initElements
public void initElements(Driver driver, @Nullable WebElementSource searchContext, Object page, Type[] genericTypes) Similar to the other "initElements" methods, but takes anFieldDecoratorwhich is used for decorating each of the fields.- Parameters:
page- The object to decorate the fields of
-
initFields
protected void initFields(Driver driver, @Nullable WebElementSource searchContext, Object page, Class<?> proxyIn, Type[] genericTypes) -
initField
protected void initField(Driver driver, @Nullable WebElementSource searchContext, Object page, Type[] genericTypes, Field field) -
createFieldValue
-
findSelector
- Parameters:
driver- Used by subclasses (e.g. in selenide-appium plugin)field- expected to be an element in a Page Object- Returns:
Byinstance used by webdriver to locate elements
-
shouldCache
-
setFieldValue
-
getFieldValue
-
createElementsContainer
@CheckReturnValue @Nonnull public Container createElementsContainer(Driver driver, @Nullable WebElementSource searchContext, Field field, org.openqa.selenium.By selector) - Specified by:
createElementsContainerin interfacePageObjectFactory
-
initElementsContainer
@CheckReturnValue @Nonnull public Container initElementsContainer(Driver driver, Field field, WebElementSource self, Class<?> type, Type[] genericTypes) throws ReflectiveOperationException - Specified by:
initElementsContainerin interfacePageObjectFactory- Throws:
ReflectiveOperationException
-
decorate
@CheckReturnValue @Nullable public final Object decorate(ClassLoader loader, Driver driver, @Nullable WebElementSource searchContext, Field field, org.openqa.selenium.By selector) -
decorate
@CheckReturnValue @Nullable public Object decorate(ClassLoader loader, Driver driver, @Nullable WebElementSource searchContext, Field field, org.openqa.selenium.By selector, Type[] genericTypes) -
decorateWebElement
@Nonnull protected SelenideElement decorateWebElement(Driver driver, @Nullable WebElementSource searchContext, org.openqa.selenium.By selector, Field field, @Nullable String alias) -
createElementsCollection
@Nonnull protected ElementsCollection createElementsCollection(Driver driver, @Nullable WebElementSource searchContext, org.openqa.selenium.By selector, Field field, @Nullable String alias) -
defaultFieldDecorator
@CheckReturnValue @Nonnull protected org.openqa.selenium.support.pagefactory.DefaultFieldDecorator defaultFieldDecorator(Driver driver, @Nullable WebElementSource searchContext) -
createElementsContainerList
-
isDecoratableList
-
getListGenericType
-
indexOf
-