package voyage
import "github.com/go-kit/kit/examples/shipping/voyage"
Package voyage provides the Voyage aggregate.
Index ¶
Variables ¶
var ( V100 = New("V100", Schedule{ []CarrierMovement{ {DepartureLocation: location.CNHKG, ArrivalLocation: location.JNTKO}, {DepartureLocation: location.JNTKO, ArrivalLocation: location.USNYC}, }, }) V300 = New("V300", Schedule{ []CarrierMovement{ {DepartureLocation: location.JNTKO, ArrivalLocation: location.NLRTM}, {DepartureLocation: location.NLRTM, ArrivalLocation: location.DEHAM}, {DepartureLocation: location.DEHAM, ArrivalLocation: location.AUMEL}, {DepartureLocation: location.AUMEL, ArrivalLocation: location.JNTKO}, }, }) V400 = New("V400", Schedule{ []CarrierMovement{ {DepartureLocation: location.DEHAM, ArrivalLocation: location.SESTO}, {DepartureLocation: location.SESTO, ArrivalLocation: location.FIHEL}, {DepartureLocation: location.FIHEL, ArrivalLocation: location.DEHAM}, }, }) )
A set of sample voyages.
var ( V0100S = New("0100S", Schedule{[]CarrierMovement{}}) V0200T = New("0200T", Schedule{[]CarrierMovement{}}) V0300A = New("0300A", Schedule{[]CarrierMovement{}}) V0301S = New("0301S", Schedule{[]CarrierMovement{}}) V0400S = New("0400S", Schedule{[]CarrierMovement{}}) )
These voyages are hard-coded into the current pathfinder. Make sure they exist.
ErrUnknown is used when a voyage could not be found.
Types ¶
type CarrierMovement ¶
type CarrierMovement struct { DepartureLocation location.UNLocode ArrivalLocation location.UNLocode DepartureTime time.Time ArrivalTime time.Time }
CarrierMovement is a vessel voyage from one location to another.
type Number ¶
type Number string
Number uniquely identifies a particular Voyage.
type Repository ¶
Repository provides access a voyage store.
type Schedule ¶
type Schedule struct { CarrierMovements []CarrierMovement }
Schedule describes a voyage schedule.
type Voyage ¶
Voyage is a uniquely identifiable series of carrier movements.
func New ¶
New creates a voyage with a voyage number and a provided schedule.
Source Files ¶
- Version
- v0.7.0
- Published
- Mar 19, 2018
- Platform
- linux/amd64
- Imports
- 3 packages
- Last checked
- 2 minutes ago –
Tools for package owners.