github.com/polarismesh/polaris@v1.17.8/cache/config.go (about)

     1  /**
     2   * Tencent is pleased to support the open source community by making Polaris available.
     3   *
     4   * Copyright (C) 2019 THL A29 Limited, a Tencent company. All rights reserved.
     5   *
     6   * Licensed under the BSD 3-Clause License (the "License");
     7   * you may not use this file except in compliance with the License.
     8   * You may obtain a copy of the License at
     9   *
    10   * https://opensource.org/licenses/BSD-3-Clause
    11   *
    12   * Unless required by applicable law or agreed to in writing, software distributed
    13   * under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
    14   * CONDITIONS OF ANY KIND, either express or implied. See the License for the
    15   * specific language governing permissions and limitations under the License.
    16   */
    17  
    18  package cache
    19  
    20  import "time"
    21  
    22  // Config 缓存配置
    23  type Config struct {
    24  	// Open 是否启用缓存
    25  	Open bool `yaml:"open"`
    26  	// DiffTime 设置拉取时间范围, [T1 - abs(DiffTime), T1]
    27  	DiffTime time.Duration `yaml:"diffTime"`
    28  	// Resources 设置那些资源需要使用缓存
    29  	Resources []ConfigEntry `yaml:"resources"`
    30  }
    31  
    32  // ConfigEntry 单个缓存资源配置
    33  type ConfigEntry struct {
    34  	Name   string                 `yaml:"name"`
    35  	Option map[string]interface{} `yaml:"option"`
    36  }
    37  
    38  var (
    39  	config *Config
    40  )
    41  
    42  // SetCacheConfig 设置缓存配置
    43  func SetCacheConfig(conf *Config) {
    44  	config = conf
    45  }