package com.sandu.ximon.admin.context; import lombok.experimental.UtilityClass; /** * 多租户Holder * * @author pangu * @since 2020-9-8 */ @UtilityClass public class CustomerInspectContextHolder { /** * 支持父子线程之间的数据传递 */ private final ThreadLocal THREAD_LOCAL_TENANT = new ThreadLocal<>(); /** * TTL 设置租户ID
* 谨慎使用此方法,避免嵌套调用。尽量使用 {@code TenantBroker} * * @param tenantId 租户ID */ public void setTenantId(String tenantId) { THREAD_LOCAL_TENANT.set(tenantId); } /** * 获取TTL中的租户ID * * @return String */ public String getTenantId() { return THREAD_LOCAL_TENANT.get(); } /** * 清除tenantId */ public void clear() { THREAD_LOCAL_TENANT.remove(); } }