com.vaadin.client.componentlocator
Interface LocatorStrategy

All Known Implementing Classes:
LegacyLocatorStrategy, VaadinFinderLocatorStrategy

public interface LocatorStrategy

This interface should be implemented by all locator strategies. A locator strategy is responsible for generating and decoding a string that identifies an element in the DOM. A strategy can implement its own syntax for the locator string, which may be completely different from any other strategy's syntax.

Since:
7.2
Author:
Vaadin Ltd

Method Summary
 Element getElementByPath(java.lang.String path)
          Locates an element using a String locator (path) which identifies a DOM element.
 Element getElementByPathStartingAt(java.lang.String path, Element root)
          Locates an element using a String locator (path) which identifies a DOM element.
 java.util.List<Element> getElementsByPath(java.lang.String path)
          Locates all elements that match a String locator (path) which identifies DOM elements.
 java.util.List<Element> getElementsByPathStartingAt(java.lang.String path, Element root)
          Locates all elements that match a String locator (path) which identifies DOM elements.
 java.lang.String getPathForElement(Element targetElement)
          Generates a String locator which uniquely identifies the target element.
 boolean validatePath(java.lang.String path)
          Test the given input path for formatting errors.
 

Method Detail

validatePath

boolean validatePath(java.lang.String path)
Test the given input path for formatting errors. If a given path can not be validated, the locator strategy will not be attempted.

Parameters:
path - a locator path expression
Returns:
true, if the implementing class can process the given path, otherwise false

getPathForElement

java.lang.String getPathForElement(Element targetElement)
Generates a String locator which uniquely identifies the target element. The getElementByPath(String) method can be used for the inverse operation, i.e. locating an element based on the return value from this method.

Note that getElementByPath(getPathForElement(element)) == element is not always true as #getPathForElement(Element) can return a path to another element if the widget determines an action on the other element will give the same result as the action on the target element.

Parameters:
targetElement - The element to generate a path for.
Returns:
A String locator that identifies the target element or null if a String locator could not be created.

getElementByPath

Element getElementByPath(java.lang.String path)
Locates an element using a String locator (path) which identifies a DOM element. The getPathForElement(Element) method can be used for the inverse operation, i.e. generating a string expression for a DOM element.

Parameters:
path - The String locator which identifies the target element.
Returns:
The DOM element identified by path or null if the element could not be located.

getElementByPathStartingAt

Element getElementByPathStartingAt(java.lang.String path,
                                   Element root)
Locates an element using a String locator (path) which identifies a DOM element. The path starts from the specified root element.

Parameters:
path - The String locator which identifies the target element.
root - The element that is at the root of the path.
Returns:
The DOM element identified by path or null if the element could not be located.
See Also:
getElementByPath(String)

getElementsByPath

java.util.List<Element> getElementsByPath(java.lang.String path)
Locates all elements that match a String locator (path) which identifies DOM elements. This functionality is limited in LegacyLocatorStrategy.

Parameters:
path - The String locator which identifies target elements.
Returns:
List that contains all matched elements. Empty list if none found.

getElementsByPathStartingAt

java.util.List<Element> getElementsByPathStartingAt(java.lang.String path,
                                                    Element root)
Locates all elements that match a String locator (path) which identifies DOM elements. The path starts from the specified root element. This functionality is limited in LegacyLocatorStrategy.

Parameters:
path - The String locator which identifies target elements.
root - The element that is at the root of the path.
Returns:
List that contains all matched elements. Empty list if none found.
See Also:
getElementsByPath(String)


Copyright © 2000-2014 Vaadin Ltd. All Rights Reserved.