in Java/JDI/jdi-uitest-web/src/main/java/com/epam/jdi/uitests/web/selenium/elements/WebCascadeInit.java [227:286]
protected By getNewLocatorFromField(Field field) {
JFindBy[] jfindbys = field.getAnnotationsByType(JFindBy.class);
if (jfindbys.length > 1) {
JFindBy groupFindBy = single(jfindbys, j -> group.equals(j.group()));
if (groupFindBy != null)
return findByToBy(groupFindBy);
groupFindBy = single(jfindbys, j -> j.group().equals(""));
if (groupFindBy != null)
return findByToBy(groupFindBy);
}
if (field.isAnnotationPresent(JFindBy.class)) {
return findByToBy(field.getAnnotation(JFindBy.class));
}
if (field.isAnnotationPresent(FindBy.class)) {
return findByToBy(field.getAnnotation(FindBy.class));
}
if (field.isAnnotationPresent(Css.class)) {
return findByToBy(field.getAnnotation(Css.class));
}
if (field.isAnnotationPresent(XPath.class)) {
return findByToBy(field.getAnnotation(XPath.class));
}
if (field.isAnnotationPresent(ByText.class)) {
return findByToBy(field.getAnnotation(ByText.class));
}
if (field.isAnnotationPresent(Attribute.class)) {
return findByToBy(field.getAnnotation(Attribute.class));
}
if (field.isAnnotationPresent(ByClass.class)) {
return findByToBy(field.getAnnotation(ByClass.class));
}
if (field.isAnnotationPresent(ById.class)) {
return findByToBy(field.getAnnotation(ById.class));
}
if (field.isAnnotationPresent(ByName.class)) {
return findByToBy(field.getAnnotation(ByName.class));
}
if (field.isAnnotationPresent(NgRepeat.class)) {
return findByToBy(field.getAnnotation(NgRepeat.class));
}
if (field.isAnnotationPresent(NgBinding.class)) {
return findByToBy(field.getAnnotation(NgBinding.class));
}
if (field.isAnnotationPresent(NgModel.class)) {
return findByToBy(field.getAnnotation(NgModel.class));
}
if (field.isAnnotationPresent(ByTitle.class)) {
return findByToBy(field.getAnnotation(ByTitle.class));
}
if (field.isAnnotationPresent(ByTag.class)) {
return findByToBy(field.getAnnotation(ByTag.class));
}
if (field.isAnnotationPresent(ByType.class)) {
return findByToBy(field.getAnnotation(ByType.class));
}
if (field.isAnnotationPresent(ByValue.class)) {
return findByToBy(field.getAnnotation(ByValue.class));
}
return null;
}