blob: db6e293963d69f7caa7e3479d40f6db9c3e8341d [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="de">
<head>
<!-- Generated by javadoc (version 1.7.0_25) on Mon Oct 14 12:35:25 CEST 2013 -->
<meta http-equiv="Content-Type" content="text/html" charset="UTF-8">
<title>FixedWindowRollingPolicy (Apache Extras™ for Apache log4j™. 1.2.17 API)</title>
<meta name="date" content="2013-10-14">
<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
</head>
<body>
<script type="text/javascript"><!--
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="FixedWindowRollingPolicy (Apache Extras™ for Apache log4j™. 1.2.17 API)";
}
//-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar_top">
<!-- -->
</a><a href="#skip-navbar_top" title="Skip navigation links"></a><a name="navbar_top_firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/FixedWindowRollingPolicy.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../index-all.html">Index</a></li>
<li><a href="../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../org/apache/log4j/rolling/FilterBasedTriggeringPolicy.html" title="class in org.apache.log4j.rolling"><span class="strong">Prev Class</span></a></li>
<li><a href="../../../../org/apache/log4j/rolling/RollingFileAppender.html" title="class in org.apache.log4j.rolling"><span class="strong">Next Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../index.html?org/apache/log4j/rolling/FixedWindowRollingPolicy.html" target="_top">Frames</a></li>
<li><a href="FixedWindowRollingPolicy.html" target="_top">No Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../allclasses-noframe.html">All Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_top");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#fields_inherited_from_class_org.apache.log4j.rolling.RollingPolicyBase">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor_summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method_summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor_detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method_detail">Method</a></li>
</ul>
</div>
<a name="skip-navbar_top">
<!-- -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle">org.apache.log4j.rolling</div>
<h2 title="Class FixedWindowRollingPolicy" class="title">Class FixedWindowRollingPolicy</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li><a href="http://docs.oracle.com/javase/1.4.2/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
<li>
<ul class="inheritance">
<li><a href="../../../../org/apache/log4j/rolling/RollingPolicyBase.html" title="class in org.apache.log4j.rolling">org.apache.log4j.rolling.RollingPolicyBase</a></li>
<li>
<ul class="inheritance">
<li>org.apache.log4j.rolling.FixedWindowRollingPolicy</li>
</ul>
</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Implemented Interfaces:</dt>
<dd><a href="../../../../org/apache/log4j/rolling/RollingPolicy.html" title="interface in org.apache.log4j.rolling">RollingPolicy</a>, org.apache.log4j.spi.OptionHandler</dd>
</dl>
<hr>
<br>
<pre>public final class <span class="strong">FixedWindowRollingPolicy</span>
extends <a href="../../../../org/apache/log4j/rolling/RollingPolicyBase.html" title="class in org.apache.log4j.rolling">RollingPolicyBase</a></pre>
<div class="block">When rolling over, <code>FixedWindowRollingPolicy</code> renames files
according to a fixed window algorithm as described below.
<p>The <b>ActiveFileName</b> property, which is required, represents the name
of the file where current logging output will be written.
The <b>FileNamePattern</b> option represents the file name pattern for the
archived (rolled over) log files. If present, the <b>FileNamePattern</b>
option must include an integer token, that is the string "%i" somewhere
within the pattern.
<p>Let <em>max</em> and <em>min</em> represent the values of respectively
the <b>MaxIndex</b> and <b>MinIndex</b> options. Let "foo.log" be the value
of the <b>ActiveFile</b> option and "foo.%i.log" the value of
<b>FileNamePattern</b>. Then, when rolling over, the file
<code>foo.<em>max</em>.log</code> will be deleted, the file
<code>foo.<em>max-1</em>.log</code> will be renamed as
<code>foo.<em>max</em>.log</code>, the file <code>foo.<em>max-2</em>.log</code>
renamed as <code>foo.<em>max-1</em>.log</code>, and so on,
the file <code>foo.<em>min+1</em>.log</code> renamed as
<code>foo.<em>min+2</em>.log</code>. Lastly, the active file <code>foo.log</code>
will be renamed as <code>foo.<em>min</em>.log</code> and a new active file name
<code>foo.log</code> will be created.
<p>Given that this rollover algorithm requires as many file renaming
operations as the window size, large window sizes are discouraged. The
current implementation will automatically reduce the window size to 12 when
larger values are specified by the user.</div>
<dl><dt><span class="strong">Author:</span></dt>
<dd>Ceki G&uuml;lc&uuml;</dd></dl>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- =========== FIELD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="field_summary">
<!-- -->
</a>
<h3>Field Summary</h3>
<ul class="blockList">
<li class="blockList"><a name="fields_inherited_from_class_org.apache.log4j.rolling.RollingPolicyBase">
<!-- -->
</a>
<h3>Fields inherited from class&nbsp;org.apache.log4j.rolling.<a href="../../../../org/apache/log4j/rolling/RollingPolicyBase.html" title="class in org.apache.log4j.rolling">RollingPolicyBase</a></h3>
<code><a href="../../../../org/apache/log4j/rolling/RollingPolicyBase.html#activeFileName">activeFileName</a></code></li>
</ul>
</li>
</ul>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor_summary">
<!-- -->
</a>
<h3>Constructor Summary</h3>
<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Constructor and Description</th>
</tr>
<tr class="altColor">
<td class="colOne"><code><strong><a href="../../../../org/apache/log4j/rolling/FixedWindowRollingPolicy.html#FixedWindowRollingPolicy()">FixedWindowRollingPolicy</a></strong>()</code>
<div class="block">Constructs a new instance.</div>
</td>
</tr>
</table>
</li>
</ul>
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method_summary">
<!-- -->
</a>
<h3>Method Summary</h3>
<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span>Methods</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/log4j/rolling/FixedWindowRollingPolicy.html#activateOptions()">activateOptions</a></strong>()</code></td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/log4j/rolling/FixedWindowRollingPolicy.html#getMaxIndex()">getMaxIndex</a></strong>()</code>
<div class="block">Get index of oldest log file to be retained.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/log4j/rolling/FixedWindowRollingPolicy.html#getMinIndex()">getMinIndex</a></strong>()</code>
<div class="block">Get index of most recent log file.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../../org/apache/log4j/rolling/RolloverDescription.html" title="interface in org.apache.log4j.rolling">RolloverDescription</a></code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/log4j/rolling/FixedWindowRollingPolicy.html#initialize(java.lang.String, boolean)">initialize</a></strong>(<a href="http://docs.oracle.com/javase/1.4.2/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;file,
boolean&nbsp;append)</code>
<div class="block">Initialize the policy and return any initial actions for rolling file appender..</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../../org/apache/log4j/rolling/RolloverDescription.html" title="interface in org.apache.log4j.rolling">RolloverDescription</a></code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/log4j/rolling/FixedWindowRollingPolicy.html#rollover(java.lang.String)">rollover</a></strong>(<a href="http://docs.oracle.com/javase/1.4.2/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;currentFileName)</code>
<div class="block">Prepare for a rollover.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/log4j/rolling/FixedWindowRollingPolicy.html#setMaxIndex(int)">setMaxIndex</a></strong>(int&nbsp;maxIndex)</code>
<div class="block">Set index of oldest log file to be retained.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/log4j/rolling/FixedWindowRollingPolicy.html#setMinIndex(int)">setMinIndex</a></strong>(int&nbsp;minIndex)</code>
<div class="block">Set index of most recent log file.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods_inherited_from_class_org.apache.log4j.rolling.RollingPolicyBase">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;org.apache.log4j.rolling.<a href="../../../../org/apache/log4j/rolling/RollingPolicyBase.html" title="class in org.apache.log4j.rolling">RollingPolicyBase</a></h3>
<code><a href="../../../../org/apache/log4j/rolling/RollingPolicyBase.html#formatFileName(java.lang.Object, java.lang.StringBuffer)">formatFileName</a>, <a href="../../../../org/apache/log4j/rolling/RollingPolicyBase.html#getActiveFileName()">getActiveFileName</a>, <a href="../../../../org/apache/log4j/rolling/RollingPolicyBase.html#getDatePatternConverter()">getDatePatternConverter</a>, <a href="../../../../org/apache/log4j/rolling/RollingPolicyBase.html#getFileNamePattern()">getFileNamePattern</a>, <a href="../../../../org/apache/log4j/rolling/RollingPolicyBase.html#getIntegerPatternConverter()">getIntegerPatternConverter</a>, <a href="../../../../org/apache/log4j/rolling/RollingPolicyBase.html#parseFileNamePattern()">parseFileNamePattern</a>, <a href="../../../../org/apache/log4j/rolling/RollingPolicyBase.html#setActiveFileName(java.lang.String)">setActiveFileName</a>, <a href="../../../../org/apache/log4j/rolling/RollingPolicyBase.html#setFileNamePattern(java.lang.String)">setFileNamePattern</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods_inherited_from_class_java.lang.Object">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/1.4.2/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
<code><a href="http://docs.oracle.com/javase/1.4.2/docs/api/java/lang/Object.html?is-external=true#clone()" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/1.4.2/docs/api/java/lang/Object.html?is-external=true#equals(java.lang.Object)" title="class or interface in java.lang">equals</a>, <a href="http://docs.oracle.com/javase/1.4.2/docs/api/java/lang/Object.html?is-external=true#finalize()" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/1.4.2/docs/api/java/lang/Object.html?is-external=true#getClass()" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/1.4.2/docs/api/java/lang/Object.html?is-external=true#hashCode()" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/1.4.2/docs/api/java/lang/Object.html?is-external=true#notify()" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/1.4.2/docs/api/java/lang/Object.html?is-external=true#notifyAll()" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/1.4.2/docs/api/java/lang/Object.html?is-external=true#toString()" title="class or interface in java.lang">toString</a>, <a href="http://docs.oracle.com/javase/1.4.2/docs/api/java/lang/Object.html?is-external=true#wait()" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/1.4.2/docs/api/java/lang/Object.html?is-external=true#wait(long)" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/1.4.2/docs/api/java/lang/Object.html?is-external=true#wait(long, int)" title="class or interface in java.lang">wait</a></code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor_detail">
<!-- -->
</a>
<h3>Constructor Detail</h3>
<a name="FixedWindowRollingPolicy()">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>FixedWindowRollingPolicy</h4>
<pre>public&nbsp;FixedWindowRollingPolicy()</pre>
<div class="block">Constructs a new instance.</div>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method_detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a name="activateOptions()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>activateOptions</h4>
<pre>public&nbsp;void&nbsp;activateOptions()</pre>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code>activateOptions</code>&nbsp;in interface&nbsp;<code>org.apache.log4j.spi.OptionHandler</code></dd>
<dt><strong>Overrides:</strong></dt>
<dd><code><a href="../../../../org/apache/log4j/rolling/RollingPolicyBase.html#activateOptions()">activateOptions</a></code>&nbsp;in class&nbsp;<code><a href="../../../../org/apache/log4j/rolling/RollingPolicyBase.html" title="class in org.apache.log4j.rolling">RollingPolicyBase</a></code></dd>
</dl>
</li>
</ul>
<a name="initialize(java.lang.String, boolean)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>initialize</h4>
<pre>public&nbsp;<a href="../../../../org/apache/log4j/rolling/RolloverDescription.html" title="interface in org.apache.log4j.rolling">RolloverDescription</a>&nbsp;initialize(<a href="http://docs.oracle.com/javase/1.4.2/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;file,
boolean&nbsp;append)</pre>
<div class="block">Initialize the policy and return any initial actions for rolling file appender..</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>file</code> - current value of RollingFileAppender.getFile().</dd><dd><code>append</code> - current value of RollingFileAppender.getAppend().</dd>
<dt><span class="strong">Returns:</span></dt><dd>Description of the initialization, may be null to indicate
no initialization needed.</dd></dl>
</li>
</ul>
<a name="rollover(java.lang.String)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>rollover</h4>
<pre>public&nbsp;<a href="../../../../org/apache/log4j/rolling/RolloverDescription.html" title="interface in org.apache.log4j.rolling">RolloverDescription</a>&nbsp;rollover(<a href="http://docs.oracle.com/javase/1.4.2/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;currentFileName)</pre>
<div class="block">Prepare for a rollover. This method is called prior to
closing the active log file, performs any necessary
preliminary actions and describes actions needed
after close of current log file.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>currentFileName</code> - file name for current active log file.</dd>
<dt><span class="strong">Returns:</span></dt><dd>Description of pending rollover, may be null to indicate no rollover
at this time.</dd></dl>
</li>
</ul>
<a name="getMaxIndex()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getMaxIndex</h4>
<pre>public&nbsp;int&nbsp;getMaxIndex()</pre>
<div class="block">Get index of oldest log file to be retained.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>index of oldest log file.</dd></dl>
</li>
</ul>
<a name="getMinIndex()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getMinIndex</h4>
<pre>public&nbsp;int&nbsp;getMinIndex()</pre>
<div class="block">Get index of most recent log file.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>index of oldest log file.</dd></dl>
</li>
</ul>
<a name="setMaxIndex(int)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setMaxIndex</h4>
<pre>public&nbsp;void&nbsp;setMaxIndex(int&nbsp;maxIndex)</pre>
<div class="block">Set index of oldest log file to be retained.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>maxIndex</code> - index of oldest log file to be retained.</dd></dl>
</li>
</ul>
<a name="setMinIndex(int)">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>setMinIndex</h4>
<pre>public&nbsp;void&nbsp;setMinIndex(int&nbsp;minIndex)</pre>
<div class="block">Set index of most recent log file.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>minIndex</code> - Index of most recent log file.</dd></dl>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<!-- ========= END OF CLASS DATA ========= -->
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar_bottom">
<!-- -->
</a><a href="#skip-navbar_bottom" title="Skip navigation links"></a><a name="navbar_bottom_firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/FixedWindowRollingPolicy.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../index-all.html">Index</a></li>
<li><a href="../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../org/apache/log4j/rolling/FilterBasedTriggeringPolicy.html" title="class in org.apache.log4j.rolling"><span class="strong">Prev Class</span></a></li>
<li><a href="../../../../org/apache/log4j/rolling/RollingFileAppender.html" title="class in org.apache.log4j.rolling"><span class="strong">Next Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../index.html?org/apache/log4j/rolling/FixedWindowRollingPolicy.html" target="_top">Frames</a></li>
<li><a href="FixedWindowRollingPolicy.html" target="_top">No Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../allclasses-noframe.html">All Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_bottom");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#fields_inherited_from_class_org.apache.log4j.rolling.RollingPolicyBase">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor_summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method_summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor_detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method_detail">Method</a></li>
</ul>
</div>
<a name="skip-navbar_bottom">
<!-- -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<p class="legalCopy"><small><p>Copyright © 2013 The Apache Software Foundation. Licensed under the <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a></p> <p>Apache Extras for Apache log4j, Apache log4j and Apache are trademarks of the Apache Software Foundation.</p></small></p>
</body>
</html>