ShipmentState.java

package com.tradecloud.domain.model.shipment;

/**
 * States for a shipment.
 */
public enum ShipmentState {
    SHIPMENT_IN_DEPARTED, FINALISED, DELETED, VERIFIED, SIGNED_OFF, STOCK_PARTIALLY_RECEIVED, STOCK_FULLY_RECEIVED,
    PART_SHIPMENT_CREATED, COMPLETE, CARGO_ON_BOARD_VESSEL,
    SHIPMENT_IN_TRANSIT, PENDING_CUSTOMS_CLEARANCE, CUSTOMS_STOPPED, CUSTOMS_QUERY, CUSTOMS_RELEASED, ARRIVED_AT_TRANSSHIPMENT_PORT,
    DEPARTED_TRANSSHIPMENT_PORT, VESSEL_ARRIVED_AT_POD, VESSEL_BERTHED, CARGO_ARRIVED, CARGO_DISCHARGED, CARGO_DELIVERED,
    CUSTOMS_DECLARATION_OUTSTANDING, CUSTOMS_SEIZED, CUSTOMS_CONDITIONAL_RELEASE, AWAITING_TARIFFING,
    CUSTOMS_OGA_STOPPED, CUSTOMS_OGA_QUERY, CUSTOMS_OGA_RELEASE,
    CUSTOMS_CANCELED, CUSTOMS_EMBARGO_RELEASE;

    public static ShipmentState fromValue(String v) {
        for (ShipmentState c : ShipmentState.values()) {
            if (c.name().equals(v)) {
                return c;
            }
        }
        throw new IllegalArgumentException(v);
    }
}