1 22 23 package org.snmp4j.agent.agentx; 24 25 import java.io.*; 26 import java.nio.*; 27 28 public class AgentXClosePDU extends AgentXPDU { 29 30 private byte reason; 31 32 public AgentXClosePDU(AgentXMessageHeader header) { 33 super(header); 34 if (header.getType() != AGENTX_CLOSE_PDU) { 35 throw new IllegalArgumentException ("Incompatible PDU type"); 36 } 37 } 38 39 public AgentXClosePDU(byte reason) { 40 super(AGENTX_CLOSE_PDU); 41 this.reason = reason; 42 } 43 44 public void decodePayload(ByteBuffer buf, int length) throws IOException { 45 reason = buf.get(); 46 } 47 48 public byte getReason() { 49 return reason; 50 } 51 52 public void setReason(byte reason) { 53 this.reason = reason; 54 } 55 56 public int getPayloadLength() { 57 return AgentXProtocol.AGENTX_INT_SIZE; 58 } 59 60 public void encodePayload(ByteBuffer buf) { 61 buf.put(reason); 62 buf.put(new byte[] { 0,0,0 }); } 64 65 protected void beforeEncode() { 66 } 67 } 68 | Popular Tags |