From 1d5d1a6a4a0a58d6bb4803527dacb6641c027816 Mon Sep 17 00:00:00 2001
From: Nicolas Capponi <nicolas.capponi@forgerock.com>
Date: Tue, 28 Jan 2014 13:34:12 +0000
Subject: [PATCH] Checkpoint commit for OPENDJ-1288 : Migrate I18n and logging support to i18n framework and SLF4J
---
opendj3-server-dev/src/server/org/opends/server/backends/jeb/DatabaseContainer.java | 107 +++++++++++++++++++++++++++++++++++++++--------------
1 files changed, 78 insertions(+), 29 deletions(-)
diff --git a/opendj3-server-dev/src/server/org/opends/server/backends/jeb/DatabaseContainer.java b/opendj3-server-dev/src/server/org/opends/server/backends/jeb/DatabaseContainer.java
index 956c48f..a4f58c4 100644
--- a/opendj3-server-dev/src/server/org/opends/server/backends/jeb/DatabaseContainer.java
+++ b/opendj3-server-dev/src/server/org/opends/server/backends/jeb/DatabaseContainer.java
@@ -22,15 +22,15 @@
*
*
* Copyright 2006-2008 Sun Microsystems, Inc.
- * Portions Copyright 2011 ForgeRock AS
+ * Portions Copyright 2011-2014 ForgeRock AS
*/
package org.opends.server.backends.jeb;
import com.sleepycat.je.*;
-import static org.opends.server.loggers.debug.DebugLogger.*;
-import org.opends.server.loggers.debug.DebugTracer;
-import org.opends.server.types.DebugLogLevel;
+import org.forgerock.i18n.slf4j.LocalizedLogger;
+import org.opends.server.util.ServerConstants;
+import org.opends.server.util.StaticUtils;
/**
* This class is a wrapper around the JE database object and provides basic
@@ -38,10 +38,7 @@
*/
public abstract class DatabaseContainer
{
- /**
- * The tracer object for the debug logger.
- */
- private static final DebugTracer TRACER = getTracer();
+ private static final LocalizedLogger logger = LocalizedLogger.getLoggerForThisClass();
/**
* The database entryContainer.
@@ -104,9 +101,9 @@
try
{
database = env.openDatabase(txn, name, dbConfig);
- if (debugEnabled())
+ if (logger.isTraceEnabled())
{
- TRACER.debugVerbose("JE database %s opened. txnid=%d",
+ logger.trace("JE database %s opened. txnid=%d",
database.getDatabaseName(),
txn.getId());
}
@@ -121,9 +118,9 @@
else
{
database = env.openDatabase(null, name, dbConfig);
- if (debugEnabled())
+ if (logger.isTraceEnabled())
{
- TRACER.debugVerbose("JE database %s opened. txnid=none",
+ logger.trace("JE database %s opened. txnid=none",
database.getDatabaseName());
}
}
@@ -153,9 +150,9 @@
database.close();
database = null;
- if(debugEnabled())
+ if(logger.isTraceEnabled())
{
- TRACER.debugInfo("Closed database %s", name);
+ logger.trace("Closed database %s", name);
}
}
@@ -173,10 +170,9 @@
throws DatabaseException
{
OperationStatus status = database.put(txn, key, data);
- if (debugEnabled())
+ if (logger.isTraceEnabled())
{
- TRACER.debugJEAccess(DebugLogLevel.VERBOSE, status, database,
- txn, key, data);
+ logger.trace(messageToLog(status, database, txn, key, data));
}
return status;
}
@@ -198,10 +194,9 @@
throws DatabaseException
{
OperationStatus status = database.get(txn, key, data, lockMode);
- if (debugEnabled())
+ if (logger.isTraceEnabled())
{
- TRACER.debugJEAccess(DebugLogLevel.VERBOSE, status, database, txn, key,
- data);
+ logger.trace(messageToLog(status, database, txn, key, data));
}
return status;
}
@@ -220,10 +215,9 @@
throws DatabaseException
{
OperationStatus status = database.putNoOverwrite(txn, key, data);
- if (debugEnabled())
+ if (logger.isTraceEnabled())
{
- TRACER.debugJEAccess(DebugLogLevel.VERBOSE, status, database, txn, key,
- data);
+ logger.trace(messageToLog(status, database, txn, key, data));
}
return status;
}
@@ -241,10 +235,9 @@
throws DatabaseException
{
OperationStatus status = database.delete(txn, key);
- if (debugEnabled())
+ if (logger.isTraceEnabled())
{
- TRACER.debugJEAccess(DebugLogLevel.VERBOSE, status, database, txn,
- key, null);
+ logger.trace(messageToLog(status, database, txn, key, null));
}
return status;
}
@@ -289,10 +282,9 @@
public long getRecordCount() throws DatabaseException
{
long count = database.count();
- if (debugEnabled())
+ if (logger.isTraceEnabled())
{
- TRACER.debugJEAccess(DebugLogLevel.VERBOSE, OperationStatus.SUCCESS,
- database, null, null, null);
+ logger.trace(messageToLog(OperationStatus.SUCCESS, database, null, null, null));
}
return count;
}
@@ -339,4 +331,61 @@
{
this.name = name;
}
+
+ /** Returns the message to log given the provided information. */
+ private String messageToLog(OperationStatus status, Database database,
+ Transaction txn, DatabaseEntry key, DatabaseEntry data)
+ {
+ StringBuilder builder = new StringBuilder();
+ builder.append(" (");
+ builder.append(status.toString());
+ builder.append(")");
+ builder.append(" db=");
+ try
+ {
+ builder.append(database.getDatabaseName());
+ }
+ catch (DatabaseException de)
+ {
+ builder.append(de.toString());
+ }
+ if (txn != null)
+ {
+ builder.append(" txnid=");
+ try
+ {
+ builder.append(txn.getId());
+ }
+ catch (DatabaseException de)
+ {
+ builder.append(de.toString());
+ }
+ }
+ else
+ {
+ builder.append(" txnid=none");
+ }
+
+ builder.append(ServerConstants.EOL);
+ if (key != null)
+ {
+ builder.append("key:");
+ builder.append(ServerConstants.EOL);
+ StaticUtils.byteArrayToHexPlusAscii(builder, key.getData(), 4);
+ }
+
+ // If the operation was successful we log the same common information
+ // plus the data
+ if (status == OperationStatus.SUCCESS && data != null)
+ {
+ builder.append("data(len=");
+ builder.append(data.getSize());
+ builder.append("):");
+ builder.append(ServerConstants.EOL);
+ StaticUtils.byteArrayToHexPlusAscii(builder, data.getData(), 4);
+ }
+ return builder.toString();
+ }
+
+
}
--
Gitblit v1.10.0