ITenantPlugin.java 1.0 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. package jnpf.database.plugins;
  2. import cn.dev33.satoken.context.SaHolder;
  3. import jnpf.util.StringUtil;
  4. import jnpf.util.UserProvider;
  5. import lombok.AllArgsConstructor;
  6. import lombok.Data;
  7. import java.util.function.Consumer;
  8. public interface ITenantPlugin {
  9. default void printNoTenant(Consumer<NoTenantInfoModel> logConsumer){
  10. String token = null;
  11. String url = null;
  12. String stack = null;
  13. String userId = UserProvider.getUser().getTenantId();
  14. try{
  15. token = UserProvider.getToken();
  16. url = SaHolder.getRequest().getRequestPath();
  17. }catch (Exception e){}
  18. if(url == null){
  19. try{
  20. stack = StringUtil.join(Thread.currentThread().getStackTrace(), "\n");
  21. }catch (Exception e){}
  22. }
  23. logConsumer.accept(new NoTenantInfoModel(token, url, stack, userId));
  24. }
  25. }
  26. @Data
  27. @AllArgsConstructor
  28. class NoTenantInfoModel{
  29. private String token;
  30. private String url;
  31. private String stack;
  32. private String userId;
  33. }