1 /** 2 * Logback: the reliable, generic, fast and flexible logging framework. 3 * Copyright (C) 1999-2015, QOS.ch. All rights reserved. 4 * 5 * This program and the accompanying materials are dual-licensed under 6 * either the terms of the Eclipse Public License v1.0 as published by 7 * the Eclipse Foundation 8 * 9 * or (per the licensee's choosing) 10 * 11 * under the terms of the GNU Lesser General Public License version 2.1 12 * as published by the Free Software Foundation. 13 */ 14 package ch.qos.logback.core.rolling; 15 16 import java.io.File; 17 18 import ch.qos.logback.core.spi.LifeCycle; 19 20 /** 21 * A <code>TriggeringPolicy</code> controls the conditions under which roll-over 22 * occurs. Such conditions include time of day, file size, an external event, 23 * the log request or a combination thereof. 24 * 25 * @author Ceki Gülcü 26 */ 27 28 public interface TriggeringPolicy<E> extends LifeCycle { 29 30 /** 31 * Should roll-over be triggered at this time? 32 * 33 * @param activeFile A reference to the currently active log file. 34 * @param event A reference to the current event. 35 * @return true if a roll-over should occur. 36 */ 37 boolean isTriggeringEvent(final File activeFile, final E event); 38 }