All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.flyfish.oauth.common.AuditingContext Maven / Gradle / Ivy

There is a newer version: 1.0.7
Show newest version
package com.flyfish.oauth.common;

import com.flyfish.oauth.domain.auditing.AuditingStrategy;

import java.util.ArrayList;
import java.util.Collections;
import java.util.List;

/**
 * 审计上下文,缓存审计的一些公共数据
 *
 * @author Wangyu
 */
public class AuditingContext {

    // 缓存线程内
    private List strategies = new ArrayList<>();

    public static AuditingContext sharedContext() {
        return LazyHolder.INSTANCE;
    }

    // 上下文存储
    public AuditingContext set(List strategies) {
        this.strategies = strategies;
        return this;
    }

    public AuditingContext clear() {
        this.strategies = null;
        return this;
    }

    public List get() {
        return null == strategies ? Collections.emptyList() : strategies;
    }

    private static class LazyHolder {
        private static final AuditingContext INSTANCE = new AuditingContext();
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy