use of org.nextprot.api.core.domain.Family in project nextprot-api by calipho-sib.
the class FamilyServiceIntegrationTest method shouldReturn_1_Family_Having_2_Parents.
@Test
public void shouldReturn_1_Family_Having_2_Parents() {
// -- examples of entries with 1 family having 2 ancestors: NX_O14678 NX_P28288 NX_P33897
List<Family> families = familyService.findFamilies("NX_O14678");
assertTrue(families.size() == 1);
Family fam = families.get(0);
System.out.println(fam);
assertTrue(fam.getParent() != null);
System.out.println(fam.getParent());
assertTrue(fam.getParent().getParent() != null);
System.out.println(fam.getParent().getParent());
assertTrue(fam.getParent().getParent().getParent() == null);
}
use of org.nextprot.api.core.domain.Family in project nextprot-api by calipho-sib.
the class NXVelocityUtils method getFamilyHierarchyFromRoot.
/**
* @return a list of Family instances from root family to this family
*/
public static List<Family> getFamilyHierarchyFromRoot(Family family) {
List<Family> hierarchy = new ArrayList<>();
hierarchy.add(family);
Family directParent = family.getParent();
while (directParent != null) {
hierarchy.add(0, directParent);
directParent = directParent.getParent();
}
return hierarchy;
}
Aggregations