Class InfiniteScrollTableComponent<T>

java.lang.Object
com.atlassian.bamboo.pageobjects.components.InfiniteScrollTableComponent<T>
Type Parameters:
T - table row type
Direct Known Subclasses:
EditGroupPage.TableComponent, EphemeralAgentTemplatesListPage.TableComponent, GroupsAdminPage.TableComponent, PlansWithCustomExpiryPage.TableComponent, ProjectRepositoriesPage.TableComponent, UserAccessTokenTableComponent, UsersAdminPage.TableComponent, ViewAllDeploymentProjectsPage.TableComponent, ViewUserPage.UserAliasesTableComponent, ViewUserPage.UserGroupsTableComponent

public abstract class InfiniteScrollTableComponent<T> extends Object
An abstract class for page objects using the JavaScript infinite scroll table.
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    protected com.atlassian.pageobjects.elements.PageElementFinder
     
  • Constructor Summary

    Constructors
    Constructor
    Description
    InfiniteScrollTableComponent(String containerCssSelector)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    protected abstract T
    convertRow(@NotNull com.atlassian.pageobjects.elements.PageElement row, @NotNull List<com.atlassian.pageobjects.elements.PageElement> previousRows)
    Convert the given PageElement to a typed table row instance.
    com.atlassian.pageobjects.elements.PageElement
    findRow(Predicate<com.atlassian.pageobjects.elements.PageElement> predicate)
     
    @NotNull List<T>
    Obtain all table rows.
    protected @NotNull com.atlassian.pageobjects.elements.PageElement
     
    void
    Scroll the viewport to the very top of the page.
    protected void
    Waits until all rows currently present in the table have been fully loaded.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • elementFinder

      @Inject protected com.atlassian.pageobjects.elements.PageElementFinder elementFinder
  • Constructor Details

    • InfiniteScrollTableComponent

      public InfiniteScrollTableComponent(String containerCssSelector)
  • Method Details

    • convertRow

      @NotNull protected abstract T convertRow(@NotNull @NotNull com.atlassian.pageobjects.elements.PageElement row, @NotNull @NotNull List<com.atlassian.pageobjects.elements.PageElement> previousRows)
      Convert the given PageElement to a typed table row instance.
      Parameters:
      row - current table row (HTML 'tr')
      previousRows - a list of previous rows (HTML 'tr' elements)
    • scrollTop

      public void scrollTop()
      Scroll the viewport to the very top of the page.
    • getAllTableRows

      @NotNull public @NotNull List<T> getAllTableRows()
      Obtain all table rows. This method will invoke the infinite scroll behaviour until the data from server is depleted.
    • waitUntilCurrentRowsLoaded

      protected void waitUntilCurrentRowsLoaded()
      Waits until all rows currently present in the table have been fully loaded.
    • getTable

      @NotNull protected @NotNull com.atlassian.pageobjects.elements.PageElement getTable()
    • findRow

      public com.atlassian.pageobjects.elements.PageElement findRow(Predicate<com.atlassian.pageobjects.elements.PageElement> predicate)