package org.cloudgraph.web.model.taxonomy;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.cloudgraph.web.model.tree.TreeNodeTypeMap;
import org.cloudgraph.web.sdo.categorization.Taxonomy;
public class DefaultDynamicTaxonomyTreeBean extends DynamicTaxonomyTreeBean {
private static Log log = LogFactory.getLog(DefaultDynamicTaxonomyTreeBean.class);
public DefaultDynamicTaxonomyTreeBean() {
// this initialization hack makes RichFaces tree find it's tree state and
// be happy and not blow up even though the tree is not yet displayed
}
public DefaultDynamicTaxonomyTreeBean(Taxonomy model) {
try {
typeMap = new DefaultTreeNodeTypeMap();
initTree(model);
}
catch (Throwable t) {
log.error(t.getMessage(), t);
}
}
class DefaultTreeNodeTypeMap implements TreeNodeTypeMap {
/**
* Returns a business logic specific node type given the taxonomy level. We skip
* a level where a link node within the generic taxonomy structure is expected.
*/
public String getTreeNodeType(int level) {
switch (level)
{
default: return TaxonomyTreeNodeType.level_any.name();
}
}
}
}