package com.reyun.task;

import com.reyun.service.AutoSyncGdtTokenService;
import com.reyun.util.RedisUtilNew;
import org.apache.commons.lang.time.DateUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;

/**
 * Created by zy on 2018-12-20
 * desc:定时同步广点通TOKEN
 */
public class AutoSyncGdtToken {

    private static Logger logger = LoggerFactory.getLogger(AutoSyncGdtToken.class);
    private static int EXPIRE_PERIOD = (int) DateUtils.MILLIS_PER_SECOND * 30 / 1000;
//    private static int EXPIRE_PERIOD = (int) DateUtils.MILLIS_PER_MINUTE * 3;

    @Autowired
    private AutoSyncGdtTokenService autoSyncGdtTokenService;

    public void run() {
        if (RedisUtilNew.getInstance().tryLock("trackingioAutoRefreshToken#2", EXPIRE_PERIOD) != null) {
            logger.info("广点通gdt同步token......");
            autoSyncGdtTokenService.refreshToken();
        } else {
            logger.info("广点通gdt RefreshToken, 正在处理......");
        }
    }
}