Java 类ch.qos.logback.core.rolling.RollingPolicy 实例源码

项目:logback-config    文件:ConfigConfigurator.java   
private Appender<ILoggingEvent> configureAppender(LoggerContext loggerContext, String name, Config config)
        throws ReflectiveOperationException {
    List<Object> children = new ArrayList<>();

    @SuppressWarnings("unchecked")
    Class<Appender<ILoggingEvent>> clazz = (Class<Appender<ILoggingEvent>>) Class
            .forName(config.getString("class"));

    Appender<ILoggingEvent> appender = this.configureObject(loggerContext, clazz, config, children);
    appender.setName(name);

    for (Object child : children) {
        if (child instanceof RollingPolicy) {
            ((RollingPolicy) child).setParent((FileAppender<?>) appender);
        }
        if (child instanceof LifeCycle) {
            ((LifeCycle) child).start();
        }
    }

    appender.start();
    return appender;

}
项目:metasfresh    文件:MetasfreshFileLoggerHelper.java   
public static final MetasfreshFileLoggerHelper get(final LoggerContext context)
{
    final Logger rootLogger = context.getLogger(org.slf4j.Logger.ROOT_LOGGER_NAME);
    final Appender<ILoggingEvent> appender = rootLogger.getAppender(FILEAPPENDER_NAME);
    if (!(appender instanceof RollingFileAppender))
    {
        return NULL;
    }

    final RollingFileAppender<?> rollingFileAppender = (RollingFileAppender<?>)appender;
    final RollingPolicy rollingPolicy = rollingFileAppender.getRollingPolicy();
    if (!(rollingPolicy instanceof MetasfreshTimeBasedRollingPolicy))
    {
        return NULL;
    }

    final MetasfreshTimeBasedRollingPolicy<?> metasfreshRollingPolicy = (MetasfreshTimeBasedRollingPolicy<?>)rollingPolicy;

    return new MetasfreshFileLoggerHelper(rollingFileAppender, metasfreshRollingPolicy);
}
项目:bootique-logback    文件:FileAppenderFactory.java   
protected FileAppender<ILoggingEvent> createRollingFileAppender(Encoder<ILoggingEvent> encoder,
                                                                LoggerContext context,
                                                                RollingPolicyFactory rollingPolicy) {

    RollingFileAppender<ILoggingEvent> appender = new RollingFileAppender<>();
    appender.setFile(file);
    appender.setContext(context);
    appender.setEncoder(encoder);
    // Setup rolling policy
    RollingPolicy policy = rollingPolicy.createRollingPolicy(context);
    appender.setRollingPolicy(policy);
    policy.setParent(appender);
    // Setup triggering policy
    TriggeringPolicy<ILoggingEvent> triggeringPolicy = rollingPolicy.createTriggeringPolicy(context);
    if (triggeringPolicy != null) {
        appender.setTriggeringPolicy(triggeringPolicy);
        triggeringPolicy.start();
    }
    policy.start();
    appender.start();

    return appender;
}
项目:RotatableAppender    文件:NoopRollingPolicyTest.java   
@Test
public void theActiveFileNameIsWhateverTheAppenderHas() throws Exception {
    RollingPolicy policy = new NoopRollingPolicy();
    policy.setParent(appender);

    assertEquals(logPath, policy.getActiveFileName());
}
项目:RotatableAppender    文件:RotatableFileAppender.java   
public RotatableFileAppender() {
    setTriggeringPolicy(new RotationBasedTriggeringPolicy<E>());
    RollingPolicy rollingPolicy = new NoopRollingPolicy();
    setRollingPolicy(rollingPolicy);
    rollingPolicy.setParent(this);
}
项目:bootique-logback    文件:RollingPolicyFactory.java   
/**
 * Creates rolling policy for rotation. This method validates rolling policy
 * properties before creation policy.
 *
 * @param context
 *            a logger context
 * @return a rolling policy for rotation
 * @throws IllegalStateException
 *             if rolling policy properties are incorrect
 */
public RollingPolicy createRollingPolicy(LoggerContext context) {
    getFileNamePatternValidator(context).validate();
    return instantiatePolicy(context);
}
项目:bootique-logback    文件:RollingPolicyFactory.java   
/**
 * Instantiates rolling policy for rotation.
 *
 * @param context
 *            a logger context
 * @return rolling policy for rotation
 */
protected abstract RollingPolicy instantiatePolicy(LoggerContext context);