execute (TenantUtils)

ruoyi-office · multi-tenancy, context-switching, auth

Runs a callable under a specified tenant ID, temporarily overriding tenant context and restoring the previous state afterward.

    public static <V> V execute(Long tenantId, Callable<V> callable) {
        Long oldTenantId = TenantContextHolder.getTenantId();
        Boolean oldIgnore = TenantContextHolder.isIgnore();
        try {
            TenantContextHolder.setTenantId(tenantId);
            TenantContextHolder.setIgnore(false);
            // 执行逻辑
            return callable.call();
        } catch (Exception e) {
            throw new RuntimeException(e);
        } finally {
            TenantContextHolder.setTenantId(oldTenantId);
            TenantContextHolder.setIgnore(oldIgnore);
        }
    }

See the full source, get the GitHub permalink, and search 40K more like it.

Get a free API key