session

package
v0.5.6 Latest Latest
Warning

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

Go to latest
Published: Oct 6, 2021 License: BSD-3-Clause Imports: 6 Imported by: 1

Documentation

Index

Constants

View Source
const (
	// IRODSSessionConnectionMaxMin is a minimum value for connection max
	IRODSSessionConnectionMaxMin = 5
	// IRODSSessionConnectionMaxDefault is a default value for connection max
	IRODSSessionConnectionMaxDefault = 10
	// IRODSSessionTimeoutDefault is a default value for timeout
	IRODSSessionTimeoutDefault = 5 * time.Minute
)

Variables

This section is empty.

Functions

This section is empty.

Types

type IRODSSession

type IRODSSession struct {
	Account        *types.IRODSAccount
	Config         *IRODSSessionConfig
	ConnectionPool pool.Pool
}

IRODSSession manages connections to iRODS

func NewIRODSSession

func NewIRODSSession(account *types.IRODSAccount, config *IRODSSessionConfig) (*IRODSSession, error)

NewIRODSSession create a IRODSSession

func (*IRODSSession) AcquireConnection

func (sess *IRODSSession) AcquireConnection() (*connection.IRODSConnection, error)

AcquireConnection returns an idle connection

func (*IRODSSession) Connections

func (sess *IRODSSession) Connections() int

Connections returns the number of connections in the pool

func (*IRODSSession) Release

func (sess *IRODSSession) Release()

Release releases all connections

func (*IRODSSession) ReturnConnection

func (sess *IRODSSession) ReturnConnection(conn *connection.IRODSConnection) error

ReturnConnection returns an idle connection

type IRODSSessionConfig

type IRODSSessionConfig struct {
	ApplicationName      string
	OperationTimeout     time.Duration
	IdleTimeout          time.Duration
	ConnectionMax        int
	ConnectionInitNumber int
	ConnectionMaxIdle    int
	StartNewTransaction  bool
}

IRODSSessionConfig is for session configuration

func NewIRODSSessionConfig

func NewIRODSSessionConfig(applicationName string, operationTimeout time.Duration, idleTimeout time.Duration, connectionMax int, startNewTransaction bool) *IRODSSessionConfig

NewIRODSSessionConfig create a IRODSSessionConfig

func NewIRODSSessionConfigWithDefault

func NewIRODSSessionConfigWithDefault(applicationName string) *IRODSSessionConfig

NewIRODSSessionConfigWithDefault create a IRODSSessionConfig with a default settings

Jump to

Keyboard shortcuts

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