All Classes and Interfaces

Class
Description
 
 
The Client API class provides generic methods for interacting with the Robot Worlds API as a client
All Exceptions related to the client connecting to the server (especially with regards to the ConnectedClient are handled by this class
A subclass of the domain object robot that is specifically controlled by a client
 
Record class of a client's ID.
 
 
This class stores the representation of the robot for a client
 
Every command follows this same pattern: It receives a robot name and arguments It runs against the world It returns a result string
 
This class encapsulates all the behaviour of a single connected client
 
 
 
Abstract class of commands external to server, typically from clients
The Command Switcher class more elegantly responds to incoming command requests in a polymorphic way.
Fire Command - fires a bullet in the direction the robot is facing.
 
The Implemented client Commands enum captures the allowed variants of a Client Command
Reads a line of user input and checks whether it is a valid, well-formed command.
Standard Launch command.
The Look command class.
The maze class serves an abstracted representation of a maze as generated by MazeGenerator
 
This class stores the memory of the currently running client The currently selected robot as well as all the robots launched
This message is thrown when a WorldObject to be found but for whatever reason, is not.
 
 
 
The Repair Command restores a robot's shield to their configured maximum.
Represents a robot in the Robot World game.
This exception encapsulates the behaviour of a Robot who cannot act, typically due to a mismatched Status such as Status.DEAD
The Robot Kind Enum encapsulates all the different possible types of robot we can expect to encounter
 
A basic interface that wraps the expected Robot Worlds API so that we can easily connect to and send requests to the server.
 
The Robot World Map encapsulates all the behaviour of the locations of objects in the world
Represents the Robot World server.
The Server API class encapsulates all behaviour related to outputting Command Results to the Client
 
This error is thrown when there is an issue initialising the server for whatever reason.
Picocli parses startup options into this class before the server starts.
The Server Output Class is solely responsible for the networking component of the server output
 
This class encapsulates all rendering behavior on the server side
Nested Enum of ansi escape characters to make rendering more discoverable
The Single Thread Connection encapsulates an ongoing connection between a client and a server
 
Commands that implement the stateful interface manipulate the state of the world and the robots in it
This enum encapsulates the valid states that a robot can be in
 
Internal Error for Unsupported Robot World Command
The World Class stores all known information about the world World-level configuration: how many seconds a repair takes.
The World command describes this world's configuration parameters.
 
The internals of the edge of an existing world
WorldMap answers questions about a single location in the world: is it in bounds, is it a wall, is it an obstacle, is a robot standing there, and is it therefore a valid place for a robot to be.
Standard World Object Interface that allows polymorphic implementation of Objects in the World