indexing description: "User retrieve information message" author: "Marco Zietzling " date: "$Date$" revision: "$Revision$" class O_USER_RETRIEVE_INFORMATION_MESSAGE inherit O_SESSION_MESSAGE rename make as make_session redefine make_from_generic, arguments end O_USER_CONSTANTS undefine out end create make create {O_MESSAGE_FACTORY} make_from_generic feature {NONE} -- Initialization make (a_session: like session; a_user_name: like user_name) is -- Create. require a_session_ok: a_session /= Void and then not a_session.is_empty a_user_name_ok: a_user_name /= Void and then not a_user_name.is_empty do make_session (a_session) user_name := a_user_name ensure user_name_set: user_name = a_user_name end make_from_generic (a_msg: O_GENERIC_MESSAGE) is -- Create from a generic message. local l_args: HASH_TABLE [STRING, STRING] do Precursor (a_msg) l_args := a_msg.arguments user_name := l_args.item (user_name_argument).out end feature -- Access namespace: STRING is -- Namespace of the message type. once Result := user_namespace end type: STRING is -- Type of the message. once Result := user_retrieve_information_type end user_name: STRING -- User name. arguments: HASH_TABLE [STRING, STRING] is -- Named arguments. do Result := Precursor Result.force (user_name.out, user_name_argument) end feature {NONE} -- Implementation user_name_argument: STRING is "user_name" invariant user_name_ok: user_name /= Void and then not user_name.is_empty end