Shipment is an implementation of Job and consists of a pickup and a delivery of something.
It distinguishes itself from {@link Service} as two locations are involved a pickup where usually something is loaded to the transport unit and a delivery where something is unloaded.
By default serviceTimes of both pickup and delivery is 0.0 and timeWindows of both is [0.0, Double.MAX_VALUE],
A shipment can be built with a builder. You can get an instance of the builder by coding Shipment.Builder.newInstance(...)
. This way you can specify the shipment. Once you build the shipment, it is immutable, i.e. fields/attributes cannot be changed anymore and you can only 'get' the specified values.
Note that two shipments are equal if they have the same id.
@author schroeder