Skip to content
Snippets Groups Projects
Select Git revision
  • 57a2a8fd96f8813a7547c87b8bc1cc07ab282c1c
  • master default protected
  • 3.0
  • develop
  • revert-2069-tripleVersion
  • 3.1
  • rest-protocol
  • feat/remoting_rocketmq
  • dapr-support
  • 1.5
  • 1.4
  • 1.3
  • 1.2
  • 1.1
  • v3.0.3-rc2
  • v3.0.3-rc1
  • v3.0.2
  • v1.5.8
  • v1.5.9-rc1
  • v3.0.1
  • v1.5.8-rc1
  • v3.0.0
  • v3.0.0-rc4-1
  • v3.0.0-rc4
  • v3.0.0-rc3
  • v1.5.7
  • v1.5.7-rc2
  • v3.0.0-rc2
  • remove
  • v1.5.7-rc1
  • v3.0.0-rc1
  • v1.5.7-rc1-tmp
  • 1.5.6
  • v1.5.6
34 results

default_config_reader.go

Blame
  • default_config_reader.go 2.48 KiB
    /*
     * Licensed to the Apache Software Foundation (ASF) under one or more
     * contributor license agreements.  See the NOTICE file distributed with
     * this work for additional information regarding copyright ownership.
     * The ASF licenses this file to You under the Apache License, Version 2.0
     * (the "License"); you may not use this file except in compliance with
     * the License.  You may obtain a copy of the License at
     *
     *     http://www.apache.org/licenses/LICENSE-2.0
     *
     * Unless required by applicable law or agreed to in writing, software
     * distributed under the License is distributed on an "AS IS" BASIS,
     * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
     * See the License for the specific language governing permissions and
     * limitations under the License.
     */
    
    package reader_impl
    
    import (
    	"os"
    )
    
    import (
    	perrors "github.com/pkg/errors"
    )
    
    import (
    	"github.com/apache/dubbo-go/common/constant"
    	"github.com/apache/dubbo-go/common/extension"
    	"github.com/apache/dubbo-go/common/yaml"
    	"github.com/apache/dubbo-go/config/rest"
    	"github.com/apache/dubbo-go/config/rest/config_reader"
    )
    
    var (
    	defaultConfigReader *DefaultConfigReader
    )
    
    func init() {
    	extension.SetRestConfigReader(constant.DEFAULT_KEY, GetDefaultConfigReader)
    }
    
    type DefaultConfigReader struct {
    }
    
    func NewDefaultConfigReader() *DefaultConfigReader {
    	return &DefaultConfigReader{}
    }
    
    func (dcr *DefaultConfigReader) ReadConsumerConfig() (*rest.RestConsumerConfig, error) {
    	confConFile := os.Getenv(constant.CONF_CONSUMER_FILE_PATH)
    	if len(confConFile) == 0 {
    		return nil, nil
    	}
    	restConsumerConfig := &rest.RestConsumerConfig{}
    	err := yaml.UnmarshalYMLConfig(confConFile, restConsumerConfig)
    	if err != nil {
    		return nil, perrors.Errorf("[Rest Config] unmarshal Consumer RestYmlConfig error %v", perrors.WithStack(err))
    	}
    	return restConsumerConfig, nil
    }
    
    func (dcr *DefaultConfigReader) ReadProviderConfig() (*rest.RestProviderConfig, error) {
    	confProFile := os.Getenv(constant.CONF_PROVIDER_FILE_PATH)
    	if len(confProFile) == 0 {
    		return nil, nil
    	}
    	restProviderConfig := &rest.RestProviderConfig{}
    	err := yaml.UnmarshalYMLConfig(confProFile, restProviderConfig)
    	if err != nil {
    		return nil, perrors.Errorf("[Rest Config] unmarshal Provider RestYmlConfig error %v", perrors.WithStack(err))
    
    	}
    	return restProviderConfig, nil
    }
    
    func GetDefaultConfigReader() config_reader.RestConfigReader {
    	if defaultConfigReader == nil {
    		defaultConfigReader = NewDefaultConfigReader()
    	}
    	return defaultConfigReader
    }