📄 conceptstrchecker.java~
字号:
ConceptstrEvent cstre = (ConceptstrEvent)event; String cstrID = cstre.getConceptstrID(); switch (cstre.getActionType()) { case ConceptstrEvent.CREATE_CONCEPTSTR: { Debug.println("ConceptChecker : CREATE_CONCEPTSTR event start"); } break; case ConceptstrEvent.UPDATE_CONCEPTSTR: { Debug.println("ConceptChecker : UPDATE_CONCEPTSTR event start"); accessRule.doStart(getTree(cstrID), AccessRule.MODIFY, cstre.getConceptstrID()); } break; case ConceptstrEvent.UPDATE_CONCEPTSTR_DATA: { Debug.println("ConceptChecker : UPDATE_CONCEPTSTR event start"); } break; case ConceptstrEvent.RESTRUCT_CONCEPTSTR: { accessRule.doStart(getTree(cstrID), AccessRule.RESTRUCT, cstre.getUpdateConceptID()); } break; case ConceptstrEvent.RESTRUCT_CONCEPTSTR_DATA: { } break; case ConceptstrEvent.DELETE_CONCEPTSTR: { accessRule.doStart(getTree(cstrID), AccessRule.DELETE, cstre.getConceptstrID()); } break; default: Debug.print("Error: not implemented yet"); } } public void doConceptEnd(StarsEvent event){ ConceptEvent ce = (ConceptEvent)event; String cstrID = ce.getCstrID(); DataTreeModel dtree = getTree(cstrID); switch (ce.getActionType()) { case ConceptEvent.CREATE_CONCEPT: { Debug.println("ConceptChecker : CREATE_CONCEPT event End"); } break; case ConceptEvent.CREATE_CONCEPT_DATA: { Debug.println("ConceptChecker : CREATE_CONCEPT event End"); createdatanode(dtree, ce); accessRule.doEnd(dtree, AccessRule.CREATE, ce.getConceptID()); } break; case ConceptEvent.UPDATE_CONCEPT: { Debug.println("ConceptChecker : UPDATE_CONCEPT event End"); } break; case ConceptEvent.UPDATE_CONCEPT_DATA: { Debug.println("ConceptChecker : UPDATE_CONCEPT_DATA event End for" + ce.getConceptID()); accessRule.doEnd(dtree, AccessRule.MODIFY, ce.getConceptID()); } break; case ConceptEvent.DELETE_CONCEPT: { accessRule.doEnd(dtree, AccessRule.DELETE, ce.getConceptID()); } break; default: Debug.print("No action on access tree :"+cstrID ); break; } } public void doConceptstrEnd(StarsEvent event){ ConceptstrEvent cstre = (ConceptstrEvent)event; String cstrID = cstre.getConceptstrID(); DataTreeModel dtree = getTree(cstrID); switch (cstre.getActionType()) { case ConceptstrEvent.CREATE_CONCEPTSTR: { Debug.println("ConceptChecker : CREATE_CONCEPTSTR event do End"); } case ConceptstrEvent.UPDATE_CONCEPTSTR: { Debug.println("ConceptChecker : UPDATE_CONCEPTSTR event do End"); } break; case ConceptstrEvent.UPDATE_CONCEPTSTR_DATA: { Debug.println("ConceptChecker : UPDATE_CONCEPTSTR_DATA event do End"); accessRule.doEnd(dtree, AccessRule.MODIFY, cstre.getConceptstrID()); } break; case ConceptstrEvent.RESTRUCT_CONCEPTSTR_DATA: { accessRule.doEnd(dtree, AccessRule.RESTRUCT, cstre.getUpdateConceptID()); renewBranch(cstrID, cstre.getUpdateConceptID()); } break; case ConceptstrEvent.DELETE_CONCEPTSTR: { accessRule.doEnd(dtree, AccessRule.DELETE, cstre.getConceptstrID()); renewBranch(cstrID, cstre.getUpdateConceptID()); } break; default: Debug.print("No action on the access tree: "+ cstrID); break; } } // if someone is private DataTreeModel resetTree(String treeid) { //load the tree for the map Debug.println("ConceptstrChecker: resetTree" + treeid); DataTreeModel atree = (DataTreeModel)conceptTreeMap.get(treeid); if (atree == null) { Debug.println("ConceptChecker: Geting new Tree model from ConceptstrWebImpl" + treeid); AppModelManager apmm = (AppModelManager)context.getAttribute(WebKeys.AppModelManagerKey); loadTree(apmm.getConceptstrWebImpl(treeid)); return (DataTreeModel)conceptTreeMap.get(treeid); } return atree; } private DataTreeModel getTree(String treeid) { //load the tree for the map Debug.println("ConceptstrChecker: getTree" + treeid); DataTreeModel atree = (DataTreeModel)conceptTreeMap.get(treeid); if (atree == null) { Debug.println("ConceptChecker: Geting new Tree model from ConceptstrWebImpl" + treeid); AppModelManager apmm = (AppModelManager)context.getAttribute(WebKeys.AppModelManagerKey); loadTree(apmm.getConceptstrWebImpl(treeid)); return (DataTreeModel)conceptTreeMap.get(treeid); } return atree; } private void renewBranch(String treeid, String nodeID) { //load the tree for the map Debug.println("ConceptstrChecker: renewBranch" + treeid); DataTreeModel atree = getTree(treeid); AppModelManager apmm = (AppModelManager)context.getAttribute(WebKeys.AppModelManagerKey); // loadBranch(apmm.getConceptstrWebImpl(treeid), nodeID); ConceptstrWebImpl cstrwi = apmm.getConceptstrWebImpl(treeid); Debug.println("ConceptstrChecker: loadBranch"); String cstrID = cstrwi.getConceptstrID(); if (conceptTreeMap.containsKey(cstrID)) { Vector conceptvector = transferVector(cstrwi.getConceptlist()); DataTreeModel conceptTree = (DataTreeModel)conceptTreeMap.get(cstrID); // renew the brach of conceptTree Datanode newnode = getaccessRule().getTreeRoot(conceptvector, nodeID); if (newnode != null) { conceptTree.renewTreeBranch(getaccessRule().getTreeRoot(conceptvector, nodeID)); Debug.println("finished renewBranck"); } } } // create a new datanode public void loadTree(ConceptstrWebImpl cstrwi) { Debug.println("ConceptstrChecker: loadTree"); String cstrID = cstrwi.getConceptstrID(); if (conceptTreeMap.containsKey(cstrID)) { Debug.println("updating checker tree" + cstrID); conceptTreeMap.remove(cstrID); } Vector conceptvector = transferVector(cstrwi.getConceptlist()); DataTreeModel conceptTree = new DataTreeModel (getaccessRule().getTreeRoot(conceptvector, "root")); Debug.println("finished conceptTree"); //getaccessRule().setDataTree(conceptTree); conceptTreeMap.put(cstrID, conceptTree); } //load a new Brancn of tree from the web bean private void createdatanode(DataTreeModel dtree, ConceptEvent event) { Debug.println("ConceptstrChecker: createdatanode: " + event.getConceptID()); Datanode dnode = new Datanode(event.getConceptID(), event.getParentID(), event.getName()); Datanode parent = ((Datanode)dtree.getRoot()).findDatanode(dnode.getParentID()); if (parent!=null) { parent.add(dnode); } else { Debug.println("ConceptstrChecker: createdatanode, Can not find Datanode: "+ dnode.getParentID()); } } public void doStart(StarsEvent event){ if (event.getEventName().equals("java:comp/env/event/ConceptEvent")) { doConceptStart(event); } else if (event.getEventName().equals("java:comp/env/event/ConceptstrEvent")) { doConceptstrStart(event); } }; public void doEnd(StarsEvent event){ if (event.getEventName().equals("java:comp/env/event/ConceptEvent")) { doConceptEnd(event); } else if (event.getEventName().equals("java:comp/env/event/ConceptstrEvent")) { doConceptstrEnd(event); } }; }
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -