Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Freight: Add a CarrierJob interface #3599

Merged
merged 3 commits into from
Dec 2, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
package org.matsim.freight.carriers;

import org.matsim.utils.objectattributes.attributable.Attributable;

/**
* A job that a {@link Carrier} can do.
* <p>
* In a first step this is more or less a marker interface.
* <p>
* In the next steps it will be extended, as follows
* 1) existing common methods of {@link CarrierShipment} and {@link
* CarrierService} where moved up here
* 2) some similiar, but differently named methods of {@link
* CarrierShipment} and {@link CarrierService} were renamed to the same name and moved up here
* ...
* future) It maybe gets generalized in way, that we only have one job definition with 1 or 2
* location(s). This then defines, if jsprit takes the job as a service or as a shipment.
*/
public interface CarrierJob extends Attributable {}
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@
import org.matsim.utils.objectattributes.attributable.AttributesImpl;


public final class CarrierService implements Attributable {
public final class CarrierService implements CarrierJob {

public static class Builder {

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@
* @author sschroeder
*
*/
public final class CarrierShipment implements Attributable {
public final class CarrierShipment implements CarrierJob {

/**
* A builder that builds shipments.
Expand Down
Loading