diff --git a/ojc-core/bpelse/bpelcore/src/com/sun/jbi/engine/bpel/core/bpel/event/impl/KPIListenerImpl.java b/ojc-core/bpelse/bpelcore/src/com/sun/jbi/engine/bpel/core/bpel/event/impl/KPIListenerImpl.java index e11033bbf..dd0e1dc4c 100755 --- a/ojc-core/bpelse/bpelcore/src/com/sun/jbi/engine/bpel/core/bpel/event/impl/KPIListenerImpl.java +++ b/ojc-core/bpelse/bpelcore/src/com/sun/jbi/engine/bpel/core/bpel/event/impl/KPIListenerImpl.java @@ -45,6 +45,7 @@ import com.sun.jbi.engine.bpel.core.bpel.event.ActivityEvent; import com.sun.jbi.engine.bpel.core.bpel.event.BPELEvent; import com.sun.jbi.engine.bpel.core.bpel.event.BPELEventListener; import com.sun.jbi.engine.bpel.core.bpel.event.BPELInstanceEvent; +import com.sun.jbi.engine.bpel.core.bpel.event.VariableEvent; import com.sun.jbi.engine.bpel.core.bpel.util.EventProcessHelper; import com.sun.jbi.engine.bpel.core.bpel.util.I18n; @@ -72,10 +73,23 @@ public class KPIListenerImpl implements BPELEventListener { completeBPActivity(event); break; case BP_TERMINATE: + terminatedBPI(event); + break; case BP_SUSPEND: + suspendBPI(event); + break; case BP_RESUME: + resumedBPI(event); + break; + case BP_FAULT: + faultBPI(event); + break; case ACTIVITY_FAULTED: + faultBPActivity(event); + break; case VARIABLE_CHANGED: + variableChanged(event); + break; default: if (LOGGER.isLoggable(Level.FINE)) { LOGGER.log(Level.FINE, I18n.loc("KPI for {0} is not implemented", event.getEventType())); @@ -103,6 +117,7 @@ public class KPIListenerImpl implements BPELEventListener { mstr = replaceAll(mstr,"${5}",""+event.getTimeStamp().getTime()); mstr = replaceAll(mstr,"${6}",""+event.getActivityId()); mstr = replaceAll(mstr,"${7}",""+event.getActivityName()); + mstr = replaceAll(mstr,"${8}",""+event.getActivityXpath()); return mstr; } @@ -116,6 +131,52 @@ public class KPIListenerImpl implements BPELEventListener { new QName("MonitorInstances_iep", "InputService"), "BPInstanceStartEventStream", mstr); } + +private static final String startBPIEventFault = + "${1}${2}${3}${4}${5}"; + private void faultBPI(BPELEvent event) { + String mstr = fillInInstanceEventValues(startBPIEventFault, (BPELInstanceEvent)event); + if (LOGGER.isLoggable(Level.FINE)) { + LOGGER.log(Level.FINE, I18n.loc("KPI InstanceFault XML={0}",mstr)); + } + mEventHelper.sendKPIMEx( + new QName("MonitorInstances_iep", "InputService"), "BPInstanceFault", mstr); + } + + + private static final String startBPIEventSuspend = + "${1}${2}${3}${4}${5}"; + private void suspendBPI(BPELEvent event) { + String mstr = fillInInstanceEventValues(startBPIEventSuspend, (BPELInstanceEvent)event); + if (LOGGER.isLoggable(Level.FINE)) { + LOGGER.log(Level.FINE, I18n.loc("KPI InstanceSuspended XML={0}",mstr)); + } + mEventHelper.sendKPIMEx( + new QName("MonitorInstances_iep", "InputService"), "BPInstanceSuspended", mstr); + } + + private static final String startBPIEventResumed = + "${1}${2}${3}${4}${5}"; + private void resumedBPI(BPELEvent event) { + String mstr = fillInInstanceEventValues(startBPIEventResumed, (BPELInstanceEvent)event); + if (LOGGER.isLoggable(Level.FINE)) { + LOGGER.log(Level.FINE, I18n.loc("KPI InstanceResumed XML={0}",mstr)); + } + mEventHelper.sendKPIMEx( + new QName("MonitorInstances_iep", "InputService"), "BPInstanceResumed", mstr); + } + + private static final String startBPIEventTerminated = + "${1}${2}${3}${4}${5}"; + private void terminatedBPI(BPELEvent event) { + String mstr = fillInInstanceEventValues(startBPIEventTerminated, (BPELInstanceEvent)event); + if (LOGGER.isLoggable(Level.FINE)) { + LOGGER.log(Level.FINE, I18n.loc("KPI InstanceTerminated XML={0}",mstr)); + } + mEventHelper.sendKPIMEx( + new QName("MonitorInstances_iep", "InputService"), "BPInstanceTerminated", mstr); + } + private static final String completeBPIEventMsgStr = "${1}${2}${3}${4}${5}"; @@ -124,7 +185,7 @@ public class KPIListenerImpl implements BPELEventListener { mEventHelper.sendKPIMEx(new QName("MonitorInstances_iep", "InputService"),"BPInstanceComplete", mstr); } - private static final String startBPActivityEventMsgStr = "${1}${2}${3}${4}${5}${6}${7}"; + private static final String startBPActivityEventMsgStr = "${1}${2}${3}${4}${5}${6}${7}${8}"; private void startBPActivity(BPELEvent event) { if (isInvoke (event)) { @@ -132,7 +193,35 @@ public class KPIListenerImpl implements BPELEventListener { mEventHelper.sendKPIMEx(new QName("MonitorActivities_iep", "InputService"), "ActivityStart", msgStr); } } - + + + private static final String startBPActivityFaultStr = "${1}${2}${3}${4}${5}${6}${7}${8}"; + + private void faultBPActivity(BPELEvent event) { + if (isInvoke (event)) { + String msgStr = fillInActivityEventValues(startBPActivityFaultStr, (ActivityEvent)event); + if (LOGGER.isLoggable(Level.FINE)) { + LOGGER.log(Level.FINE, I18n.loc("KPI ActivityFault XML={0}",msgStr)); + } + mEventHelper.sendKPIMEx(new QName("MonitorActivities_iep", "InputService"), "ActivityFault", msgStr); + } + } + + + private void variableChanged(BPELEvent event) { + VariableEvent ve=(VariableEvent)event; + String msgStr=ve.toXML(); + msgStr="" + + "" + + ve.toXML()+ + "" + + ""; + if (LOGGER.isLoggable(Level.FINE)) { + LOGGER.log(Level.FINE, I18n.loc("KPI Variable Change XML={0}",msgStr)); + } + mEventHelper.sendKPIMEx(new QName("MonitorActivities_iep", "InputService"), "VariableChange", msgStr); + } + private static boolean isInvoke (BPELEvent event) { ActivityEvent actEvent = (ActivityEvent) event; String xpath = actEvent.getActivityXpath(); @@ -150,7 +239,7 @@ public class KPIListenerImpl implements BPELEventListener { return false; } - private static final String completeBPActivityEventMsgStr = "${1}${2}${3}${4}${5}${6}${7}"; + private static final String completeBPActivityEventMsgStr = "${1}${2}${3}${4}${5}${6}${7}${8}"; private void completeBPActivity(BPELEvent event) { if (isInvoke (event)) {