@Override public void handleEvent(Event e) { verify(e instanceof PDPModelEvent); final PDPModelEvent event = (PDPModelEvent) e; final Vehicle v = event.vehicle; checkArgument(v instanceof RouteFollowingVehicle, "%s requires that all registered vehicles are a subclass of %s.", RtCentral.class.getSimpleName(), RouteFollowingVehicle.class.getSimpleName()); final RouteFollowingVehicle vehicle = (RouteFollowingVehicle) v; checkArgument(vehicle.isDelayedRouteChangingAllowed(), "%s requires that all registered %s instances allow delayed route " + "changing", RtCentral.class.getSimpleName(), RouteFollowingVehicle.class.getSimpleName()); } }
d2 = new RouteFollowingVehicle(v, allowDelayedRouteChanges, routeAdjuster); assertThat(d.isDelayedRouteChangingAllowed()) .isEqualTo(allowDelayedRouteChanges); assertThat(d2.isDelayedRouteChangingAllowed()) .isEqualTo(allowDelayedRouteChanges);