inbound

package
v0.10.4 Latest Latest
Warning

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

Go to latest
Published: Jul 22, 2021 License: Apache-2.0 Imports: 19 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Cleanup

func Cleanup(logger log.Logger, agent upload.Agent, dl *downloadedFiles) error

Cleanup deletes files on remote servers if enabled via config

func CleanupEmptyFiles added in v0.10.0

func CleanupEmptyFiles(logger log.Logger, agent upload.Agent, dl *downloadedFiles, now time.Time, after time.Duration) error

CleanupEmptyFiles deletes empty ACH files if file is older than value in config

func NewCorrectionProcessor

func NewCorrectionProcessor(logger log.Logger) *correctionProcessor

func NewPrenoteProcessor

func NewPrenoteProcessor(logger log.Logger) *prenoteProcessor

func NewReturnProcessor

func NewReturnProcessor(logger log.Logger, transferRepo transfers.Repository) *returnProcessor

func ProcessFiles

func ProcessFiles(dl *downloadedFiles, fileProcessors Processors) error

func SaveReturnCode

func SaveReturnCode(repo transfers.Repository, transferID string, ed *ach.EntryDetail) error

Types

type Downloader

type Downloader interface {
	CopyFilesFromRemote(agent upload.Agent) (*downloadedFiles, error)
}

func NewDownloader

func NewDownloader(logger log.Logger, cfg *config.Storage) Downloader

type FileProcessor

type FileProcessor interface {
	Type() string

	// Handle processes an ACH file with whatever logic is implemented
	Handle(file *ach.File) error
}

type MockProcessor

type MockProcessor struct {
	Err error
}

func (*MockProcessor) Handle

func (pc *MockProcessor) Handle(file *ach.File) error

func (*MockProcessor) Type

func (pc *MockProcessor) Type() string

type MockScheduler

type MockScheduler struct {
	Err error
}

func (*MockScheduler) Shutdown

func (s *MockScheduler) Shutdown()

func (*MockScheduler) Start

func (s *MockScheduler) Start() error

type PeriodicScheduler

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

func (*PeriodicScheduler) Shutdown

func (s *PeriodicScheduler) Shutdown()

func (*PeriodicScheduler) Start

func (s *PeriodicScheduler) Start() error

type Processors

type Processors []FileProcessor

func SetupProcessors

func SetupProcessors(pcs ...FileProcessor) Processors

func (Processors) HandleAll

func (pcs Processors) HandleAll(file *ach.File) error

type Scheduler

type Scheduler interface {
	Start() error
	Shutdown()
}

func NewPeriodicScheduler

func NewPeriodicScheduler(
	cfg *config.Config,
	agent upload.Agent,
	processors Processors,
) Scheduler

Jump to

Keyboard shortcuts

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