if(answer.getType().equals("rp_not_understood") || answer.getType().equals("rp_refuse") || answer.getType().equals("rp_failure")) Object content = answer.getParameter(SFipa.CONTENT).getValue(); getLogger().info(getScope().getAgentName() + ": Received"+answer.getType() + content); requestFinished(false, new Object[]{answer.getType(), content}); else if(answer.getType().equals("rp_agree")) else if(answer.getType().equals("rp_inform"))
/** * Send cfps to all receivers. * @param cfp The cfp. * @param convid The conversation id. * @param receivers The receivers. */ protected void sendCFP(Object cfp, String convid, List receivers) { // Send CFP. IMessageEvent cfpm = getEventbase().createMessageEvent("da_cfp"); cfpm.getParameterSet(SFipa.RECEIVERS).addValues(receivers.toArray()); cfpm.getParameter(SFipa.CONTENT).setValue(cfp); cfpm.getParameter(SFipa.CONVERSATION_ID).setValue(convid); getLogger().info(getComponentName() + ": cfp(" + cfp + ")"); sendMessage(cfpm); }
cancel.getParameterSet(SFipa.RECEIVERS).addValues(message.getParameterSet(SFipa.RECEIVERS).getValues()); cancel.getParameter(SFipa.CONVERSATION_ID).setValue(message.getParameter(SFipa.CONVERSATION_ID).getValue()); cancel.getParameter(SFipa.LANGUAGE).setValue(message.getParameter(SFipa.LANGUAGE).getValue()); cancel.getParameter(SFipa.ONTOLOGY).setValue(message.getParameter(SFipa.ONTOLOGY).getValue()); cancel.getParameter(SFipa.REPLY_WITH).setValue(SUtil.createUniqueId(getComponentName())); sendMessage(cancel); long time = getTime(); List rec = SUtil.arrayToList(message.getParameterSet(SFipa.RECEIVERS).getValues()); try rec.remove(reply.getParameter(SFipa.SENDER).getValue()); String response = "cm_inform".equals(reply.getType()) ? InteractionState.CANCELLATION_SUCCEEDED : "cm_failure".equals(reply.getType()) ? InteractionState.CANCELLATION_FAILED : InteractionState.CANCELLATION_UNKNOWN; state.addCancelResponse((IComponentIdentifier)reply.getParameter(SFipa.SENDER).getValue(), response, reply.getParameter(SFipa.CONTENT).getValue());
public void body() { IMessageEvent updateMsg = (IMessageEvent) getReason(); IGoal handleUpdate = createGoal("sp_handle_update"); handleUpdate.getParameter("subscription_id").setValue(updateMsg.getParameter(SFipa.CONVERSATION_ID).getValue()); handleUpdate.getParameter("update").setValue(updateMsg.getParameter(SFipa.CONTENT).getValue()); dispatchTopLevelGoal(handleUpdate); } }
reject.getParameter(SFipa.CONTENT).setValue(reject_proposals[i].getProposal()); sendMessage(reject);
/** * Process the second answer. */ protected void handleSecondAnswer(IMessageEvent answer) { getLogger().info("Second answer: " + answer +" "+this); if(answer.getType().equals("rp_failure")) { Object content = answer.getParameter(SFipa.CONTENT).getValue(); getLogger().info(getScope().getAgentName() + ": Received failure: " + content); requestFinished(false, new Object[]{answer.getType(), content}); } else if(answer.getType().equals("rp_inform")) { Object content = answer.getParameter(SFipa.CONTENT).getValue(); getLogger().info(getScope().getAgentName() + ": Request succeeded."); requestFinished(true, content); } else { assert false: "State should not be reached"; } }
/** * Send cfps to all receivers. * @param cfp The cfp. * @param convid The conversation id. * @param receivers The receivers. */ protected void sendCFP(Object cfp, String convid, List receivers) { // Send CFP. IMessageEvent cfpm = getEventbase().createMessageEvent("ea_cfp"); cfpm.getParameterSet(SFipa.RECEIVERS).addValues(receivers.toArray()); cfpm.getParameter(SFipa.CONTENT).setValue(cfp); cfpm.getParameter(SFipa.CONVERSATION_ID).setValue(convid); getLogger().info(getComponentName() + ": cfp(" + cfp + ")"); sendMessage(cfpm); }
public void body() { IMessageEvent msg = (IMessageEvent) getReason(); IMessageEvent reply = getEventbase().createReply(msg, "sp_agree"); sendMessage(reply); IGoal startSub = createGoal("sp_start_subscription"); startSub.getParameter("initiator").setValue(msg.getParameter(SFipa.SENDER).getValue()); startSub.getParameter("subscription_id").setValue(msg); startSub.getParameter("subscription").setValue(msg.getParameter(SFipa.CONTENT).getValue()); dispatchSubgoalAndWait(startSub); } }
/** * Process the second answer. */ protected void handleSecondAnswer(IMessageEvent answer) { getLogger().info("Second answer: " + answer +" "+this); if(answer.getType().equals(getShortProtocolName()+"_failure")) { Object content = answer.getParameter(SFipa.CONTENT).getValue(); getLogger().info(getScope().getAgentName() + ": Received failure: " + content); requestFinished(false, new Object[]{answer.getType(), content}); } else if(answer.getType().equals(getShortProtocolName()+"_inform")) { Object content = answer.getParameter(SFipa.CONTENT).getValue(); getLogger().info(getScope().getAgentName() + ": Protocol succeeded."); requestFinished(true, content); } else { assert false: "State should not be reached"; } }
/** * Announce the planned auction. * @param auctiondesc the auction description. * @param receivers The receivers. * @param convid The conversation id. */ protected void announceAuction(Object auctiondesc, List receivers, String convid) { // Send the inform_start_auction-message to all receivers. start = getEventbase().createMessageEvent("ea_inform_start_auction"); start.getParameterSet(SFipa.RECEIVERS).addValues(receivers.toArray()); start.getParameter(SFipa.CONTENT).setValue(auctiondesc); start.getParameter(SFipa.CONVERSATION_ID).setValue(convid); getLogger().info(getComponentName() + ":\tinform_start_auction"); getWaitqueue().addReply(start); sendMessage(start); }
Boolean res = decideRequest(me.getParameter(SFipa.CONTENT).getValue(), (IComponentIdentifier)me.getParameter(SFipa.SENDER).getValue()); Object res = executeRequest(me.getParameter(SFipa.CONTENT).getValue(), (IComponentIdentifier)me.getParameter(SFipa.SENDER).getValue()); reply = getEventbase().createReply(me, "rp_inform"); reply.getParameter(SFipa.CONTENT).setValue(res); getLogger().info("Receiver sent inform."); sendMessage(reply);
if(answer.getType().equals(getShortProtocolName()+"_not_understood") || answer.getType().equals(getShortProtocolName()+"_refuse") || answer.getType().equals(getShortProtocolName()+"_failure")) Object content = answer.getParameter(SFipa.CONTENT).getValue(); getLogger().info(getScope().getAgentName() + ": Received"+answer.getType() + content); requestFinished(false, new Object[]{answer.getType(), content}); else if(answer.getType().equals(getShortProtocolName()+"_agree")) else if(answer.getType().equals(getShortProtocolName()+"_inform"))
/** * Announce the planned auction. * @param auctiondesc the auction description. * @param receivers The receivers. * @param convid The conversation id. */ protected void announceAuction(Object auctiondesc, List receivers, String convid) { // Send the inform_start_auction-message to all receivers. start = getEventbase().createMessageEvent("da_inform_start_auction"); start.getParameterSet(SFipa.RECEIVERS).addValues(receivers.toArray()); start.getParameter(SFipa.CONTENT).setValue(auctiondesc); start.getParameter(SFipa.CONVERSATION_ID).setValue(convid); getLogger().info(getComponentName() + ": inform_start_auction"); getWaitqueue().addReply(start); sendMessage(start); }
/** * */ public void body() { IMessageEvent msg = (IMessageEvent) getParameter("message").getValue(); IMessageEvent update = getEventbase().createReply(msg, "sp_inform"); update.getParameter(SFipa.CONTENT).setValue(getParameter("update").getValue()); sendMessage(update); } }
if(removebidder.getType().equals("ea_not_understood")) receivers.remove(removebidder.getParameter(SFipa.SENDER).getValue()); getLogger().info("Removed "+((IComponentIdentifier)removebidder.getParameter(SFipa.SENDER).getValue()).getName() + "."); getLogger().warning("Could not handle message of type "+removebidder.getType() +" from "+((IComponentIdentifier)removebidder.getParameter(SFipa.SENDER).getValue()).getName()+".");
end.getParameter(SFipa.CONTENT).setValue(new Object[]{Boolean.TRUE,winning_offer}); end.getParameterSet(SFipa.RECEIVERS).addValue(winner); end.getParameter(SFipa.CONVERSATION_ID).setValue(convid); sendMessage(end); end.getParameter(SFipa.CONTENT).setValue(new Object[]{Boolean.FALSE,winning_offer}); end.getParameterSet(SFipa.RECEIVERS).addValues(losers.toArray()); end.getParameter(SFipa.CONVERSATION_ID).setValue(convid); sendMessage(end);
/** * Execute the plan. */ public void body() { IMessageEvent rep = getEventbase().createReply((IMessageEvent)getReason(), "not_understood"); rep.getParameter(SFipa.CONTENT).setValue(((IParameterElement)getReason()).getParameter(SFipa.CONTENT).getValue()); sendMessage(rep); // sendMessage(((IMessageEvent)getReason()).createReply( // "not_understood", getReason().getParameter(SFipa.CONTENT).getValue())); } }
if(removebidder.getType().equals("da_not_understood")) receivers.remove(removebidder.getParameter(SFipa.SENDER).getValue()); getLogger().info("Removed "+((IComponentIdentifier)removebidder.getParameter(SFipa.SENDER).getValue()).getName() + "."); getLogger().warning("Could not handle message of type "+removebidder.getType() +" from "+((IComponentIdentifier)removebidder.getParameter(SFipa.SENDER).getValue()).getName()+".");
end.getParameter(SFipa.CONTENT).setValue(new Object[]{Boolean.TRUE,winning_offer}); end.getParameterSet(SFipa.RECEIVERS).addValue(winner); end.getParameter(SFipa.CONVERSATION_ID).setValue(convid); sendMessage(end); end.getParameter(SFipa.CONTENT).setValue(new Object[]{Boolean.FALSE,winning_offer}); end.getParameterSet(SFipa.RECEIVERS).addValues(losers.toArray()); end.getParameter(SFipa.CONVERSATION_ID).setValue(convid); sendMessage(end);
Boolean res = decideRequest(me.getParameter(SFipa.CONTENT).getValue(), (IComponentIdentifier)me.getParameter(SFipa.SENDER).getValue()); Object res = executeRequest(me.getParameter(SFipa.CONTENT).getValue(), (IComponentIdentifier)me.getParameter(SFipa.SENDER).getValue()); reply = getEventbase().createReply(me, getShortProtocolName()+"_inform"); reply.getParameter(SFipa.CONTENT).setValue(res); getLogger().info("Receiver sent inform."); sendMessage(reply);