From commits-return-32459-apmail-directory-commits-archive=directory.apache.org@directory.apache.org Tue Oct 4 14:01:01 2011 Return-Path: X-Original-To: apmail-directory-commits-archive@www.apache.org Delivered-To: apmail-directory-commits-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id C910277FF for ; Tue, 4 Oct 2011 14:01:01 +0000 (UTC) Received: (qmail 71110 invoked by uid 500); 4 Oct 2011 14:01:01 -0000 Delivered-To: apmail-directory-commits-archive@directory.apache.org Received: (qmail 71048 invoked by uid 500); 4 Oct 2011 14:01:01 -0000 Mailing-List: contact commits-help@directory.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@directory.apache.org Delivered-To: mailing list commits@directory.apache.org Received: (qmail 71041 invoked by uid 99); 4 Oct 2011 14:01:01 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 04 Oct 2011 14:01:01 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=5.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.4] (HELO eris.apache.org) (140.211.11.4) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 04 Oct 2011 14:00:58 +0000 Received: from eris.apache.org (localhost [127.0.0.1]) by eris.apache.org (Postfix) with ESMTP id 679D52388B1B for ; Tue, 4 Oct 2011 14:00:37 +0000 (UTC) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r1178796 - in /directory/apacheds/branches/apacheds-txns/xdbm-partition/src/main/java/org/apache/directory/server/log/impl: DefaultLog.java LogScannerInternal.java Date: Tue, 04 Oct 2011 14:00:37 -0000 To: commits@directory.apache.org From: saya@apache.org X-Mailer: svnmailer-1.0.8-patched Message-Id: <20111004140037.679D52388B1B@eris.apache.org> X-Virus-Checked: Checked by ClamAV on apache.org Author: saya Date: Tue Oct 4 14:00:36 2011 New Revision: 1178796 URL: http://svn.apache.org/viewvc?rev=1178796&view=rev Log: an implementation for the Log interface Added: directory/apacheds/branches/apacheds-txns/xdbm-partition/src/main/java/org/apache/directory/server/log/impl/DefaultLog.java directory/apacheds/branches/apacheds-txns/xdbm-partition/src/main/java/org/apache/directory/server/log/impl/LogScannerInternal.java Added: directory/apacheds/branches/apacheds-txns/xdbm-partition/src/main/java/org/apache/directory/server/log/impl/DefaultLog.java URL: http://svn.apache.org/viewvc/directory/apacheds/branches/apacheds-txns/xdbm-partition/src/main/java/org/apache/directory/server/log/impl/DefaultLog.java?rev=1178796&view=auto ============================================================================== --- directory/apacheds/branches/apacheds-txns/xdbm-partition/src/main/java/org/apache/directory/server/log/impl/DefaultLog.java (added) +++ directory/apacheds/branches/apacheds-txns/xdbm-partition/src/main/java/org/apache/directory/server/log/impl/DefaultLog.java Tue Oct 4 14:00:36 2011 @@ -0,0 +1,64 @@ + +package org.apache.directory.server.log.impl; + +import java.io.IOException; + +import org.apache.directory.server.log.InvalidLogException; +import org.apache.directory.server.log.Log; +import org.apache.directory.server.log.LogAnchor; +import org.apache.directory.server.log.LogScanner; +import org.apache.directory.server.log.UserLogRecord; + +public class DefaultLog implements Log +{ + /** Log manager */ + LogManager logManager; + + /** Log File Manager */ + LogFileManager logFileManager; + + + /** LogFlushManager */ + LogFlushManager logFlushManager; + + /** + * {@inheritDoc} + */ + public void init( String logFilepath, String suffix, int logBufferSize, long logFileSize ) throws IOException, InvalidLogException + { + logFileManager = new DefaultLogFileManager(); + logFileManager.init( logFilepath, suffix ); + + logManager = new LogManager( logFileManager ); + logManager.initLogManager(); + + logFlushManager = new LogFlushManager( logManager, logBufferSize, logFileSize ); + } + + /** + * {@inheritDoc} + */ + public void log( UserLogRecord userRecord, boolean sync ) throws IOException, InvalidLogException + { + logFlushManager.append( userRecord, sync ); + } + + + /** + * {@inheritDoc} + */ + public LogScanner beginScan( LogAnchor startPoint ) + { + LogScannerInternal logScanner = new DefaultLogScanner(); + logScanner.init( startPoint, logFileManager ); + return logScanner; + } + + /** + * {@inheritDoc} + */ + public void advanceMinNeededLogPosition( LogAnchor newAnchor ) + { + logManager.advanceMinLogAnchor( newAnchor ); + } +} Added: directory/apacheds/branches/apacheds-txns/xdbm-partition/src/main/java/org/apache/directory/server/log/impl/LogScannerInternal.java URL: http://svn.apache.org/viewvc/directory/apacheds/branches/apacheds-txns/xdbm-partition/src/main/java/org/apache/directory/server/log/impl/LogScannerInternal.java?rev=1178796&view=auto ============================================================================== --- directory/apacheds/branches/apacheds-txns/xdbm-partition/src/main/java/org/apache/directory/server/log/impl/LogScannerInternal.java (added) +++ directory/apacheds/branches/apacheds-txns/xdbm-partition/src/main/java/org/apache/directory/server/log/impl/LogScannerInternal.java Tue Oct 4 14:00:36 2011 @@ -0,0 +1,16 @@ + +package org.apache.directory.server.log.impl; + +import org.apache.directory.server.log.LogScanner; +import org.apache.directory.server.log.LogAnchor; + +public interface LogScannerInternal extends LogScanner +{ + /** + * Initializes the scanner + * + * @param startingPoint + * @param logFileManager log file manager to use + */ + public void init( LogAnchor startingPoint, LogFileManager logFileManager ); +}