private synchronized Set<Message.RequestMessage> cancelPendingRequests() {
		Set<Message.RequestMessage> requests =
			new HashSet<Message.RequestMessage>();

		if (this.requests != null) {
			for (Message.RequestMessage request : this.requests) {
				this.send(Message.CancelMessage.craft(request.getPiece(),
							request.getOffset(), request.getLength()));
				requests.add(request);
			}
		}

		return requests;
	}