Class WebSocketController
- java.lang.Object
-
- org.optaweb.vehiclerouting.plugin.websocket.WebSocketController
-
@Controller class WebSocketController extends Object
Handles WebSocket subscriptions and STOMP messages.- See Also:
WebSocketConfig
-
-
Constructor Summary
Constructors Constructor Description WebSocketController(RouteListener routeListener, RegionService regionService, LocationService locationService, VehicleService vehicleService, DemoService demoService, org.springframework.context.ApplicationEventPublisher eventPublisher)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description (package private) voidaddLocation(PortableLocation request)Create new location.(package private) voidaddVehicle()(package private) voidchangeCapacity(long id, int capacity)(package private) voidclear()(package private) voiddemo(String name)Load a demo data set.(package private) voidhandleException(Exception exception)(package private) voidremoveAnyVehicle()(package private) voidremoveLocation(long id)Delete location.(package private) voidremoveVehicle(long id)Delete vehicle.(package private) PortableRoutingPlansubscribeToRouteTopic()Subscribe for updates of the VRP route.(package private) ServerInfosubscribeToServerInfoTopic()Subscribe to server info topic.
-
-
-
Constructor Detail
-
WebSocketController
@Autowired WebSocketController(RouteListener routeListener, RegionService regionService, LocationService locationService, VehicleService vehicleService, DemoService demoService, org.springframework.context.ApplicationEventPublisher eventPublisher)
-
-
Method Detail
-
handleException
@MessageExceptionHandler void handleException(Exception exception)
-
subscribeToServerInfoTopic
@SubscribeMapping("/serverInfo") ServerInfo subscribeToServerInfoTopic()Subscribe to server info topic.- Returns:
- server info
-
subscribeToRouteTopic
@SubscribeMapping("/route") PortableRoutingPlan subscribeToRouteTopic()Subscribe for updates of the VRP route.- Returns:
- route message
-
addLocation
@MessageMapping("/location") void addLocation(PortableLocation request)Create new location.- Parameters:
request- new location description
-
removeLocation
@MessageMapping("/location/{id}/delete") void removeLocation(@DestinationVariable long id)Delete location.- Parameters:
id- ID of the location to be deleted
-
demo
@MessageMapping("/demo/{name}") void demo(@DestinationVariable String name)Load a demo data set.- Parameters:
name- data set name
-
clear
@MessageMapping("/clear") void clear()
-
addVehicle
@MessageMapping("vehicle") void addVehicle()
-
removeVehicle
@MessageMapping("/vehicle/{id}/delete") void removeVehicle(@DestinationVariable long id)Delete vehicle.- Parameters:
id- ID of the vehicle to be deleted
-
removeAnyVehicle
@MessageMapping("/vehicle/deleteAny") void removeAnyVehicle()
-
changeCapacity
@MessageMapping("/vehicle/{id}/capacity") void changeCapacity(@DestinationVariable long id, int capacity)
-
-