KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > snmp4j > agent > mo > jmx > JMXSimpleArrayIndexSupport


1 /*_############################################################################
2   _##
3   _## SNMP4J-AgentJMX - JMXSimpleArrayIndexSupport.java
4   _##
5   _## Copyright (C) 2006-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 package org.snmp4j.agent.mo.jmx;
23
24 import javax.management.ObjectName JavaDoc;
25
26 import org.snmp4j.smi.OID;
27 import org.snmp4j.agent.mo.jmx.util.JMXArrayIndexKey;
28
29 /**
30  * The <code>JMXSimpleArrayIndexSupport</code> provides index support
31  * for SNMP indexes that are directly related to index values of an array
32  * provided through a MBean.
33  * <p>
34  * This class returns instances of {@link JMXArrayIndexKey} as row identifiers
35  * and expect instances of the same as row identifiers to be mapped to a SNMP
36  * index value.
37  *
38  * @author Frank Fock
39  * @version 1.0
40  */

41 public class JMXSimpleArrayIndexSupport implements JMXIndexSupport {
42
43   public JMXSimpleArrayIndexSupport() {
44   }
45
46   public Object JavaDoc getRowIdentifier(Object JavaDoc nativeRowId, int nativeIndex) {
47     return new JMXArrayIndexKey(nativeIndex);
48   }
49
50   public OID mapToIndex(Object JavaDoc rowIdentifier) {
51     return new OID(new int[] { ((JMXArrayIndexKey)rowIdentifier).getIndex() });
52   }
53
54   public ObjectName JavaDoc mapToRowMBean(Object JavaDoc rowIdentifier) {
55     return null;
56   }
57
58   public Object JavaDoc mapToRowIdentifier(OID rowIndex) {
59     if (rowIndex == null) {
60       return new JMXArrayIndexKey(0);
61     }
62     return new JMXArrayIndexKey(rowIndex.get(0));
63   }
64
65 }
66
Popular Tags