1 /*
   2  * Copyright (c) 2012, Oracle and/or its affiliates. All rights reserved.
   3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
   4  *
   5  * This code is free software; you can redistribute it and/or modify it
   6  * under the terms of the GNU General Public License version 2 only, as
   7  * published by the Free Software Foundation.  Oracle designates this
   8  * particular file as subject to the "Classpath" exception as provided
   9  * by Oracle in the LICENSE file that accompanied this code.
  10  *
  11  * This code is distributed in the hope that it will be useful, but WITHOUT
  12  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
  13  * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
  14  * version 2 for more details (a copy is included in the LICENSE file that
  15  * accompanied this code).
  16  *
  17  * You should have received a copy of the GNU General Public License version
  18  * 2 along with this work; if not, write to the Free Software Foundation,
  19  * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
  20  *
  21  * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
  22  * or visit www.oracle.com if you need additional information or have any
  23  * questions.
  24  */
  25 
  26 package com.oracle.xmlns.internal.webservices.jaxws_databinding;
  27 import org.w3c.dom.Element;
  28 
  29 import javax.xml.bind.annotation.XmlAccessType;
  30 import javax.xml.bind.annotation.XmlAccessorType;
  31 import javax.xml.bind.annotation.XmlAnyAttribute;
  32 import javax.xml.bind.annotation.XmlAnyElement;
  33 import javax.xml.bind.annotation.XmlAttribute;
  34 import javax.xml.bind.annotation.XmlElementRef;
  35 import javax.xml.bind.annotation.XmlRootElement;
  36 import javax.xml.bind.annotation.XmlType;
  37 import javax.xml.namespace.QName;
  38 import java.util.ArrayList;
  39 import java.util.HashMap;
  40 import java.util.List;
  41 import java.util.Map;
  42 
  43 
  44 /**
  45  * This file was generated by JAXB-RI v2.2.6 and afterwards modified
  46  * to implement appropriate Annotation
  47  *
  48  * <p>Java class for anonymous complex type.
  49  *
  50  * <p>The following schema fragment specifies the expected content contained within this class.
  51  *
  52  * <pre>
  53  * &lt;complexType>
  54  *   &lt;complexContent>
  55  *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
  56  *       &lt;sequence>
  57  *         &lt;group ref="{http://xmlns.oracle.com/webservices/jaxws-databinding}param-annotation" maxOccurs="unbounded" minOccurs="0"/>
  58  *       &lt;/sequence>
  59  *       &lt;attribute name="java-type" type="{http://www.w3.org/2001/XMLSchema}string" />
  60  *       &lt;anyAttribute processContents='skip' namespace='##other'/>
  61  *     &lt;/restriction>
  62  *   &lt;/complexContent>
  63  * &lt;/complexType>
  64  * </pre>
  65  */
  66 @XmlAccessorType(XmlAccessType.FIELD)
  67 @XmlType(name = "", propOrder = {
  68     "paramAnnotation"
  69 })
  70 @XmlRootElement(name = "java-param")
  71 public class JavaParam {
  72 
  73     @XmlElementRef(name = "web-param", namespace = "http://xmlns.oracle.com/webservices/jaxws-databinding", type = XmlWebParam.class, required = false)
  74     @XmlAnyElement
  75     protected List<Object> paramAnnotation;
  76     @XmlAttribute(name = "java-type")
  77     protected String javaType;
  78     @XmlAnyAttribute
  79     private Map<QName, String> otherAttributes = new HashMap<QName, String>();
  80 
  81     /**
  82      * Gets the value of the paramAnnotation property.
  83      *
  84      * <p>
  85      * This accessor method returns a reference to the live list,
  86      * not a snapshot. Therefore any modification you make to the
  87      * returned list will be present inside the JAXB object.
  88      * This is why there is not a <CODE>set</CODE> method for the paramAnnotation property.
  89      *
  90      * <p>
  91      * For example, to add a new item, do as follows:
  92      * <pre>
  93      *    getParamAnnotation().add(newItem);
  94      * </pre>
  95      *
  96      *
  97      * <p>
  98      * Objects of the following type(s) are allowed in the list
  99      * {@link XmlWebParam }
 100      * {@link Element }
 101      *
 102      *
 103      */
 104     public List<Object> getParamAnnotation() {
 105         if (paramAnnotation == null) {
 106             paramAnnotation = new ArrayList<Object>();
 107         }
 108         return this.paramAnnotation;
 109     }
 110 
 111     /**
 112      * Gets the value of the javaType property.
 113      *
 114      * @return
 115      *     possible object is
 116      *     {@link String }
 117      *
 118      */
 119     public String getJavaType() {
 120         return javaType;
 121     }
 122 
 123     /**
 124      * Sets the value of the javaType property.
 125      *
 126      * @param value
 127      *     allowed object is
 128      *     {@link String }
 129      *
 130      */
 131     public void setJavaType(String value) {
 132         this.javaType = value;
 133     }
 134 
 135     /**
 136      * Gets a map that contains attributes that aren't bound to any typed property on this class.
 137      *
 138      * <p>
 139      * the map is keyed by the name of the attribute and
 140      * the value is the string value of the attribute.
 141      *
 142      * the map returned by this method is live, and you can add new attribute
 143      * by updating the map directly. Because of this design, there's no setter.
 144      *
 145      *
 146      * @return
 147      *     always non-null
 148      */
 149     public Map<QName, String> getOtherAttributes() {
 150         return otherAttributes;
 151     }
 152 
 153 }