% PARTOF texte:da/tex/a_home.tex
\begin{xple}
\setlength{\baselineskip}{1.5pt}
\begin{xs}
\begin{tabbing}
\hspace*{0.7cm}\=\hspace{0.5cm}\=\hspace{0.5cm}\=\hspace{0.5cm}\=\hspace{0.5cm}\=
\hspace{0.5cm}\=\hspace{0.5cm}\=\hspace{0.5cm}\=\hspace{0.5cm}\=\hspace{0.5cm}
\=\hspace{0.5cm}\=\kill

{\xsk PLACE} msa {\xsk WITH}  s :S {\xsk DO} \\
\>{\xsk BIRTH}  self {\xsk WITH}  s :S {\xsk DO}  \\
\>\>{\xsk ROLE CUSTOMER}  collectorSetupRole {\xsk SPEC}  csSpec {\xsk CONTEXT}  :A {\xsk RULES} \\
\>\>\>{\xsk ON DIALOG}  ``Auftrag'' {\xsk WITH}  conv, context {\xsk DO} \\
\>\>\>\>conv.dialog.Ziel := context.target\\
\>\>\>\>``ausfuehren'' \\
\>\>\>{\xsk END}  \\
\>\>{\xsk END} $\_${\xsk ROLE} \\
\\
\>\>{\xsk ROLE PERFORMER}  msaGUIRole {\xsk SPEC}  msaGuiSpec {\xsk CONTEXT}  :Ok {\xsk RULES} \\
\>\>\>{\xsk ON INIT WITH}  conv, context {\xsk DO} \\
\>\>\>\>d = conv.newDialog(``Anmeldung'')\\
\>\>\>\>d \\
\>\>\>{\xsk END} \\
\\
\>\>\>{\xsk ON DIALOG}  ``Anmeldung'' {\xsk REQUEST}  ``anmelden'' {\xsk WITH}  conv, context {\xsk DO} \\
\>\>\>\>d = ...\\
\>\>\>\>d \\
\>\>\>{\xsk END} \\
\\
\>\>\>{\xsk ON DIALOG}  ``Parameter'' {\xsk REQUEST}  ``start'' {\xsk WITH}  conv, context {\xsk DO} \\
\>\>\>\>{\xsk FOREACH}  site {\xsk IN}  conv.dialog.WspAdressliste {\xsk DO} \\
\>\>\>\>\>agent.new(self \ msaCollector \ ``MSA-Bote'')\\
\>\>\>\>\>s.addAgent(collectorAgent)\\
\>\>\>\>\>collectorContext.target := site\\
\>\>\>\>\>collector = agent.meet(self \ ``MSA-Bote'' \\
\>\>\>\>\>\>\>\>\>collectorSetupRole.spec \ 0)\\
\>\>\>\>\>collectorSetupRole.startConversation(collector \ collectorContext) \\
\>\>\>\>{\xsk END} \\
\>\>\>\>d = conv.newDialog(``AgentsState'')\\
\>\>\>\>d.Nachricht := ``Agenten beauftragt.''\\
\>\>\>\>d \\
\>\>\>{\xsk END} \\
\>\>{\xsk END}$\_${\xsk ROLE} \\
\\
\>\>{\xsk ROLE CUSTOMER}  retrieveResultsRole {\xsk SPEC}  retRsltsSpec {\xsk CONTEXT}  :S {\xsk RULES} \\
\>\>\>{\xsk ON DIALOG}  ``Results'' {\xsk WITH}  conv, context {\xsk DO} \\
\>\>\>\>s.addResult(conv.dialog.TabelleMitErgebnissen)\\
\>\>\>\>``danke''\\
\>\>\>{\xsk END} \\
\>\>{\xsk END}$\_${\xsk ROLE} \\
\\
\>\>s.retrieveResults := retrieveResultsRole\\
\>\>s.results := nil\\
\>{\xsk END}$\_${\xsk BIRTH} \\
\\
\>\> \dots
\end{tabbing}
\end{xs}
\end{xple}


