KickJava   Java API By Example, From Geeks To Geeks.

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


1 /*_############################################################################
2   _##
3   _## SNMP4J-AgentX - AgentXGetPDU.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 org.snmp4j.smi.OctetString;
26 import org.snmp4j.smi.OID;
27 import org.snmp4j.agent.DefaultMOScope;
28 import org.snmp4j.smi.*;
29 import java.io.IOException JavaDoc;
30 import java.nio.ByteBuffer JavaDoc;
31
32 public class AgentXGetPDU extends AgentXRequestPDU {
33
34   public AgentXGetPDU(OctetString context, OID[] oids) {
35     super(AGENTX_GET_PDU, context);
36     setOids(oids);
37   }
38
39   public AgentXGetPDU(AgentXMessageHeader header) {
40     super(header);
41     if (header.getType() != AGENTX_GET_PDU) {
42       throw new IllegalArgumentException JavaDoc();
43     }
44   }
45
46   public void setOids(OID[] oids) {
47     this.ranges = new DefaultMOScope[oids.length];
48     for (int i=0; i<oids.length; i++) {
49       ranges[i] = new DefaultMOScope(oids[i], true, oids[i], true);
50     }
51   }
52
53   public OID[] getOids() {
54     OID[] oids = new OID[ranges.length];
55     for (int i=0; i<ranges.length; i++) {
56       oids[i] = ranges[i].getLowerBound();
57     }
58     return oids;
59   }
60
61   protected void decodeAfterContext(ByteBuffer JavaDoc buf, int length)
62       throws IOException JavaDoc
63   {
64     ranges = AgentXProtocol.decodeRanges(buf, true);
65   }
66
67 }
68
Popular Tags