/** * Dispatch a message event. */ public IFuture<Void> sendMessageEvent(IMessageEvent message) { IMessageFeature mf = component.getComponentFeature(IMessageFeature.class); return mf.sendMessage((Map<String, Object>)message.getMessage(), message.getMessageType()); }
/** * Send a message after some delay. * @param me The message event. * @return The filter to wait for an answer. */ public IFuture<Void> sendMessage(IMessageEvent me) { return getAgent().getComponentFeature(IMessageFeature.class).sendMessage((Map<String, Object>)me.getMessage(), me.getMessageType()); }
/** * Create a reply to a message event. * @param event The received message event. * @param type The reply message event type. * @return The reply event. */ public IMessageEvent createReply(IMessageEvent event, String type) { if(event==null) throw new IllegalArgumentException("Event must not null"); MMessageEvent mevent = getCapability().getMCapability().getResolvedMessageEvent(scope, type); Map<String, Object> rep = event.getMessageType().createReply((Map<String, Object>)event.getMessage()); return new RMessageEvent(mevent, rep, SFipa.FIPA_MESSAGE_TYPE, getAgent()); }