public void run()

in src/main/java/com/aliyuncs/kms/secretsmanager/client/SecretCacheClient.java [331:370]


        public void run() {
            while (!Thread.currentThread().isInterrupted()) {
                Set<String> secretNames = nextExecuteTimeMap.keySet();
                if (secretNames != null && !secretNames.isEmpty()) {
                    for (String secretName : secretNames) {
                        try {
                            CacheSecretInfo cacheSecretInfo = cacheSecretStoreStrategy.getCacheSecretInfo(secretName);
                            if (cacheSecretInfo != null) {
                                Long nextExecuteTime = nextExecuteTimeMap.get(secretName);
                                if (System.currentTimeMillis() > nextExecuteTime + CacheClientConstant.REQUEST_WAITING_TIME) {
                                    CommonLogger.getCommonLogger(CacheClientConstant.MODE_NAME).warnf("MonitorRefreshSecretTask secret is expired, secretName={}", secretName);
                                    try {
                                        refreshNow(secretName);
                                    } catch (Throwable e) {
                                        CommonLogger.getCommonLogger(CacheClientConstant.MODE_NAME).errorf("MonitorRefreshSecretTask refreshNow error, secretName={}", secretName, e);
                                    }
                                }
                            } else {
                                CommonLogger.getCommonLogger(CacheClientConstant.MODE_NAME).warnf("MonitorRefreshSecretTask can not get cache secret, secretName={}", secretName);
                                try {
                                    refreshNow(secretName);
                                } catch (Throwable e) {
                                    CommonLogger.getCommonLogger(CacheClientConstant.MODE_NAME).errorf("MonitorRefreshSecretTask refreshNow error, secretName={}", secretName, e);
                                }
                            }
                        } catch (Throwable e) {
                            CommonLogger.getCommonLogger(CacheClientConstant.MODE_NAME).errorf("MonitorRefreshSecretTask error, secretName={}", secretName, e);
                        }
                    }
                }
                try {
                    Thread.sleep(CacheClientConstant.MONITOR_INTERVAL);
                }catch (InterruptedException e){
                    Thread.currentThread().interrupt();
                    break;
                }catch (Throwable e) {
                    CommonLogger.getCommonLogger(CacheClientConstant.MODE_NAME).errorf("MonitorRefreshSecretTask sleep error", e);
                }
            }
        }