From d755882f59202fe62b2ad5a141b3c044c1898aa6 Mon Sep 17 00:00:00 2001
From: boli <boli@localhost>
Date: Thu, 03 May 2007 21:55:23 +0000
Subject: [PATCH] Major changes made to the logging framework. It should resolve the following issues:

---
 opends/src/server/org/opends/server/loggers/RetentionPolicy.java |   33 ++++++++++++++++++++++++++++++---
 1 files changed, 30 insertions(+), 3 deletions(-)

diff --git a/opends/src/server/org/opends/server/loggers/RetentionPolicy.java b/opends/src/server/org/opends/server/loggers/RetentionPolicy.java
index 47121d9..c486899 100644
--- a/opends/src/server/org/opends/server/loggers/RetentionPolicy.java
+++ b/opends/src/server/org/opends/server/loggers/RetentionPolicy.java
@@ -26,21 +26,48 @@
  */
 package org.opends.server.loggers;
 
+import org.opends.server.admin.std.server.LogRetentionPolicyCfg;
+import org.opends.server.config.ConfigException;
+import org.opends.server.types.InitializationException;
 
 
 /**
  * This interface describes the retention policy that should be used
  * for the logger. Supported policies include number of files and
  * disk utilization (for Java 6).
+ *
+ * @param <T> The type of retention policy configuration handled by
+ *            this retention policy implementation.
  */
-public interface RetentionPolicy
+public interface RetentionPolicy<T extends LogRetentionPolicyCfg>
 {
   /**
+   * Initializes this log retention policy based on the
+   * information in the provided retention policy configuration.
+   *
+   * @param config
+   *          The retention policy configuration that contains the
+   *          information to use to initialize this policy.
+   * @throws ConfigException
+   *           If an unrecoverable problem arises in the process of
+   *           performing the initialization as a result of the server
+   *           configuration.
+   * @throws InitializationException
+   *           If a problem occurs during initialization that is not
+   *           related to the server configuration.
+   */
+  public abstract void initializeLogRetentionPolicy(T config)
+      throws ConfigException, InitializationException;
+
+  /**
    * This method checks for whether files should be deleted or not.
    *
-   * @return number of files deleted.
+   * @param writer The multi file writer writing the files to be
+   *        checked.
+   *
+   * @return number of files deleted, if any.
    */
-  public int deleteFiles();
+  public int deleteFiles(MultifileTextWriter writer);
 
 }
 

--
Gitblit v1.10.0