public static void clearActionData(int funcType, int funcNum) throws RecognitionException, TokenStreamException { switch (funcType) { case ACTIVITY_TYPE_FUNC: Body_c actact = Body_c.getOneACT_ACTOnR698(FunctionBody_c.getOneACT_FNBOnR695(m_testFunc[funcNum])); if (actact != null) { actact.Clear_blocks(); } break; case ACTIVITY_TYPE_BRG: actact = Body_c.getOneACT_ACTOnR698(BridgeBody_c.getOneACT_BRBOnR697(m_testBrg[funcNum])); if (actact != null) { actact.Clear_blocks(); } break; case ACTIVITY_TYPE_CB_OP: actact = Body_c.getOneACT_ACTOnR698(OperationBody_c.getOneACT_OPBOnR696(m_testCBTfr[funcNum])); if (actact != null) { actact.Clear_blocks(); } break; case ACTIVITY_TYPE_INT_RO: actact = Body_c.getOneACT_ACTOnR698( RequiredOperationBody_c.getOneACT_ROBOnR685(m_testReqOpr[funcNum])); if (actact != null) { actact.Clear_blocks(); } break; case ACTIVITY_TYPE_INT_PO: actact = Body_c.getOneACT_ACTOnR698( ProvidedOperationBody_c.getOneACT_POBOnR687(m_testProvOpr[funcNum])); if (actact != null) { actact.Clear_blocks(); } break; case ACTIVITY_TYPE_ArraySTATE: actact = Body_c.getOneACT_ACTOnR698( StateActionBody_c.getOneACT_SABOnR691(m_arrayStateAction[funcNum])); if (actact != null) { actact.Clear_blocks(); } default: fail("clearAction: Unknown Activity type constant"); } m_requiresClear = false; }
public static String parseAction(String stmts, int funcType, int funcNum) throws RecognitionException, TokenStreamException { // m_requiresClear = true; m_funcType = funcType; m_funcNum = funcNum; OalLexer lexer = new OalLexer(new StringReader(stmts)); OalParser parser; parser = new OalParser(arrayModelRoot, lexer); try { switch (funcType) { case ACTIVITY_TYPE_FUNC: parser.m_oal_context = new Oal_validate(ContainerUtil.getContainer(m_testFunc[funcNum])); m_testFunc[funcNum].setAction_semantics_internal(stmts); parser.action(m_testFunc[funcNum].getSync_id(), Oalconstants_c.FUNCTION_TYPE); break; case ACTIVITY_TYPE_BRG: parser.m_oal_context = new Oal_validate(ContainerUtil.getContainer(m_testBrg[funcNum])); m_testBrg[funcNum].setAction_semantics_internal(stmts); parser.action(m_testBrg[funcNum].getBrg_id(), Oalconstants_c.BRIDGE_TYPE); break; case ACTIVITY_TYPE_CB_OP: parser.m_oal_context = new Oal_validate(ContainerUtil.getContainer(m_testCBTfr[funcNum])); m_testCBTfr[funcNum].setAction_semantics_internal(stmts); parser.action(m_testCBTfr[funcNum].getTfr_id(), Oalconstants_c.OPERATION_TYPE); break; case ACTIVITY_TYPE_INT_RO: parser.m_oal_context = new Oal_validate(ContainerUtil.getContainer(m_testReqOpr[funcNum])); m_testReqOpr[funcNum].setAction_semantics_internal(stmts); parser.action(m_testReqOpr[funcNum].getId(), Oalconstants_c.REQ_OPERATION_TYPE); break; case ACTIVITY_TYPE_INT_PO: parser.m_oal_context = new Oal_validate(ContainerUtil.getContainer(m_testProvOpr[funcNum])); m_testProvOpr[funcNum].setAction_semantics_internal(stmts); parser.action(m_testProvOpr[funcNum].getId(), Oalconstants_c.PROV_OPERATION_TYPE); break; case ACTIVITY_TYPE_ArraySTATE: parser.m_oal_context = new Oal_validate(ContainerUtil.getContainer(m_arrayStateAction[funcNum])); TransitionActionBody_c tab2 = TransitionActionBody_c.getOneACT_TABOnR688(m_arrayStateAction[funcNum]); if (tab2 != null) { Body_c body = Body_c.getOneACT_ACTOnR698(tab2); body.Dispose(); } m_arrayStateAction[funcNum].setAction_semantics_internal(stmts); parser.action(m_arrayStateAction[funcNum].getAct_id(), Oalconstants_c.STATE_TYPE); break; default: fail("parseAction: Unknown Activity type constant"); } } catch (TokenStreamException e) { Block_c.Clearcurrentscope(arrayModelRoot, parser.m_oal_context.m_act_id); if (e instanceof TokenStreamRecognitionException) { TokenStreamRecognitionException tsre = (TokenStreamRecognitionException) e; parser.reportError(tsre.recog); } else { fail("Token stream exception in parser"); } } catch (RecognitionException e) { Block_c.Clearcurrentscope(arrayModelRoot, parser.m_oal_context.m_act_id); parser.reportError(e); } catch (InterruptedException ie) { } return parser.m_output; }