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 }