easyget

package module
v0.0.3 Latest Latest
Warning

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

Go to latest
Published: Apr 7, 2024 License: MIT Imports: 17 Imported by: 0

README

easyget

easy get key values

  1. 从 stdin 获取
    • 使用 prompt 选择
    • 自由输入
    • 使用 json path 获取
    • 使用 reg 匹配获取
  2. 从 json file 获取
  3. 从 mysql table 获取
  4. 从 sqlite table 获取
  5. 从 cmd 的返回中获取
  6. 从 http 的返回中获取

Documentation

Overview

easy get is a kv getter from multi places

Index

Constants

View Source
const LOG_FILE_VAR = "EASYGET_LOG_FILE"

Variables

This section is empty.

Functions

func Get

func Get(key string) (string, bool)

func MustGet

func MustGet(key string) string

func SetDefault

func SetDefault(key string, v string)

func SetGetter

func SetGetter(key string, g Getter)

func SetLogger

func SetLogger(tl ILogger)

Types

type BackGetter

type BackGetter interface {
	Getter

	WithBackup(g Getter) BackGetter
}

func NewSimpleBackGetter

func NewSimpleBackGetter(gs ...Getter) BackGetter

func WithBackup

func WithBackup(g Getter) BackGetter

func WithDefault

func WithDefault(g Getter, v string) BackGetter

type DefaultLogger

type DefaultLogger struct {
	// contains filtered or unexported fields
}

func (*DefaultLogger) Debugf

func (l *DefaultLogger) Debugf(format string, args ...interface{})

func (*DefaultLogger) Errorf

func (l *DefaultLogger) Errorf(format string, args ...interface{})

type EnvGetter

type EnvGetter struct {
	// contains filtered or unexported fields
}

read string from env

func NewEnvGetter

func NewEnvGetter(prefix string) *EnvGetter

func (*EnvGetter) Get

func (sg *EnvGetter) Get(key string) (string, bool)

func (*EnvGetter) Gets

func (sg *EnvGetter) Gets() []KVPair

type Getter

type Getter interface {
	Get(key string) (string, bool)
}

type GroupFilter

type GroupFilter struct {
	// contains filtered or unexported fields
}

func (*GroupFilter) Filt

func (gf *GroupFilter) Filt(d []byte) []byte

type IFilter

type IFilter interface {
	Filt(d []byte) []byte
}

func NewGroupFilter

func NewGroupFilter(filters ...IFilter) IFilter

type ILogger

type ILogger interface {
	Errorf(format string, args ...interface{})
	Debugf(format string, args ...interface{})
}

func NewDefaultLogger

func NewDefaultLogger(file string) ILogger

type JSONGetter

type JSONGetter struct {
	// contains filtered or unexported fields
}

func NewJSONGetter

func NewJSONGetter(m map[string]interface{}) *JSONGetter

func NewJSONGetterFromCmd

func NewJSONGetterFromCmd(cmd string, args []string, envs []string, subkeys ...string) *JSONGetter

func NewJSONGetterFromHTTP

func NewJSONGetterFromHTTP(method string, url string, headers map[string]string, body map[string]interface{}) (*JSONGetter, error)

func NewJSONGetterFromJSONFile

func NewJSONGetterFromJSONFile(file string, subkeys ...string) *JSONGetter

func (*JSONGetter) Get

func (sg *JSONGetter) Get(key string) (string, bool)

func (*JSONGetter) Gets

func (sg *JSONGetter) Gets() []KVPair

type JSONPathFilter

type JSONPathFilter struct {
	// contains filtered or unexported fields
}

func NewJSONPathFilter

func NewJSONPathFilter(jp string) *JSONPathFilter

func (*JSONPathFilter) Filt

func (jpf *JSONPathFilter) Filt(d []byte) []byte

type KVManager

type KVManager struct {
	// contains filtered or unexported fields
}

func NewKVManager

func NewKVManager() *KVManager

func (*KVManager) Get

func (kvm *KVManager) Get(key string) (string, bool)

func (*KVManager) MustGet

func (kvm *KVManager) MustGet(key string) string

func (*KVManager) SetDefault

func (kvm *KVManager) SetDefault(key string, v string)

func (*KVManager) SetGetter

func (kvm *KVManager) SetGetter(key string, g Getter)

type KVPair

type KVPair struct {
	Key   string
	Value string
}

type KVPariGetter

type KVPariGetter interface {
	Gets() []KVPair
}

type ListGetter

type ListGetter struct {
	// contains filtered or unexported fields
}

func NewListGetter

func NewListGetter(ls []string) *ListGetter

func (*ListGetter) Get

func (lg *ListGetter) Get(key string) (string, bool)

func (*ListGetter) Gets

func (lg *ListGetter) Gets() []KVPair

type RegFilter

type RegFilter struct {
	// contains filtered or unexported fields
}

func NewRegFilter

func NewRegFilter(reg string) *RegFilter

func (*RegFilter) Filt

func (rf *RegFilter) Filt(d []byte) []byte

type SelectGetter

type SelectGetter struct {
	// contains filtered or unexported fields
}

read string from stdin

func NewSelectGetter

func NewSelectGetter(kvsGetter KVPariGetter) *SelectGetter

func (*SelectGetter) Get

func (sg *SelectGetter) Get(key string) (string, bool)

type SimpleBackGetter

type SimpleBackGetter struct {
	// contains filtered or unexported fields
}

func (*SimpleBackGetter) Get

func (sbg *SimpleBackGetter) Get(key string) (string, bool)

func (*SimpleBackGetter) WithBackup

func (sbg *SimpleBackGetter) WithBackup(g Getter) BackGetter

type StaticGetter

type StaticGetter struct {
	// contains filtered or unexported fields
}

func NewStaticGetter

func NewStaticGetter(val string) *StaticGetter

func (*StaticGetter) Get

func (sg *StaticGetter) Get(key string) (string, bool)

type StdGetter

type StdGetter struct {
	// contains filtered or unexported fields
}

read string from stdin

func NewStdGetter

func NewStdGetter(prompt string, filters ...IFilter) *StdGetter

func (*StdGetter) Get

func (sg *StdGetter) Get(key string) (string, bool)

Directories

Path Synopsis
tests

Jump to

Keyboard shortcuts

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