Hallo,
ich habe die Klasse: Category:
Diese widerum hat eine List der children_data als Category.
Sie ist also Rekursiv.
Nun benötige ich die ID von:
Default/Cat1/Cat5/demo
Die genannten sind die namen der Kategorien.
Habs nun nicht getestet, aber Rekursiv müsste ich die Category "demo" so finden:
Aber es könnte sein das eine andere Kategorie in einem anderen Pfad auch "demo" heißt.
Wie könnte ich die Rekursive Liste mit einer Suche nach "Default/Cat1/Cat5/demo" genau finden?
Danke!
ich habe die Klasse: Category:
Java:
public class Category {
private Integer id;
private Integer parent_id;
private String name;
private Boolean is_active;
private Integer position;
private Integer level;
private String children;
private String created_at;
private String updated_at;
private String path;
private List<String> available_sort_by;
private Boolean include_in_menu;
private ExtensionAttributes extension_attributes;
private List<CustomAttribute> custom_attributes;
private List<Category> children_data;
Diese widerum hat eine List der children_data als Category.
Sie ist also Rekursiv.
Nun benötige ich die ID von:
Default/Cat1/Cat5/demo
Die genannten sind die namen der Kategorien.
Habs nun nicht getestet, aber Rekursiv müsste ich die Category "demo" so finden:
Java:
public int getCategoryByName(Category category, String name) {
if (category.getName().equals(name)) {
return category.getId();
}
for (Category childs : category.getChildren_data()) {
return getCategoryByName(childs, name);
}
return 0;
}
Aber es könnte sein das eine andere Kategorie in einem anderen Pfad auch "demo" heißt.
Wie könnte ich die Rekursive Liste mit einer Suche nach "Default/Cat1/Cat5/demo" genau finden?
Danke!