KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > snmp4j > agent > mo > jmx > types > TypedCompositeDataAttribute


1 /*_############################################################################
2   _##
3   _## SNMP4J-AgentJMX - TypedCompositeDataAttribute.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
23 package org.snmp4j.agent.mo.jmx.types;
24
25 import javax.management.openmbean.CompositeDataSupport JavaDoc;
26 import javax.management.*;
27
28 public class TypedCompositeDataAttribute extends TypedAttribute {
29
30   private String JavaDoc compositeDataAttrName;
31   private TypedAttribute proxyAttribute;
32
33   public TypedCompositeDataAttribute(String JavaDoc beanName,
34                                      String JavaDoc attrName,
35                                      String JavaDoc type) throws ClassNotFoundException JavaDoc {
36     super(beanName, type);
37     this.compositeDataAttrName = attrName;
38   }
39
40   public TypedCompositeDataAttribute(String JavaDoc beanName,
41                                      String JavaDoc attrName,
42                                      Class JavaDoc type) {
43     super(beanName, type);
44     this.compositeDataAttrName = attrName;
45   }
46
47   public TypedCompositeDataAttribute(TypedAttribute proxyAttribute) {
48     super(proxyAttribute.getName(), proxyAttribute.getType());
49     this.compositeDataAttrName = proxyAttribute.getName();
50     this.proxyAttribute = proxyAttribute;
51   }
52
53   public Object JavaDoc transformFromNative(Object JavaDoc nativeValue, ObjectName objectName) {
54     if (nativeValue == null) {
55       return null;
56     }
57     Object JavaDoc n = ((CompositeDataSupport JavaDoc)nativeValue).get(compositeDataAttrName);
58     if (proxyAttribute != null) {
59       n = proxyAttribute.transformFromNative(n, null);
60     }
61     return n;
62   }
63
64   public Object JavaDoc transformToNative(Object JavaDoc transformedValue,
65                                   Object JavaDoc oldNativeValue, ObjectName objectName) {
66     throw new UnsupportedOperationException JavaDoc();
67   }
68 }
69
Popular Tags