Class DelayedCommand<T>

java.lang.Object
nl.pim16aap2.animatedarchitecture.core.commands.DelayedCommand<T>
Direct Known Subclasses:
AddOwnerDelayed, RemoveOwnerDelayed, SetBlocksToMoveDelayed, SetOpenDirectionDelayed, SetOpenStatusDelayed

public abstract class DelayedCommand<T> extends Object
Represents a delayed command.

A delayed command allows "starting" the command while only knowing the target structure. This is useful when the structure is already known (e.g. after having been selected in a GUI), but the other specific data is not.

An example usage of this system could be changing the name of a structure via a GUI. Using the GUI, the user has to select a structure to apply the change to, but we'll need to wait for user input to update the name. For a user, having to use specify the structure they would need to change in a command or something would be rather awkward, so this way we can remember that information and not require the user to input duplicate data.