10. Creación del Agente BookBuyerAgent public class BookBuyerAgent extends Agent { private String targetBookTitle; private AID[] sellerAgents; // Almacena los agentes que son vendedores de libros protected void setup() { System.out.println("Hallo! Buyer-agent “+ getAID().getName() + " is ready."); // . . . resto del código de inicialización } // . . . resto del código de la clase }
11.
12. Terminación del Agente BookBuyerAgent public class BookBuyerAgent extends Agent { // . . . protected void setup() { // . . . if (args != null . . .) { // . . . } else { // si no se ha introducido el argumento título // del libro finaliza System.out.println("No se ha especificado el título"); doDelete(); // llamada al método para la destrucción //del agente } } protected void takeDown() { // sólo realiza una despedida System.out.println("Agente comprador " + getAID().getName() + " terminando."); } // . . . }
13.
14.
15.
16.
17. Detalle de la obtención de los argumentos en el BookBuyerAgent // . . . órdenes package e import public class BookBuyerAgent extends Agent { private String targetBookTitle; // Título del libro que se quiere private AID[] sellerAgents; // Lista de los agentes vendedores de libros conocidos protected void setup() { System.out.println("Hallo! Buyer-agent "+getAID().getName()+" is ready."); // Saludo Object[] args = getArguments(); // Obtiene los argumentos del comprador if (args != null && args.length > 0) { // Tiene que haber al menos un argumento targetBookTitle = (String) args[0]; // Obtiene el título del libro a comprar //que se pasó como primer argumento System.out.println("Target book is "+targetBookTitle); // visualiza el título //que quiere //comprar // . . . resto del código
21. Ejemplo de búsqueda en BookBuyerAgent //… DFAgentDescription template = new DFAgentDescription(); ServiceDescription sd = new ServiceDescription(); sd.setType("book-selling"); template.addServices(sd); try { DFAgentDescription[] result = DFService.search(myAgent, template); System.out.println("Found the following seller agents:"); sellerAgents = new AID[result.length]; for (int i = 0; i < result.length; ++i) { sellerAgents[i] = result[i].getName(); System.out.println(sellerAgents[i].getName()); } } //…