apollo-client/src/main/java/com/ctrip/framework/apollo/util/ConfigUtil.java/ConfigUtil/getDeprecatedCustomizedCacheRoot
class ConfigUtil:  @SuppressWarnings("deprecation")
  private String getDeprecatedCustomizedCacheRoot() {
    // 1. Get from System Property
    String cacheRoot = System.getProperty(ApolloClientSystemConsts.DEPRECATED_APOLLO_CACHE_DIR);
    if (!Strings.isNullOrEmpty(cacheRoot)) {
      DeprecatedPropertyNotifyUtil.warn(ApolloClientSystemConsts.DEPRECATED_APOLLO_CACHE_DIR,
          ApolloClientSystemConsts.APOLLO_CACHE_DIR);
    }
    if (Strings.isNullOrEmpty(cacheRoot)) {
      // 2. Get from OS environment variable
      cacheRoot = System.getenv(ApolloClientSystemConsts.DEPRECATED_APOLLO_CACHE_DIR_ENVIRONMENT_VARIABLES);
      if (!Strings.isNullOrEmpty(cacheRoot)) {
        DeprecatedPropertyNotifyUtil
            .warn(ApolloClientSystemConsts.DEPRECATED_APOLLO_CACHE_DIR_ENVIRONMENT_VARIABLES,
                ApolloClientSystemConsts.APOLLO_CACHE_DIR_ENVIRONMENT_VARIABLES);
      }
    }
    if (Strings.isNullOrEmpty(cacheRoot)) {
      // 3. Get from server.properties
      cacheRoot = Foundation.server().getProperty(ApolloClientSystemConsts.DEPRECATED_APOLLO_CACHE_DIR, null);
      if (!Strings.isNullOrEmpty(cacheRoot)) {
        DeprecatedPropertyNotifyUtil.warn(ApolloClientSystemConsts.DEPRECATED_APOLLO_CACHE_DIR,
            ApolloClientSystemConsts.APOLLO_CACHE_DIR);
      }
    }
    if (Strings.isNullOrEmpty(cacheRoot)) {
      // 4. Get from app.properties
      cacheRoot = Foundation.app().getProperty(ApolloClientSystemConsts.DEPRECATED_APOLLO_CACHE_DIR, null);
      if (!Strings.isNullOrEmpty(cacheRoot)) {
        DeprecatedPropertyNotifyUtil.warn(ApolloClientSystemConsts.DEPRECATED_APOLLO_CACHE_DIR,
            ApolloClientSystemConsts.APOLLO_CACHE_DIR);
      }
    }
    return cacheRoot;
  }