/// <summary> /// Repair robots in max range. /// </summary> /// <returns></returns> public RepairAnswerCommand Repair() { RepairAnswerCommand answer = new RepairAnswerCommand(); addRobotTask(RepairAsync(answer)); return(answer); }
/// <summary> /// Repair robots closer then <code>maxDistance</code>. /// </summary> /// <param name="maxDistance">How far can be robots witch will be repaired.</param> /// <returns></returns> public RepairAnswerCommand Repair(int maxDistance) { RepairAnswerCommand answer = new RepairAnswerCommand(); addRobotTask(RepairAsync(answer, maxDistance)); return(answer); }
/// <summary> /// Repair robots closer then <code>maxDistance</code>. And send it to server asynchronously. /// </summary> /// <param name="destination">Where to fill answer data.</param> /// <param name="maxDistance">How far can be robots witch will be repaired.</param> /// <returns></returns> private async Task <RepairAnswerCommand> RepairAsync(RepairAnswerCommand destination, int maxDistance) { await sendCommandAsync(new RepairCommand(maxDistance)); RepairAnswerCommand answer = await receiveCommandAsync <RepairAnswerCommand>(); destination.FillData(answer); return(answer); }
public override bool IsTransferable(ACommand c) { RepairAnswerCommand command = c as RepairAnswerCommand; if (command != null) { cache.Cached(command, new RepairAnswerCommandV1_0(command.SUCCESS)); return(true); } return(false); }