diff options
author | Endi S. Dewata <edewata@redhat.com> | 2014-06-23 16:42:17 -0400 |
---|---|---|
committer | Endi S. Dewata <edewata@redhat.com> | 2014-06-24 16:44:58 -0400 |
commit | 0b4f4e78841abdb9ab90c7b084ddfe89f4043743 (patch) | |
tree | 858ecfe9457a1c812282505f1310362d7feadfb0 /base | |
parent | 6bb64604f3422e1c4f72a14707bfb6ffbeb23458 (diff) | |
download | pki-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.java | 37 |
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()); |