factory

package
v1.0.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 13, 2024 License: Apache-2.0 Imports: 10 Imported by: 0

Documentation

Index

Constants

View Source
const (
	NrfDefaultTLSKeyLogPath      = "./log/nrfsslkey.log"
	NrfDefaultCertPemPath        = "./cert/nrf.pem"
	NrfDefaultPrivateKeyPath     = "./cert/nrf.key"
	NrfDefaultRootCertPemPath    = "./cert/root.pem"
	NrfDefaultRootPrivateKeyPath = "./cert/root.key"
	NrfDefaultConfigPath         = "./config/nrfcfg.yaml"
	NrfSbiDefaultIPv4            = "127.0.0.10"
	NrfSbiDefaultPort            = 8000
	NrfSbiDefaultScheme          = "https"
	NrfNfmResUriPrefix           = "/nnrf-nfm/v1"
	NrfDiscResUriPrefix          = "/nnrf-disc/v1"
)

Variables

This section is empty.

Functions

func InitConfigFactory

func InitConfigFactory(f string, cfg *Config) error

TODO: Support configuration update from REST api

Types

type Cert

type Cert struct {
	Pem string `yaml:"pem,omitempty" valid:"type(string),minstringlength(1),required"`
	Key string `yaml:"key,omitempty" valid:"type(string),minstringlength(1),required"`
}

type Config

type Config struct {
	Info          *Info          `yaml:"info" valid:"required"`
	Configuration *Configuration `yaml:"configuration" valid:"required"`
	Logger        *Logger        `yaml:"logger" valid:"required"`
	sync.RWMutex
}
var NrfConfig *Config

func ReadConfig

func ReadConfig(cfgPath string) (*Config, error)

func (*Config) GetCertBasePath

func (c *Config) GetCertBasePath() string

func (*Config) GetLogEnable

func (c *Config) GetLogEnable() bool

func (*Config) GetLogLevel

func (c *Config) GetLogLevel() string

func (*Config) GetLogReportCaller

func (c *Config) GetLogReportCaller() bool

func (*Config) GetNrfCertPemPath

func (c *Config) GetNrfCertPemPath() string

func (*Config) GetNrfPrivKeyPath

func (c *Config) GetNrfPrivKeyPath() string

func (*Config) GetOAuth

func (c *Config) GetOAuth() bool

func (*Config) GetRootCertPemPath

func (c *Config) GetRootCertPemPath() string

func (*Config) GetRootPrivKeyPath

func (c *Config) GetRootPrivKeyPath() string

func (*Config) GetSbiBindingAddr

func (c *Config) GetSbiBindingAddr() string

func (*Config) GetSbiBindingIP

func (c *Config) GetSbiBindingIP() string

func (*Config) GetSbiPort

func (c *Config) GetSbiPort() int

func (*Config) GetSbiRegisterAddr

func (c *Config) GetSbiRegisterAddr() string

func (*Config) GetSbiRegisterIP

func (c *Config) GetSbiRegisterIP() string

func (*Config) GetSbiScheme

func (c *Config) GetSbiScheme() string

func (*Config) GetSbiUri

func (c *Config) GetSbiUri() string

func (*Config) GetVersion

func (c *Config) GetVersion() string

func (*Config) SetLogEnable

func (c *Config) SetLogEnable(enable bool)

func (*Config) SetLogLevel

func (c *Config) SetLogLevel(level string)

func (*Config) SetLogReportCaller

func (c *Config) SetLogReportCaller(reportCaller bool)

func (*Config) Validate

func (c *Config) Validate() (bool, error)

type Configuration

type Configuration struct {
	Sbi             *Sbi          `yaml:"sbi,omitempty" valid:"required"`
	MongoDBName     string        `yaml:"MongoDBName" valid:"required"`
	MongoDBUrl      string        `yaml:"MongoDBUrl" valid:"required"`
	DefaultPlmnId   models.PlmnId `yaml:"DefaultPlmnId" valid:"required"`
	ServiceNameList []string      `yaml:"serviceNameList,omitempty" valid:"required"`
}

type Info

type Info struct {
	Version     string `yaml:"version,omitempty" valid:"required,in(1.0.2)"`
	Description string `yaml:"description,omitempty" valid:"type(string)"`
}

type Logger

type Logger struct {
	Enable       bool   `yaml:"enable" valid:"type(bool)"`
	Level        string `yaml:"level" valid:"required,in(trace|debug|info|warn|error|fatal|panic)"`
	ReportCaller bool   `yaml:"reportCaller" valid:"type(bool)"`
}

type Sbi

type Sbi struct {
	Scheme       string `yaml:"scheme" valid:"scheme,required"`
	RegisterIPv4 string `yaml:"registerIPv4,omitempty" valid:"host,optional"`
	// IP that is serviced or registered at another NRF.
	// IPv6Addr  string `yaml:"ipv6Addr,omitempty"`
	BindingIPv4 string `yaml:"bindingIPv4,omitempty" valid:"host,required"` // IP used to run the server in the node.
	Port        int    `yaml:"port,omitempty" valid:"port,optional"`
	Cert        *Cert  `yaml:"cert,omitempty" valid:"optional"`
	RootCert    *Cert  `yaml:"rootcert,omitempty" valid:"optional"`
	OAuth       bool   `yaml:"oauth,omitempty" valid:"optional"`
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL