public interface CmdConsumer_ifc
Modifier and Type | Method and Description |
---|---|
int |
executeMonitorCmd(InspcDataExchangeAccess.Inspcitem cmd,
InspcDataExchangeAccess.InspcDatagram answer,
int maxNrofAnswerBytes)
Executes a command, writes the answer in the answer datagram.
|
void |
setAnswerComm(AnswerComm_ifc answerComm)
Sets the aggregation for the answer.
|
int executeMonitorCmd(InspcDataExchangeAccess.Inspcitem cmd, InspcDataExchangeAccess.InspcDatagram answer, int maxNrofAnswerBytes) throws java.lang.IllegalArgumentException, java.io.UnsupportedEncodingException
AnswerComm_ifc.txAnswer(int, boolean)
.
The user should add its InspcDataExchangeAccess.Inspcitem
-elements for the answer there.
Only if the datagram is full and a next info have to be add, the current datagram should be send.
Therefore the routine AnswerComm_ifc.txAnswer(int, boolean)
should be called
with the current number of bytes and false
as 2. parameter. A non-filled datagram
is not to be sent. It will be send after the last invocation of a command consumer from the
activator of this method. In this way more as one answer can be given in one ore more datagrams,
while the command datagram may contain more as one command too.cmd
- The command. It is one information unit only, not a full datagram, because the command
is containing in a information unit. A datagram may contain more as one command.answer
- answer datagram with prepared head, maybe with already content.
The answer information units are to be add here. The datagram is to be send,
if it is full.maxNrofAnswerBytes
- The maximum of bytes inclusive head in the datagram.java.lang.IllegalArgumentException
java.io.UnsupportedEncodingException
void setAnswerComm(AnswerComm_ifc answerComm)
answerComm
-