indexing description: "User change password message." author: "Peter Wyss " date: "$Date$" revision: "$Revision$" class O_USER_CHANGE_PASSWORD_MESSAGE inherit O_MESSAGE rename make as make_message redefine make_from_generic end O_USER_CONSTANTS undefine out end create make create {O_MESSAGE_FACTORY} make_from_generic feature {NONE} -- Initialization make (a_name: like name; a_password: like password) is -- Create. require a_name_ok: a_name /= Void and then not a_name.is_empty a_password_ok: a_password /= Void and then not a_password.is_empty do make_message name := a_name password := a_password ensure name_set: name = a_name password_set: password = a_password 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 name := l_args.item (name_argument) password := l_args.item (password_argument) 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_change_password_type end name: STRING -- Name of the user password: STRING -- password to be changed arguments: HASH_TABLE [STRING, STRING] is -- Named arguments. do create Result.make (1) Result.force (name, name_argument) Result.force (password, password_argument) end feature {NONE} -- Implementation name_argument: STRING is "name" password_argument: STRING is "password" invariant name_ok: name /= Void and then not name.is_empty password_ok: password /= Void and then not password.is_empty end