@Override
	public Command receive() {
		// Process the history
		if (m_histo.size() != 0) {
			return m_histo.remove(0);
		}

		System.out.println("[CLIENT] Wait for some message ...");
		try {
			// Parse the message
			ObjectMessage msg = (ObjectMessage) m_sub.receive();
			if (msg.getObject() instanceof Command)
				return (Command) msg.getObject();

		} catch (Exception e) {
			e.printStackTrace();
		}
		return null;
	}