builders

package
v0.0.0-...-df03e99 Latest Latest
Warning

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

Go to latest
Published: Jul 19, 2020 License: GPL-3.0 Imports: 8 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type PipeNodeConfigBuilder

type PipeNodeConfigBuilder interface {
	// Use Tls encryption over standard plain communication protocol
	UseTlsEncryption(use bool) PipeNodeConfigBuilder
	// Associate a custom network than the default 'tcp' one
	WithNetwork(network string) PipeNodeConfigBuilder
	// Associate an inHost and a inPort to the builder workflow, setting-up or tear-sown input pipe node mode
	WithInHost(address string, port int) PipeNodeConfigBuilder
	// Associate an outHost and a outPort to the builder workflow, setting-up or tear-sown output pipe node mode
	WithOutHost(address string, port int) PipeNodeConfigBuilder
	// Add a certificate files to the certificate list to the builder workflow
	WithTLSCerts(certificate string, key string) PipeNodeConfigBuilder
	// Add some more certificate files to the certificate list to the builder workflow
	MoreTLSCerts(certificate string, key string) PipeNodeConfigBuilder
	// Add one root CA certificate files to the certificate list to the builder workflow
	WithRootCaCert(certificate string) PipeNodeConfigBuilder
	// Add one client CA certificate files to the certificate list to the builder workflow
	WithClientCaCert(certificate string) PipeNodeConfigBuilder
	// Set up the certificate manager for the auto-scan of certificates for a folder
	WithCertificateManager(dir string) PipeNodeConfigBuilder
	// Add more root CA certificate files to the certificate list to the builder workflow
	MoreClientCaCerts(certificate string) PipeNodeConfigBuilder
	// Add more client CA certificate files to the certificate list to the builder workflow
	MoreRootCaCerts(certificate string) PipeNodeConfigBuilder
	// Set min version different from tls.VersionTLS12
	WithMinVersion(min uint16) PipeNodeConfigBuilder
	// Set the insecure skip verify flag, by default it's false
	WithInsecureSkipVerify(insecure bool) PipeNodeConfigBuilder
	// Set up renegotiation, by default it's sett up to: tls.RenegotiateNever
	WithRenegotiationSupport(renegotiation tls.RenegotiationSupport) PipeNodeConfigBuilder
	// Set up the Client Session Cache manager (suggested: tls.NewLRUClientSessionCache(1024) or more ...)
	WithClientSessionCache(cache tls.ClientSessionCache) PipeNodeConfigBuilder
	// Add more Cipher suites to the preset values : tls.TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384,
	// tls.TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA, tls.TLS_RSA_WITH_AES_256_GCM_SHA384,
	// tls.TLS_RSA_WITH_AES_256_CBC_SHA
	MoreCipherSuites(cipherSuite uint16) PipeNodeConfigBuilder
	// Add more Curve Ids to the current TLS Curve Preferences, adding to the preset values : tls.CurveP521, tls.CurveP384,
	// tls.CurveP256
	MoreCurvePreferences(curve tls.CurveID) PipeNodeConfigBuilder
	// Set preference for Server Size Cipher Suite
	WithPreferServerCipherSuites(preferServerCipherSuites bool) PipeNodeConfigBuilder
	// Build the model.ServerConfig and report any error occurred during the build process
	Build() (model.PipeNodeConfig, error)
}

Helper for building a model.PipeNodeConfig instance

func NewPipeNodeConfigBuilder

func NewPipeNodeConfigBuilder() PipeNodeConfigBuilder

Jump to

Keyboard shortcuts

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