indexing description: "Community list reply message." author: "Marco Zietzling " date: "$Date$" revision: "$Revision$" class O_COMMUNITY_LIST_REPLY_MESSAGE inherit O_MESSAGE rename make as make_message redefine make_from_generic end O_COMMUNITY_CONSTANTS undefine out end create make create {O_MESSAGE_FACTORY} make_from_generic feature {NONE} -- Initialization make (a_community_list: like community_list) is -- Create. require a_community_list_not_void: a_community_list /= Void do make_message community_list := a_community_list ensure community_list_set: community_list = a_community_list 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 create community_list.make (l_args.count) from l_args.start until l_args.after loop community_list.force_last (l_args.item_for_iteration) l_args.forth end end feature -- Access namespace: STRING is -- Namespace of the message type. once Result := community_namespace end type: STRING is -- Type of the message. once Result := community_list_reply_type end community_list: DS_ARRAYED_LIST [STRING] -- Community list. arguments: HASH_TABLE [STRING, STRING] is -- Named arguments. local i: INTEGER cursor: DS_ARRAYED_LIST_CURSOR [STRING] do create Result.make (community_list.count) from cursor := community_list.new_cursor cursor.start i := 0 until cursor.after loop Result.force (cursor.item, i.out) i := i + 1 cursor.forth end end invariant community_list_not_void: community_list /= Void end