KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > com > caucho > jaxb > JAXBIntrospectorImpl


1 /*
2 * Copyright (c) 1998-2006 Caucho Technology -- all rights reserved
3 *
4 * This file is part of Resin(R) Open Source
5 *
6 * Each copy or derived work must preserve the copyright notice and this
7 * notice unmodified.
8 *
9 * Resin Open Source is free software; you can redistribute it and/or modify
10 * it under the terms of the GNU General Public License as published by
11 * the Free Software Foundation; either version 2 of the License, or
12 * (at your option) any later version.
13 *
14 * Resin Open Source is distributed in the hope that it will be useful,
15 * but WITHOUT ANY WARRANTY; without even the implied warranty of
16 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE, or any warranty
17 * of NON-INFRINGEMENT. See the GNU General Public License for more
18 * details.
19 *
20 * You should have received a copy of the GNU General Public License
21 * along with Resin Open Source; if not, write to the
22 *
23 * Free Software Foundation, Inc.
24 * 59 Temple Place, Suite 330
25 * Boston, MA 02111-1307 USA
26 *
27 * @author Adam Megacz
28 */

29
30 package com.caucho.jaxb;
31 import javax.xml.bind.JAXBElement;
32 import javax.xml.bind.JAXBException;
33 import javax.xml.bind.JAXBIntrospector;
34 import javax.xml.namespace.QName JavaDoc;
35
36 class JAXBIntrospectorImpl extends JAXBIntrospector {
37
38   private JAXBContextImpl _context;
39   
40   JAXBIntrospectorImpl(JAXBContextImpl context)
41   {
42     _context = context;
43   }
44
45   public QName JavaDoc getElementName(Object JavaDoc object)
46   {
47     try {
48       if (object instanceof JAXBElement)
49         return ((JAXBElement) object).getName();
50       else
51         return _context.getSkeleton(object.getClass()).getElementName(object);
52     }
53     catch (JAXBException e) {
54       return null;
55     }
56   }
57
58   public boolean isElement(Object JavaDoc object)
59   {
60     return (object instanceof JAXBElement) ||
61            (getElementName(object) != null);
62   }
63
64 }
65
66
Popular Tags