package siebog.interaction.contractnet.example; import siebog.SiebogClient; import siebog.agents.AID; import siebog.agents.Agent; import siebog.agents.AgentBuilder; import siebog.agents.AgentClass; import siebog.interaction.ACLMessage; import siebog.interaction.Performative; import siebog.utils.ObjectFactory; /** * * @author <a href="mitrovic.dejan@gmail.com">Dejan Mitrovic</a> */ public class Test { private static final int NUM_PARTICIPANTS = 4; public static void main(String[] args) { SiebogClient.connect("localhost"); AID[] participants = createParticipants(); AID initiator = createInitiator(); start(initiator, participants); } private static AID[] createParticipants() { return AgentBuilder.siebog().ejb(ParticipantExample.class) .startNInstances(NUM_PARTICIPANTS).toArray(new AID[0]); } private static AID createInitiator() { // return AgentBuilder.siebog().ejb(InitiatorExample.class).start(); AgentClass icls = new AgentClass(Agent.SIEBOG_MODULE, InitiatorExample.class.getSimpleName()); return ObjectFactory.getAgentManager().startServerAgent(icls, "I1", null); } private static void start(AID initiator, AID[] participants) { ACLMessage msg = new ACLMessage(Performative.REQUEST); msg.receivers.add(initiator); ObjectFactory.getMessageManager().post(msg); } }