summaryrefslogtreecommitdiffstats
path: root/base
diff options
context:
space:
mode:
authorEndi S. Dewata <edewata@redhat.com>2014-06-23 16:42:17 -0400
committerEndi S. Dewata <edewata@redhat.com>2014-06-24 16:44:58 -0400
commit0b4f4e78841abdb9ab90c7b084ddfe89f4043743 (patch)
tree858ecfe9457a1c812282505f1310362d7feadfb0 /base
parent6bb64604f3422e1c4f72a14707bfb6ffbeb23458 (diff)
downloadpki-0b4f4e78841abdb9ab90c7b084ddfe89f4043743.tar.gz
pki-0b4f4e78841abdb9ab90c7b084ddfe89f4043743.tar.xz
pki-0b4f4e78841abdb9ab90c7b084ddfe89f4043743.zip
Added ActivityDatabase.log().
A new method has been added to log TPS activities. The method will create a new activity record with ID generated from timestamp and thread ID. Ticket #1049
Diffstat (limited to 'base')
-rw-r--r--base/tps-tomcat/src/org/dogtagpki/server/tps/dbs/ActivityDatabase.java37
1 files changed, 37 insertions, 0 deletions
diff --git a/base/tps-tomcat/src/org/dogtagpki/server/tps/dbs/ActivityDatabase.java b/base/tps-tomcat/src/org/dogtagpki/server/tps/dbs/ActivityDatabase.java
index da884f0e9..72e310257 100644
--- a/base/tps-tomcat/src/org/dogtagpki/server/tps/dbs/ActivityDatabase.java
+++ b/base/tps-tomcat/src/org/dogtagpki/server/tps/dbs/ActivityDatabase.java
@@ -18,6 +18,7 @@
package org.dogtagpki.server.tps.dbs;
+import java.util.Calendar;
import java.util.Date;
import org.apache.commons.lang.StringUtils;
@@ -39,6 +40,42 @@ public class ActivityDatabase extends LDAPDatabase<ActivityRecord> {
super("Activity", dbSubsystem, baseDN, ActivityRecord.class);
}
+ public ActivityRecord log(
+ String ip, String tokenID, String operation, String result,
+ String message, String userID, String tokenType) throws Exception {
+
+ Calendar c = Calendar.getInstance();
+ int year = c.get(Calendar.YEAR);
+ int month = c.get(Calendar.MONTH) + 1;
+ int day = c.get(Calendar.DAY_OF_MONTH);
+ int hour = c.get(Calendar.HOUR_OF_DAY);
+ int minute = c.get(Calendar.MINUTE);
+ int second = c.get(Calendar.SECOND);
+ int microSecond = c.get(Calendar.MILLISECOND) * 1000;
+ long threadID = Thread.currentThread().getId();
+
+ String id = String.format(
+ "%04d%02d%02d%02d%02d%02d%06d.%x",
+ year, month, day,
+ hour, minute, second, microSecond,
+ threadID);
+
+ ActivityRecord activityRecord = new ActivityRecord();
+ activityRecord.setId(id);
+ activityRecord.setIp(ip);
+ activityRecord.setTokenID(tokenID);
+ activityRecord.setOperation(operation);
+ activityRecord.setResult(result);
+ activityRecord.setMessage(message);
+ activityRecord.setUserID(userID);
+ activityRecord.setType(tokenType);
+ activityRecord.setDate(c.getTime());
+
+ super.addRecord(id, activityRecord);
+
+ return activityRecord;
+ }
+
@Override
public void addRecord(String id, ActivityRecord activityRecord) throws Exception {
activityRecord.setDate(new Date());