KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > snmp4j > agent > agentx > AgentXRequestPDU


1 /*_############################################################################
2   _##
3   _## SNMP4J-AgentX - AgentXRequestPDU.java
4   _##
5   _## Copyright (C) 2005-2007 Frank Fock (SNMP4J.org)
6   _##
7   _## This program is free software; you can redistribute it and/or modify
8   _## it under the terms of the GNU General Public License version 2 as
9   _## published by the Free Software Foundation.
10   _##
11   _## This program is distributed in the hope that it will be useful,
12   _## but WITHOUT ANY WARRANTY; without even the implied warranty of
13   _## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14   _## GNU General Public License for more details.
15   _##
16   _## You should have received a copy of the GNU General Public License
17   _## along with this program; if not, write to the Free Software
18   _## Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
19   _## MA 02110-1301 USA
20   _##
21   _##########################################################################*/

22
23 package org.snmp4j.agent.agentx;
24
25 import java.io.IOException JavaDoc;
26 import java.nio.ByteBuffer JavaDoc;
27
28 import org.snmp4j.agent.MOScope;
29 import org.snmp4j.smi.OctetString;
30 import java.util.Arrays JavaDoc;
31
32 public abstract class AgentXRequestPDU extends AgentXContextPDU {
33
34   protected MOScope[] ranges;
35
36   protected AgentXRequestPDU(byte type, OctetString context) {
37     super(type, context);
38   }
39
40   protected AgentXRequestPDU(byte type, OctetString context, MOScope[] ranges) {
41     super(type, context);
42     this.ranges = ranges;
43   }
44
45   protected AgentXRequestPDU(AgentXMessageHeader header) {
46     super(header);
47   }
48
49   protected void decodeAfterContext(ByteBuffer JavaDoc buf, int length)
50       throws IOException JavaDoc
51   {
52     ranges = AgentXProtocol.decodeRanges(buf);
53   }
54
55   protected void encodeAfterContext(ByteBuffer JavaDoc buf) {
56     AgentXProtocol.encodeRanges(buf, ranges);
57   }
58
59   protected int getAfterContextLength() {
60     return AgentXProtocol.getRangesLength(ranges);
61   }
62
63   public int size() {
64     if (ranges != null) {
65       return ranges.length;
66     }
67     return 0;
68   }
69
70   public MOScope[] getRanges() {
71     return ranges;
72   }
73
74   protected String JavaDoc toStringExtMembers() {
75     return super.toStringExtMembers()+",ranges="+Arrays.asList(ranges);
76   }
77
78 }
79
Popular Tags