/** * add child object to a given parent object In case of knowlegebase tree, rule, fact, * sqlclauseset and query can be added In case of repository tree, predicate, fact, rule, * datasource, function, sqlfunction and can be added * * @param child * @param kbp */ public void addChild(TreeObject child, KnowledgeBasePlus kbp) { children.add(child); child.setParent(this); fireAdd(child); if (KBHashMapMgr.getManager().getRuleInitial()) { if (child.getUserObject() instanceof Rule) { Rule rule = (Rule) child.getUserObject(); kbp.kb.add(rule); } else if (child.getUserObject() instanceof Fact) kbp.kb.add((Fact) child.getUserObject()); else if (child.getUserObject() instanceof SQLClauseSet) kbp.kb.add((SQLClauseSet) child.getUserObject()); else if (child.getUserObject() instanceof Query) kbp.kb.addQuery((Query) child.getUserObject()); } if (KBHashMapMgr.getManager().getRepInitial()) { if (child.getUserObject() instanceof SQLPredicate) kbp.repository.add((SQLPredicate) child.getUserObject()); else if (child.getUserObject() instanceof SQLFunction) kbp.repository.add((SQLFunction) child.getUserObject()); else if (child.getUserObject() instanceof DefaultDataSource) kbp.repository.add((DataSource) child.getUserObject()); else if (child.getUserObject() instanceof SimplePredicate) kbp.repository.add((SimplePredicate) child.getUserObject()); else if (child.getUserObject() instanceof JFunction) kbp.repository.add((JFunction) child.getUserObject()); else if (child.getUserObject() instanceof JPredicate) { kbp.repository.add((JPredicate) child.getUserObject()); } else if (child.getUserObject() instanceof DynaBeanFunction) kbp.repository.add((DynaBeanFunction) child.getUserObject()); } }
/** * delete child object from in the tree. In case of knowlegebase tree, rule, fact, sqlclauseset * and query can be deleted In case of repository tree, predicate, fact, rule, datasource, * function, sqlfunction and can be deleted * * @param child * @param kbp */ public void removeChild(TreeObject child, KnowledgeBasePlus kbp) { children.remove(child); child.setParent(null); if (KBHashMapMgr.getManager().getRuleInitial()) { if (child.getUserObject() instanceof Rule) kbp.kb.remove((Rule) child.getUserObject()); else if (child.getUserObject() instanceof Fact) kbp.kb.remove((Fact) child.getUserObject()); else if (child.getUserObject() instanceof SQLClauseSet) kbp.kb.remove((SQLClauseSet) child.getUserObject()); else if (child.getUserObject() instanceof Query) kbp.kb.removeQuery((Query) child.getUserObject()); } if (KBHashMapMgr.getManager().getRepInitial()) { if (child.getUserObject() instanceof Predicate) kbp.repository.remove((Predicate) child.getUserObject()); else if (child.getUserObject() instanceof Fact) kbp.repository.remove((Fact) child.getUserObject()); else if (child.getUserObject() instanceof Rule) kbp.repository.remove((Rule) child.getUserObject()); else if (child.getUserObject() instanceof DefaultDataSource) kbp.repository.remove((DataSource) child.getUserObject()); else if (child.getUserObject() instanceof Function) kbp.repository.remove((Function) child.getUserObject()); else if (child.getUserObject() instanceof SQLFunction) kbp.repository.remove((SQLFunction) child.getUserObject()); else if (child.getUserObject() instanceof SQLPredicate) kbp.repository.remove((SQLPredicate) child.getUserObject()); } child.addListener(NullDeltaListener.getSoleInstance()); fireRemove(child); }