ValueBuilderFactory vbf;
public Cargo createCargo( RouteSpecification routeSpecification, Delivery delivery, String id )
throws ConstraintViolationException, CannotCreateCargoException
{
TrackingId trackingId = buildTrackingId( id );
UnitOfWork uow = uowf.currentUnitOfWork();
EntityBuilder<Cargo> cargoBuilder = uow.newEntityBuilder( Cargo.class, trackingId.id().get() );
cargoBuilder.instance().trackingId().set( trackingId );
cargoBuilder.instance().origin().set( routeSpecification.origin().get() );
cargoBuilder.instance().routeSpecification().set( routeSpecification );
cargoBuilder.instance().delivery().set( delivery );