I would prefer this method in the GetUserNameRemoteOperation. The RemoteOperationResult class is valid for all the operations, whatever is thei type and meaning of their results. If we add a getData() method for every possible operation, this class would be a huge mess.

Let's keep the access to the data retrieved by the operations in each operation class.