Skip to content

Commit b7d2762

Browse files
authored
feat:配置文件支持获取标签信息 (polarismesh#192)
1 parent 0bcd204 commit b7d2762

File tree

5 files changed

+32
-3
lines changed

5 files changed

+32
-3
lines changed

api.go

+7-2
Original file line numberDiff line numberDiff line change
@@ -131,14 +131,19 @@ func NewQuotaRequest() QuotaRequest {
131131
return &model.QuotaRequestImpl{}
132132
}
133133

134+
type GetConfigFileRequest api.GetConfigFileRequest
135+
134136
// ConfigFile config
135137
type ConfigFile model.ConfigFile
136138

137139
// ConfigAPI api for configuration files.
138140
type ConfigAPI interface {
139141
api.SDKOwner
140-
// GetConfigFile obtaining the configuration file
141-
GetConfigFile(namespace, fileGroup, fileName string) (ConfigFile, error)
142+
// Deprecated: please use FetchConfigFile
143+
// GetConfigFile 获取配置文件
144+
GetConfigFile(namespace, fileGroup, fileName string) (model.ConfigFile, error)
145+
// FetchConfigFile 获取配置文件
146+
FetchConfigFile(*GetConfigFileRequest) (model.ConfigFile, error)
142147
// CreateConfigFile create configuration file
143148
CreateConfigFile(namespace, fileGroup, fileName, content string) error
144149
// UpdateConfigFile update configuration file

api_config.go

+6-1
Original file line numberDiff line numberDiff line change
@@ -69,10 +69,15 @@ func NewConfigAPIByContext(context api.SDKContext) ConfigAPI {
6969
}
7070

7171
// GetConfigFile 获取配置文件
72-
func (c *configAPI) GetConfigFile(namespace, fileGroup, fileName string) (ConfigFile, error) {
72+
func (c *configAPI) GetConfigFile(namespace, fileGroup, fileName string) (model.ConfigFile, error) {
7373
return c.rawAPI.GetConfigFile(namespace, fileGroup, fileName)
7474
}
7575

76+
// FetchConfigFile .
77+
func (c *configAPI) FetchConfigFile(req *GetConfigFileRequest) (model.ConfigFile, error) {
78+
return c.rawAPI.FetchConfigFile((*api.GetConfigFileRequest)(req))
79+
}
80+
7681
// CreateConfigFile 创建配置文件
7782
func (c *configAPI) CreateConfigFile(namespace, fileGroup, fileName, content string) error {
7883
return c.rawAPI.CreateConfigFile(namespace, fileGroup, fileName, content)

pkg/flow/configuration/model.go

+9
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,15 @@ func newDefaultConfigFile(metadata model.ConfigFileMetadata, repo *ConfigFileRep
4949
return configFile
5050
}
5151

52+
// GetLabels 获取标签
53+
func (c *defaultConfigFile) GetLabels() map[string]string {
54+
remote := c.fileRepo.loadRemoteFile()
55+
if remote == nil {
56+
return map[string]string{}
57+
}
58+
return remote.GetLabels()
59+
}
60+
5261
// GetContent 获取配置文件内容
5362
func (c *defaultConfigFile) GetContent() string {
5463
if c.content == NotExistedFileContent {

pkg/model/config.go

+2
Original file line numberDiff line numberDiff line change
@@ -79,6 +79,8 @@ type ConfigFileMetadata interface {
7979
// ConfigFile 文本类型配置文件对象
8080
type ConfigFile interface {
8181
ConfigFileMetadata
82+
// GetLabels 获取配置文件标签
83+
GetLabels() map[string]string
8284
// GetContent 获取配置文件内容
8385
GetContent() string
8486
// HasContent 是否有配置内容

pkg/plugin/configconnector/config_file.go

+8
Original file line numberDiff line numberDiff line change
@@ -73,6 +73,14 @@ type ConfigFileTag struct {
7373
Value string
7474
}
7575

76+
func (c *ConfigFile) GetLabels() map[string]string {
77+
ret := make(map[string]string, len(c.Tags))
78+
for i := range c.Tags {
79+
ret[c.Tags[i].Key] = c.Tags[i].Value
80+
}
81+
return ret
82+
}
83+
7684
// GetNamespace 获取配置文件命名空间
7785
func (c *ConfigFile) GetNamespace() string {
7886
return c.Namespace

0 commit comments

Comments
 (0)