util

package
v0.0.0-...-f1e43fe Latest Latest
Warning

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

Go to latest
Published: Jul 24, 2019 License: Apache-2.0 Imports: 27 Imported by: 0

Documentation

Index

Constants

View Source
const (
	VolumeSizeLimitGB = 30
)

Variables

View Source
var (
	Transport *http.Transport
)
View Source
var (
	VERSION = fmt.Sprintf("%s %d.%d", sizeLimit, 1, 42)
)

Functions

func BytesToUint16

func BytesToUint16(b []byte) (v uint16)

func BytesToUint32

func BytesToUint32(b []byte) (v uint32)

func BytesToUint64

func BytesToUint64(b []byte) (v uint64)

func Delete

func Delete(url string, jwt string) error

func Do

func Do(req *http.Request) (resp *http.Response, err error)

func DownloadFile

func DownloadFile(fileUrl string) (filename string, header http.Header, rc io.ReadCloser, e error)

func FileExists

func FileExists(filename string) bool

func Get

func Get(url string) ([]byte, error)

github.com/chrislusf/seaweedfs/unmaintained/repeated_vacuum/repeated_vacuum.go may need increasing http.Client.Timeout

func GetBufferStream

func GetBufferStream(url string, values url.Values, allocatedBytes []byte, eachBuffer func([]byte)) error

func GetFileSize

func GetFileSize(file *os.File) (size int64, err error)

func GetFileUidGid

func GetFileUidGid(fi os.FileInfo) (uid, gid uint32)

func GetUrlStream

func GetUrlStream(url string, values url.Values, readFn func(io.Reader) error) error

func GrpcDial

func GrpcDial(ctx context.Context, address string, opts ...grpc.DialOption) (*grpc.ClientConn, error)

func GzipData

func GzipData(input []byte) ([]byte, error)
func Head(url string) (http.Header, error)

func IsGzippable

func IsGzippable(ext, mtype string, data []byte) bool

func IsGzippableFileType

func IsGzippableFileType(ext, mtype string) (shouldBeZipped, iAmSure bool)

func LoadConfiguration

func LoadConfiguration(configFileName string, required bool) (loaded bool)

func NewGrpcServer

func NewGrpcServer(opts ...grpc.ServerOption) *grpc.Server

func NewListener

func NewListener(addr string, timeout time.Duration) (net.Listener, error)

func NormalizeUrl

func NormalizeUrl(url string) string

func OnInterrupt

func OnInterrupt(fn func())

func ParseInt

func ParseInt(text string, defaultValue int) int

func ParseServerToGrpcAddress

func ParseServerToGrpcAddress(server string) (serverGrpcAddress string, err error)

func ParseUint64

func ParseUint64(text string, defaultValue uint64) uint64

func Post

func Post(url string, values url.Values) ([]byte, error)

func PostBytes

func PostBytes(url string, body []byte) ([]byte, error)

func ReadUrl

func ReadUrl(fileUrl string, offset int64, size int, buf []byte, isReadRange bool) (n int64, e error)

func ReadUrlAsStream

func ReadUrlAsStream(fileUrl string, offset int64, size int, fn func(data []byte)) (n int64, e error)

func ServerToGrpcAddress

func ServerToGrpcAddress(server string) (serverGrpcAddress string)

func SetupProfiling

func SetupProfiling(cpuProfile, memProfile string)

func TestFolderWritable

func TestFolderWritable(folder string) (err error)

func Uint16toBytes

func Uint16toBytes(b []byte, v uint16)

func Uint32toBytes

func Uint32toBytes(b []byte, v uint32)

func Uint64toBytes

func Uint64toBytes(b []byte, v uint64)

func Uint8toBytes

func Uint8toBytes(b []byte, v uint8)

func UnGzipData

func UnGzipData(input []byte) ([]byte, error)

func WithCachedGrpcClient

func WithCachedGrpcClient(ctx context.Context, fn func(*grpc.ClientConn) error, address string, opts ...grpc.DialOption) error

Types

type ConcurrentReadMap

type ConcurrentReadMap struct {
	sync.RWMutex
	// contains filtered or unexported fields
}

A mostly for read map, which can thread-safely initialize the map entries.

func NewConcurrentReadMap

func NewConcurrentReadMap() *ConcurrentReadMap

func (*ConcurrentReadMap) Delete

func (m *ConcurrentReadMap) Delete(key string)

func (*ConcurrentReadMap) Find

func (m *ConcurrentReadMap) Find(key string) (interface{}, bool)

func (*ConcurrentReadMap) Get

func (m *ConcurrentReadMap) Get(key string, newEntry func() interface{}) interface{}

func (*ConcurrentReadMap) Items

func (m *ConcurrentReadMap) Items() (itemsCopy []interface{})

type Configuration

type Configuration interface {
	GetString(key string) string
	GetBool(key string) bool
	GetInt(key string) int
	GetInt64(key string) int64
	GetFloat64(key string) float64
	GetStringSlice(key string) []string
}

type Conn

type Conn struct {
	net.Conn
	ReadTimeout  time.Duration
	WriteTimeout time.Duration
}

Conn wraps a net.Conn, and sets a deadline for every read and write operation.

func (*Conn) Close

func (c *Conn) Close() error

func (*Conn) Read

func (c *Conn) Read(b []byte) (count int, e error)

func (*Conn) Write

func (c *Conn) Write(b []byte) (count int, e error)

type Listener

type Listener struct {
	net.Listener
	ReadTimeout  time.Duration
	WriteTimeout time.Duration
}

Listener wraps a net.Listener, and gives a place to store the timeout parameters. On Accept, it will wrap the net.Conn with our own Conn for us.

func (*Listener) Accept

func (l *Listener) Accept() (net.Conn, error)

type WriteThrottler

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

func NewWriteThrottler

func NewWriteThrottler(bytesPerSecond int64) *WriteThrottler

func (*WriteThrottler) MaybeSlowdown

func (wt *WriteThrottler) MaybeSlowdown(delta int64)

Jump to

Keyboard shortcuts

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