1/*
2 * Copyright (c) 2012, 2013, 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
26package com.oracle.xmlns.internal.webservices.jaxws_databinding;
27import javax.xml.bind.annotation.XmlAccessType;
28import javax.xml.bind.annotation.XmlAccessorType;
29import javax.xml.bind.annotation.XmlAttribute;
30import javax.xml.bind.annotation.XmlRootElement;
31import javax.xml.bind.annotation.XmlType;
32import java.lang.annotation.Annotation;
33
34import static com.oracle.xmlns.internal.webservices.jaxws_databinding.Util.nullSafe;
35
36
37/**
38 * This file was generated by JAXB-RI v2.2.6 and afterwards modified
39 * to implement appropriate Annotation
40 *
41 * <p>Java class for anonymous complex type.
42 *
43 * <p>The following schema fragment specifies the expected content contained within this class.
44 *
45 * <pre>
46 * &lt;complexType>
47 *   &lt;complexContent>
48 *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
49 *       &lt;attribute name="style" type="{http://xmlns.oracle.com/webservices/jaxws-databinding}soap-binding-style" default="DOCUMENT" />
50 *       &lt;attribute name="use" type="{http://xmlns.oracle.com/webservices/jaxws-databinding}soap-binding-use" default="LITERAL" />
51 *       &lt;attribute name="parameter-style" type="{http://xmlns.oracle.com/webservices/jaxws-databinding}soap-binding-parameter-style" default="WRAPPED" />
52 *     &lt;/restriction>
53 *   &lt;/complexContent>
54 * &lt;/complexType>
55 * </pre>
56 */
57@XmlAccessorType(XmlAccessType.FIELD)
58@XmlType(name = "")
59@XmlRootElement(name = "soap-binding")
60public class XmlSOAPBinding implements javax.jws.soap.SOAPBinding {
61
62    @XmlAttribute(name = "style")
63    protected SoapBindingStyle style;
64    @XmlAttribute(name = "use")
65    protected SoapBindingUse use;
66    @XmlAttribute(name = "parameter-style")
67    protected SoapBindingParameterStyle parameterStyle;
68
69    /**
70     * Gets the value of the style property.
71     *
72     * @return
73     *     possible object is
74     *     {@link SoapBindingStyle }
75     *
76     */
77    public SoapBindingStyle getStyle() {
78        if (style == null) {
79            return SoapBindingStyle.DOCUMENT;
80        } else {
81            return style;
82        }
83    }
84
85    /**
86     * Sets the value of the style property.
87     *
88     * @param value
89     *     allowed object is
90     *     {@link SoapBindingStyle }
91     *
92     */
93    public void setStyle(SoapBindingStyle value) {
94        this.style = value;
95    }
96
97    /**
98     * Gets the value of the use property.
99     *
100     * @return
101     *     possible object is
102     *     {@link SoapBindingUse }
103     *
104     */
105    public SoapBindingUse getUse() {
106        if (use == null) {
107            return SoapBindingUse.LITERAL;
108        } else {
109            return use;
110        }
111    }
112
113    /**
114     * Sets the value of the use property.
115     *
116     * @param value
117     *     allowed object is
118     *     {@link SoapBindingUse }
119     *
120     */
121    public void setUse(SoapBindingUse value) {
122        this.use = value;
123    }
124
125    /**
126     * Gets the value of the parameterStyle property.
127     *
128     * @return
129     *     possible object is
130     *     {@link SoapBindingParameterStyle }
131     *
132     */
133    public SoapBindingParameterStyle getParameterStyle() {
134        if (parameterStyle == null) {
135            return SoapBindingParameterStyle.WRAPPED;
136        } else {
137            return parameterStyle;
138        }
139    }
140
141    /**
142     * Sets the value of the parameterStyle property.
143     *
144     * @param value
145     *     allowed object is
146     *     {@link SoapBindingParameterStyle }
147     *
148     */
149    public void setParameterStyle(SoapBindingParameterStyle value) {
150        this.parameterStyle = value;
151    }
152
153    @Override
154    public Style style() {
155        return nullSafe(style, Style.DOCUMENT);
156    }
157
158    @Override
159    public Use use() {
160        return nullSafe(use, Use.LITERAL);
161    }
162
163    @Override
164    public ParameterStyle parameterStyle() {
165        return nullSafe(parameterStyle, ParameterStyle.WRAPPED);
166    }
167
168    @Override
169    public Class<? extends Annotation> annotationType() {
170        return javax.jws.soap.SOAPBinding.class;
171    }
172}
173