import com.nmt.mgp.Mgp; import com.nmt.mgp.MgpException; import com.nmt.mgp.MgpOption; import com.nmt.mgp.MgpSession; import com.nmt.mgp.MgpSessionI; import com.nmt.mgp.OptionHolder; import com.nmt.util.StringUtils; public class Receive { public static void main(String[] args) throws MgpException { String host = "localhost"; int port = 7185; String username = "emguser"; String password = "secret"; // Connect to server, non-SSL connection MgpSessionI session = new MgpSession(host, port, false); // Authenticate session.login(username, password); // Send operation and receive message (if any) in result OptionHolder msgoh = session.execute(Mgp.MGP_OP_GETFIRSTMESSAGE, null); // Was operation ok? int ret = msgoh.getOption(Mgp.MGP_OPTION_RETCODE).getIntValue(); if(ret == Mgp.MGP_ERR_OK) { // Did we get a message? if(msgoh.getOption(Mgp.MGP_OPTION_ID) != null) { int id = msgoh.getOption(Mgp.MGP_OPTION_ID).getIntValue(); OptionHolder oh = new OptionHolder(); oh.add(new MgpOption(Mgp.MGP_OPTION_ID, id)); oh.add(new MgpOption(Mgp.MGP_OPTION_RETCODE, Mgp.MGP_ERR_OK)); // Confirm message received ok oh = session.execute(Mgp.MGP_OP_CONFIRMMESSAGE, oh); String msg = msgoh.getOption(Mgp.MGP_OPTION_MESSAGE).getValue(); msg = StringUtils.decodeHex(msg); // Print id and message System.out.println("id = " + id); System.out.println("message = " + msg); } else { System.out.println("No message received"); } } else { // Print error code (negative value indicates error) System.out.println("An error has occured, err = " + msgoh.getOption(Mgp.MGP_OPTION_ID).getIntValue()); } // Logout and close connection session.close(); } }