Como separar código serial em uma classe?

3 respostas
rock-skull

Olá.

Já fiz várias vezes programa com comunicação serila utilizando javacomm e rxtx. Mas toda vez que eu faço um novo programa, eu copio o código do antigo e colo.
O problema é que esse código tem um handler que trata a mensagem no momento que ela é recebida.
Quero fazer uma classe separada para a comunicação serial, mas não sei como lidar com esse handler.
Uma vez, na gambiarra, eu passei o JTextArea para essa classe, e ela jogava as mensages lá. Mas agora não preciso que essas mensagens sejam guardadas ou exbidas, apenas preciso identificar a mensagem e tomar uma ação de acordo com ela.

Meu pensamento, que não sei se está correto, seria fazer essa classe normalmente… e extnder dela a minha classe onde quero usar a comunicação serial (usando extends, se num ficou claro… =D).

Enfim, alguém tem uma idéia ? (Tá meio confuso, mas acho que de pra sacar… se não me fala que eu explico melhor… )

3 Respostas

rock-skull

Nenhuma idéia ?

robinsonbsilva

:?: :?: :shock:

Gostaria de entender o que você quer…rs
Por acaso você está querendo criar um Superclasse para leitura serial?

rock-skull

Tá… eu sabia que tava meio confuso… hehe… Deixa eu tentar deixar mais claro…

O que eu faço atualmente: Vamos supor que eu esteja criando um chat via porta serial. Existe a minha classe ‘Chat’. Eu pego o código serial que eu já tenho pronto, e coloco dentro da minha classe ‘Chat’.

O que eu quero fazer: Eu quero criar uma classe ‘SerialComm’ que eu posso apenas importar pra dentro da minha classe ‘Chat’. Utilizar a orientação à objeto.

Qual meu problema: Dentro do código serial eu tenho um listener (SerialPortEventListener). Esse listener fica ‘escutando’ os eventos da porta serial e me diz, por exemplo, quando eu recebi uma nova mensagem.

O código que está dentro do listener é o que vai tratar a mensagem (transformar o byte[] em String, verificar se é um número, etc) e vai guardar ela. Eu não sei como eu faço pra notificar a minha classe ‘Chat’ que essa mensagem chegou entendeu?

O que eu fazia antigamente, na gambiarra, era passar como argumento do construtor da minha classe ‘SerialComm’ um JTextArea (Onde apareciam as mensagens recebidas), e quando uma nova mensagem era recebida, ele enviava a mensagem direto pra esse JTextArea.

Mas agora, na aplicação que eu estou trabalhando, eu não preciso exibir as mensagens que chegam, apenas preciso saber o que é a mensagem pra tomar uma atitude de acordo com ela.

Deu pra entender agrora ? Eu queria um jeito de quando eu receber essa minha mensagem (Notificada pelo Listener da classe SerialComm) eu pudesse ser notificado na minha classe ‘Chat’…

Espero que tenha ficado um pouco mais claro…

Criado 27 de janeiro de 2009
Ultima resposta 28 de jan. de 2009
Respostas 3
Participantes 2