Author: boisvert
Date: Thu Oct 26 14:40:02 2006
New Revision: 468147
URL: http://svn.apache.org/viewvc?view=rev&rev=468147
Log:
Calendar is expensive to initialize so we cache and clone it
Modified:
incubator/ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/ProcessAndInstanceManagementImpl.java
Modified:
incubator/ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/ProcessAndInstanceManagementImpl.java
URL:
http://svn.apache.org/viewvc/incubator/ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/ProcessAndInstanceManagementImpl.java?view=diff&rev=468147&r1=468146&r2=468147
==============================================================================
---
incubator/ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/ProcessAndInstanceManagementImpl.java
(original)
+++
incubator/ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/ProcessAndInstanceManagementImpl.java
Thu Oct 26 14:40:02 2006
@@ -67,6 +67,7 @@
protected BpelEngineImpl _engine;
protected BpelServerImpl _server;
protected BpelDatabase _db;
+ protected Calendar _calendar = Calendar.getInstance(); // Calendar is
expensive to initialize so we cache and clone it
public ProcessAndInstanceManagementImpl(BpelDatabase db, BpelEngineImpl
engine, BpelServerImpl server) {
_db = db;
@@ -744,8 +745,8 @@
ProcessInstanceDAO.EventsFirstLastCountTuple flc =
instance.getEventsFirstLastCount();
TInstanceInfo.EventInfo eventInfo = info.addNewEventInfo();
- Calendar first = Calendar.getInstance();
- Calendar last = Calendar.getInstance();
+ Calendar first = (Calendar) _calendar.clone();
+ Calendar last = (Calendar) _calendar.clone();
// Setting valued correlation properties
if (!instance.getCorrelationSets().isEmpty()) {
@@ -769,7 +770,7 @@
if (instance.getActivityFailureCount() > 0) {
TInstanceInfo.Failures failures = info.addNewFailures();
- Calendar failureDt = Calendar.getInstance();
+ Calendar failureDt = (Calendar) _calendar.clone();
failureDt.setTime(instance.getActivityFailureDateTime());
failures.setCount(instance.getActivityFailureCount());
failures.setDtFailure(failureDt);
@@ -822,7 +823,7 @@
if
(String.valueOf(recovery.getActivityId()).equals(ai.getActivityInfo().getAiid()))
{
TActivityInfo.Failure failure =
ai.getActivityInfo().addNewFailure();
failure.setReason(recovery.getReason());
- Calendar cal = Calendar.getInstance();
+ Calendar cal = (Calendar) _calendar.clone();
cal.setTime(recovery.getDateTime());
failure.setDtFailure(cal);
failure.setActions(recovery.getActions());
@@ -874,7 +875,7 @@
info.setName(BpelEvent.eventName(event));
info.setType(event.getType().toString());
info.setLineNumber(event.getLineNo());
- Calendar c = Calendar.getInstance();
+ Calendar c = (Calendar) _calendar.clone();
c.setTime(event.getTimestamp());
info.setTimestamp(c);
if (event instanceof ActivityEvent) {
@@ -961,11 +962,11 @@
* @param dtime a [EMAIL PROTECTED] Date}
* @return a [EMAIL PROTECTED] Calendar}
*/
- private static Calendar toCalendar(Date dtime) {
+ private Calendar toCalendar(Date dtime) {
if (dtime == null)
return null;
- Calendar c = Calendar.getInstance();
+ Calendar c = (Calendar) _calendar.clone();
c.setTime(dtime);
return c;
}