Olá a todos!
Preciso fazer uma implementação num programa Java aqui, que monitore as mensagens recebidas de uma determinada aplicação.
Basicamente, eu conecto nessa aplicação e fico aguardando as mensagens que ela manda.
Queria receber essas mensagens diretamente no Main.java. Em C# eu fiz a mesma coisa com EventHandler.
Segue um exemplo abaixo do código feito em C#:
Aplicacao.csinternal class Aplicacao
{
internal event EventHandler<MessageEventArgs> MessageReceived;
...
public void fromApp(String message)
{
this.MessageReceived(this, new MessageEventArgs(message));
}
...
}
internal class MessageEventArgs : EventArgs
{
private String _message;
internal String Message
{
get { return _message; }
set { _message = value; }
}
internal MessageEventArgs(String msg)
{
_message = msg;
}
}
static Aplicacao _applicacation
static void Main(string[] args)
{
Console.WriteLine("Starting application...");
_application = new Aplicacao();
_application.MessageReceived += new EventHandler<MessageEventArgs>(_application_MessageReceived);
Conectar(); //conecta na aplicação server e monitora as mensagens recebidas
...
}
static void _application_MessageReceived(object sender, MessageEventArgs e)
{
Console.WriteLine("Mensagem recebida!" + e.ToString()); //cada mensagem que recebo eu escrevo na tela
}
Como posso fazer exatamente isso em Java?