ports

package
v0.0.0-...-e28bd7b Latest Latest
Warning

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

Go to latest
Published: Oct 21, 2024 License: BSD-3-Clause Imports: 4 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type IncomingQueryHandlers

type IncomingQueryHandlers interface {
	ListProjects(listRequest service.JS2ProjectListModel) service.JS2ProjectListModel
}

IncomingQueryHandlers ...

type IncomingQueryPort

type IncomingQueryPort interface {
	Start(ctx context.Context, handlers IncomingQueryHandlers, wg *sync.WaitGroup) error
}

IncomingQueryPort is an interface for a query port.

type JS2APIPort

type JS2APIPort interface {
	Port
	ListProjects(user string) ([]types.JS2Project, error)
}

JS2APIPort is an interface for a JS2API port.

type PersistentStoragePort

type PersistentStoragePort interface {
	Port
	ListProjects(user string) ([]types.JS2Project, error)
	InsertAllProjects(user string, js2Projects []types.JS2Project) error
	DeleteAllProjects(user string) error
	DeleteAndInsertAllProjects(user string, js2Projects []types.JS2Project) error
}

PersistentStoragePort is an interface for Storage of allocation data.

type Port

type Port interface {
	Init(config *types.Config)
	Finalize()
}

Port is a special type of port that will has an asynchronous behavior to it, such as being event-driven outside of the primary domain thread (e.g. incoming message queues). This ports should communicate with the domain object using a threaded approach (i.e. go routine, go channels and possibly WaitGroups)

Jump to

Keyboard shortcuts

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