01: /*
02: * Licensed to the Apache Software Foundation (ASF) under one
03: * or more contributor license agreements. See the NOTICE file
04: * distributed with this work for additional information
05: * regarding copyright ownership. The ASF licenses this file
06: * to you under the Apache License, Version 2.0 (the
07: * "License"); you may not use this file except in compliance
08: * with the License. You may obtain a copy of the License at
09: *
10: * http://www.apache.org/licenses/LICENSE-2.0
11: *
12: * Unless required by applicable law or agreed to in writing,
13: * software distributed under the License is distributed on an
14: * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15: * KIND, either express or implied. See the License for the
16: * specific language governing permissions and limitations
17: * under the License.
18: */
19: package org.apache.axis2.jaxws.runtime.description.marshal.impl;
20:
21: import org.apache.axis2.jaxws.runtime.description.marshal.AnnotationDesc;
22: import org.apache.axis2.jaxws.utility.XMLRootElementUtil;
23:
24: import javax.xml.namespace.QName;
25:
26: /**
27: *
28: */
29: class AnnotationDescImpl implements AnnotationDesc {
30:
31: private boolean _hasXmlRootElement = false;
32: private String _XmlRootElementName = null;
33: private String _XmlRootElementNamespace = null;
34:
35: private AnnotationDescImpl() {
36: super ();
37: }
38:
39: public boolean hasXmlRootElement() {
40: return _hasXmlRootElement;
41: }
42:
43: public String getXmlRootElementName() {
44: return _XmlRootElementName;
45: }
46:
47: public String getXmlRootElementNamespace() {
48: return _XmlRootElementNamespace;
49: }
50:
51: static AnnotationDesc create(Class cls) {
52: AnnotationDescImpl aDesc = new AnnotationDescImpl();
53:
54: QName qName = XMLRootElementUtil.getXmlRootElementQName(cls);
55: if (qName == null) {
56: return aDesc;
57: }
58: aDesc._hasXmlRootElement = true;
59: aDesc._XmlRootElementName = qName.getLocalPart();
60: aDesc._XmlRootElementNamespace = qName.getNamespaceURI();
61:
62: return aDesc;
63: }
64:
65: public String toString() {
66: final String newline = "\n";
67: StringBuffer string = new StringBuffer();
68:
69: string.append(newline);
70: string.append(" @XMLRootElement exists = "
71: + this .hasXmlRootElement());
72:
73: if (this .hasXmlRootElement()) {
74: string.append(newline);
75: string.append(" @XMLRootElement namespace = "
76: + this .getXmlRootElementNamespace());
77: string.append(newline);
78: string.append(" @XMLRootElement name = "
79: + this.getXmlRootElementName());
80: }
81:
82: return string.toString();
83: }
84: }
|