]>
git.argeo.org Git - gpl/argeo-suite.git/blob - SuiteTypology.java
e84066cfe43504c2796fb578ec4e601e1b20544e
1 package org
.argeo
.suite
.core
;
3 import java
.util
.ArrayList
;
8 import org
.argeo
.jcr
.Jcr
;
10 /** A typology. Helper to optimise {@link SuiteTermsManager} implementation. */
12 private final String name
;
13 private final Node node
;
14 private boolean isFlat
= true;
16 private final List
<SuiteTerm
> subTerms
= new ArrayList
<>();
18 public SuiteTypology(Node node
) {
20 this.name
= Jcr
.getName(this.node
);
23 public String
getName() {
27 public Node
getNode() {
36 public boolean isFlat() {
40 public List
<SuiteTerm
> getSubTerms() {
44 public List
<SuiteTerm
> getAllTerms() {
48 List
<SuiteTerm
> terms
= new ArrayList
<>();
49 for (SuiteTerm subTerm
: subTerms
) {
51 collectSubTerms(terms
, subTerm
);
57 private void collectSubTerms(List
<SuiteTerm
> terms
, SuiteTerm term
) {
58 for (SuiteTerm subTerm
: term
.getSubTerms()) {
60 collectSubTerms(terms
, subTerm
);