public void action Send XMLACL Xml Acl xs
利用者→製作者の仲介エージェント の動作部分の記述例 public void action(){ // Send XML/ACL Xml. Acl xs = new Xml. Acl(); メッセージの性質 xs. set. Tag 2 Value(“performative”, “request”); xs. set. Tag 2 Value("sender" , “User"); 送り主 xs. set. Tag 2 Value("receiver" , "Creator"); 送り先 xs. set. Tag 2 Value("action" , "reply"); 動作内容 xs. set. Tag 2 Value("actor" , "Creator"); xs. set. Tag 2 Value("args" , "Would you accept secondary use of these contents? "); if(!send. XML(xs)){ 利用者のコメント set. Postcond("END"); return; }
製作者側のエージェントラッパーの動 作部分の記述例 public void action(){ // Receive XML/ACL while (wait. XML(0)){ Xml. Acl xa = get. XML(); String perf = xa. get. Tag 2 Value("performative"); Performativの値を取得 if (perf. equals("request")){ それがrequestであったら actionの値を取得し String action = xa. get. Tag 2 Value("action"); if (action. equals("reply")){ それがreplyであったら String args = xa. get. Tag 2 Value("args"); String sender = xa. get. Tag 2 Value(“sender”) System. out. println(“There was a request from a user. "); System. out. println(sender); System. out. println(args); } ユーザーから要求があった事をユーザーの 名前とコメントと共に製作者に伝える
製作者→利用者の仲介エージェント の動作部分の記述例 public void action(){ // Send XML/ACL Xml. Acl xs = new Xml. Acl(); xs. set. Tag 2 Value("performative", "agree"); xs. set. Tag 2 Value("sender" , "Creator"); xs. set. Tag 2 Value("receiver" , "User"); xs. set. Tag 2 Value("action" , "permission"); xs. set. Tag 2 Value("actor" , "User"); xs. set. Tag 2 Value("args" , “Please use freely. "); if(!send. XML(xs)){ set. Postcond("END"); return; }
利用者側のエージェントラッパーの動 作部分の記述例 public void action(){ // Receive XML/ACL while (wait. XML(0)){ Xml. Acl xa = get. XML(); String perf = xa. get. Tag 2 Value("performative"); if (perf. equals("agree")){ 各タグの値を取得 String action = xa. get. Tag 2 Value("action"); String args = xa. get. Tag 2 Value("args"); String sender = xa. get. Tag 2 Value(“sender”) if (action. equals("permission")){ System. out. println("The request was permitted. "); 要求が許諾された場合の動作 System. out. println(sender); System. out. println(args); } if (action. equals("disapproval")){ System. out. println("The request was refused. "); System. out. println(sender) 要求が拒否された場合の動作 System. out. println(args); }
- Slides: 15