indexing description: "Session message" author: "Patrick Ruckstuhl " date: "$Date$" revision: "$Revision$" deferred class O_SESSION_MESSAGE inherit O_MESSAGE rename make as make_message redefine make_from_generic end feature {NONE} -- Initialization make (a_session: like session) is -- Create with a session. require a_session_set: a_session /= Void and then not a_session.is_empty do make_message session := a_session ensure session_set: session = a_session 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 session := l_args.item (session_argument) end feature -- Access session: STRING -- Session ID. feature {NONE} -- Implementation arguments: HASH_TABLE [STRING, STRING] is -- Named arguments. do create Result.make (10) Result.force (session, session_argument) end session_argument: STRING is "session_argument" invariant session_set: session /= Void and then not session.is_empty end