Source code: com/memoire/xmas/test/XmasTestAgent.java
1
2 package com.memoire.xmas.test;
3
4 import com.memoire.xmas.*;
5 import com.memoire.xmas.basic.*;
6
7 public class XmasTestAgent
8 extends XmasBasicAgent
9 {
10 protected void handle
11 (XmasBasicAddress _from, String _act, String _skill, Object _content, Object _ref)
12 {
13 System.err.println("TestAgent: I received a message from "+_from.toText());
14 if(_ref!=null) System.err.println(" concerning "+_ref);
15 System.err.println(_act+" "+_skill);
16 if(_content!=null) System.err.println(_content);
17 }
18
19 /*
20 XmasBasicAddress creator_=null;
21 XmasBasicAddress address_=null;
22
23 public XmasBasicAddress getBasicAddress()
24 {
25 return (address_==null ? XmasBasicAddress.NONE : address_);
26 }
27
28 public void receiveMessage(XmasMessage _message, XmasPostman _postman)
29 {
30 if(_message instanceof XmasBasicMessage)
31 receiveBasicMessage((XmasBasicMessage)_message,_postman);
32 else
33 {
34 System.err.println(this+": Message not reconized");
35 System.err.println(_message);
36 }
37 }
38
39 protected void receiveBasicMessage
40 (XmasBasicMessage _message, XmasPostman _postman)
41 {
42 XmasBasicAddress from =(XmasBasicAddress)_message.from();
43 XmasBasicAddress to =(XmasBasicAddress)_message.to();
44 String act =_message.act();
45 Object content=_message.content();
46
47 //System.err.println(this+": Message received");
48 //System.err.println(_message);
49
50 if( "I give you this address.".equals(act)
51 &&(address_==null)
52 &&(content instanceof XmasBasicAddress))
53 {
54 address_=(XmasBasicAddress)content;
55 answer(_message,_postman,"Ok.");
56
57 _postman.sendMessage
58 (new XmasBasicMessage
59 (address_,XmasBasicAddress.ALL,"Who is my creator ?"),this);
60 }
61 else
62 if("I am your creator.".equals(act))
63 {
64 if(creator_==null)
65 creator_=from;
66 else
67 if(!creator_.equals(from))
68 answer(_message,_postman,"No my creator is not you.");
69 }
70 else
71 if("You can start.".equals(act))
72 {
73 if((creator_==null)||!creator_.equals(from))
74 answer(_message,_postman,"Only my creator can tell me when to start.");
75 else
76 answer(_message,_postman,"Ok.");
77 }
78 else
79 {
80 System.err.println(this+": Message ignored");
81 System.err.println(_message.toText());
82 }
83 }
84 */
85 }