TransportStrategy

How a MultiEchelonNetwork wires transport between its external supplier, IHPs, and demand generators. A network picks exactly one variant at construction time; the variant determines how attachIHPToExternalSupplier, attachIHPToSupplier, and attachDemandGeneratorToIHP translate their transportTime parameter into carrier configuration.

See also

Inheritors

Constructors

Link copied to clipboard
protected constructor()

Types

Link copied to clipboard

A single caller-supplied TimeBasedNetworkDemandCarrier is shared by every supplier-customer edge. Transport times are keyed by the (filler, sender) pair on the carrier.

Link copied to clipboard

Each IHP (and the external supplier) owns its own TimeBasedDemandCarrier. transportTime arguments are registered on the supplier's carrier keyed by the customer. Passing null switches the carrier into TimeBasedDemandCarrier.immediateTransportFlag mode.

Link copied to clipboard
data class SharedCarrier(val carrier: DemandCarrierIfc = NoDelayDemandCarrier) : TransportStrategy

One DemandCarrierIfc shared by the external supplier and every IHP. The carrier is held inside MultiEchelonNetwork via a forwarding adapter so callers can hot-swap it mid-build.